All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ai.vespa.schemals.parser.SchemaParser Maven / Gradle / Ivy

There is a newer version: 8.441.21
Show newest version
/* Generated by: CongoCC Parser Generator. SchemaParser.java  */
package ai.vespa.schemals.parser;

import com.yahoo.tensor.TensorAddress;
import com.yahoo.tensor.TensorType;
import com.yahoo.tensor.MixedTensor;
import com.yahoo.tensor.IndexedTensor;
import com.yahoo.tensor.Tensor;
import com.yahoo.searchlib.rankingexpression.Reference;
import com.yahoo.search.schema.RankProfile.InputType;
import com.yahoo.search.query.ranking.Diversity;
import com.yahoo.schema.parser.Utils;
import com.yahoo.schema.parser.ParsedType;
import com.yahoo.schema.parser.ParsedSummaryField;
import com.yahoo.schema.parser.ParsedStruct;
import com.yahoo.schema.parser.ParsedSorting;
import com.yahoo.schema.parser.ParsedSchema;
import com.yahoo.schema.parser.ParsedRankProfile;
import com.yahoo.schema.parser.ParsedRankFunction;
import com.yahoo.schema.parser.ParsedMatchSettings;
import com.yahoo.schema.parser.ParsedIndex;
import com.yahoo.schema.parser.ParsedFieldSet;
import com.yahoo.schema.parser.ParsedField;
import com.yahoo.schema.parser.ParsedDocumentSummary;
import com.yahoo.schema.parser.ParsedDocument;
import com.yahoo.schema.parser.ParsedAttribute;
import com.yahoo.schema.parser.ParsedAnnotation;
import com.yahoo.schema.parser.DictionaryOption;
import com.yahoo.schema.document.Stemming;
import com.yahoo.schema.document.Sorting;
import com.yahoo.schema.document.MatchAlgorithm;
import com.yahoo.schema.document.MatchType;
import com.yahoo.schema.document.HnswIndexParams;
import com.yahoo.schema.document.Case;
import com.yahoo.schema.Schema;
import com.yahoo.schema.RankProfile;
import com.yahoo.schema.RankProfile.MatchPhaseSettings;
import com.yahoo.schema.RankProfile.DiversitySettings;
import com.yahoo.schema.OnnxModel;
import com.yahoo.schema.FeatureNames;
import com.yahoo.schema.DistributableResource;
import com.yahoo.language.simple.SimpleLinguistics;
import com.yahoo.language.process.Embedder;
import com.yahoo.language.Linguistics;
import java.util.Map;
import java.util.List;
import java.util.Optional;
import java.io.OutputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.ArrayList;
import java.util.Collections;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.ListIterator;
import java.util.concurrent.CancellationException;
import ai.vespa.schemals.parser.Token.TokenType;
import static ai.vespa.schemals.parser.Token.TokenType.*;
import ai.vespa.schemals.parser.ast.InvalidNode;
import ai.vespa.schemals.parser.ast.Root;
import ai.vespa.schemals.parser.ast.RootRankProfile;
import ai.vespa.schemals.parser.ast.rootSchema;
import ai.vespa.schemals.parser.ast.rootSchemaItem;
import ai.vespa.schemals.parser.ast.rootDocument;
import ai.vespa.schemals.parser.ast.rootDocumentItem;
import ai.vespa.schemals.parser.ast.documentElm;
import ai.vespa.schemals.parser.ast.namedDocument;
import ai.vespa.schemals.parser.ast.documentBodyElm;
import ai.vespa.schemals.parser.ast.rawAsBase64;
import ai.vespa.schemals.parser.ast.inheritsStruct;
import ai.vespa.schemals.parser.ast.inheritsDocument;
import ai.vespa.schemals.parser.ast.fieldInsideDoc;
import ai.vespa.schemals.parser.ast.fieldOutsideDoc;
import ai.vespa.schemals.parser.ast.fieldElm;
import ai.vespa.schemals.parser.ast.fieldSetElm;
import ai.vespa.schemals.parser.ast.fieldsElm;
import ai.vespa.schemals.parser.ast.queryCommandInFieldSetElm;
import ai.vespa.schemals.parser.ast.annotationOutside;
import ai.vespa.schemals.parser.ast.annotationElm;
import ai.vespa.schemals.parser.ast.annotationBody;
import ai.vespa.schemals.parser.ast.inheritsAnnotation;
import ai.vespa.schemals.parser.ast.structInsideDoc;
import ai.vespa.schemals.parser.ast.structOutsideDoc;
import ai.vespa.schemals.parser.ast.structDefinitionElm;
import ai.vespa.schemals.parser.ast.dataType;
import ai.vespa.schemals.parser.ast.referenceType;
import ai.vespa.schemals.parser.ast.annotationRefDataType;
import ai.vespa.schemals.parser.ast.mapDataType;
import ai.vespa.schemals.parser.ast.structFieldDefinition;
import ai.vespa.schemals.parser.ast.structFieldElm;
import ai.vespa.schemals.parser.ast.fieldBodyElm;
import ai.vespa.schemals.parser.ast.structFieldBodyElm;
import ai.vespa.schemals.parser.ast.indexingElm;
import ai.vespa.schemals.parser.ast.indexingOperationElm;
import ai.vespa.schemals.parser.ast.summaryToElm;
import ai.vespa.schemals.parser.ast.weightElm;
import ai.vespa.schemals.parser.ast.weightedsetElm;
import ai.vespa.schemals.parser.ast.weightedsetBody;
import ai.vespa.schemals.parser.ast.rankTypeElm;
import ai.vespa.schemals.parser.ast.attributeElm;
import ai.vespa.schemals.parser.ast.fieldSorting;
import ai.vespa.schemals.parser.ast.attributeSorting;
import ai.vespa.schemals.parser.ast.sortingElm;
import ai.vespa.schemals.parser.ast.sortingSetting;
import ai.vespa.schemals.parser.ast.attributeSetting;
import ai.vespa.schemals.parser.ast.summaryInDocument;
import ai.vespa.schemals.parser.ast.summaryInField;
import ai.vespa.schemals.parser.ast.summaryInFieldShort;
import ai.vespa.schemals.parser.ast.summaryInFieldLong;
import ai.vespa.schemals.parser.ast.summaryItem;
import ai.vespa.schemals.parser.ast.summaryTransform;
import ai.vespa.schemals.parser.ast.summaryBolding;
import ai.vespa.schemals.parser.ast.summarySourceList;
import ai.vespa.schemals.parser.ast.summaryDestinationList;
import ai.vespa.schemals.parser.ast.fieldStemming;
import ai.vespa.schemals.parser.ast.searchStemming;
import ai.vespa.schemals.parser.ast.normalizingElm;
import ai.vespa.schemals.parser.ast.boldingElm;
import ai.vespa.schemals.parser.ast.dictionaryElm;
import ai.vespa.schemals.parser.ast.dictionarySetting;
import ai.vespa.schemals.parser.ast.queryCommandInField;
import ai.vespa.schemals.parser.ast.aliasElm;
import ai.vespa.schemals.parser.ast.matchSettingsElm;
import ai.vespa.schemals.parser.ast.matchType;
import ai.vespa.schemals.parser.ast.matchItem;
import ai.vespa.schemals.parser.ast.exactTerminator;
import ai.vespa.schemals.parser.ast.gramSize;
import ai.vespa.schemals.parser.ast.matchSize;
import ai.vespa.schemals.parser.ast.maxTermOccurrences;
import ai.vespa.schemals.parser.ast.maxTokenLength;
import ai.vespa.schemals.parser.ast.rankElm;
import ai.vespa.schemals.parser.ast.rankSettingElm;
import ai.vespa.schemals.parser.ast.idElm;
import ai.vespa.schemals.parser.ast.documentSummary;
import ai.vespa.schemals.parser.ast.inheritsDocumentSummary;
import ai.vespa.schemals.parser.ast.documentSummaryItem;
import ai.vespa.schemals.parser.ast.indexOutsideDoc;
import ai.vespa.schemals.parser.ast.indexInsideField;
import ai.vespa.schemals.parser.ast.indexBody;
import ai.vespa.schemals.parser.ast.hnswIndex;
import ai.vespa.schemals.parser.ast.hnswIndexBody;
import ai.vespa.schemals.parser.ast.onnxModelInSchema;
import ai.vespa.schemals.parser.ast.onnxModelInProfile;
import ai.vespa.schemals.parser.ast.onnxModel;
import ai.vespa.schemals.parser.ast.onnxModelItem;
import ai.vespa.schemals.parser.ast.rankingConstant;
import ai.vespa.schemals.parser.ast.fileItem;
import ai.vespa.schemals.parser.ast.uriItem;
import ai.vespa.schemals.parser.ast.rankingConstantErrorMessage;
import ai.vespa.schemals.parser.ast.rankProfile;
import ai.vespa.schemals.parser.ast.rankProfileItem;
import ai.vespa.schemals.parser.ast.inheritsRankProfile;
import ai.vespa.schemals.parser.ast.mutateElm;
import ai.vespa.schemals.parser.ast.mutate_operation;
import ai.vespa.schemals.parser.ast.mutate_expr;
import ai.vespa.schemals.parser.ast.functionElm;
import ai.vespa.schemals.parser.ast.inlineElm;
import ai.vespa.schemals.parser.ast.matchPhase;
import ai.vespa.schemals.parser.ast.matchPhaseItem;
import ai.vespa.schemals.parser.ast.diversityElm;
import ai.vespa.schemals.parser.ast.diversityDeprecated;
import ai.vespa.schemals.parser.ast.diversityItem;
import ai.vespa.schemals.parser.ast.firstPhase;
import ai.vespa.schemals.parser.ast.firstPhaseItem;
import ai.vespa.schemals.parser.ast.secondPhase;
import ai.vespa.schemals.parser.ast.secondPhaseItem;
import ai.vespa.schemals.parser.ast.globalPhase;
import ai.vespa.schemals.parser.ast.globalPhaseItem;
import ai.vespa.schemals.parser.ast.inputsElm;
import ai.vespa.schemals.parser.ast.inputElm;
import ai.vespa.schemals.parser.ast.inputName;
import ai.vespa.schemals.parser.ast.valueType;
import ai.vespa.schemals.parser.ast.featureListElm;
import ai.vespa.schemals.parser.ast.summaryFeaturesElm;
import ai.vespa.schemals.parser.ast.strictElm;
import ai.vespa.schemals.parser.ast.significanceElm;
import ai.vespa.schemals.parser.ast.significanceItem;
import ai.vespa.schemals.parser.ast.matchFeaturesElm;
import ai.vespa.schemals.parser.ast.rankFeaturesElm;
import ai.vespa.schemals.parser.ast.ignoreRankFeatures;
import ai.vespa.schemals.parser.ast.numThreadsPerSearch;
import ai.vespa.schemals.parser.ast.minHitsPerThread;
import ai.vespa.schemals.parser.ast.numSearchPartitions;
import ai.vespa.schemals.parser.ast.termwiseLimit;
import ai.vespa.schemals.parser.ast.postFilterThreshold;
import ai.vespa.schemals.parser.ast.approximateThreshold;
import ai.vespa.schemals.parser.ast.targetHitsMaxAdjustmentFactor;
import ai.vespa.schemals.parser.ast.rankProperties;
import ai.vespa.schemals.parser.ast.rankProperty;
import ai.vespa.schemals.parser.ast.rankPropertyItem;
import ai.vespa.schemals.parser.ast.fieldWeight;
import ai.vespa.schemals.parser.ast.fieldRankType;
import ai.vespa.schemals.parser.ast.fieldRankFilter;
import ai.vespa.schemals.parser.ast.constantsElm;
import ai.vespa.schemals.parser.ast.constantElm;
import ai.vespa.schemals.parser.ast.constantName;
import ai.vespa.schemals.parser.ast.constantValue;
import ai.vespa.schemals.parser.ast.constantTensor;
import ai.vespa.schemals.parser.ast.constantTensorErrorMessage;
import ai.vespa.schemals.parser.ast.tensorValue;
import ai.vespa.schemals.parser.ast.mappedTensorValue;
import ai.vespa.schemals.parser.ast.mappedTensorBlock;
import ai.vespa.schemals.parser.ast.indexedTensorBlockValues;
import ai.vespa.schemals.parser.ast.indexedTensorValues;
import ai.vespa.schemals.parser.ast.arrayTensorValues;
import ai.vespa.schemals.parser.ast.indexedTensorValue;
import ai.vespa.schemals.parser.ast.mappedTensorCellValue;
import ai.vespa.schemals.parser.ast.tensorAddress;
import ai.vespa.schemals.parser.ast.tensorAddressElement;
import ai.vespa.schemals.parser.ast.tensorAddressLabel;
import ai.vespa.schemals.parser.ast.tensorCellValue;
import ai.vespa.schemals.parser.ast.tensorValuePrefixedByValue;
import ai.vespa.schemals.parser.ast.tensorTypeWithPrefix;
import ai.vespa.schemals.parser.ast.tensorTypeElm;
import ai.vespa.schemals.parser.ast.importField;
import ai.vespa.schemals.parser.ast.expression;
import ai.vespa.schemals.parser.ast.identifierWithDashStr;
import ai.vespa.schemals.parser.ast.identifierStr;
import ai.vespa.schemals.parser.ast.quotedString;
import ai.vespa.schemals.parser.ast.bool;
import ai.vespa.schemals.parser.ast.integerElm;
import ai.vespa.schemals.parser.ast.longValue;
import ai.vespa.schemals.parser.ast.floatValue;
import ai.vespa.schemals.parser.ast.number;
import ai.vespa.schemals.parser.ast.openLbrace;


public class SchemaParser {
    private PrintStream logger = new PrintStream(new OutputStream() {

        public void write(int b) {
            return;
        }

    }
    );

    public SchemaParser(PrintStream logger, String inputSource, CharSequence content) {
        this(inputSource, content);
        this.logger = logger;
    }

    /**
    * Consumes an indexing language script which will use the simple linguistics implementation
    * for testing, by taking input from the current input stream.
    *
    * @param multiline Whether or not to allow multi-line expressions.
    */
    @SuppressWarnings("deprecation")
    private SubLanguageData newIndexingOperation(boolean multiline) throws ParseException {
        return newIndexingOperation(multiline, new SimpleLinguistics(), Embedder.throwsOnUse.asMap());
    }

    /**
    * Consumes an indexing language script from the current input stream.
    *
    * @param multiline Whether or not to allow multi-line expressions.
    * @param linguistics What to use for tokenizing.
    */
    private SubLanguageData newIndexingOperation(boolean multiline, Linguistics linguistics, Map embedders) throws ParseException {
        TokenSource tokS = lastConsumedToken.getTokenSource();
        String inputString = tokS.toString();
        int startSplit = lastConsumedToken.getEndOffset();
        int leadingStripped = 0;
        if (multiline) {
            leadingStripped = startSplit - lastConsumedToken.getBeginOffset();
        } else {
            leadingStripped = startSplit - lastConsumedToken.getPrevious().getBeginOffset();
        }
        Token tokenToAddExceptionsTo = lastConsumedToken;
        int braceLevel = 0;
        while (nextTokenType() != TokenType.EOF && (braceLevel > 0 || nextTokenType() != TokenType.NL) && !(braceLevel == 0 && nextTokenType() == TokenType.RBRACE)) {
            lastConsumedToken = nextToken(lastConsumedToken);
            if (lastConsumedToken.getType() == TokenType.LBRACE) {
                braceLevel++;
            }
            if (lastConsumedToken.getType() == TokenType.RBRACE) {
                braceLevel--;
            }
        }
        int endSplit = lastConsumedToken.getEndOffset();
        inputString = inputString.substring(startSplit, endSplit);
        return new SubLanguageData(inputString, leadingStripped);
    }

    static final int UNLIMITED = Integer.MAX_VALUE;
    // The last token successfully "consumed"
    Token lastConsumedToken;
    private TokenType nextTokenType;
    // Normally null when parsing, populated when doing lookahead
    private Token currentLookaheadToken;
    private int remainingLookahead;
    private boolean hitFailure;
    private boolean passedPredicate;
    private int passedPredicateThreshold = -1;
    private String currentlyParsedProduction;
    private String currentLookaheadProduction;
    private int lookaheadRoutineNesting;
    private EnumSet outerFollowSet;
    private final boolean legacyGlitchyLookahead = false;
    private final Token DUMMY_START_TOKEN = new Token();
    private boolean cancelled;

    public void cancel() {
        cancelled = true;
    }

    public boolean isCancelled() {
        return cancelled;
    }

    /** Generated Lexer. */
    private SchemaParserLexer token_source;

    public void setInputSource(String inputSource) {
        token_source.setInputSource(inputSource);
    }

    String getInputSource() {
        return token_source.getInputSource();
    }

    //=================================
    // Generated constructors
    //=================================
    public SchemaParser(String inputSource, CharSequence content) {
        this(new SchemaParserLexer(inputSource, content));
    }

    public SchemaParser(CharSequence content) {
        this("input", content);
    }

    /**
    * @param inputSource just the name of the input source (typically the filename) that
    * will be used in error messages and so on.
    * @param path The location (typically the filename) from which to get the input to parse
    */
    public SchemaParser(String inputSource, Path path) throws IOException {
        this(inputSource, TokenSource.stringFromBytes(Files.readAllBytes(path)));
    }

    public SchemaParser(String inputSource, Path path, Charset charset) throws IOException {
        this(inputSource, TokenSource.stringFromBytes(Files.readAllBytes(path), charset));
    }

    /**
    * @param path The location (typically the filename) from which to get the input to parse
    */
    public SchemaParser(Path path) throws IOException {
        this(path.toString(), path);
    }

    /** Constructor with user supplied Lexer. */
    public SchemaParser(SchemaParserLexer lexer) {
        token_source = lexer;
        lastConsumedToken = DUMMY_START_TOKEN;
        lastConsumedToken.setTokenSource(lexer);
    }

    /**
    * Set the starting line/column for location reporting.
    * By default, this is 1,1.
    */
    public void setStartingPos(int startingLine, int startingColumn) {
        token_source.setStartingPos(startingLine, startingColumn);
    }

    // this method is for testing only.
    public boolean getLegacyGlitchyLookahead() {
        return legacyGlitchyLookahead;
    }

    // If the next token is cached, it returns that
    // Otherwise, it goes to the token_source, i.e. the Lexer.
    private Token nextToken(final Token tok) {
        Token result = token_source.getNextToken(tok);
        while (result.isUnparsed()) {
            result = token_source.getNextToken(result);
            if (result.isInvalid()) {
                if (isParserTolerant()) {
                    result.setUnparsed(true);
                }
            }
        }
        nextTokenType = null;
        return result;
    }

    /**
    * @return the next Token off the stream. This is the same as #getToken(1)
    */
    public final Token getNextToken() {
        return getToken(1);
    }

    /**
    * @param index how many tokens to look ahead
    * @return the specific regular (i.e. parsed) Token index ahead/behind in the stream.
    * If we are in a lookahead, it looks ahead from the currentLookaheadToken
    * Otherwise, it is the lastConsumedToken. If you pass in a negative
    * number it goes backward.
    */
    public final Token getToken(final int index) {
        Token t = currentLookaheadToken == null ? lastConsumedToken : currentLookaheadToken;
        for (int i = 0; i < index; i++) {
            t = nextToken(t);
        }
        for (int i = 0; i > index; i--) {
            t = t.getPrevious();
            if (t == null) break;
        }
        return t;
    }

    private TokenType nextTokenType() {
        if (nextTokenType == null) {
            nextTokenType = nextToken(lastConsumedToken).getType();
        }
        return nextTokenType;
    }

    boolean activateTokenTypes(TokenType...types) {
        if (token_source.activeTokenTypes == null) return false;
        boolean result = false;
        for (TokenType tt : types) {
            result |= token_source.activeTokenTypes.add(tt);
        }
        if (result) {
            token_source.reset(getToken(0));
            nextTokenType = null;
        }
        return result;
    }

    boolean deactivateTokenTypes(TokenType...types) {
        boolean result = false;
        if (token_source.activeTokenTypes == null) {
            token_source.activeTokenTypes = EnumSet.allOf(TokenType.class);
        }
        for (TokenType tt : types) {
            result |= token_source.activeTokenTypes.remove(tt);
        }
        if (result) {
            token_source.reset(getToken(0));
            nextTokenType = null;
        }
        return result;
    }

    private static final HashMap> enumSetCache = new HashMap<>();

    private static EnumSet tokenTypeSet(TokenType first, TokenType...rest) {
        TokenType[] key = new TokenType[1 + rest.length];
        key[0] = first;
        if (rest.length > 0) {
            System.arraycopy(rest, 0, key, 1, rest.length);
        }
        Arrays.sort(key);
        if (enumSetCache.containsKey(key)) {
            return enumSetCache.get(key);
        }
        EnumSet result = (rest.length == 0) ? EnumSet.of(first) : EnumSet.of(first, rest);
        enumSetCache.put(key, result);
        return result;
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:571:1
    final public ParsedSchema Root() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "Root";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:571:1
        Root thisProduction = null;
        if (buildTree) {
            thisProduction = new Root();
            openNodeScope(thisProduction);
        }
        ParsedSchema schema;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$Root();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:575:5
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:575:6
                consumeToken(NL, false, follow_set$SchemaParser_ccc$575$6);
            }
            if (nextTokenType() == SCHEMA || nextTokenType == SEARCH) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:575:14
                pushOntoCallStack("Root", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 575, 14);
                try {
                    schema = rootSchema();
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == EOF || nextTokenType == NL || nextTokenType == DOCUMENT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:575:38
                pushOntoCallStack("Root", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 575, 38);
                try {
                    schema = rootDocument();
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("Root", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 575, 14);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$575$14, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:576:5
            return schema;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:582:1
    final public void RootRankProfile() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "RootRankProfile";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:582:1
        RootRankProfile thisProduction = null;
        if (buildTree) {
            thisProduction = new RootRankProfile();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$RootRankProfile();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:583:5
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:583:6
                consumeToken(NL, false, follow_set$SchemaParser_ccc$583$6);
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:583:13
            pushOntoCallStack("RootRankProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 583, 13);
            outerFollowSet = follow_set$SchemaParser_ccc$583$13;
            try {
                rankProfile(null);
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:583:31
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:583:32
                consumeToken(NL, false, follow_set$SchemaParser_ccc$583$32);
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:583:39
            EnumSet followSet41 = null;
            if (outerFollowSet != null) {
                followSet41 = follow_set$SchemaParser_ccc$583$39.clone();
                followSet41.addAll(outerFollowSet);
            }
            consumeToken(EOF, false, followSet41);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:593:1
    final public ParsedSchema rootSchema() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rootSchema";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:593:1
        rootSchema thisProduction = null;
        if (buildTree) {
            thisProduction = new rootSchema();
            openNodeScope(thisProduction);
        }
        String name;
        String inherited = null;
        ParsedSchema schema;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rootSchema();
            }
            if (nextTokenType() == SCHEMA) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:599:9
                consumeToken(SCHEMA, false, follow_set$SchemaParser_ccc$599$9);
            } else if (nextTokenType() == SEARCH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:599:20
                consumeToken(SEARCH, false, follow_set$SchemaParser_ccc$599$20);
            } else {
                pushOntoCallStack("rootSchema", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 599, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$599$9$, parsingStack);
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:599:31
            pushOntoCallStack("rootSchema", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 599, 31);
            outerFollowSet = follow_set$SchemaParser_ccc$599$31;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:599:54
            if (nextTokenType() == INHERITS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:599:55
                consumeToken(INHERITS, false, follow_set$SchemaParser_ccc$599$55);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:599:66
                pushOntoCallStack("rootSchema", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 599, 66);
                outerFollowSet = follow_set$SchemaParser_ccc$599$66;
                try {
                    inherited = identifierStr();
                } finally {
                    popCallStack();
                }
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:599:97
            schema = new ParsedSchema(name);
            if (inherited != null) schema.inherit(inherited);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:603:7
            pushOntoCallStack("rootSchema", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 603, 7);
            outerFollowSet = follow_set$SchemaParser_ccc$603$7;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:603:18
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:603:19
                if (first_set$SchemaParser_ccc$603$19.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:603:19
                    pushOntoCallStack("rootSchema", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 603, 19);
                    outerFollowSet = follow_set$SchemaParser_ccc$603$19$;
                    try {
                        rootSchemaItem(schema);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:603:44
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$603$44);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:604:7
            consumeToken(RBRACE, false, follow_set$SchemaParser_ccc$604$7);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:604:16
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:604:17
                consumeToken(NL, false, follow_set$SchemaParser_ccc$604$17);
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:604:24
            EnumSet followSet109 = null;
            if (outerFollowSet != null) {
                followSet109 = follow_set$SchemaParser_ccc$604$24.clone();
                followSet109.addAll(outerFollowSet);
            }
            consumeToken(EOF, false, followSet109);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:605:5
            return schema;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:614:1
    final public void rootSchemaItem(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rootSchemaItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:614:1
        rootSchemaItem thisProduction = null;
        if (buildTree) {
            thisProduction = new rootSchemaItem();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rootSchemaItem();
            }
            if (nextTokenType() == DOCUMENT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:616:9
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 616, 9);
                try {
                    documentElm(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == RAW_AS_BASE64_IN_SUMMARY) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:617:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 617, 10);
                try {
                    rawAsBase64(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == STEMMING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:618:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 618, 10);
                try {
                    searchStemming(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == IMPORT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:619:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 619, 10);
                try {
                    importField(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == CONSTANT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:620:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 620, 10);
                try {
                    rankingConstant(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MODEL || nextTokenType == RANK_PROFILE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:621:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 621, 10);
                try {
                    rankProfile(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == DOCUMENT_SUMMARY) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:622:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 622, 10);
                try {
                    documentSummary(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == FIELD) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:623:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 623, 10);
                try {
                    fieldOutsideDoc(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == INDEX) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:624:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 624, 10);
                try {
                    indexOutsideDoc(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == STRUCT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:625:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 625, 10);
                try {
                    structOutsideDoc(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == ANNOTATION) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:626:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 626, 10);
                try {
                    annotationOutside(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == FIELDSET) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:627:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 627, 10);
                try {
                    fieldSetElm(schema);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == ONNX_MODEL) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:628:10
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 628, 10);
                try {
                    onnxModelInSchema(schema);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("rootSchemaItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 616, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$616$9, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:638:1
    final public ParsedSchema rootDocument() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rootDocument";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:638:1
        rootDocument thisProduction = null;
        if (buildTree) {
            thisProduction = new rootDocument();
            openNodeScope(thisProduction);
        }
        ParsedSchema schema = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rootDocument();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:643:7
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:643:8
                if (nextTokenType() == DOCUMENT) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:643:8
                    pushOntoCallStack("rootDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 643, 8);
                    outerFollowSet = follow_set$SchemaParser_ccc$643$8;
                    try {
                        schema = rootDocumentItem(schema);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:643:44
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$643$44);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:643:50
            EnumSet followSet44 = null;
            if (outerFollowSet != null) {
                followSet44 = follow_set$SchemaParser_ccc$643$50.clone();
                followSet44.addAll(outerFollowSet);
            }
            consumeToken(EOF, false, followSet44);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:644:5
            return schema;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:654:1
    final public ParsedSchema rootDocumentItem(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rootDocumentItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:654:1
        rootDocumentItem thisProduction = null;
        if (buildTree) {
            thisProduction = new rootDocumentItem();
            openNodeScope(thisProduction);
        }
        ParsedDocument doc = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rootDocumentItem();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:659:7
            pushOntoCallStack("rootDocumentItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 659, 7);
            try {
                doc = namedDocument();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:659:29
            if (schema == null) schema = new ParsedSchema(doc.name());
            schema.addDocument(doc);
            schema.setDocumentWithoutSchema();
            return schema;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:673:1
    final public void documentElm(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "documentElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:673:1
        documentElm thisProduction = null;
        if (buildTree) {
            thisProduction = new documentElm();
            openNodeScope(thisProduction);
        }
        String name = schema.name();
        ParsedDocument document;
        Token beginToken = lastConsumedToken.getNext();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$documentElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:680:7
            consumeToken(DOCUMENT, false, follow_set$SchemaParser_ccc$680$7);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:680:18
            if (first_set$SchemaParser_ccc$680$19.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:680:19
                pushOntoCallStack("documentElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 680, 19);
                outerFollowSet = follow_set$SchemaParser_ccc$680$19$;
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:680:42
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:680:43
                consumeToken(NL, false, follow_set$SchemaParser_ccc$680$43);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:681:5
            document = new ParsedDocument(name);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:684:5
            if (nextTokenType() == INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:684:7
                pushOntoCallStack("documentElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 684, 7);
                outerFollowSet = follow_set$SchemaParser_ccc$684$7;
                try {
                    inheritsDocument(document);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:684:34
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:684:35
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$684$35);
                }
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:685:7
            pushOntoCallStack("documentElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 685, 7);
            outerFollowSet = follow_set$SchemaParser_ccc$685$7;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:685:18
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:685:19
                if (nextTokenType() == ANNOTATION || nextTokenType == STRUCT || nextTokenType == FIELD) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:685:19
                    pushOntoCallStack("documentElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 685, 19);
                    outerFollowSet = follow_set$SchemaParser_ccc$685$19;
                    try {
                        documentBodyElm(document);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:685:47
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$685$47);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:685:54
            EnumSet followSet102 = null;
            if (outerFollowSet != null) {
                followSet102 = follow_set$SchemaParser_ccc$685$54.clone();
                followSet102.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet102);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:686:5
            try {
                schema.addDocument(document);
            } catch (IllegalArgumentException e) {
                beginToken.addIllegalArugmentException(e);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:698:1
    final public ParsedDocument namedDocument() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "namedDocument";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:698:1
        namedDocument thisProduction = null;
        if (buildTree) {
            thisProduction = new namedDocument();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedDocument document;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$namedDocument();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:704:7
            consumeToken(DOCUMENT, false, follow_set$SchemaParser_ccc$704$7);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:704:18
            pushOntoCallStack("namedDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 704, 18);
            outerFollowSet = follow_set$SchemaParser_ccc$704$18;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:704:41
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:704:42
                consumeToken(NL, false, follow_set$SchemaParser_ccc$704$42);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:704:49
            document = new ParsedDocument(name);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:705:7
            if (nextTokenType() == INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:705:9
                pushOntoCallStack("namedDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 705, 9);
                outerFollowSet = follow_set$SchemaParser_ccc$705$9;
                try {
                    inheritsDocument(document);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:705:36
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:705:37
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$705$37);
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:706:7
            consumeToken(LBRACE, false, follow_set$SchemaParser_ccc$706$7);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:706:16
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:706:17
                consumeToken(NL, false, follow_set$SchemaParser_ccc$706$17);
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:706:24
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:706:25
                if (nextTokenType() == ANNOTATION || nextTokenType == STRUCT || nextTokenType == FIELD) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:706:25
                    pushOntoCallStack("namedDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 706, 25);
                    outerFollowSet = follow_set$SchemaParser_ccc$706$25;
                    try {
                        documentBodyElm(document);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:706:53
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$706$53);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:706:60
            EnumSet followSet106 = null;
            if (outerFollowSet != null) {
                followSet106 = follow_set$SchemaParser_ccc$706$60.clone();
                followSet106.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet106);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:707:5
            return document;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:718:1
    final public void documentBodyElm(ParsedDocument document) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "documentBodyElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:718:1
        documentBodyElm thisProduction = null;
        if (buildTree) {
            thisProduction = new documentBodyElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$documentBodyElm();
            }
            if (nextTokenType() == ANNOTATION) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:720:9
                pushOntoCallStack("documentBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 720, 9);
                try {
                    annotationElm(document);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == STRUCT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:721:11
                pushOntoCallStack("documentBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 721, 11);
                try {
                    structInsideDoc(document);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == FIELD) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:722:11
                pushOntoCallStack("documentBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 722, 11);
                try {
                    fieldInsideDoc(document);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("documentBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 720, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$720$9, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:726:1
    final public void rawAsBase64(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rawAsBase64";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:726:1
        rawAsBase64 thisProduction = null;
        if (buildTree) {
            thisProduction = new rawAsBase64();
            openNodeScope(thisProduction);
        }
        boolean enabled = false;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rawAsBase64();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:731:5
            EnumSet followSet13 = null;
            if (outerFollowSet != null) {
                followSet13 = follow_set$SchemaParser_ccc$731$5.clone();
                followSet13.addAll(outerFollowSet);
            }
            consumeToken(RAW_AS_BASE64_IN_SUMMARY, false, followSet13);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:732:5
            enabled = true;
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:735:5
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:735:7
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$735$7);
                if (nextTokenType() == TRUE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:735:17
                    EnumSet followSet43 = null;
                    if (outerFollowSet != null) {
                        followSet43 = follow_set$SchemaParser_ccc$735$17.clone();
                        followSet43.addAll(outerFollowSet);
                    }
                    consumeToken(TRUE, false, followSet43);
                } else if (nextTokenType() == FALSE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:735:28
                    EnumSet followSet59 = null;
                    if (outerFollowSet != null) {
                        followSet59 = follow_set$SchemaParser_ccc$735$28.clone();
                        followSet59.addAll(outerFollowSet);
                    }
                    consumeToken(FALSE, false, followSet59);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:735:36
                    enabled = false;
                } else {
                    pushOntoCallStack("rawAsBase64", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 735, 17);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$735$17$, parsingStack);
                }
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:736:5
            schema.enableRawAsBase64(enabled);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:746:1
    final public void inheritsStruct(ParsedStruct struct) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inheritsStruct";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:746:1
        inheritsStruct thisProduction = null;
        if (buildTree) {
            thisProduction = new inheritsStruct();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$inheritsStruct();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:751:5
            consumeToken(INHERITS, false, follow_set$SchemaParser_ccc$751$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:751:16
            pushOntoCallStack("inheritsStruct", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 751, 16);
            if (outerFollowSet != null) {
                EnumSet newFollowSet = follow_set$SchemaParser_ccc$751$16.clone();
                newFollowSet.addAll(outerFollowSet);
                outerFollowSet = newFollowSet;
            }
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:751:39
            struct.inherit(name);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:752:5
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:752:7
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$752$7);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:752:16
                pushOntoCallStack("inheritsStruct", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 752, 16);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$752$16.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:752:39
                struct.inherit(name);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:760:1
    final public void inheritsDocument(ParsedDocument document) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inheritsDocument";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:760:1
        inheritsDocument thisProduction = null;
        if (buildTree) {
            thisProduction = new inheritsDocument();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$inheritsDocument();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:765:5
            consumeToken(INHERITS, false, follow_set$SchemaParser_ccc$765$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:765:16
            pushOntoCallStack("inheritsDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 765, 16);
            if (outerFollowSet != null) {
                EnumSet newFollowSet = follow_set$SchemaParser_ccc$765$16.clone();
                newFollowSet.addAll(outerFollowSet);
                outerFollowSet = newFollowSet;
            }
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:765:39
            document.inherit(name);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:766:5
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:766:7
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$766$7);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:766:16
                pushOntoCallStack("inheritsDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 766, 16);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$766$16.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:766:39
                document.inherit(name);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:775:1
    final public void fieldInsideDoc(ParsedDocument document) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldInsideDoc";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:775:1
        fieldInsideDoc thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldInsideDoc();
            openNodeScope(thisProduction);
        }
        ParsedField field;
        Token beginToken = lastConsumedToken.getNext();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldInsideDoc();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:780:5
            pushOntoCallStack("fieldInsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 780, 5);
            try {
                field = fieldElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:780:24
            try {
                document.addField(field);
            } catch (IllegalArgumentException e) {
                // This exception is due to a duplicate name
                beginToken.getNext().addIllegalArugmentException(e);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:795:1
    final public void fieldOutsideDoc(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldOutsideDoc";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:795:1
        fieldOutsideDoc thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldOutsideDoc();
            openNodeScope(thisProduction);
        }
        ParsedField field;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldOutsideDoc();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:800:5
            pushOntoCallStack("fieldOutsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 800, 5);
            try {
                field = fieldElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:800:24
            schema.addField(field);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:806:1
    final public ParsedField fieldElm() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:806:1
        fieldElm thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldElm();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedField field;
        ParsedType type;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:813:5
            consumeToken(FIELD, false, follow_set$SchemaParser_ccc$813$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:813:13
            pushOntoCallStack("fieldElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 813, 13);
            outerFollowSet = follow_set$SchemaParser_ccc$813$13;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:814:5
            if (Schema.isReservedName(name.toLowerCase())) {
                lastConsumedToken.addParseException(new ParseException("Reserved name '" + lastConsumedToken.toString() + "' can not be used as a field name.", lastConsumedToken, parsingStack));
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:823:5
            consumeToken(TYPE, false, follow_set$SchemaParser_ccc$823$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:823:12
            pushOntoCallStack("fieldElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 823, 12);
            outerFollowSet = follow_set$SchemaParser_ccc$823$12;
            try {
                type = dataType();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:824:5
            field = new ParsedField(name, type);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:827:5
            pushOntoCallStack("fieldElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 827, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$827$5;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:827:18
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:827:20
                if (first_set$SchemaParser_ccc$827$20.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:827:20
                    pushOntoCallStack("fieldElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 827, 20);
                    outerFollowSet = follow_set$SchemaParser_ccc$827$20$;
                    try {
                        fieldBodyElm(field);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:827:42
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$827$42);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:827:49
            EnumSet followSet61 = null;
            if (outerFollowSet != null) {
                followSet61 = follow_set$SchemaParser_ccc$827$49.clone();
                followSet61.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet61);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:828:5
            return field;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:834:1
    final public void fieldSetElm(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldSetElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:834:1
        fieldSetElm thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldSetElm();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedFieldSet fieldSet;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldSetElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:840:3
            consumeToken(FIELDSET, false, follow_set$SchemaParser_ccc$840$3);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:840:14
            pushOntoCallStack("fieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 840, 14);
            outerFollowSet = follow_set$SchemaParser_ccc$840$14;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:840:35
            pushOntoCallStack("fieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 840, 35);
            outerFollowSet = follow_set$SchemaParser_ccc$840$35;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:840:48
            fieldSet = new ParsedFieldSet(name);
            // Code for OneOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:841:5
            while (true) {
                if (nextTokenType() == FIELDS) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:841:7
                    pushOntoCallStack("fieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 841, 7);
                    outerFollowSet = follow_set$SchemaParser_ccc$841$7;
                    try {
                        fieldsElm(fieldSet);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == QUERY_COMMAND) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:841:29
                    pushOntoCallStack("fieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 841, 29);
                    outerFollowSet = follow_set$SchemaParser_ccc$841$29;
                    try {
                        queryCommandInFieldSetElm(fieldSet);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == MATCH) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:841:67
                    pushOntoCallStack("fieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 841, 67);
                    outerFollowSet = follow_set$SchemaParser_ccc$841$67;
                    try {
                        matchSettingsElm(fieldSet.matchSettings());
                    } finally {
                        popCallStack();
                    }
                } else {
                    pushOntoCallStack("fieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 841, 7);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$841$7$, parsingStack);
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:841:111
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:841:112
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$841$112);
                }
                if (!(nextTokenType() == FIELDS || nextTokenType == QUERY_COMMAND || nextTokenType == MATCH)) break;
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:842:3
            EnumSet followSet78 = null;
            if (outerFollowSet != null) {
                followSet78 = follow_set$SchemaParser_ccc$842$3.clone();
                followSet78.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet78);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:843:3
            schema.addFieldSet(fieldSet);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:848:1
    final public void fieldsElm(ParsedFieldSet fieldSet) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldsElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:848:1
        fieldsElm thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldsElm();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldsElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:853:9
            consumeToken(FIELDS, false, follow_set$SchemaParser_ccc$853$9);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:853:17
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$853$17);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:853:25
            pushOntoCallStack("fieldsElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 853, 25);
            if (outerFollowSet != null) {
                EnumSet newFollowSet = follow_set$SchemaParser_ccc$853$25.clone();
                newFollowSet.addAll(outerFollowSet);
                outerFollowSet = newFollowSet;
            }
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:853:46
            fieldSet.addField(name);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:854:9
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:854:11
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$854$11);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:854:19
                pushOntoCallStack("fieldsElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 854, 19);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$854$19.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:854:40
                fieldSet.addField(name);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:858:1
    final public void queryCommandInFieldSetElm(ParsedFieldSet fieldSet) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "queryCommandInFieldSetElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:858:1
        queryCommandInFieldSetElm thisProduction = null;
        if (buildTree) {
            thisProduction = new queryCommandInFieldSetElm();
            openNodeScope(thisProduction);
        }
        String queryCommand;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$queryCommandInFieldSetElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:863:9
            consumeToken(QUERY_COMMAND, false, follow_set$SchemaParser_ccc$863$9);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:863:24
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$863$24);
            if (first_set$SchemaParser_ccc$863$33.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:863:33
                pushOntoCallStack("queryCommandInFieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 863, 33);
                try {
                    queryCommand = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == DOUBLEQUOTEDSTRING || nextTokenType == SINGLEQUOTEDSTRING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:863:72
                pushOntoCallStack("queryCommandInFieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 863, 72);
                try {
                    queryCommand = quotedString();
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("queryCommandInFieldSetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 863, 33);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$863$33$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:863:101
            fieldSet.addQueryCommand(queryCommand);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:872:1
    final public void annotationOutside(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "annotationOutside";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:872:1
        annotationOutside thisProduction = null;
        if (buildTree) {
            thisProduction = new annotationOutside();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedAnnotation type;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$annotationOutside();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:878:5
            consumeToken(ANNOTATION, false, follow_set$SchemaParser_ccc$878$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:878:18
            pushOntoCallStack("annotationOutside", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 878, 18);
            outerFollowSet = follow_set$SchemaParser_ccc$878$18;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:878:41
            type = new ParsedAnnotation(name);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:879:5
            if (nextTokenType() == INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:879:7
                pushOntoCallStack("annotationOutside", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 879, 7);
                outerFollowSet = follow_set$SchemaParser_ccc$879$7;
                try {
                    inheritsAnnotation(type);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:879:32
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:879:33
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$879$33);
                }
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:880:5
            pushOntoCallStack("annotationOutside", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 880, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$880$5;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:880:18
            pushOntoCallStack("annotationOutside", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 880, 18);
            outerFollowSet = follow_set$SchemaParser_ccc$880$18;
            try {
                annotationBody(type);
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:880:39
            EnumSet followSet55 = null;
            if (outerFollowSet != null) {
                followSet55 = follow_set$SchemaParser_ccc$880$39.clone();
                followSet55.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet55);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:881:5
            schema.addAnnotation(type);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:891:1
    final public void annotationElm(ParsedDocument document) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "annotationElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:891:1
        annotationElm thisProduction = null;
        if (buildTree) {
            thisProduction = new annotationElm();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedAnnotation type;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$annotationElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:897:5
            consumeToken(ANNOTATION, false, follow_set$SchemaParser_ccc$897$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:897:18
            pushOntoCallStack("annotationElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 897, 18);
            outerFollowSet = follow_set$SchemaParser_ccc$897$18;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:897:41
            type = new ParsedAnnotation(name);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:898:5
            if (nextTokenType() == INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:898:7
                pushOntoCallStack("annotationElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 898, 7);
                outerFollowSet = follow_set$SchemaParser_ccc$898$7;
                try {
                    inheritsAnnotation(type);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:898:32
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:898:33
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$898$33);
                }
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:899:5
            pushOntoCallStack("annotationElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 899, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$899$5;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:899:18
            pushOntoCallStack("annotationElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 899, 18);
            outerFollowSet = follow_set$SchemaParser_ccc$899$18;
            try {
                annotationBody(type);
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:899:39
            EnumSet followSet55 = null;
            if (outerFollowSet != null) {
                followSet55 = follow_set$SchemaParser_ccc$899$39.clone();
                followSet55.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet55);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:900:5
            document.addAnnotation(type);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:908:1
    final public void annotationBody(ParsedAnnotation type) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "annotationBody";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:908:1
        annotationBody thisProduction = null;
        if (buildTree) {
            thisProduction = new annotationBody();
            openNodeScope(thisProduction);
        }
        ParsedStruct struct = new ParsedStruct("annotation." + type.name());
        boolean seenField = false;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:914:5
            while (true) {
                if (!(nextTokenType() == FIELD)) break;
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:914:6
                pushOntoCallStack("annotationBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 914, 6);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$914$6.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    structFieldDefinition(struct);
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:914:36
                seenField = true;
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:914:58
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:914:59
                    EnumSet followSet35 = null;
                    if (outerFollowSet != null) {
                        followSet35 = follow_set$SchemaParser_ccc$914$59.clone();
                        followSet35.addAll(outerFollowSet);
                    }
                    consumeToken(NL, false, followSet35);
                }
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:915:5
            if (seenField) type.setStruct(struct);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:920:1
    final public void inheritsAnnotation(ParsedAnnotation annotation) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inheritsAnnotation";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:920:1
        inheritsAnnotation thisProduction = null;
        if (buildTree) {
            thisProduction = new inheritsAnnotation();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$inheritsAnnotation();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:925:5
            consumeToken(INHERITS, false, follow_set$SchemaParser_ccc$925$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:925:16
            pushOntoCallStack("inheritsAnnotation", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 925, 16);
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:925:39
            annotation.inherit(name);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:933:1
    final public void structInsideDoc(ParsedDocument document) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "structInsideDoc";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:933:1
        structInsideDoc thisProduction = null;
        if (buildTree) {
            thisProduction = new structInsideDoc();
            openNodeScope(thisProduction);
        }
        ParsedStruct struct;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$structInsideDoc();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:938:5
            pushOntoCallStack("structInsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 938, 5);
            try {
                struct = structDefinitionElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:938:36
            document.addStruct(struct);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:945:1
    final public void structOutsideDoc(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "structOutsideDoc";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:945:1
        structOutsideDoc thisProduction = null;
        if (buildTree) {
            thisProduction = new structOutsideDoc();
            openNodeScope(thisProduction);
        }
        ParsedStruct struct;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$structOutsideDoc();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:950:5
            pushOntoCallStack("structOutsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 950, 5);
            try {
                struct = structDefinitionElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:950:36
            schema.addStruct(struct);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:956:1
    final public ParsedStruct structDefinitionElm() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "structDefinitionElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:956:1
        structDefinitionElm thisProduction = null;
        if (buildTree) {
            thisProduction = new structDefinitionElm();
            openNodeScope(thisProduction);
        }
        String name;
        String inherited;
        ParsedStruct struct;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$structDefinitionElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:963:7
            consumeToken(STRUCT, false, follow_set$SchemaParser_ccc$963$7);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:963:16
            pushOntoCallStack("structDefinitionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 963, 16);
            outerFollowSet = follow_set$SchemaParser_ccc$963$16;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:963:37
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:963:38
                consumeToken(NL, false, follow_set$SchemaParser_ccc$963$38);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:963:45
            struct = new ParsedStruct(name);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:964:5
            if (nextTokenType() == INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:964:7
                pushOntoCallStack("structDefinitionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 964, 7);
                outerFollowSet = follow_set$SchemaParser_ccc$964$7;
                try {
                    inheritsStruct(struct);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:964:30
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:964:31
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$964$31);
                }
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:965:5
            pushOntoCallStack("structDefinitionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 965, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$965$5;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:965:18
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:965:19
                if (nextTokenType() == FIELD) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:965:19
                    pushOntoCallStack("structDefinitionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 965, 19);
                    outerFollowSet = follow_set$SchemaParser_ccc$965$19;
                    try {
                        structFieldDefinition(struct);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:965:51
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$965$51);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:965:58
            EnumSet followSet94 = null;
            if (outerFollowSet != null) {
                followSet94 = follow_set$SchemaParser_ccc$965$58.clone();
                followSet94.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet94);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:966:5
            return struct;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:976:1
    final public ParsedType dataType() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "dataType";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:976:1
        dataType thisProduction = null;
        if (buildTree) {
            thisProduction = new dataType();
            openNodeScope(thisProduction);
        }
        String typeName = null;
        boolean isArrayOldStyle = false;
        ParsedType mapType = null;
        ParsedType arrayType = null;
        ParsedType wsetType = null;
        TensorType tensorType;
        ParsedType referenceType;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$dataType();
            }
            if (scan$SchemaParser_ccc$986$11()) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:986:55
                consumeToken(ARRAY, false, follow_set$SchemaParser_ccc$986$55);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:986:63
                consumeToken(LESSTHAN, false, follow_set$SchemaParser_ccc$986$63);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:986:74
                pushOntoCallStack("dataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 986, 74);
                outerFollowSet = follow_set$SchemaParser_ccc$986$74;
                try {
                    arrayType = dataType();
                } finally {
                    popCallStack();
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:986:97
                EnumSet followSet43 = null;
                if (outerFollowSet != null) {
                    followSet43 = follow_set$SchemaParser_ccc$986$97.clone();
                    followSet43.addAll(outerFollowSet);
                }
                consumeToken(GREATERTHAN, false, followSet43);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:987:13
                ParsedType type = ParsedType.arrayOf(arrayType);
                thisProduction.setParsedType(type);
                return type;
            } else if (scan$SchemaParser_ccc$994$11()) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:994:55
                consumeToken(WEIGHTEDSET, false, follow_set$SchemaParser_ccc$994$55);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:994:69
                consumeToken(LESSTHAN, false, follow_set$SchemaParser_ccc$994$69);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:994:80
                pushOntoCallStack("dataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 994, 80);
                outerFollowSet = follow_set$SchemaParser_ccc$994$80;
                try {
                    wsetType = dataType();
                } finally {
                    popCallStack();
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:994:102
                EnumSet followSet73 = null;
                if (outerFollowSet != null) {
                    followSet73 = follow_set$SchemaParser_ccc$994$102.clone();
                    followSet73.addAll(outerFollowSet);
                }
                consumeToken(GREATERTHAN, false, followSet73);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:995:13
                ParsedType type = ParsedType.wsetOf(wsetType);
                thisProduction.setParsedType(type);
                return type;
            } else if (scan$SchemaParser_ccc$1001$11()) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1001:55
                pushOntoCallStack("dataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1001, 55);
                try {
                    mapType = mapDataType();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1002:13
                thisProduction.setParsedType(mapType);
                return mapType;
            } else if (scan$SchemaParser_ccc$1007$11()) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1007:55
                pushOntoCallStack("dataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1007, 55);
                try {
                    mapType = annotationRefDataType();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1008:13
                thisProduction.setParsedType(mapType);
                return mapType;
            } else if (scan$SchemaParser_ccc$1013$11()) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1013:55
                pushOntoCallStack("dataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1013, 55);
                try {
                    tensorType = tensorTypeElm("Field type");
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1014:13
                ParsedType type = ParsedType.tensorType(tensorType);
                thisProduction.setParsedType(type);
                return type;
            } else if (scan$SchemaParser_ccc$1020$11()) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1020:55
                consumeToken(REFERENCE, false, follow_set$SchemaParser_ccc$1020$55);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1020:67
                consumeToken(LESSTHAN, false, follow_set$SchemaParser_ccc$1020$67);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1020:78
                pushOntoCallStack("dataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1020, 78);
                outerFollowSet = follow_set$SchemaParser_ccc$1020$78;
                try {
                    referenceType = referenceType();
                } finally {
                    popCallStack();
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1020:110
                EnumSet followSet154 = null;
                if (outerFollowSet != null) {
                    followSet154 = follow_set$SchemaParser_ccc$1020$110.clone();
                    followSet154.addAll(outerFollowSet);
                }
                consumeToken(GREATERTHAN, false, followSet154);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1021:13
                thisProduction.setParsedType(referenceType);
                return ParsedType.documentRef(referenceType);
            } else if (first_set$SchemaParser_ccc$1026$11.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1026:13
                pushOntoCallStack("dataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1026, 13);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$1026$13.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    typeName = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1026:38
                if (nextTokenType() == _TOKEN_183) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1026:39
                    EnumSet followSet184 = null;
                    if (outerFollowSet != null) {
                        followSet184 = follow_set$SchemaParser_ccc$1026$39.clone();
                        followSet184.addAll(outerFollowSet);
                    }
                    consumeToken(_TOKEN_183, false, followSet184);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1026:44
                    isArrayOldStyle = true;
                }
            } else {
                pushOntoCallStack("dataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 986, 11);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$986$11, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1028:5
            ParsedType type = ParsedType.fromName(typeName);
            if (isArrayOldStyle) {
                //deployLogger.logApplicationPackage(Level.WARNING, "Data type syntax '" + typeName + "[]' is deprecated, use 'array<" + typeName + ">' instead.");
                type = ParsedType.arrayOf(type);
            }
            thisProduction.isArrayOldStyle = isArrayOldStyle;
            thisProduction.setParsedType(type);
            return type;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1040:1
    final public ParsedType referenceType() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "referenceType";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1040:1
        referenceType thisProduction = null;
        if (buildTree) {
            thisProduction = new referenceType();
            openNodeScope(thisProduction);
        }
        String documentName;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$referenceType();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1045:7
            pushOntoCallStack("referenceType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1045, 7);
            try {
                documentName = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1046:5
            return ParsedType.documentType(documentName);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1051:1
    final public ParsedType annotationRefDataType() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "annotationRefDataType";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1051:1
        annotationRefDataType thisProduction = null;
        if (buildTree) {
            thisProduction = new annotationRefDataType();
            openNodeScope(thisProduction);
        }
        ParsedType dataType;
        String targetName;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$annotationRefDataType();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1057:7
            consumeToken(ANNOTATIONREFERENCE, false, follow_set$SchemaParser_ccc$1057$7);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1057:29
            consumeToken(LESSTHAN, false, follow_set$SchemaParser_ccc$1057$29);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1057:40
            pushOntoCallStack("annotationRefDataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1057, 40);
            outerFollowSet = follow_set$SchemaParser_ccc$1057$40;
            try {
                targetName = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1057:67
            EnumSet followSet32 = null;
            if (outerFollowSet != null) {
                followSet32 = follow_set$SchemaParser_ccc$1057$67.clone();
                followSet32.addAll(outerFollowSet);
            }
            consumeToken(GREATERTHAN, false, followSet32);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1058:5
            return ParsedType.annotationRef(targetName);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1063:1
    final public ParsedType mapDataType() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "mapDataType";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1063:1
        mapDataType thisProduction = null;
        if (buildTree) {
            thisProduction = new mapDataType();
            openNodeScope(thisProduction);
        }
        ParsedType keyType;
        ParsedType valType;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$mapDataType();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1068:5
            consumeToken(MAP, false, follow_set$SchemaParser_ccc$1068$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1068:11
            consumeToken(LESSTHAN, false, follow_set$SchemaParser_ccc$1068$11);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1068:22
            pushOntoCallStack("mapDataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1068, 22);
            outerFollowSet = follow_set$SchemaParser_ccc$1068$22;
            try {
                keyType = dataType();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1068:43
            consumeToken(COMMA, false, follow_set$SchemaParser_ccc$1068$43);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1068:51
            pushOntoCallStack("mapDataType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1068, 51);
            outerFollowSet = follow_set$SchemaParser_ccc$1068$51;
            try {
                valType = dataType();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1068:72
            EnumSet followSet40 = null;
            if (outerFollowSet != null) {
                followSet40 = follow_set$SchemaParser_ccc$1068$72.clone();
                followSet40.addAll(outerFollowSet);
            }
            consumeToken(GREATERTHAN, false, followSet40);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1069:3
            return ParsedType.mapType(keyType, valType);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1079:1
    final public void structFieldDefinition(ParsedStruct struct) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "structFieldDefinition";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1079:1
        structFieldDefinition thisProduction = null;
        if (buildTree) {
            thisProduction = new structFieldDefinition();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedType type;
        ParsedField field;
        int fieldId;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$structFieldDefinition();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1087:5
            consumeToken(FIELD, false, follow_set$SchemaParser_ccc$1087$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1087:13
            pushOntoCallStack("structFieldDefinition", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1087, 13);
            outerFollowSet = follow_set$SchemaParser_ccc$1087$13;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1087:34
            consumeToken(TYPE, false, follow_set$SchemaParser_ccc$1087$34);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1087:41
            pushOntoCallStack("structFieldDefinition", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1087, 41);
            outerFollowSet = follow_set$SchemaParser_ccc$1087$41;
            try {
                type = dataType();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1087:59
            field = new ParsedField(name, type);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:5
            pushOntoCallStack("structFieldDefinition", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1090, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$1090$5;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:16
            if (nextTokenType() == ID) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:17
                pushOntoCallStack("structFieldDefinition", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1090, 17);
                outerFollowSet = follow_set$SchemaParser_ccc$1090$17;
                try {
                    idElm(field);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:30
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:31
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$1090$31);
                }
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:40
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:41
                if (nextTokenType() == MATCH) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:41
                    pushOntoCallStack("structFieldDefinition", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1090, 41);
                    outerFollowSet = follow_set$SchemaParser_ccc$1090$41;
                    try {
                        matchSettingsElm(field.matchSettings());
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:83
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$1090$83);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1090:90
            EnumSet followSet83 = null;
            if (outerFollowSet != null) {
                followSet83 = follow_set$SchemaParser_ccc$1090$90.clone();
                followSet83.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet83);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1091:5
            struct.addField(field);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1102:1
    final public void structFieldElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "structFieldElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1102:1
        structFieldElm thisProduction = null;
        if (buildTree) {
            thisProduction = new structFieldElm();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedField structField;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$structFieldElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1107:5
            consumeToken(STRUCT_FIELD, false, follow_set$SchemaParser_ccc$1107$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1107:20
            pushOntoCallStack("structFieldElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1107, 20);
            outerFollowSet = follow_set$SchemaParser_ccc$1107$20;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1107:41
            if (name != null && Schema.isReservedName(name.toLowerCase())) {
                throw new IllegalArgumentException("Reserved name '" + name + "' can not be used as a field name.");
            }
            structField = new ParsedField(name, null);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1113:5
            pushOntoCallStack("structFieldElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1113, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$1113$5;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1113:18
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1113:19
                if (first_set$SchemaParser_ccc$1113$19.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1113:19
                    pushOntoCallStack("structFieldElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1113, 19);
                    outerFollowSet = follow_set$SchemaParser_ccc$1113$19$;
                    try {
                        structFieldBodyElm(structField);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1113:53
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$1113$53);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1113:60
            EnumSet followSet51 = null;
            if (outerFollowSet != null) {
                followSet51 = follow_set$SchemaParser_ccc$1113$60.clone();
                followSet51.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet51);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1114:5
            field.addStructField(structField);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1124:1
    final public void fieldBodyElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldBodyElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1124:1
        fieldBodyElm thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldBodyElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldBodyElm();
            }
            if (nextTokenType() == ALIAS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1126:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1126, 8);
                try {
                    aliasElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == ATTRIBUTE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1127:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1127, 8);
                try {
                    attributeElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == BOLDING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1128:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1128, 8);
                try {
                    boldingElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == DICTIONARY) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1129:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1129, 8);
                try {
                    dictionaryElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == STEMMING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1130:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1130, 8);
                try {
                    fieldStemming(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == ID) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1131:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1131, 8);
                try {
                    idElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == SUMMARY) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1132:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1132, 8);
                try {
                    summaryInField(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == INDEX) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1133:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1133, 8);
                try {
                    indexInsideField(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == INDEXING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1134:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1134, 8);
                try {
                    indexingElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MATCH) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1135:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1135, 8);
                try {
                    matchSettingsElm(field.matchSettings());
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NORMALIZING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1136:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1136, 8);
                try {
                    normalizingElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == QUERY_COMMAND) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1137:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1137, 8);
                try {
                    queryCommandInField(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == RANK) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1138:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1138, 8);
                try {
                    rankElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == RANK_TYPE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1139:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1139, 8);
                try {
                    rankTypeElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == SORTING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1140:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1140, 8);
                try {
                    fieldSorting(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == STRUCT_FIELD) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1141:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1141, 8);
                try {
                    structFieldElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == SUMMARY_TO) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1142:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1142, 8);
                try {
                    summaryToElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == WEIGHT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1143:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1143, 8);
                try {
                    weightElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == WEIGHTEDSET) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1144:8
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1144, 8);
                try {
                    weightedsetElm(field.getType());
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("fieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1126, 8);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1126$8, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1154:1
    final public void structFieldBodyElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "structFieldBodyElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1154:1
        structFieldBodyElm thisProduction = null;
        if (buildTree) {
            thisProduction = new structFieldBodyElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$structFieldBodyElm();
            }
            if (nextTokenType() == SUMMARY) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1155:8
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1155, 8);
                try {
                    summaryInField(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == INDEXING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1156:7
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1156, 7);
                try {
                    indexingElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == ATTRIBUTE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1157:7
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1157, 7);
                try {
                    attributeElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MATCH) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1158:7
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1158, 7);
                try {
                    matchSettingsElm(field.matchSettings());
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == QUERY_COMMAND) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1159:7
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1159, 7);
                try {
                    queryCommandInField(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == RANK) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1160:7
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1160, 7);
                try {
                    rankElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == STRUCT_FIELD) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1161:7
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1161, 7);
                try {
                    structFieldElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == SUMMARY_TO) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1162:7
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1162, 7);
                try {
                    summaryToElm(field);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("structFieldBodyElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1155, 8);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1155$8, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1171:1
    final public void indexingElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "indexingElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1171:1
        indexingElm thisProduction = null;
        if (buildTree) {
            thisProduction = new indexingElm();
            openNodeScope(thisProduction);
        }
        SubLanguageData ILScript;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$indexingElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1176:7
            EnumSet followSet20 = null;
            if (outerFollowSet != null) {
                followSet20 = follow_set$SchemaParser_ccc$1176$7.clone();
                followSet20.addAll(outerFollowSet);
            }
            consumeToken(INDEXING, false, followSet20);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1176:21
                EnumSet followSet43 = null;
                if (outerFollowSet != null) {
                    followSet43 = follow_set$SchemaParser_ccc$1176$21.clone();
                    followSet43.addAll(outerFollowSet);
                }
                consumeToken(COLON, false, followSet43);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1176:30
                pushOntoCallStack("indexingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1176, 30);
                try {
                    ILScript = indexingOperationElm(field, false);
                } finally {
                    popCallStack();
                }
            } else {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1176:81
                pushOntoCallStack("indexingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1176, 81);
                try {
                    ILScript = indexingOperationElm(field, true);
                } finally {
                    popCallStack();
                }
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1177:1
            if (ILScript != null && thisProduction != null) {
                thisProduction.setILScript(ILScript);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1189:1
    final public SubLanguageData indexingOperationElm(ParsedField field, boolean multiLine) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "indexingOperationElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1189:1
        indexingOperationElm thisProduction = null;
        if (buildTree) {
            thisProduction = new indexingOperationElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1191:5
            return newIndexingOperation(multiLine);
            //IndexingOperation oldOp = newIndexingOperation(multiLine);
            //if (oldOp != null) {
            //    //ParsedIndexingOp newOp = new ParsedIndexingOp(oldOp.getScript());
            //    //field.setIndexingOperation(newOp);
            //}
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1206:1
    final public void summaryToElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryToElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1206:1
        summaryToElm thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryToElm();
            openNodeScope(thisProduction);
        }
        String name = field.name();
        String destination;
        ParsedSummaryField psf;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryToElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1212:5
            consumeToken(SUMMARY_TO, false, follow_set$SchemaParser_ccc$1212$5);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1212:18
            if (first_set$SchemaParser_ccc$1212$19.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1212:19
                pushOntoCallStack("summaryToElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1212, 19);
                outerFollowSet = follow_set$SchemaParser_ccc$1212$19$;
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1212:43
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1212$43);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1212:51
            pushOntoCallStack("summaryToElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1212, 51);
            if (outerFollowSet != null) {
                EnumSet newFollowSet = follow_set$SchemaParser_ccc$1212$51.clone();
                newFollowSet.addAll(outerFollowSet);
                outerFollowSet = newFollowSet;
            }
            try {
                destination = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1213:5
            psf = field.summaryFieldFor(name);
            psf.addDestination(destination);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1217:5
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1217:7
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$1217$7);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1217:15
                pushOntoCallStack("summaryToElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1217, 15);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$1217$15.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    destination = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1217:45
                psf.addDestination(destination);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1225:1
    final public void weightElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "weightElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1225:1
        weightElm thisProduction = null;
        if (buildTree) {
            thisProduction = new weightElm();
            openNodeScope(thisProduction);
        }
        int num;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$weightElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1230:5
            consumeToken(WEIGHT, false, follow_set$SchemaParser_ccc$1230$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1230:14
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1230$14);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1230:22
            pushOntoCallStack("weightElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1230, 22);
            try {
                num = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1230:39
            field.setWeight(num);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1238:1
    final public void weightedsetElm(ParsedType fieldType) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "weightedsetElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1238:1
        weightedsetElm thisProduction = null;
        if (buildTree) {
            thisProduction = new weightedsetElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$weightedsetElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1239:5
            consumeToken(WEIGHTEDSET, false, follow_set$SchemaParser_ccc$1239$5);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1239:22
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1239$22);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1239:30
                pushOntoCallStack("weightedsetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1239, 30);
                try {
                    weightedsetBody(fieldType);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NL || nextTokenType == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1240:20
                pushOntoCallStack("weightedsetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1240, 20);
                outerFollowSet = follow_set$SchemaParser_ccc$1240$20;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1240:33
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1240:34
                    if (nextTokenType() == CREATE_IF_NONEXISTENT || nextTokenType == REMOVE_IF_ZERO) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1240:34
                        pushOntoCallStack("weightedsetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1240, 34);
                        outerFollowSet = follow_set$SchemaParser_ccc$1240$34;
                        try {
                            weightedsetBody(fieldType);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1240:63
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1240$63);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1240:70
                EnumSet followSet82 = null;
                if (outerFollowSet != null) {
                    followSet82 = follow_set$SchemaParser_ccc$1240$70.clone();
                    followSet82.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet82);
            } else {
                pushOntoCallStack("weightedsetElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1239, 21);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1239$21, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1248:1
    final public void weightedsetBody(ParsedType type) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "weightedsetBody";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1248:1
        weightedsetBody thisProduction = null;
        if (buildTree) {
            thisProduction = new weightedsetBody();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$weightedsetBody();
            }
            if (nextTokenType() == CREATE_IF_NONEXISTENT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1249:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$1249$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(CREATE_IF_NONEXISTENT, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1249:31
                type.setCreateIfNonExistent(true);
            } else if (nextTokenType() == REMOVE_IF_ZERO) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1250:9
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$1250$9.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(REMOVE_IF_ZERO, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1250:31
                type.setRemoveIfZero(true);
            } else {
                pushOntoCallStack("weightedsetBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1249, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1249$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1258:1
    final public void rankTypeElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankTypeElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1258:1
        rankTypeElm thisProduction = null;
        if (buildTree) {
            thisProduction = new rankTypeElm();
            openNodeScope(thisProduction);
        }
        String typeName;
        String indexName = "";
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankTypeElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1263:5
            consumeToken(RANK_TYPE, false, follow_set$SchemaParser_ccc$1263$5);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1263:17
            if (first_set$SchemaParser_ccc$1263$18.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1263:18
                pushOntoCallStack("rankTypeElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1263, 18);
                outerFollowSet = follow_set$SchemaParser_ccc$1263$18$;
                try {
                    indexName = identifierStr();
                } finally {
                    popCallStack();
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1263:47
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1263$47);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1263:55
            pushOntoCallStack("rankTypeElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1263, 55);
            try {
                typeName = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1264:5
            field.addRankType(indexName, typeName);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1274:1
    final public void attributeElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "attributeElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1274:1
        attributeElm thisProduction = null;
        if (buildTree) {
            thisProduction = new attributeElm();
            openNodeScope(thisProduction);
        }
        String name = field.name();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$attributeElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1279:5
            consumeToken(ATTRIBUTE, false, follow_set$SchemaParser_ccc$1279$5);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1279:17
            if (first_set$SchemaParser_ccc$1279$18.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1279:18
                pushOntoCallStack("attributeElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1279, 18);
                outerFollowSet = follow_set$SchemaParser_ccc$1279$18$;
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1280:5
            // TODO: Remove support for attribute with different name than field name in Vespa 9
            // if ( ! name.equals(field.name()))
            //         deployLogger.logApplicationPackage(Level.WARNING, "Creating an attribute for field '" + field.name() +
            //         "' with a different name '" + name + "' than the field name" +
            //         " is deprecated, and support will be removed in Vespa 9. Define a field with the wanted name outside the document instead.");
            ParsedAttribute attr = field.attributeFor(name);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1288:13
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1288$13);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1288:21
                pushOntoCallStack("attributeElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1288, 21);
                try {
                    attributeSetting(attr);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NL || nextTokenType == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1289:15
                pushOntoCallStack("attributeElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1289, 15);
                outerFollowSet = follow_set$SchemaParser_ccc$1289$15;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1289:28
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1289:29
                    if (first_set$SchemaParser_ccc$1289$29.contains(nextTokenType())) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1289:29
                        pushOntoCallStack("attributeElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1289, 29);
                        outerFollowSet = follow_set$SchemaParser_ccc$1289$29$;
                        try {
                            attributeSetting(attr);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1289:54
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1289$54);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1289:61
                EnumSet followSet96 = null;
                if (outerFollowSet != null) {
                    followSet96 = follow_set$SchemaParser_ccc$1289$61.clone();
                    followSet96.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet96);
            } else {
                pushOntoCallStack("attributeElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1288, 12);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1288$12, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1293:1
    final public void fieldSorting(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldSorting";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1293:1
        fieldSorting thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldSorting();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldSorting();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1295:5
            pushOntoCallStack("fieldSorting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1295, 5);
            try {
                sortingElm(field.sortInfo());
            } finally {
                popCallStack();
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1300:1
    final public void attributeSorting(ParsedAttribute attribute) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "attributeSorting";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1300:1
        attributeSorting thisProduction = null;
        if (buildTree) {
            thisProduction = new attributeSorting();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$attributeSorting();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1302:5
            pushOntoCallStack("attributeSorting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1302, 5);
            try {
                sortingElm(attribute.sortInfo());
            } finally {
                popCallStack();
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1306:1
    final public void sortingElm(ParsedSorting sort) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "sortingElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1306:1
        sortingElm thisProduction = null;
        if (buildTree) {
            thisProduction = new sortingElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$sortingElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1308:5
            consumeToken(SORTING, false, follow_set$SchemaParser_ccc$1308$5);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1309:14
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1309$14);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1309:22
                pushOntoCallStack("sortingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1309, 22);
                try {
                    sortingSetting(sort);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NL || nextTokenType == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1310:16
                pushOntoCallStack("sortingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1310, 16);
                outerFollowSet = follow_set$SchemaParser_ccc$1310$16;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1310:29
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1310:30
                    if (first_set$SchemaParser_ccc$1310$30.contains(nextTokenType())) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1310:30
                        pushOntoCallStack("sortingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1310, 30);
                        outerFollowSet = follow_set$SchemaParser_ccc$1310$30$;
                        try {
                            sortingSetting(sort);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1310:53
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1310$53);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1310:60
                EnumSet followSet82 = null;
                if (outerFollowSet != null) {
                    followSet82 = follow_set$SchemaParser_ccc$1310$60.clone();
                    followSet82.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet82);
            } else {
                pushOntoCallStack("sortingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1309, 13);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1309$13, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1315:1
    final public void sortingSetting(ParsedSorting sorting) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "sortingSetting";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1315:1
        sortingSetting thisProduction = null;
        if (buildTree) {
            thisProduction = new sortingSetting();
            openNodeScope(thisProduction);
        }
        String locale;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$sortingSetting();
            }
            if (nextTokenType() == ASCENDING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1321:9
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$1321$9.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(ASCENDING, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1321:21
                sorting.setAscending();
            } else if (nextTokenType() == DESCENDING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1322:9
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$1322$9.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(DESCENDING, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1322:22
                sorting.setDescending();
            } else if (nextTokenType() == FUNCTION) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1323:9
                consumeToken(FUNCTION, false, follow_set$SchemaParser_ccc$1323$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1323:20
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1323$20);
                if (nextTokenType() == UCA) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1324:32
                    EnumSet followSet65 = null;
                    if (outerFollowSet != null) {
                        followSet65 = follow_set$SchemaParser_ccc$1324$32.clone();
                        followSet65.addAll(outerFollowSet);
                    }
                    consumeToken(UCA, false, followSet65);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1324:44
                    sorting.setFunction(Sorting.Function.UCA);
                } else if (nextTokenType() == RAW) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1325:32
                    EnumSet followSet76 = null;
                    if (outerFollowSet != null) {
                        followSet76 = follow_set$SchemaParser_ccc$1325$32.clone();
                        followSet76.addAll(outerFollowSet);
                    }
                    consumeToken(RAW, false, followSet76);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1325:44
                    sorting.setFunction(Sorting.Function.RAW);
                } else if (nextTokenType() == LOWERCASE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1326:32
                    EnumSet followSet87 = null;
                    if (outerFollowSet != null) {
                        followSet87 = follow_set$SchemaParser_ccc$1326$32.clone();
                        followSet87.addAll(outerFollowSet);
                    }
                    consumeToken(LOWERCASE, false, followSet87);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1326:44
                    sorting.setFunction(Sorting.Function.LOWERCASE);
                } else {
                    pushOntoCallStack("sortingSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1324, 32);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1324$32$, parsingStack);
                }
            } else if (nextTokenType() == STRENGTH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1328:9
                consumeToken(STRENGTH, false, follow_set$SchemaParser_ccc$1328$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1328:20
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1328$20);
                if (nextTokenType() == PRIMARY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1329:32
                    EnumSet followSet117 = null;
                    if (outerFollowSet != null) {
                        followSet117 = follow_set$SchemaParser_ccc$1329$32.clone();
                        followSet117.addAll(outerFollowSet);
                    }
                    consumeToken(PRIMARY, false, followSet117);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1329:45
                    sorting.setStrength(Sorting.Strength.PRIMARY);
                } else if (nextTokenType() == SECONDARY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1330:32
                    EnumSet followSet128 = null;
                    if (outerFollowSet != null) {
                        followSet128 = follow_set$SchemaParser_ccc$1330$32.clone();
                        followSet128.addAll(outerFollowSet);
                    }
                    consumeToken(SECONDARY, false, followSet128);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1330:45
                    sorting.setStrength(Sorting.Strength.SECONDARY);
                } else if (nextTokenType() == TERTIARY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1331:32
                    EnumSet followSet139 = null;
                    if (outerFollowSet != null) {
                        followSet139 = follow_set$SchemaParser_ccc$1331$32.clone();
                        followSet139.addAll(outerFollowSet);
                    }
                    consumeToken(TERTIARY, false, followSet139);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1331:45
                    sorting.setStrength(Sorting.Strength.TERTIARY);
                } else if (nextTokenType() == QUATERNARY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1332:32
                    EnumSet followSet150 = null;
                    if (outerFollowSet != null) {
                        followSet150 = follow_set$SchemaParser_ccc$1332$32.clone();
                        followSet150.addAll(outerFollowSet);
                    }
                    consumeToken(QUATERNARY, false, followSet150);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1332:45
                    sorting.setStrength(Sorting.Strength.QUATERNARY);
                } else if (nextTokenType() == IDENTICAL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1333:32
                    EnumSet followSet161 = null;
                    if (outerFollowSet != null) {
                        followSet161 = follow_set$SchemaParser_ccc$1333$32.clone();
                        followSet161.addAll(outerFollowSet);
                    }
                    consumeToken(IDENTICAL, false, followSet161);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1333:45
                    sorting.setStrength(Sorting.Strength.IDENTICAL);
                } else {
                    pushOntoCallStack("sortingSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1329, 32);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1329$32$, parsingStack);
                }
            } else if (nextTokenType() == LOCALE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1335:9
                consumeToken(LOCALE, false, follow_set$SchemaParser_ccc$1335$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1335:18
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1335$18);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1335:26
                pushOntoCallStack("sortingSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1335, 26);
                try {
                    locale = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1335:59
                sorting.setLocale(locale);
            } else {
                pushOntoCallStack("sortingSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1321, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1321$9$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1344:1
    final public void attributeSetting(ParsedAttribute attribute) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "attributeSetting";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1344:1
        attributeSetting thisProduction = null;
        if (buildTree) {
            thisProduction = new attributeSetting();
            openNodeScope(thisProduction);
        }
        String str;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$attributeSetting();
            }
            if (nextTokenType() == FAST_RANK) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1350:9
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$1350$9.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(FAST_RANK, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1350:33
                attribute.setFastRank(true);
            } else if (nextTokenType() == FAST_SEARCH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1351:9
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$1351$9.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(FAST_SEARCH, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1351:33
                attribute.setFastSearch(true);
            } else if (nextTokenType() == FAST_ACCESS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1352:9
                EnumSet followSet46 = null;
                if (outerFollowSet != null) {
                    followSet46 = follow_set$SchemaParser_ccc$1352$9.clone();
                    followSet46.addAll(outerFollowSet);
                }
                consumeToken(FAST_ACCESS, false, followSet46);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1352:33
                attribute.setFastAccess(true);
            } else if (nextTokenType() == MUTABLE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1353:9
                EnumSet followSet57 = null;
                if (outerFollowSet != null) {
                    followSet57 = follow_set$SchemaParser_ccc$1353$9.clone();
                    followSet57.addAll(outerFollowSet);
                }
                consumeToken(MUTABLE, false, followSet57);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1353:33
                attribute.setMutable(true);
            } else if (nextTokenType() == PAGED) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1354:9
                EnumSet followSet68 = null;
                if (outerFollowSet != null) {
                    followSet68 = follow_set$SchemaParser_ccc$1354$9.clone();
                    followSet68.addAll(outerFollowSet);
                }
                consumeToken(PAGED, false, followSet68);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1354:33
                attribute.setPaged(true);
            } else if (nextTokenType() == ENABLE_BIT_VECTORS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1355:9
                EnumSet followSet79 = null;
                if (outerFollowSet != null) {
                    followSet79 = follow_set$SchemaParser_ccc$1355$9.clone();
                    followSet79.addAll(outerFollowSet);
                }
                consumeToken(ENABLE_BIT_VECTORS, false, followSet79);
            } else if (nextTokenType() == ENABLE_ONLY_BIT_VECTOR) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1356:9
                EnumSet followSet88 = null;
                if (outerFollowSet != null) {
                    followSet88 = follow_set$SchemaParser_ccc$1356$9.clone();
                    followSet88.addAll(outerFollowSet);
                }
                consumeToken(ENABLE_ONLY_BIT_VECTOR, false, followSet88);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1356:35
                attribute.setEnableOnlyBitVector(true);
            } else if (nextTokenType() == SORTING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1357:9
                pushOntoCallStack("attributeSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1357, 9);
                try {
                    attributeSorting(attribute);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == ALIAS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1358:9
                consumeToken(ALIAS, false, follow_set$SchemaParser_ccc$1358$9);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1358:17
                String alias;
                String aliasedName = attribute.name();
                // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1361:11
                if (first_set$SchemaParser_ccc$1361$12.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1361:12
                    pushOntoCallStack("attributeSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1361, 12);
                    outerFollowSet = follow_set$SchemaParser_ccc$1361$12$;
                    try {
                        aliasedName = identifierStr();
                    } finally {
                        popCallStack();
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1361:41
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1361$41);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1361:49
                pushOntoCallStack("attributeSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1361, 49);
                try {
                    alias = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1361:79
                attribute.addAlias(aliasedName, alias);
            } else if (nextTokenType() == DISTANCE_METRIC) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1364:9
                consumeToken(DISTANCE_METRIC, false, follow_set$SchemaParser_ccc$1364$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1364:27
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1364$27);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1364:35
                pushOntoCallStack("attributeSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1364, 35);
                try {
                    str = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1364:63
                attribute.setDistanceMetric(str);
            } else {
                pushOntoCallStack("attributeSetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1350, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1350$9$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1373:1
    final public void summaryInDocument(ParsedDocumentSummary docsum) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryInDocument";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1373:1
        summaryInDocument thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryInDocument();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedType type = null;
        ParsedSummaryField psf;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryInDocument();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1380:5
            consumeToken(SUMMARY, false, follow_set$SchemaParser_ccc$1380$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1380:15
            pushOntoCallStack("summaryInDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1380, 15);
            outerFollowSet = follow_set$SchemaParser_ccc$1380$15;
            try {
                name = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1380:46
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1381:5
            if (nextTokenType() == TYPE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1381:6
                consumeToken(TYPE, false, follow_set$SchemaParser_ccc$1381$6);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1381:15
                pushOntoCallStack("summaryInDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1381, 15);
                outerFollowSet = follow_set$SchemaParser_ccc$1381$15;
                try {
                    type = dataType();
                } finally {
                    popCallStack();
                }
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1382:5
            pushOntoCallStack("summaryInDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1382, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$1382$5;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1382:18
            psf = new ParsedSummaryField(name, type);
            if (type != null) {
                psf.setHasExplicitType();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1388:5
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1388:6
                if (first_set$SchemaParser_ccc$1388$6.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1388:6
                    pushOntoCallStack("summaryInDocument", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1388, 6);
                    outerFollowSet = follow_set$SchemaParser_ccc$1388$6$;
                    try {
                        summaryItem(psf);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1388:25
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$1388$25);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1388:32
            EnumSet followSet69 = null;
            if (outerFollowSet != null) {
                followSet69 = follow_set$SchemaParser_ccc$1388$32.clone();
                followSet69.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet69);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1389:5
            var old = docsum.addField(psf);
            if (old != null) {
                // deployLogger.logApplicationPackage(Level.WARNING, "Summary field '" + psf.name()
                //                                   + "' is defined twice in document-summary '"
                //                                   + docsum.name() + "'");
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1404:1
    final public void summaryInField(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryInField";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1404:1
        summaryInField thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryInField();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryInField();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1406:5
            consumeToken(SUMMARY, false, follow_set$SchemaParser_ccc$1406$5);
            if (scan$SchemaParser_ccc$1406$17()) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1406:50
                pushOntoCallStack("summaryInField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1406, 50);
                try {
                    summaryInFieldShort(field);
                } finally {
                    popCallStack();
                }
            } else if (first_set$SchemaParser_ccc$1407$17.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1407:17
                pushOntoCallStack("summaryInField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1407, 17);
                try {
                    summaryInFieldLong(field);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("summaryInField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1406, 17);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1406$17, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1413:1
    final public void summaryInFieldShort(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryInFieldShort";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1413:1
        summaryInFieldShort thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryInFieldShort();
            openNodeScope(thisProduction);
        }
        String name = field.name();
        ParsedSummaryField psf;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryInFieldShort();
            }
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1419:5
            if (first_set$SchemaParser_ccc$1419$7.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1419:7
                pushOntoCallStack("summaryInFieldShort", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1419, 7);
                outerFollowSet = follow_set$SchemaParser_ccc$1419$7$;
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1420:5
            psf = field.summaryFieldFor(name);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1423:5
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1423$5);
            if (nextTokenType() == DYNAMIC) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1423:15
                EnumSet followSet42 = null;
                if (outerFollowSet != null) {
                    followSet42 = follow_set$SchemaParser_ccc$1423$15.clone();
                    followSet42.addAll(outerFollowSet);
                }
                consumeToken(DYNAMIC, false, followSet42);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1423:25
                psf.setDynamic();
            } else if (nextTokenType() == MATCHED_ELEMENTS_ONLY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1424:17
                EnumSet followSet53 = null;
                if (outerFollowSet != null) {
                    followSet53 = follow_set$SchemaParser_ccc$1424$17.clone();
                    followSet53.addAll(outerFollowSet);
                }
                consumeToken(MATCHED_ELEMENTS_ONLY, false, followSet53);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1424:41
                psf.setMatchedElementsOnly();
            } else if (nextTokenType() == FULL || nextTokenType == STATIC) {
                if (nextTokenType() == FULL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1425:18
                    EnumSet followSet75 = null;
                    if (outerFollowSet != null) {
                        followSet75 = follow_set$SchemaParser_ccc$1425$18.clone();
                        followSet75.addAll(outerFollowSet);
                    }
                    consumeToken(FULL, false, followSet75);
                } else if (nextTokenType() == STATIC) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1425:27
                    EnumSet followSet84 = null;
                    if (outerFollowSet != null) {
                        followSet84 = follow_set$SchemaParser_ccc$1425$27.clone();
                        followSet84.addAll(outerFollowSet);
                    }
                    consumeToken(STATIC, false, followSet84);
                } else {
                    pushOntoCallStack("summaryInFieldShort", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1425, 18);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1425$18$, parsingStack);
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1425:37
                psf.setFull();
            } else if (nextTokenType() == TOKENS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1426:17
                EnumSet followSet95 = null;
                if (outerFollowSet != null) {
                    followSet95 = follow_set$SchemaParser_ccc$1426$17.clone();
                    followSet95.addAll(outerFollowSet);
                }
                consumeToken(TOKENS, false, followSet95);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1426:26
                psf.setTokens();
            } else {
                pushOntoCallStack("summaryInFieldShort", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1423, 15);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1423$15$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1433:1
    final public void summaryInFieldLong(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryInFieldLong";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1433:1
        summaryInFieldLong thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryInFieldLong();
            openNodeScope(thisProduction);
        }
        String name = field.name();
        ParsedType type = field.getType();
        boolean explicitType = false;
        ParsedSummaryField psf;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryInFieldLong();
            }
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1441:7
            if (first_set$SchemaParser_ccc$1441$9.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1441:9
                pushOntoCallStack("summaryInFieldLong", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1441, 9);
                outerFollowSet = follow_set$SchemaParser_ccc$1441$9$;
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1441:32
                if (nextTokenType() == TYPE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1441:34
                    consumeToken(TYPE, false, follow_set$SchemaParser_ccc$1441$34);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1441:41
                    type = dataType();
                    explicitType = true;
                }
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1442:7
            pushOntoCallStack("summaryInFieldLong", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1442, 7);
            outerFollowSet = follow_set$SchemaParser_ccc$1442$7;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1443:7
            psf = field.summaryFieldFor(name, type);
            if (explicitType) {
                psf.setHasExplicitType();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1449:7
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1449:8
                if (first_set$SchemaParser_ccc$1449$8.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1449:8
                    pushOntoCallStack("summaryInFieldLong", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1449, 8);
                    outerFollowSet = follow_set$SchemaParser_ccc$1449$8$;
                    try {
                        summaryItem(psf);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1449:27
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$1449$27);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1449:34
            EnumSet followSet76 = null;
            if (outerFollowSet != null) {
                followSet76 = follow_set$SchemaParser_ccc$1449$34.clone();
                followSet76.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet76);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1457:1
    final public void summaryItem(ParsedSummaryField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1457:1
        summaryItem thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryItem();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryItem();
            }
            if (first_set$SchemaParser_ccc$1459$7.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1459:7
                pushOntoCallStack("summaryItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1459, 7);
                try {
                    summaryTransform(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == BOLDING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1460:9
                pushOntoCallStack("summaryItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1460, 9);
                try {
                    summaryBolding(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == SOURCE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1461:9
                pushOntoCallStack("summaryItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1461, 9);
                try {
                    summarySourceList(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == TO) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1462:9
                pushOntoCallStack("summaryItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1462, 9);
                try {
                    summaryDestinationList(field);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("summaryItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1459, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1459$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1471:1
    final public void summaryTransform(ParsedSummaryField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryTransform";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1471:1
        summaryTransform thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryTransform();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryTransform();
            }
            if (nextTokenType() == DYNAMIC) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1473:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$1473$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(DYNAMIC, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1473:30
                field.setDynamic();
            } else if (nextTokenType() == MATCHED_ELEMENTS_ONLY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1474:8
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$1474$8.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(MATCHED_ELEMENTS_ONLY, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1474:32
                field.setMatchedElementsOnly();
            } else if (nextTokenType() == FULL || nextTokenType == STATIC) {
                if (nextTokenType() == FULL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1475:9
                    EnumSet followSet57 = null;
                    if (outerFollowSet != null) {
                        followSet57 = follow_set$SchemaParser_ccc$1475$9.clone();
                        followSet57.addAll(outerFollowSet);
                    }
                    consumeToken(FULL, false, followSet57);
                } else if (nextTokenType() == STATIC) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1475:18
                    EnumSet followSet66 = null;
                    if (outerFollowSet != null) {
                        followSet66 = follow_set$SchemaParser_ccc$1475$18.clone();
                        followSet66.addAll(outerFollowSet);
                    }
                    consumeToken(STATIC, false, followSet66);
                } else {
                    pushOntoCallStack("summaryTransform", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1475, 9);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1475$9$, parsingStack);
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1475:30
                field.setFull();
            } else if (nextTokenType() == TOKENS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1476:8
                EnumSet followSet77 = null;
                if (outerFollowSet != null) {
                    followSet77 = follow_set$SchemaParser_ccc$1476$8.clone();
                    followSet77.addAll(outerFollowSet);
                }
                consumeToken(TOKENS, false, followSet77);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1476:17
                field.setTokens();
            } else {
                pushOntoCallStack("summaryTransform", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1473, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1473$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1485:1
    final public void summaryBolding(ParsedSummaryField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryBolding";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1485:1
        summaryBolding thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryBolding();
            openNodeScope(thisProduction);
        }
        boolean bold;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryBolding();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1490:5
            consumeToken(BOLDING, false, follow_set$SchemaParser_ccc$1490$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1490:15
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1490$15);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1490:23
            pushOntoCallStack("summaryBolding", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1490, 23);
            try {
                bold = bool();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1491:5
            field.setBold(bold);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1499:1
    final public void summarySourceList(ParsedSummaryField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summarySourceList";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1499:1
        summarySourceList thisProduction = null;
        if (buildTree) {
            thisProduction = new summarySourceList();
            openNodeScope(thisProduction);
        }
        String str;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summarySourceList();
            }
            // Code for OneOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1504:5
            while (true) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1504:7
                consumeToken(SOURCE, false, follow_set$SchemaParser_ccc$1504$7);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1504:16
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1504$16);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1504:24
                pushOntoCallStack("summarySourceList", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1504, 24);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$1504$24.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    str = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1504:46
                field.addSource(str);
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1505:7
                while (true) {
                    if (!(nextTokenType() == COMMA)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1505:16
                    consumeToken(COMMA, false, follow_set$SchemaParser_ccc$1505$16);
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1505:24
                    pushOntoCallStack("summarySourceList", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1505, 24);
                    if (outerFollowSet != null) {
                        EnumSet newFollowSet = follow_set$SchemaParser_ccc$1505$24.clone();
                        newFollowSet.addAll(outerFollowSet);
                        outerFollowSet = newFollowSet;
                    }
                    try {
                        str = identifierStr();
                    } finally {
                        popCallStack();
                    }
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1505:46
                    field.addSource(str);
                }
                if (!(nextTokenType() == SOURCE)) break;
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1513:1
    final public void summaryDestinationList(ParsedSummaryField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryDestinationList";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1513:1
        summaryDestinationList thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryDestinationList();
            openNodeScope(thisProduction);
        }
        String str;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryDestinationList();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1518:5
            consumeToken(TO, false, follow_set$SchemaParser_ccc$1518$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1518:10
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1518$10);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1518:18
            pushOntoCallStack("summaryDestinationList", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1518, 18);
            if (outerFollowSet != null) {
                EnumSet newFollowSet = follow_set$SchemaParser_ccc$1518$18.clone();
                newFollowSet.addAll(outerFollowSet);
                outerFollowSet = newFollowSet;
            }
            try {
                str = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1518:40
            field.addDestination(str);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1519:5
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1519:10
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$1519$10);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1519:18
                pushOntoCallStack("summaryDestinationList", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1519, 18);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$1519$18.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    str = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1519:40
                field.addDestination(str);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1527:1
    final public void fieldStemming(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldStemming";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1527:1
        fieldStemming thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldStemming();
            openNodeScope(thisProduction);
        }
        String setting;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldStemming();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1532:5
            consumeToken(STEMMING, false, follow_set$SchemaParser_ccc$1532$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1532:16
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1532$16);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1532:24
            pushOntoCallStack("fieldStemming", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1532, 24);
            try {
                setting = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1533:5
            field.setStemming(Stemming.get(setting));
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1543:1
    final public void searchStemming(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "searchStemming";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1543:1
        searchStemming thisProduction = null;
        if (buildTree) {
            thisProduction = new searchStemming();
            openNodeScope(thisProduction);
        }
        String setting;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$searchStemming();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1548:5
            consumeToken(STEMMING, false, follow_set$SchemaParser_ccc$1548$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1548:16
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1548$16);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1548:24
            pushOntoCallStack("searchStemming", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1548, 24);
            try {
                setting = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1549:5
            schema.setStemming(Stemming.get(setting));
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1558:1
    final public void normalizingElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "normalizingElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1558:1
        normalizingElm thisProduction = null;
        if (buildTree) {
            thisProduction = new normalizingElm();
            openNodeScope(thisProduction);
        }
        String setting;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$normalizingElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1563:5
            consumeToken(NORMALIZING, false, follow_set$SchemaParser_ccc$1563$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1563:19
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1563$19);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1563:27
            pushOntoCallStack("normalizingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1563, 27);
            try {
                setting = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1564:5
            field.setNormalizing(setting);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1574:1
    final public void boldingElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "boldingElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1574:1
        boldingElm thisProduction = null;
        if (buildTree) {
            thisProduction = new boldingElm();
            openNodeScope(thisProduction);
        }
        boolean bold;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$boldingElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1579:5
            consumeToken(BOLDING, false, follow_set$SchemaParser_ccc$1579$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1579:15
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1579$15);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1579:23
            pushOntoCallStack("boldingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1579, 23);
            try {
                bold = bool();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1579:37
            field.setBolding(bold);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1587:1
    final public void dictionaryElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "dictionaryElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1587:1
        dictionaryElm thisProduction = null;
        if (buildTree) {
            thisProduction = new dictionaryElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$dictionaryElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1589:5
            consumeToken(DICTIONARY, false, follow_set$SchemaParser_ccc$1589$5);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1590:8
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1590$8);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1590:16
                pushOntoCallStack("dictionaryElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1590, 16);
                try {
                    dictionarySetting(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NL || nextTokenType == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1591:8
                pushOntoCallStack("dictionaryElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1591, 8);
                outerFollowSet = follow_set$SchemaParser_ccc$1591$8;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1591:21
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1591:22
                    if (nextTokenType() == HASH || nextTokenType == BTREE || nextTokenType == CASED || nextTokenType == UNCASED) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1591:22
                        pushOntoCallStack("dictionaryElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1591, 22);
                        outerFollowSet = follow_set$SchemaParser_ccc$1591$22;
                        try {
                            dictionarySetting(field);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1591:49
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1591$49);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1591:56
                EnumSet followSet82 = null;
                if (outerFollowSet != null) {
                    followSet82 = follow_set$SchemaParser_ccc$1591$56.clone();
                    followSet82.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet82);
            } else {
                pushOntoCallStack("dictionaryElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1590, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1590$7, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1594:1
    final public void dictionarySetting(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "dictionarySetting";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1594:1
        dictionarySetting thisProduction = null;
        if (buildTree) {
            thisProduction = new dictionarySetting();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$dictionarySetting();
            }
            if (nextTokenType() == HASH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1596:9
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$1596$9.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(HASH, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1596:27
                field.dictionary(DictionaryOption.HASH);
            } else if (nextTokenType() == BTREE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1597:9
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$1597$9.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(BTREE, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1597:27
                field.dictionary(DictionaryOption.BTREE);
            } else if (nextTokenType() == CASED) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1598:9
                EnumSet followSet46 = null;
                if (outerFollowSet != null) {
                    followSet46 = follow_set$SchemaParser_ccc$1598$9.clone();
                    followSet46.addAll(outerFollowSet);
                }
                consumeToken(CASED, false, followSet46);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1598:27
                field.dictionary(DictionaryOption.CASED);
            } else if (nextTokenType() == UNCASED) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1599:9
                EnumSet followSet57 = null;
                if (outerFollowSet != null) {
                    followSet57 = follow_set$SchemaParser_ccc$1599$9.clone();
                    followSet57.addAll(outerFollowSet);
                }
                consumeToken(UNCASED, false, followSet57);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1599:27
                field.dictionary(DictionaryOption.UNCASED);
            } else {
                pushOntoCallStack("dictionarySetting", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1596, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1596$9$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1600:5
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1603:1
    final public void queryCommandInField(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "queryCommandInField";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1603:1
        queryCommandInField thisProduction = null;
        if (buildTree) {
            thisProduction = new queryCommandInField();
            openNodeScope(thisProduction);
        }
        String command;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$queryCommandInField();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1608:5
            consumeToken(QUERY_COMMAND, false, follow_set$SchemaParser_ccc$1608$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1608:21
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1608$21);
            if (first_set$SchemaParser_ccc$1608$31.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1608:31
                pushOntoCallStack("queryCommandInField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1608, 31);
                try {
                    command = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == DOUBLEQUOTEDSTRING || nextTokenType == SINGLEQUOTEDSTRING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1608:67
                pushOntoCallStack("queryCommandInField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1608, 67);
                try {
                    command = quotedString();
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("queryCommandInField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1608, 31);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1608$31$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1609:5
            field.addQueryCommand(command);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1614:1
    final public void aliasElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "aliasElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1614:1
        aliasElm thisProduction = null;
        if (buildTree) {
            thisProduction = new aliasElm();
            openNodeScope(thisProduction);
        }
        String aliasedName = field.name();
        String alias;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$aliasElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1620:5
            consumeToken(ALIAS, false, follow_set$SchemaParser_ccc$1620$5);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1620:13
            if (first_set$SchemaParser_ccc$1620$14.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1620:14
                pushOntoCallStack("aliasElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1620, 14);
                outerFollowSet = follow_set$SchemaParser_ccc$1620$14$;
                try {
                    aliasedName = identifierStr();
                } finally {
                    popCallStack();
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1620:43
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1620$43);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1620:51
            pushOntoCallStack("aliasElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1620, 51);
            try {
                alias = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1621:5
            field.addAlias(aliasedName, alias);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1626:1
    final public void matchSettingsElm(ParsedMatchSettings matchInfo) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "matchSettingsElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1626:1
        matchSettingsElm thisProduction = null;
        if (buildTree) {
            thisProduction = new matchSettingsElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$matchSettingsElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1628:5
            consumeToken(MATCH, false, follow_set$SchemaParser_ccc$1628$5);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1628:16
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1628$16);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1628:24
                pushOntoCallStack("matchSettingsElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1628, 24);
                try {
                    matchType(matchInfo);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NL || nextTokenType == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1629:19
                pushOntoCallStack("matchSettingsElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1629, 19);
                outerFollowSet = follow_set$SchemaParser_ccc$1629$19;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1629:32
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1629:33
                    if (first_set$SchemaParser_ccc$1629$33.contains(nextTokenType())) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1629:33
                        pushOntoCallStack("matchSettingsElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1629, 33);
                        outerFollowSet = follow_set$SchemaParser_ccc$1629$33$;
                        try {
                            matchItem(matchInfo);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1629:56
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1629$56);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1629:63
                EnumSet followSet82 = null;
                if (outerFollowSet != null) {
                    followSet82 = follow_set$SchemaParser_ccc$1629$63.clone();
                    followSet82.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet82);
            } else {
                pushOntoCallStack("matchSettingsElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1628, 15);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1628$15, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1632:1
    final public void matchType(ParsedMatchSettings matchInfo) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "matchType";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1632:1
        matchType thisProduction = null;
        if (buildTree) {
            thisProduction = new matchType();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$matchType();
            }
            if (nextTokenType() == MTOKEN) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1634:9
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$1634$9.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(MTOKEN, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1634:21
                matchInfo.setType(MatchType.TEXT);
            } else if (nextTokenType() == TEXT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1635:9
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$1635$9.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(TEXT, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1635:21
                matchInfo.setType(MatchType.TEXT);
            } else if (nextTokenType() == WORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1636:9
                EnumSet followSet46 = null;
                if (outerFollowSet != null) {
                    followSet46 = follow_set$SchemaParser_ccc$1636$9.clone();
                    followSet46.addAll(outerFollowSet);
                }
                consumeToken(WORD, false, followSet46);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1636:21
                matchInfo.setType(MatchType.WORD);
            } else if (nextTokenType() == EXACT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1637:9
                EnumSet followSet57 = null;
                if (outerFollowSet != null) {
                    followSet57 = follow_set$SchemaParser_ccc$1637$9.clone();
                    followSet57.addAll(outerFollowSet);
                }
                consumeToken(EXACT, false, followSet57);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1637:21
                matchInfo.setType(MatchType.EXACT);
            } else if (nextTokenType() == GRAM) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1638:9
                EnumSet followSet68 = null;
                if (outerFollowSet != null) {
                    followSet68 = follow_set$SchemaParser_ccc$1638$9.clone();
                    followSet68.addAll(outerFollowSet);
                }
                consumeToken(GRAM, false, followSet68);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1638:21
                matchInfo.setType(MatchType.GRAM);
            } else if (nextTokenType() == CASED) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1639:9
                EnumSet followSet79 = null;
                if (outerFollowSet != null) {
                    followSet79 = follow_set$SchemaParser_ccc$1639$9.clone();
                    followSet79.addAll(outerFollowSet);
                }
                consumeToken(CASED, false, followSet79);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1639:21
                matchInfo.setCase(Case.CASED);
            } else if (nextTokenType() == UNCASED) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1640:9
                EnumSet followSet90 = null;
                if (outerFollowSet != null) {
                    followSet90 = follow_set$SchemaParser_ccc$1640$9.clone();
                    followSet90.addAll(outerFollowSet);
                }
                consumeToken(UNCASED, false, followSet90);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1640:21
                matchInfo.setCase(Case.UNCASED);
            } else if (nextTokenType() == PREFIX) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1641:9
                EnumSet followSet101 = null;
                if (outerFollowSet != null) {
                    followSet101 = follow_set$SchemaParser_ccc$1641$9.clone();
                    followSet101.addAll(outerFollowSet);
                }
                consumeToken(PREFIX, false, followSet101);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1641:21
                matchInfo.setAlgorithm(MatchAlgorithm.PREFIX);
            } else if (nextTokenType() == SUBSTRING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1642:9
                EnumSet followSet112 = null;
                if (outerFollowSet != null) {
                    followSet112 = follow_set$SchemaParser_ccc$1642$9.clone();
                    followSet112.addAll(outerFollowSet);
                }
                consumeToken(SUBSTRING, false, followSet112);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1642:21
                matchInfo.setAlgorithm(MatchAlgorithm.SUBSTRING);
            } else if (nextTokenType() == SUFFIX) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1643:9
                EnumSet followSet123 = null;
                if (outerFollowSet != null) {
                    followSet123 = follow_set$SchemaParser_ccc$1643$9.clone();
                    followSet123.addAll(outerFollowSet);
                }
                consumeToken(SUFFIX, false, followSet123);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1643:21
                matchInfo.setAlgorithm(MatchAlgorithm.SUFFIX);
            } else {
                pushOntoCallStack("matchType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1634, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1634$9$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1651:1
    final public void matchItem(ParsedMatchSettings matchInfo) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "matchItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1651:1
        matchItem thisProduction = null;
        if (buildTree) {
            thisProduction = new matchItem();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$matchItem();
            }
            if (first_set$SchemaParser_ccc$1653$7.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1653:7
                pushOntoCallStack("matchItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1653, 7);
                try {
                    matchType(matchInfo);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == EXACT_TERMINATOR) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1653:30
                pushOntoCallStack("matchItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1653, 30);
                try {
                    exactTerminator(matchInfo);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == GRAM_SIZE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1653:59
                pushOntoCallStack("matchItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1653, 59);
                try {
                    gramSize(matchInfo);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MAX_LENGTH) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1653:81
                pushOntoCallStack("matchItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1653, 81);
                try {
                    matchSize(matchInfo);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MAX_OCCURRENCES) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1654:6
                pushOntoCallStack("matchItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1654, 6);
                try {
                    maxTermOccurrences(matchInfo);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MAX_TOKEN_LENGTH) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1654:38
                pushOntoCallStack("matchItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1654, 38);
                try {
                    maxTokenLength(matchInfo);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("matchItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1653, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1653$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1657:1
    final public void exactTerminator(ParsedMatchSettings matchInfo) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "exactTerminator";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1657:1
        exactTerminator thisProduction = null;
        if (buildTree) {
            thisProduction = new exactTerminator();
            openNodeScope(thisProduction);
        }
        String terminator;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$exactTerminator();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1662:5
            consumeToken(EXACT_TERMINATOR, false, follow_set$SchemaParser_ccc$1662$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1662:24
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1662$24);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1662:32
            pushOntoCallStack("exactTerminator", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1662, 32);
            try {
                terminator = quotedString();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1663:5
            matchInfo.setExactTerminator(terminator);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1668:1
    final public void gramSize(ParsedMatchSettings matchInfo) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "gramSize";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1668:1
        gramSize thisProduction = null;
        if (buildTree) {
            thisProduction = new gramSize();
            openNodeScope(thisProduction);
        }
        int gramSize;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$gramSize();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1673:5
            consumeToken(GRAM_SIZE, false, follow_set$SchemaParser_ccc$1673$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1673:17
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1673$17);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1673:25
            pushOntoCallStack("gramSize", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1673, 25);
            try {
                gramSize = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1674:5
            matchInfo.setGramSize(gramSize);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1679:1
    final public void matchSize(ParsedMatchSettings matchInfo) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "matchSize";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1679:1
        matchSize thisProduction = null;
        if (buildTree) {
            thisProduction = new matchSize();
            openNodeScope(thisProduction);
        }
        int matchSize;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$matchSize();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1684:5
            consumeToken(MAX_LENGTH, false, follow_set$SchemaParser_ccc$1684$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1684:18
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1684$18);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1684:26
            pushOntoCallStack("matchSize", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1684, 26);
            try {
                matchSize = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1684:51
            matchInfo.setMaxLength(matchSize);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1689:1
    final public void maxTermOccurrences(ParsedMatchSettings matchInfo) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "maxTermOccurrences";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1689:1
        maxTermOccurrences thisProduction = null;
        if (buildTree) {
            thisProduction = new maxTermOccurrences();
            openNodeScope(thisProduction);
        }
        int maxTermOccurrences;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$maxTermOccurrences();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1694:5
            consumeToken(MAX_OCCURRENCES, false, follow_set$SchemaParser_ccc$1694$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1694:23
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1694$23);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1694:31
            pushOntoCallStack("maxTermOccurrences", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1694, 31);
            try {
                maxTermOccurrences = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1694:65
            matchInfo.setMaxTermOccurrences(maxTermOccurrences);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1699:1
    final public void maxTokenLength(ParsedMatchSettings matchInfo) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "maxTokenLength";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1699:1
        maxTokenLength thisProduction = null;
        if (buildTree) {
            thisProduction = new maxTokenLength();
            openNodeScope(thisProduction);
        }
        int maxTokenLength;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$maxTokenLength();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1704:5
            consumeToken(MAX_TOKEN_LENGTH, false, follow_set$SchemaParser_ccc$1704$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1704:24
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1704$24);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1704:32
            pushOntoCallStack("maxTokenLength", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1704, 32);
            try {
                maxTokenLength = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1704:62
            matchInfo.setMaxTokenLength(maxTokenLength);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1714:1
    final public void rankElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1714:1
        rankElm thisProduction = null;
        if (buildTree) {
            thisProduction = new rankElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1716:5
            consumeToken(RANK, false, follow_set$SchemaParser_ccc$1716$5);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1716:15
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1716$15);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1716:23
                pushOntoCallStack("rankElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1716, 23);
                try {
                    rankSettingElm(field);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NL || nextTokenType == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1717:17
                pushOntoCallStack("rankElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1717, 17);
                outerFollowSet = follow_set$SchemaParser_ccc$1717$17;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1717:30
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1717:31
                    if (nextTokenType() == LITERAL || nextTokenType == FILTER || nextTokenType == NORMAL) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1717:31
                        pushOntoCallStack("rankElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1717, 31);
                        outerFollowSet = follow_set$SchemaParser_ccc$1717$31;
                        try {
                            rankSettingElm(field);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1717:55
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1717$55);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1717:62
                EnumSet followSet82 = null;
                if (outerFollowSet != null) {
                    followSet82 = follow_set$SchemaParser_ccc$1717$62.clone();
                    followSet82.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet82);
            } else {
                pushOntoCallStack("rankElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1716, 14);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1716$14, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1725:1
    final public void rankSettingElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankSettingElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1725:1
        rankSettingElm thisProduction = null;
        if (buildTree) {
            thisProduction = new rankSettingElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankSettingElm();
            }
            if (nextTokenType() == LITERAL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1727:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$1727$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(LITERAL, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1727:19
                field.setLiteral(true);
            } else if (nextTokenType() == NORMAL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1728:9
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$1728$9.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(NORMAL, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1728:19
                field.setNormal(true);
            } else if (nextTokenType() == FILTER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1729:9
                EnumSet followSet46 = null;
                if (outerFollowSet != null) {
                    followSet46 = follow_set$SchemaParser_ccc$1729$9.clone();
                    followSet46.addAll(outerFollowSet);
                }
                consumeToken(FILTER, false, followSet46);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1729:19
                field.setFilter(true);
            } else {
                pushOntoCallStack("rankSettingElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1727, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1727$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1738:1
    final public void idElm(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "idElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1738:1
        idElm thisProduction = null;
        if (buildTree) {
            thisProduction = new idElm();
            openNodeScope(thisProduction);
        }
        int fieldId;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$idElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1743:5
            consumeToken(ID, false, follow_set$SchemaParser_ccc$1743$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1743:10
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1743$10);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1743:18
            pushOntoCallStack("idElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1743, 18);
            try {
                fieldId = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1744:5
            field.setId(fieldId);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1754:1
    final public void documentSummary(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "documentSummary";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1754:1
        documentSummary thisProduction = null;
        if (buildTree) {
            thisProduction = new documentSummary();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedDocumentSummary summary;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$documentSummary();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1760:7
            consumeToken(DOCUMENT_SUMMARY, false, follow_set$SchemaParser_ccc$1760$7);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1761:7
            pushOntoCallStack("documentSummary", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1761, 7);
            outerFollowSet = follow_set$SchemaParser_ccc$1761$7;
            try {
                name = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1761:38
            summary = new ParsedDocumentSummary(name);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1762:7
            if (nextTokenType() == INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1762:8
                pushOntoCallStack("documentSummary", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1762, 8);
                outerFollowSet = follow_set$SchemaParser_ccc$1762$8;
                try {
                    inheritsDocumentSummary(summary);
                } finally {
                    popCallStack();
                }
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1763:7
            pushOntoCallStack("documentSummary", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1763, 7);
            outerFollowSet = follow_set$SchemaParser_ccc$1763$7;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1764:10
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1765:12
                if (nextTokenType() == FROM_DISK) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1765:12
                    consumeToken(FROM_DISK, false, follow_set$SchemaParser_ccc$1765$12);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1765:24
                    summary.setFromDisk(true);
                } else if (nextTokenType() == OMIT_SUMMARY_FEATURES) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1766:12
                    consumeToken(OMIT_SUMMARY_FEATURES, false, follow_set$SchemaParser_ccc$1766$12);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1766:36
                    summary.setOmitSummaryFeatures(true);
                } else if (nextTokenType() == SUMMARY) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1767:12
                    pushOntoCallStack("documentSummary", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1767, 12);
                    outerFollowSet = follow_set$SchemaParser_ccc$1767$12;
                    try {
                        documentSummaryItem(summary);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1768:12
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$1768$12);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1770:7
            EnumSet followSet90 = null;
            if (outerFollowSet != null) {
                followSet90 = follow_set$SchemaParser_ccc$1770$7.clone();
                followSet90.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet90);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1772:5
            schema.addDocumentSummary(summary);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1780:1
    final public void inheritsDocumentSummary(ParsedDocumentSummary documentSummary) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inheritsDocumentSummary";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1780:1
        inheritsDocumentSummary thisProduction = null;
        if (buildTree) {
            thisProduction = new inheritsDocumentSummary();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$inheritsDocumentSummary();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1785:5
            consumeToken(INHERITS, false, follow_set$SchemaParser_ccc$1785$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1785:16
            pushOntoCallStack("inheritsDocumentSummary", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1785, 16);
            if (outerFollowSet != null) {
                EnumSet newFollowSet = follow_set$SchemaParser_ccc$1785$16.clone();
                newFollowSet.addAll(outerFollowSet);
                outerFollowSet = newFollowSet;
            }
            try {
                name = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1785:47
            documentSummary.inherit(name);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1786:5
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1786:7
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$1786$7);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1786:16
                pushOntoCallStack("inheritsDocumentSummary", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1786, 16);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$1786$16.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    name = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1786:47
                documentSummary.inherit(name);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1794:1
    final public void documentSummaryItem(ParsedDocumentSummary summary) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "documentSummaryItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1794:1
        documentSummaryItem thisProduction = null;
        if (buildTree) {
            thisProduction = new documentSummaryItem();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$documentSummaryItem();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1796:5
            pushOntoCallStack("documentSummaryItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1796, 5);
            try {
                summaryInDocument(summary);
            } finally {
                popCallStack();
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1804:1
    final public void indexOutsideDoc(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "indexOutsideDoc";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1804:1
        indexOutsideDoc thisProduction = null;
        if (buildTree) {
            thisProduction = new indexOutsideDoc();
            openNodeScope(thisProduction);
        }
        ParsedIndex op;
        String indexName;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$indexOutsideDoc();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1810:5
            consumeToken(INDEX, false, follow_set$SchemaParser_ccc$1810$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1810:13
            pushOntoCallStack("indexOutsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1810, 13);
            outerFollowSet = follow_set$SchemaParser_ccc$1810$13;
            try {
                indexName = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1811:5
            op = new ParsedIndex(indexName);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1814:8
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1814$8);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1814:16
                pushOntoCallStack("indexOutsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1814, 16);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$1814$16.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    indexBody(op);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1814:30
                while (true) {
                    if (!(nextTokenType() == COMMA)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1814:31
                    consumeToken(COMMA, false, follow_set$SchemaParser_ccc$1814$31);
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1814:39
                    pushOntoCallStack("indexOutsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1814, 39);
                    if (outerFollowSet != null) {
                        EnumSet newFollowSet = follow_set$SchemaParser_ccc$1814$39.clone();
                        newFollowSet.addAll(outerFollowSet);
                        outerFollowSet = newFollowSet;
                    }
                    try {
                        indexBody(op);
                    } finally {
                        popCallStack();
                    }
                }
            } else if (nextTokenType() == NL || nextTokenType == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1815:8
                pushOntoCallStack("indexOutsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1815, 8);
                outerFollowSet = follow_set$SchemaParser_ccc$1815$8;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1815:21
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1815:22
                    if (first_set$SchemaParser_ccc$1815$22.contains(nextTokenType())) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1815:22
                        pushOntoCallStack("indexOutsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1815, 22);
                        outerFollowSet = follow_set$SchemaParser_ccc$1815$22$;
                        try {
                            indexBody(op);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1815:38
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1815$38);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1815:45
                EnumSet followSet104 = null;
                if (outerFollowSet != null) {
                    followSet104 = follow_set$SchemaParser_ccc$1815$45.clone();
                    followSet104.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet104);
            } else {
                pushOntoCallStack("indexOutsideDoc", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1814, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1814$7, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1816:5
            schema.addIndex(op);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1826:1
    final public void indexInsideField(ParsedField field) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "indexInsideField";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1826:1
        indexInsideField thisProduction = null;
        if (buildTree) {
            thisProduction = new indexInsideField();
            openNodeScope(thisProduction);
        }
        ParsedIndex op;
        String indexName = field.name();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$indexInsideField();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1832:5
            consumeToken(INDEX, false, follow_set$SchemaParser_ccc$1832$5);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1832:13
            if (first_set$SchemaParser_ccc$1832$14.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1832:14
                pushOntoCallStack("indexInsideField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1832, 14);
                outerFollowSet = follow_set$SchemaParser_ccc$1832$14$;
                try {
                    indexName = identifierStr();
                } finally {
                    popCallStack();
                }
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1833:5
            // TODO: Remove support for index with different name than field name in Vespa 9
            //if ( ! indexName.equals(field.name()))
            //    deployLogger.logApplicationPackage(Level.WARNING, "Creating an index for field '" + field.name() +
            //    "' with a different name '" + indexName + "' than the field name" +
            //    " is deprecated, and support will be removed in Vespa 9. Define a field with the wanted name outside the document instead.");
            op = new ParsedIndex(indexName);
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1841:8
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1841$8);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1841:16
                pushOntoCallStack("indexInsideField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1841, 16);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$1841$16.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    indexBody(op);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1841:30
                while (true) {
                    if (!(nextTokenType() == COMMA)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1841:31
                    consumeToken(COMMA, false, follow_set$SchemaParser_ccc$1841$31);
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1841:39
                    pushOntoCallStack("indexInsideField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1841, 39);
                    if (outerFollowSet != null) {
                        EnumSet newFollowSet = follow_set$SchemaParser_ccc$1841$39.clone();
                        newFollowSet.addAll(outerFollowSet);
                        outerFollowSet = newFollowSet;
                    }
                    try {
                        indexBody(op);
                    } finally {
                        popCallStack();
                    }
                }
            } else if (nextTokenType() == NL || nextTokenType == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1842:8
                pushOntoCallStack("indexInsideField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1842, 8);
                outerFollowSet = follow_set$SchemaParser_ccc$1842$8;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1842:21
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1842:22
                    if (first_set$SchemaParser_ccc$1842$22.contains(nextTokenType())) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1842:22
                        pushOntoCallStack("indexInsideField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1842, 22);
                        outerFollowSet = follow_set$SchemaParser_ccc$1842$22$;
                        try {
                            indexBody(op);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1842:38
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1842$38);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1842:45
                EnumSet followSet112 = null;
                if (outerFollowSet != null) {
                    followSet112 = follow_set$SchemaParser_ccc$1842$45.clone();
                    followSet112.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet112);
            } else {
                pushOntoCallStack("indexInsideField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1841, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1841$7, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1843:5
            field.addIndex(op);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1854:1
    final public void indexBody(ParsedIndex index) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "indexBody";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1854:1
        indexBody thisProduction = null;
        if (buildTree) {
            thisProduction = new indexBody();
            openNodeScope(thisProduction);
        }
        String str;
        int arity;
        long num;
        double threshold;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$indexBody();
            }
            if (nextTokenType() == PREFIX) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1862:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$1862$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(PREFIX, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1862:70
                index.setPrefix(true);
            } else if (nextTokenType() == ALIAS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1863:9
                consumeToken(ALIAS, false, follow_set$SchemaParser_ccc$1863$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1863:17
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1863$17);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1863:25
                pushOntoCallStack("indexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1863, 25);
                try {
                    str = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1863:73
                index.addAlias(str);
            } else if (nextTokenType() == STEMMING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1864:9
                consumeToken(STEMMING, false, follow_set$SchemaParser_ccc$1864$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1864:20
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1864$20);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1864:28
                pushOntoCallStack("indexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1864, 28);
                try {
                    str = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1864:73
                index.setStemming(Stemming.get(str));
            } else if (nextTokenType() == ARITY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1865:9
                consumeToken(ARITY, false, follow_set$SchemaParser_ccc$1865$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1865:17
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1865$17);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1865:25
                pushOntoCallStack("indexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1865, 25);
                try {
                    arity = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1865:73
                index.setArity(arity);
            } else if (nextTokenType() == LOWER_BOUND) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1866:9
                consumeToken(LOWER_BOUND, false, follow_set$SchemaParser_ccc$1866$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1866:23
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1866$23);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1866:31
                pushOntoCallStack("indexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1866, 31);
                try {
                    num = longValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1866:71
                index.setLowerBound(num);
            } else if (nextTokenType() == UPPER_BOUND) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1867:9
                consumeToken(UPPER_BOUND, false, follow_set$SchemaParser_ccc$1867$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1867:23
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1867$23);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1867:31
                pushOntoCallStack("indexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1867, 31);
                try {
                    num = longValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1867:71
                index.setUpperBound(num);
            } else if (nextTokenType() == DENSE_POSTING_LIST_THRESHOLD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1868:9
                consumeToken(DENSE_POSTING_LIST_THRESHOLD, false, follow_set$SchemaParser_ccc$1868$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1868:40
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1868$40);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1868:48
                pushOntoCallStack("indexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1868, 48);
                try {
                    threshold = floatValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1868:73
                index.setDensePostingListThreshold(threshold);
            } else if (nextTokenType() == ENABLE_BM25) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1869:9
                EnumSet followSet143 = null;
                if (outerFollowSet != null) {
                    followSet143 = follow_set$SchemaParser_ccc$1869$9.clone();
                    followSet143.addAll(outerFollowSet);
                }
                consumeToken(ENABLE_BM25, false, followSet143);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1869:70
                index.setEnableBm25(true);
            } else if (nextTokenType() == HNSW) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1870:9
                pushOntoCallStack("indexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1870, 9);
                try {
                    hnswIndex(index);
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1870:70
            } else {
                pushOntoCallStack("indexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1862, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1862$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1874:1
    final public void hnswIndex(ParsedIndex index) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "hnswIndex";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1874:1
        hnswIndex thisProduction = null;
        if (buildTree) {
            thisProduction = new hnswIndex();
            openNodeScope(thisProduction);
        }
        HnswIndexParams.Builder params = new HnswIndexParams.Builder();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$hnswIndex();
            }
            if (scan$SchemaParser_ccc$1879$7()) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1880:8
                consumeToken(HNSW, false, follow_set$SchemaParser_ccc$1880$8);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1880:18
                pushOntoCallStack("hnswIndex", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1880, 18);
                outerFollowSet = follow_set$SchemaParser_ccc$1880$18;
                try {
                    openLbrace();
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1880:31
                while (true) {
                    // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1880:32
                    if (nextTokenType() == MAX_LINKS_PER_NODE || nextTokenType == NEIGHBORS_TO_EXPLORE_AT_INSERT || nextTokenType == MULTI_THREADED_INDEXING) {
                        // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1880:32
                        pushOntoCallStack("hnswIndex", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1880, 32);
                        outerFollowSet = follow_set$SchemaParser_ccc$1880$32;
                        try {
                            hnswIndexBody(params);
                        } finally {
                            popCallStack();
                        }
                    } else if (nextTokenType() == NL) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1880:56
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1880$56);
                    } else {
                        break;
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1880:63
                EnumSet followSet77 = null;
                if (outerFollowSet != null) {
                    followSet77 = follow_set$SchemaParser_ccc$1880$63.clone();
                    followSet77.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet77);
            } else if (nextTokenType() == HNSW) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1881:7
                EnumSet followSet86 = null;
                if (outerFollowSet != null) {
                    followSet86 = follow_set$SchemaParser_ccc$1881$7.clone();
                    followSet86.addAll(outerFollowSet);
                }
                consumeToken(HNSW, false, followSet86);
            } else {
                pushOntoCallStack("hnswIndex", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1879, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1879$7, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1882:5
            index.setHnswIndexParams(params.build());
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1888:1
    final public void hnswIndexBody(HnswIndexParams.Builder params) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "hnswIndexBody";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1888:1
        hnswIndexBody thisProduction = null;
        if (buildTree) {
            thisProduction = new hnswIndexBody();
            openNodeScope(thisProduction);
        }
        int num;
        boolean bool;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$hnswIndexBody();
            }
            if (nextTokenType() == MAX_LINKS_PER_NODE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1894:7
                consumeToken(MAX_LINKS_PER_NODE, false, follow_set$SchemaParser_ccc$1894$7);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1894:28
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1894$28);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1894:36
                pushOntoCallStack("hnswIndexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1894, 36);
                try {
                    num = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1894:55
                params.setMaxLinksPerNode(num);
            } else if (nextTokenType() == NEIGHBORS_TO_EXPLORE_AT_INSERT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1895:9
                consumeToken(NEIGHBORS_TO_EXPLORE_AT_INSERT, false, follow_set$SchemaParser_ccc$1895$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1895:42
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1895$42);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1895:50
                pushOntoCallStack("hnswIndexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1895, 50);
                try {
                    num = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1895:69
                params.setNeighborsToExploreAtInsert(num);
            } else if (nextTokenType() == MULTI_THREADED_INDEXING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1896:9
                consumeToken(MULTI_THREADED_INDEXING, false, follow_set$SchemaParser_ccc$1896$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1896:35
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1896$35);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1896:43
                pushOntoCallStack("hnswIndexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1896, 43);
                try {
                    bool = bool();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1896:57
                params.setMultiThreadedIndexing(bool);
            } else {
                pushOntoCallStack("hnswIndexBody", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1894, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1894$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1899:1
    final public void onnxModelInSchema(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "onnxModelInSchema";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1899:1
        onnxModelInSchema thisProduction = null;
        if (buildTree) {
            thisProduction = new onnxModelInSchema();
            openNodeScope(thisProduction);
        }
        OnnxModel onnxModel;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$onnxModelInSchema();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1904:5
            pushOntoCallStack("onnxModelInSchema", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1904, 5);
            try {
                onnxModel = onnxModel();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1904:29
            schema.add(onnxModel);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1907:1
    final public void onnxModelInProfile(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "onnxModelInProfile";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1907:1
        onnxModelInProfile thisProduction = null;
        if (buildTree) {
            thisProduction = new onnxModelInProfile();
            openNodeScope(thisProduction);
        }
        OnnxModel onnxModel;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$onnxModelInProfile();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1912:5
            pushOntoCallStack("onnxModelInProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1912, 5);
            try {
                onnxModel = onnxModel();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1912:29
            profile.add(onnxModel);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1916:1
    final public OnnxModel onnxModel() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "onnxModel";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1916:1
        onnxModel thisProduction = null;
        if (buildTree) {
            thisProduction = new onnxModel();
            openNodeScope(thisProduction);
        }
        String name;
        OnnxModel onnxModel;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$onnxModel();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1922:7
            consumeToken(ONNX_MODEL, false, follow_set$SchemaParser_ccc$1922$7);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1922:20
            pushOntoCallStack("onnxModel", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1922, 20);
            outerFollowSet = follow_set$SchemaParser_ccc$1922$20;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1922:43
            onnxModel = new OnnxModel(name);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1923:7
            pushOntoCallStack("onnxModel", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1923, 7);
            outerFollowSet = follow_set$SchemaParser_ccc$1923$7;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for OneOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1923:20
            boolean inFirst0 = true;
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1923:21
                if (first_set$SchemaParser_ccc$1923$21.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1923:21
                    pushOntoCallStack("onnxModel", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1923, 21);
                    outerFollowSet = follow_set$SchemaParser_ccc$1923$21$;
                    try {
                        onnxModelItem(onnxModel);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1923:48
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$1923$48);
                } else if (inFirst0) {
                    pushOntoCallStack("onnxModel", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1923, 21);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1923$21$$, parsingStack);
                } else {
                    break;
                }
                inFirst0 = false;
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1923:55
            EnumSet followSet58 = null;
            if (outerFollowSet != null) {
                followSet58 = follow_set$SchemaParser_ccc$1923$55.clone();
                followSet58.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet58);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1924:5
            return onnxModel;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1932:1
    final public void onnxModelItem(OnnxModel onnxModel) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "onnxModelItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1932:1
        onnxModelItem thisProduction = null;
        if (buildTree) {
            thisProduction = new onnxModelItem();
            openNodeScope(thisProduction);
        }
        String path = null;
        int num;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$onnxModelItem();
            }
            if (nextTokenType() == FILE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1939:10
                pushOntoCallStack("onnxModelItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1939, 10);
                try {
                    path = fileItem();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1939:29
                onnxModel.setFileName(path);
            } else if (nextTokenType() == URI) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1940:10
                pushOntoCallStack("onnxModelItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1940, 10);
                try {
                    path = uriItem();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1940:28
                onnxModel.setUri(path);
            } else if (nextTokenType() == GPU_DEVICE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1941:9
                consumeToken(GPU_DEVICE, false, follow_set$SchemaParser_ccc$1941$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1941:22
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1941$22);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1941:30
                pushOntoCallStack("onnxModelItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1941, 30);
                try {
                    num = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1941:49
                onnxModel.setGpuDevice(num, false);
            } else if (nextTokenType() == INTRAOP_THREADS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1942:9
                consumeToken(INTRAOP_THREADS, false, follow_set$SchemaParser_ccc$1942$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1942:27
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1942$27);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1942:35
                pushOntoCallStack("onnxModelItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1942, 35);
                try {
                    num = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1942:54
                onnxModel.setStatelessIntraOpThreads(num);
            } else if (nextTokenType() == INTEROP_THREADS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1943:9
                consumeToken(INTEROP_THREADS, false, follow_set$SchemaParser_ccc$1943$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1943:27
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1943$27);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1943:35
                pushOntoCallStack("onnxModelItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1943, 35);
                try {
                    num = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1943:54
                onnxModel.setStatelessInterOpThreads(num);
            } else if (nextTokenType() == EXECUTION_MODE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1944:9
                consumeToken(EXECUTION_MODE, false, follow_set$SchemaParser_ccc$1944$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1944:26
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$1944$26);
                if (nextTokenType() == PARALLEL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1944:36
                    EnumSet followSet131 = null;
                    if (outerFollowSet != null) {
                        followSet131 = follow_set$SchemaParser_ccc$1944$36.clone();
                        followSet131.addAll(outerFollowSet);
                    }
                    consumeToken(PARALLEL, false, followSet131);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1944:47
                    onnxModel.setStatelessExecutionMode("parallel");
                } else if (nextTokenType() == SEQUENTIAL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1945:37
                    EnumSet followSet142 = null;
                    if (outerFollowSet != null) {
                        followSet142 = follow_set$SchemaParser_ccc$1945$37.clone();
                        followSet142.addAll(outerFollowSet);
                    }
                    consumeToken(SEQUENTIAL, false, followSet142);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1945:50
                    onnxModel.setStatelessExecutionMode("sequential");
                } else {
                    pushOntoCallStack("onnxModelItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1944, 36);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1944$36$, parsingStack);
                }
            } else if (nextTokenType() == ONNX_INPUT_SL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1946:10
                EnumSet followSet160 = null;
                if (outerFollowSet != null) {
                    followSet160 = follow_set$SchemaParser_ccc$1946$10.clone();
                    followSet160.addAll(outerFollowSet);
                }
                consumeToken(ONNX_INPUT_SL, false, followSet160);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1946:27
                String name = lastConsumedToken.toString().substring(5, lastConsumedToken.toString().lastIndexOf(":")).trim();
                if (name.startsWith("\"")) {
                    name = name.substring(1, name.length() - 1);
                }
                String source = lastConsumedToken.toString().substring(lastConsumedToken.toString().lastIndexOf(":") + 1).trim();
                onnxModel.addInputNameMapping(name, source);
            } else if (nextTokenType() == ONNX_OUTPUT_SL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1952:10
                EnumSet followSet178 = null;
                if (outerFollowSet != null) {
                    followSet178 = follow_set$SchemaParser_ccc$1952$10.clone();
                    followSet178.addAll(outerFollowSet);
                }
                consumeToken(ONNX_OUTPUT_SL, false, followSet178);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1952:28
                String name = lastConsumedToken.toString().substring(6, lastConsumedToken.toString().lastIndexOf(":")).trim();
                if (name.startsWith("\"")) {
                    name = name.substring(1, name.length() - 1);
                }
                String as = lastConsumedToken.toString().substring(lastConsumedToken.toString().lastIndexOf(":") + 1).trim();
                onnxModel.addOutputNameMapping(name, as);
            } else {
                pushOntoCallStack("onnxModelItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1939, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1939$9, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1966:1
    final public void rankingConstant(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankingConstant";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1966:1
        rankingConstant thisProduction = null;
        if (buildTree) {
            thisProduction = new rankingConstant();
            openNodeScope(thisProduction);
        }
        String name;
        String path = null;
        DistributableResource.PathType pathType = DistributableResource.PathType.FILE;
        TensorType type = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankingConstant();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1974:7
            consumeToken(CONSTANT, false, follow_set$SchemaParser_ccc$1974$7);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1974:18
            pushOntoCallStack("rankingConstant", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1974, 18);
            outerFollowSet = follow_set$SchemaParser_ccc$1974$18;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1974:41
            pushOntoCallStack("rankingConstant", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1974, 41);
            outerFollowSet = follow_set$SchemaParser_ccc$1974$41;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for OneOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1975:7
            boolean inFirst1 = true;
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1975:8
                if (nextTokenType() == FILE) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1975:8
                    pushOntoCallStack("rankingConstant", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1975, 8);
                    outerFollowSet = follow_set$SchemaParser_ccc$1975$8;
                    try {
                        path = fileItem();
                    } finally {
                        popCallStack();
                    }
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1975:26
                    pathType = DistributableResource.PathType.FILE;
                } else if (nextTokenType() == URI) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1976:10
                    pushOntoCallStack("rankingConstant", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1976, 10);
                    outerFollowSet = follow_set$SchemaParser_ccc$1976$10;
                    try {
                        path = uriItem();
                    } finally {
                        popCallStack();
                    }
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1976:27
                    pathType = DistributableResource.PathType.URI;
                } else if (nextTokenType() == TYPE) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1977:10
                    pushOntoCallStack("rankingConstant", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1977, 10);
                    outerFollowSet = follow_set$SchemaParser_ccc$1977$10;
                    try {
                        type = tensorTypeWithPrefix(rankingConstantErrorMessage(name));
                    } finally {
                        popCallStack();
                    }
                    // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1977:73
                    while (true) {
                        if (!(nextTokenType() == NL)) break;
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1977:74
                        consumeToken(NL, false, follow_set$SchemaParser_ccc$1977$74);
                    }
                } else if (inFirst1) {
                    pushOntoCallStack("rankingConstant", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1975, 8);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1975$8$, parsingStack);
                } else {
                    break;
                }
                inFirst1 = false;
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1979:7
            EnumSet followSet80 = null;
            if (outerFollowSet != null) {
                followSet80 = follow_set$SchemaParser_ccc$1979$7.clone();
                followSet80.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet80);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1981:5
            if (type == null) throw new IllegalArgumentException("constant '" + name + "' must have a type");
            if (path == null) throw new IllegalArgumentException("constant '" + name + "' must have a file");
            schema.add(new RankProfile.Constant(FeatureNames.asConstantFeature(name), type, path, pathType));
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1988:1
    final public String fileItem() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fileItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1988:1
        fileItem thisProduction = null;
        if (buildTree) {
            thisProduction = new fileItem();
            openNodeScope(thisProduction);
        }
        String path;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fileItem();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:4
            consumeToken(FILE, false, follow_set$SchemaParser_ccc$1993$4);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:11
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$1993$11);
            if (nextTokenType() == FILE_PATH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:21
                EnumSet followSet39 = null;
                if (outerFollowSet != null) {
                    followSet39 = follow_set$SchemaParser_ccc$1993$21.clone();
                    followSet39.addAll(outerFollowSet);
                }
                consumeToken(FILE_PATH, false, followSet39);
            } else if (nextTokenType() == STRING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:35
                EnumSet followSet48 = null;
                if (outerFollowSet != null) {
                    followSet48 = follow_set$SchemaParser_ccc$1993$35.clone();
                    followSet48.addAll(outerFollowSet);
                }
                consumeToken(STRING, false, followSet48);
            } else if (nextTokenType() == IDENTIFIER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:46
                EnumSet followSet57 = null;
                if (outerFollowSet != null) {
                    followSet57 = follow_set$SchemaParser_ccc$1993$46.clone();
                    followSet57.addAll(outerFollowSet);
                }
                consumeToken(IDENTIFIER, false, followSet57);
            } else {
                pushOntoCallStack("fileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1993, 21);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$1993$21$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:60
            path = com.yahoo.path.Path.fromString(lastConsumedToken.toString()).getRelative();
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:147
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:151
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:152
                EnumSet followSet74 = null;
                if (outerFollowSet != null) {
                    followSet74 = follow_set$SchemaParser_ccc$1993$152.clone();
                    followSet74.addAll(outerFollowSet);
                }
                consumeToken(NL, false, followSet74);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:160
            return path;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1996:1
    final public String uriItem() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "uriItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1996:1
        uriItem thisProduction = null;
        if (buildTree) {
            thisProduction = new uriItem();
            openNodeScope(thisProduction);
        }
        String path;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$uriItem();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2001:4
            consumeToken(URI, false, follow_set$SchemaParser_ccc$2001$4);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2001:10
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2001$10);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2001:20
            EnumSet followSet35 = null;
            if (outerFollowSet != null) {
                followSet35 = follow_set$SchemaParser_ccc$2001$20.clone();
                followSet35.addAll(outerFollowSet);
            }
            consumeToken(URI_PATH, false, followSet35);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2001:33
            path = lastConsumedToken.toString();
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2001:74
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2001:75
                EnumSet followSet50 = null;
                if (outerFollowSet != null) {
                    followSet50 = follow_set$SchemaParser_ccc$2001$75.clone();
                    followSet50.addAll(outerFollowSet);
                }
                consumeToken(NL, false, followSet50);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2001:83
            return path;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2004:1
    final public String rankingConstantErrorMessage(String name) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankingConstantErrorMessage";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2004:1
        rankingConstantErrorMessage thisProduction = null;
        if (buildTree) {
            thisProduction = new rankingConstantErrorMessage();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2006:5
            return "For ranking constant ' " + name + "'";
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2015:1
    final public void rankProfile(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankProfile";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2015:1
        rankProfile thisProduction = null;
        if (buildTree) {
            thisProduction = new rankProfile();
            openNodeScope(thisProduction);
        }
        String name;
        ParsedRankProfile profile;
        Token identifierToken = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankProfile();
            }
            if (nextTokenType() == MODEL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2022:7
                consumeToken(MODEL, false, follow_set$SchemaParser_ccc$2022$7);
            } else if (nextTokenType() == RANK_PROFILE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2022:17
                consumeToken(RANK_PROFILE, false, follow_set$SchemaParser_ccc$2022$17);
            } else {
                pushOntoCallStack("rankProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2022, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2022$7$, parsingStack);
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2022:34
            pushOntoCallStack("rankProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2022, 34);
            outerFollowSet = follow_set$SchemaParser_ccc$2022$34;
            try {
                name = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2023:5
            profile = new ParsedRankProfile(name);
            identifierToken = lastConsumedToken;
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2024:5
            if (nextTokenType() == INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2024:6
                pushOntoCallStack("rankProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2024, 6);
                outerFollowSet = follow_set$SchemaParser_ccc$2024$6;
                try {
                    inheritsRankProfile(profile);
                } finally {
                    popCallStack();
                }
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2025:5
            pushOntoCallStack("rankProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2025, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$2025$5;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2025:18
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2025:19
                if (first_set$SchemaParser_ccc$2025$19.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2025:19
                    pushOntoCallStack("rankProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2025, 19);
                    outerFollowSet = follow_set$SchemaParser_ccc$2025$19$;
                    try {
                        rankProfileItem(schema, profile);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2025:54
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2025$54);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2025:61
            EnumSet followSet82 = null;
            if (outerFollowSet != null) {
                followSet82 = follow_set$SchemaParser_ccc$2025$61.clone();
                followSet82.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet82);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2026:5
            if (schema != null) {
                try {
                    schema.addRankProfile(profile);
                } catch (IllegalArgumentException ex) {
                    if (identifierToken != null) {
                        identifierToken.addIllegalArugmentException(ex);
                    }
                }
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2044:1
    final public void rankProfileItem(ParsedSchema schema, ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankProfileItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2044:1
        rankProfileItem thisProduction = null;
        if (buildTree) {
            thisProduction = new rankProfileItem();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankProfileItem();
            }
            if (nextTokenType() == FIRST_PHASE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2047:9
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2047, 9);
                try {
                    firstPhase(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == RANK_TYPE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2048:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2048, 10);
                try {
                    fieldRankType(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == WEIGHT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2049:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2049, 10);
                try {
                    fieldWeight(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == RANK) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2050:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2050, 10);
                try {
                    fieldRankFilter(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MATCH_PHASE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2051:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2051, 10);
                try {
                    matchPhase(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == DIVERSITY) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2052:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2052, 10);
                try {
                    diversityElm(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == FUNCTION || nextTokenType == MACRO) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2053:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2053, 10);
                try {
                    functionElm(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MUTATE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2054:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2054, 10);
                try {
                    mutateElm(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == IGNORE_DEFAULT_RANK_FEATURES) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2055:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2055, 10);
                try {
                    ignoreRankFeatures(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NUM_THREADS_PER_SEARCH) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2056:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2056, 10);
                try {
                    numThreadsPerSearch(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MIN_HITS_PER_THREAD) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2057:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2057, 10);
                try {
                    minHitsPerThread(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == NUM_SEARCH_PARTITIONS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2058:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2058, 10);
                try {
                    numSearchPartitions(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == TERMWISE_LIMIT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2059:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2059, 10);
                try {
                    termwiseLimit(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == POST_FILTER_THRESHOLD) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2060:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2060, 10);
                try {
                    postFilterThreshold(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == APPROXIMATE_THRESHOLD) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2061:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2061, 10);
                try {
                    approximateThreshold(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == TARGET_HITS_MAX_ADJUSTMENT_FACTOR) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2062:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2062, 10);
                try {
                    targetHitsMaxAdjustmentFactor(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == RANK_PROPERTIES) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2063:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2063, 10);
                try {
                    rankProperties(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == SECOND_PHASE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2064:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2064, 10);
                try {
                    secondPhase(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == GLOBAL_PHASE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2065:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2065, 10);
                try {
                    globalPhase(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == INPUTS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2066:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2066, 10);
                try {
                    inputsElm(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == CONSTANTS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2067:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2067, 10);
                try {
                    constantsElm(schema, profile);
                } finally {
                    popCallStack();
                }
            } else if (first_set$SchemaParser_ccc$2068$10.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2068:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2068, 10);
                try {
                    featureListElm(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == ONNX_MODEL) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2072:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2072, 10);
                try {
                    onnxModelInProfile(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == STRICT) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2073:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2073, 10);
                try {
                    strictElm(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == SIGNIFICANCE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2074:10
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2074, 10);
                try {
                    significanceElm(profile);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("rankProfileItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2047, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2047$9, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2083:1
    final public void inheritsRankProfile(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inheritsRankProfile";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2083:1
        inheritsRankProfile thisProduction = null;
        if (buildTree) {
            thisProduction = new inheritsRankProfile();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$inheritsRankProfile();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2088:5
            consumeToken(INHERITS, false, follow_set$SchemaParser_ccc$2088$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2088:16
            pushOntoCallStack("inheritsRankProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2088, 16);
            if (outerFollowSet != null) {
                EnumSet newFollowSet = follow_set$SchemaParser_ccc$2088$16.clone();
                newFollowSet.addAll(outerFollowSet);
                outerFollowSet = newFollowSet;
            }
            try {
                name = identifierWithDashStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2088:45
            profile.inherit(name);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2089:5
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2089:7
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$2089$7);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2089:16
                pushOntoCallStack("inheritsRankProfile", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2089, 16);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$2089$16.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    name = identifierWithDashStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2089:45
                profile.inherit(name);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2097:1
    final public void mutateElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "mutateElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2097:1
        mutateElm thisProduction = null;
        if (buildTree) {
            thisProduction = new mutateElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$mutateElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2099:5
            consumeToken(MUTATE, false, follow_set$SchemaParser_ccc$2099$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2099:14
            pushOntoCallStack("mutateElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2099, 14);
            outerFollowSet = follow_set$SchemaParser_ccc$2099$14;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for OneOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2099:27
            while (true) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2099:28
                pushOntoCallStack("mutateElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2099, 28);
                outerFollowSet = follow_set$SchemaParser_ccc$2099$28;
                try {
                    mutate_operation(profile);
                } finally {
                    popCallStack();
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2099:54
                consumeToken(NL, false, follow_set$SchemaParser_ccc$2099$54);
                if (!(nextTokenType() == ON_MATCH || nextTokenType == ON_FIRST_PHASE || nextTokenType == ON_SECOND_PHASE || nextTokenType == ON_SUMMARY)) break;
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2099:61
            EnumSet followSet37 = null;
            if (outerFollowSet != null) {
                followSet37 = follow_set$SchemaParser_ccc$2099$61.clone();
                followSet37.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet37);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2102:1
    final public void mutate_operation(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "mutate_operation";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2102:1
        mutate_operation thisProduction = null;
        if (buildTree) {
            thisProduction = new mutate_operation();
            openNodeScope(thisProduction);
        }
        String attribute, operation;
        RankProfile.MutateOperation.Phase phase;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$mutate_operation();
            }
            if (nextTokenType() == ON_MATCH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2108:6
                consumeToken(ON_MATCH, false, follow_set$SchemaParser_ccc$2108$6);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2108:17
                phase = RankProfile.MutateOperation.Phase.on_match;
            } else if (nextTokenType() == ON_FIRST_PHASE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2109:6
                consumeToken(ON_FIRST_PHASE, false, follow_set$SchemaParser_ccc$2109$6);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2109:23
                phase = RankProfile.MutateOperation.Phase.on_first_phase;
            } else if (nextTokenType() == ON_SECOND_PHASE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2110:6
                consumeToken(ON_SECOND_PHASE, false, follow_set$SchemaParser_ccc$2110$6);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2110:24
                phase = RankProfile.MutateOperation.Phase.on_second_phase;
            } else if (nextTokenType() == ON_SUMMARY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2111:6
                consumeToken(ON_SUMMARY, false, follow_set$SchemaParser_ccc$2111$6);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2111:19
                phase = RankProfile.MutateOperation.Phase.on_summary;
            } else {
                pushOntoCallStack("mutate_operation", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2108, 6);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2108$6$, parsingStack);
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2113:4
            pushOntoCallStack("mutate_operation", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2113, 4);
            outerFollowSet = follow_set$SchemaParser_ccc$2113$4;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2113:17
            pushOntoCallStack("mutate_operation", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2113, 17);
            outerFollowSet = follow_set$SchemaParser_ccc$2113$17;
            try {
                attribute = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2113:45
            pushOntoCallStack("mutate_operation", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2113, 45);
            outerFollowSet = follow_set$SchemaParser_ccc$2113$45;
            try {
                operation = mutate_expr();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2113:71
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2113:72
                consumeToken(NL, false, follow_set$SchemaParser_ccc$2113$72);
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2113:79
            EnumSet followSet84 = null;
            if (outerFollowSet != null) {
                followSet84 = follow_set$SchemaParser_ccc$2113$79.clone();
                followSet84.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet84);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2114:4
            profile.addMutateOperation(phase, attribute, operation);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2117:1
    final public String mutate_expr() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "mutate_expr";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2117:1
        mutate_expr thisProduction = null;
        if (buildTree) {
            thisProduction = new mutate_expr();
            openNodeScope(thisProduction);
        }
        String op;
        Number constant = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$mutate_expr();
            }
            if (nextTokenType() == _TOKEN_184) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2123:7
                consumeToken(_TOKEN_184, false, follow_set$SchemaParser_ccc$2123$7);
            } else if (nextTokenType() == _TOKEN_185) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2123:14
                consumeToken(_TOKEN_185, false, follow_set$SchemaParser_ccc$2123$14);
            } else if (nextTokenType() == _TOKEN_186) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2123:21
                consumeToken(_TOKEN_186, false, follow_set$SchemaParser_ccc$2123$21);
            } else {
                pushOntoCallStack("mutate_expr", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2123, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2123$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2123:26
            op = lastConsumedToken.toString();
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2123:65
            pushOntoCallStack("mutate_expr", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2123, 65);
            try {
                constant = number();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2124:5
            return constant != null ? (op + constant) : op;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2132:1
    final public void functionElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "functionElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2132:1
        functionElm thisProduction = null;
        if (buildTree) {
            thisProduction = new functionElm();
            openNodeScope(thisProduction);
        }
        String name, expression, parameter;
        boolean inline = false;
        ParsedRankFunction func;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$functionElm();
            }
            if (nextTokenType() == FUNCTION) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2139:10
                consumeToken(FUNCTION, false, follow_set$SchemaParser_ccc$2139$10);
            } else if (nextTokenType() == MACRO) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2139:23
                consumeToken(MACRO, false, follow_set$SchemaParser_ccc$2139$23);
            } else {
                pushOntoCallStack("functionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2139, 10);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2139$10$, parsingStack);
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2139:33
            pushOntoCallStack("functionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2139, 33);
            outerFollowSet = follow_set$SchemaParser_ccc$2139$33;
            try {
                inline = inlineElm();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2139:54
            pushOntoCallStack("functionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2139, 54);
            outerFollowSet = follow_set$SchemaParser_ccc$2139$54;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2139:77
            if (nextTokenType() == $) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2139:79
                consumeToken($, false, follow_set$SchemaParser_ccc$2139$79);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2139:83
                name = name + lastConsumedToken.toString();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2140:7
            consumeToken(_TOKEN_188, false, follow_set$SchemaParser_ccc$2140$7);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2141:46
            func = new ParsedRankFunction(name);
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2142:11
            if (first_set$SchemaParser_ccc$2142$13.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2142:13
                pushOntoCallStack("functionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2142, 13);
                outerFollowSet = follow_set$SchemaParser_ccc$2142$13$;
                try {
                    parameter = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2142:49
                func.addParameter(parameter);
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2143:11
                while (true) {
                    if (!(nextTokenType() == COMMA)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2143:13
                    consumeToken(COMMA, false, follow_set$SchemaParser_ccc$2143$13);
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2143:21
                    pushOntoCallStack("functionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2143, 21);
                    outerFollowSet = follow_set$SchemaParser_ccc$2143$21;
                    try {
                        parameter = identifierStr();
                    } finally {
                        popCallStack();
                    }
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2143:49
                    func.addParameter(parameter);
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2144:7
            consumeToken(_TOKEN_189, false, follow_set$SchemaParser_ccc$2144$7);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2145:7
            pushOntoCallStack("functionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2145, 7);
            outerFollowSet = follow_set$SchemaParser_ccc$2145$7;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2145:20
            pushOntoCallStack("functionElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2145, 20);
            outerFollowSet = follow_set$SchemaParser_ccc$2145$20;
            try {
                expression = expression();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2145:46
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2145:47
                consumeToken(NL, false, follow_set$SchemaParser_ccc$2145$47);
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2145:54
            EnumSet followSet127 = null;
            if (outerFollowSet != null) {
                followSet127 = follow_set$SchemaParser_ccc$2145$54.clone();
                followSet127.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet127);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2146:5
            func.setExpression(expression);
            func.setInline(inline);
            var old = profile.addOrReplaceFunction(func);
            if (old != null) {
                throw new IllegalArgumentException("Function '" + func.name() + "' is defined twice in rank profile '" + profile.name() + "'");
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2158:1
    final public boolean inlineElm() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inlineElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2158:1
        inlineElm thisProduction = null;
        if (buildTree) {
            thisProduction = new inlineElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2160:5
            if (nextTokenType() == INLINE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2160:7
                EnumSet followSet21 = null;
                if (outerFollowSet != null) {
                    followSet21 = follow_set$SchemaParser_ccc$2160$7.clone();
                    followSet21.addAll(outerFollowSet);
                }
                consumeToken(INLINE, false, followSet21);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2160:16
                return true;
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2161:5
            return false;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2170:1
    final public void matchPhase(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "matchPhase";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2170:1
        matchPhase thisProduction = null;
        if (buildTree) {
            thisProduction = new matchPhase();
            openNodeScope(thisProduction);
        }
        MatchPhaseSettings settings = new MatchPhaseSettings();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$matchPhase();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2175:5
            consumeToken(MATCH_PHASE, false, follow_set$SchemaParser_ccc$2175$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2175:19
            pushOntoCallStack("matchPhase", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2175, 19);
            outerFollowSet = follow_set$SchemaParser_ccc$2175$19;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2175:32
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2175:33
                if (first_set$SchemaParser_ccc$2175$33.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2175:33
                    pushOntoCallStack("matchPhase", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2175, 33);
                    outerFollowSet = follow_set$SchemaParser_ccc$2175$33$;
                    try {
                        matchPhaseItem(profile, settings);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2175:69
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2175$69);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2175:76
            EnumSet followSet45 = null;
            if (outerFollowSet != null) {
                followSet45 = follow_set$SchemaParser_ccc$2175$76.clone();
                followSet45.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet45);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2176:5
            settings.checkValid();
            profile.setMatchPhase(settings);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2182:1
    final public void matchPhaseItem(ParsedRankProfile profile, MatchPhaseSettings settings) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "matchPhaseItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2182:1
        matchPhaseItem thisProduction = null;
        if (buildTree) {
            thisProduction = new matchPhaseItem();
            openNodeScope(thisProduction);
        }
        String str;
        int num;
        double multiplier;
        double coverage;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$matchPhaseItem();
            }
            if (nextTokenType() == ATTRIBUTE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2190:7
                consumeToken(ATTRIBUTE, false, follow_set$SchemaParser_ccc$2190$7);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2190:19
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2190$19);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2190:27
                pushOntoCallStack("matchPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2190, 27);
                try {
                    str = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2190:49
                settings.setAttribute(str);
            } else if (nextTokenType() == DIVERSITY) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2191:9
                pushOntoCallStack("matchPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2191, 9);
                try {
                    diversityDeprecated(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == ORDER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2192:9
                consumeToken(ORDER, false, follow_set$SchemaParser_ccc$2192$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2192:17
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2192$17);
                if (nextTokenType() == ASCENDING) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2192:27
                    EnumSet followSet69 = null;
                    if (outerFollowSet != null) {
                        followSet69 = follow_set$SchemaParser_ccc$2192$27.clone();
                        followSet69.addAll(outerFollowSet);
                    }
                    consumeToken(ASCENDING, false, followSet69);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2192:39
                    settings.setAscending(true);
                } else if (nextTokenType() == DESCENDING) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2193:29
                    EnumSet followSet80 = null;
                    if (outerFollowSet != null) {
                        followSet80 = follow_set$SchemaParser_ccc$2193$29.clone();
                        followSet80.addAll(outerFollowSet);
                    }
                    consumeToken(DESCENDING, false, followSet80);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2193:42
                    settings.setAscending(false);
                } else {
                    pushOntoCallStack("matchPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2192, 27);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2192$27$, parsingStack);
                }
            } else if (nextTokenType() == MAX_HITS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2194:9
                consumeToken(MAX_HITS, false, follow_set$SchemaParser_ccc$2194$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2194:20
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2194$20);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2194:28
                pushOntoCallStack("matchPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2194, 28);
                try {
                    num = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2194:47
                settings.setMaxHits(num);
            } else if (nextTokenType() == MAX_FILTER_COVERAGE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2195:9
                consumeToken(MAX_FILTER_COVERAGE, false, follow_set$SchemaParser_ccc$2195$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2195:31
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2195$31);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2195:39
                pushOntoCallStack("matchPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2195, 39);
                try {
                    coverage = floatValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2195:63
                settings.setMaxFilterCoverage(coverage);
            } else if (nextTokenType() == EVALUATION_POINT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2196:9
                consumeToken(EVALUATION_POINT, false, follow_set$SchemaParser_ccc$2196$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2196:28
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2196$28);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2196:36
                pushOntoCallStack("matchPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2196, 36);
                try {
                    multiplier = floatValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2196:62
                settings.setEvaluationPoint(multiplier);
            } else if (nextTokenType() == PRE_POST_FILTER_TIPPING_POINT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2197:9
                consumeToken(PRE_POST_FILTER_TIPPING_POINT, false, follow_set$SchemaParser_ccc$2197$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2197:41
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2197$41);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2197:49
                pushOntoCallStack("matchPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2197, 49);
                try {
                    multiplier = floatValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2197:75
                settings.setPrePostFilterTippingPoint(multiplier);
            } else {
                pushOntoCallStack("matchPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2190, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2190$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2207:1
    final public void diversityElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "diversityElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2207:1
        diversityElm thisProduction = null;
        if (buildTree) {
            thisProduction = new diversityElm();
            openNodeScope(thisProduction);
        }
        DiversitySettings settings = new DiversitySettings();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$diversityElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2212:5
            consumeToken(DIVERSITY, false, follow_set$SchemaParser_ccc$2212$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2212:17
            pushOntoCallStack("diversityElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2212, 17);
            outerFollowSet = follow_set$SchemaParser_ccc$2212$17;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2212:30
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2212:31
                if (nextTokenType() == MIN_GROUPS || nextTokenType == CUTOFF_FACTOR || nextTokenType == CUTOFF_STRATEGY || nextTokenType == ATTRIBUTE) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2212:31
                    pushOntoCallStack("diversityElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2212, 31);
                    outerFollowSet = follow_set$SchemaParser_ccc$2212$31;
                    try {
                        diversityItem(settings);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2212:57
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2212$57);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2212:64
            EnumSet followSet45 = null;
            if (outerFollowSet != null) {
                followSet45 = follow_set$SchemaParser_ccc$2212$64.clone();
                followSet45.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet45);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2213:5
            profile.setDiversity(settings);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2218:1
    final public void diversityDeprecated(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "diversityDeprecated";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2218:1
        diversityDeprecated thisProduction = null;
        if (buildTree) {
            thisProduction = new diversityDeprecated();
            openNodeScope(thisProduction);
        }
        DiversitySettings settings = new DiversitySettings();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$diversityDeprecated();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2223:5
            consumeToken(DIVERSITY, false, follow_set$SchemaParser_ccc$2223$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2223:17
            pushOntoCallStack("diversityDeprecated", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2223, 17);
            outerFollowSet = follow_set$SchemaParser_ccc$2223$17;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2223:30
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2223:31
                if (nextTokenType() == MIN_GROUPS || nextTokenType == CUTOFF_FACTOR || nextTokenType == CUTOFF_STRATEGY || nextTokenType == ATTRIBUTE) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2223:31
                    pushOntoCallStack("diversityDeprecated", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2223, 31);
                    outerFollowSet = follow_set$SchemaParser_ccc$2223$31;
                    try {
                        diversityItem(settings);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2223:57
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2223$57);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2223:64
            EnumSet followSet45 = null;
            if (outerFollowSet != null) {
                followSet45 = follow_set$SchemaParser_ccc$2223$64.clone();
                followSet45.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet45);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2224:5
            profile.setDiversity(settings);
            // deployLogger.logApplicationPackage(Level.WARNING, "'diversity is deprecated inside 'match-phase'. Specify it at 'rank-profile' level.");
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2230:1
    final public void diversityItem(DiversitySettings settings) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "diversityItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2230:1
        diversityItem thisProduction = null;
        if (buildTree) {
            thisProduction = new diversityItem();
            openNodeScope(thisProduction);
        }
        String str;
        int num;
        double multiplier;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$diversityItem();
            }
            if (nextTokenType() == ATTRIBUTE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2237:9
                consumeToken(ATTRIBUTE, false, follow_set$SchemaParser_ccc$2237$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2237:21
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2237$21);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2237:29
                pushOntoCallStack("diversityItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2237, 29);
                try {
                    str = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2237:51
                settings.setAttribute(str);
            } else if (nextTokenType() == MIN_GROUPS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2238:9
                consumeToken(MIN_GROUPS, false, follow_set$SchemaParser_ccc$2238$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2238:22
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2238$22);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2238:30
                pushOntoCallStack("diversityItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2238, 30);
                try {
                    num = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2238:49
                settings.setMinGroups(num);
            } else if (nextTokenType() == CUTOFF_FACTOR) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2239:9
                consumeToken(CUTOFF_FACTOR, false, follow_set$SchemaParser_ccc$2239$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2239:25
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2239$25);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2239:33
                pushOntoCallStack("diversityItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2239, 33);
                try {
                    multiplier = floatValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2239:59
                settings.setCutoffFactor(multiplier);
            } else if (nextTokenType() == CUTOFF_STRATEGY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2240:9
                consumeToken(CUTOFF_STRATEGY, false, follow_set$SchemaParser_ccc$2240$9);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2240:27
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2240$27);
                if (nextTokenType() == STRICT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2241:13
                    EnumSet followSet97 = null;
                    if (outerFollowSet != null) {
                        followSet97 = follow_set$SchemaParser_ccc$2241$13.clone();
                        followSet97.addAll(outerFollowSet);
                    }
                    consumeToken(STRICT, false, followSet97);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2241:22
                    settings.setCutoffStrategy(Diversity.CutoffStrategy.strict);
                } else if (nextTokenType() == LOOSE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2242:13
                    EnumSet followSet108 = null;
                    if (outerFollowSet != null) {
                        followSet108 = follow_set$SchemaParser_ccc$2242$13.clone();
                        followSet108.addAll(outerFollowSet);
                    }
                    consumeToken(LOOSE, false, followSet108);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2242:22
                    settings.setCutoffStrategy(Diversity.CutoffStrategy.loose);
                } else {
                    pushOntoCallStack("diversityItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2241, 13);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2241$13$, parsingStack);
                }
            } else {
                pushOntoCallStack("diversityItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2237, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2237$9$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2254:1
    final public void firstPhase(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "firstPhase";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2254:1
        firstPhase thisProduction = null;
        if (buildTree) {
            thisProduction = new firstPhase();
            openNodeScope(thisProduction);
        }
        String exp;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$firstPhase();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2259:5
            consumeToken(FIRST_PHASE, false, follow_set$SchemaParser_ccc$2259$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2259:19
            pushOntoCallStack("firstPhase", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2259, 19);
            outerFollowSet = follow_set$SchemaParser_ccc$2259$19;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2259:32
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2259:33
                if (nextTokenType() == KEEP_RANK_COUNT || nextTokenType == RANK_SCORE_DROP_LIMIT || nextTokenType == EXPRESSION_SL || nextTokenType == EXPRESSION_ML) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2259:33
                    pushOntoCallStack("firstPhase", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2259, 33);
                    outerFollowSet = follow_set$SchemaParser_ccc$2259$33;
                    try {
                        firstPhaseItem(profile);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2259:59
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2259$59);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2259:66
            EnumSet followSet45 = null;
            if (outerFollowSet != null) {
                followSet45 = follow_set$SchemaParser_ccc$2259$66.clone();
                followSet45.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet45);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2262:1
    final public void firstPhaseItem(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "firstPhaseItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2262:1
        firstPhaseItem thisProduction = null;
        if (buildTree) {
            thisProduction = new firstPhaseItem();
            openNodeScope(thisProduction);
        }
        String expression;
        int keepRankCount;
        double dropLimit;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$firstPhaseItem();
            }
            if (nextTokenType() == EXPRESSION_SL || nextTokenType == EXPRESSION_ML) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2269:7
                pushOntoCallStack("firstPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2269, 7);
                try {
                    expression = expression();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2269:63
                profile.setFirstPhaseRanking(expression);
            } else if (nextTokenType() == KEEP_RANK_COUNT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2270:8
                consumeToken(KEEP_RANK_COUNT, false, follow_set$SchemaParser_ccc$2270$8);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2270:26
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2270$26);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2270:34
                pushOntoCallStack("firstPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2270, 34);
                try {
                    keepRankCount = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2270:68
                profile.setKeepRankCount(keepRankCount);
            } else if (nextTokenType() == RANK_SCORE_DROP_LIMIT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2271:8
                consumeToken(RANK_SCORE_DROP_LIMIT, false, follow_set$SchemaParser_ccc$2271$8);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2271:32
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2271$32);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2271:40
                pushOntoCallStack("firstPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2271, 40);
                try {
                    dropLimit = floatValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2271:66
                profile.setRankScoreDropLimit(dropLimit);
            } else {
                pushOntoCallStack("firstPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2269, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2269$7, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2280:1
    final public void secondPhase(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "secondPhase";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2280:1
        secondPhase thisProduction = null;
        if (buildTree) {
            thisProduction = new secondPhase();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$secondPhase();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2282:5
            consumeToken(SECOND_PHASE, false, follow_set$SchemaParser_ccc$2282$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2282:20
            pushOntoCallStack("secondPhase", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2282, 20);
            outerFollowSet = follow_set$SchemaParser_ccc$2282$20;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2282:33
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2282:34
                if (nextTokenType() == RERANK_COUNT || nextTokenType == RANK_SCORE_DROP_LIMIT || nextTokenType == EXPRESSION_SL || nextTokenType == EXPRESSION_ML) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2282:34
                    pushOntoCallStack("secondPhase", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2282, 34);
                    outerFollowSet = follow_set$SchemaParser_ccc$2282$34;
                    try {
                        secondPhaseItem(profile);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2282:61
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2282$61);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2282:68
            EnumSet followSet45 = null;
            if (outerFollowSet != null) {
                followSet45 = follow_set$SchemaParser_ccc$2282$68.clone();
                followSet45.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet45);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2290:1
    final public void secondPhaseItem(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "secondPhaseItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2290:1
        secondPhaseItem thisProduction = null;
        if (buildTree) {
            thisProduction = new secondPhaseItem();
            openNodeScope(thisProduction);
        }
        String expression;
        int rerankCount;
        double dropLimit;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$secondPhaseItem();
            }
            if (nextTokenType() == EXPRESSION_SL || nextTokenType == EXPRESSION_ML) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2297:7
                pushOntoCallStack("secondPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2297, 7);
                try {
                    expression = expression();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2297:55
                profile.setSecondPhaseRanking(expression);
            } else if (nextTokenType() == RERANK_COUNT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2298:8
                consumeToken(RERANK_COUNT, false, follow_set$SchemaParser_ccc$2298$8);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2298:23
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2298$23);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2298:31
                pushOntoCallStack("secondPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2298, 31);
                try {
                    rerankCount = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2298:59
                profile.setRerankCount(rerankCount);
            } else if (nextTokenType() == RANK_SCORE_DROP_LIMIT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2299:8
                consumeToken(RANK_SCORE_DROP_LIMIT, false, follow_set$SchemaParser_ccc$2299$8);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2299:32
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2299$32);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2299:40
                pushOntoCallStack("secondPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2299, 40);
                try {
                    dropLimit = floatValue();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2299:66
                profile.setSecondPhaseRankScoreDropLimit(dropLimit);
            } else {
                pushOntoCallStack("secondPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2297, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2297$7, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2308:1
    final public void globalPhase(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "globalPhase";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2308:1
        globalPhase thisProduction = null;
        if (buildTree) {
            thisProduction = new globalPhase();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$globalPhase();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2310:5
            consumeToken(GLOBAL_PHASE, false, follow_set$SchemaParser_ccc$2310$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2310:20
            pushOntoCallStack("globalPhase", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2310, 20);
            outerFollowSet = follow_set$SchemaParser_ccc$2310$20;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2310:33
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2310:34
                if (nextTokenType() == RERANK_COUNT || nextTokenType == EXPRESSION_SL || nextTokenType == EXPRESSION_ML) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2310:34
                    pushOntoCallStack("globalPhase", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2310, 34);
                    outerFollowSet = follow_set$SchemaParser_ccc$2310$34;
                    try {
                        globalPhaseItem(profile);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2310:61
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2310$61);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2310:68
            EnumSet followSet45 = null;
            if (outerFollowSet != null) {
                followSet45 = follow_set$SchemaParser_ccc$2310$68.clone();
                followSet45.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet45);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2318:1
    final public void globalPhaseItem(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "globalPhaseItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2318:1
        globalPhaseItem thisProduction = null;
        if (buildTree) {
            thisProduction = new globalPhaseItem();
            openNodeScope(thisProduction);
        }
        String expression;
        int rerankCount;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$globalPhaseItem();
            }
            if (nextTokenType() == EXPRESSION_SL || nextTokenType == EXPRESSION_ML) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2324:7
                pushOntoCallStack("globalPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2324, 7);
                try {
                    expression = expression();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2324:55
                profile.setGlobalPhaseExpression(expression);
            } else if (nextTokenType() == RERANK_COUNT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2325:8
                consumeToken(RERANK_COUNT, false, follow_set$SchemaParser_ccc$2325$8);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2325:23
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2325$23);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2325:31
                pushOntoCallStack("globalPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2325, 31);
                try {
                    rerankCount = integerElm();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2325:59
                profile.setGlobalPhaseRerankCount(rerankCount);
            } else {
                pushOntoCallStack("globalPhaseItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2324, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2324$7, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2332:1
    final public void inputsElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inputsElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2332:1
        inputsElm thisProduction = null;
        if (buildTree) {
            thisProduction = new inputsElm();
            openNodeScope(thisProduction);
        }
        Reference reference;
        TensorType type;
        List seenInputs = new ArrayList<>();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$inputsElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2339:5
            consumeToken(INPUTS, false, follow_set$SchemaParser_ccc$2339$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2339:14
            consumeToken(LBRACE, false, follow_set$SchemaParser_ccc$2339$14);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2339:23
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2339:24
                consumeToken(NL, false, follow_set$SchemaParser_ccc$2339$24);
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2340:5
            while (true) {
                if (!(first_set$SchemaParser_ccc$2341$9.contains(nextTokenType()))) break;
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2341:9
                pushOntoCallStack("inputsElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2341, 9);
                outerFollowSet = follow_set$SchemaParser_ccc$2341$9$;
                try {
                    reference = inputElm(profile);
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2341:39
                seenInputs.add(reference);
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2342:9
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2342:10
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2342$10);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2342:15
                    seenInputs.add(null);
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2344:5
            EnumSet followSet61 = null;
            if (outerFollowSet != null) {
                followSet61 = follow_set$SchemaParser_ccc$2344$5.clone();
                followSet61.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet61);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2345:5
            Reference last = null;
            for (Reference current : seenInputs) {
                if (last != null && current != null) {
                    //deployLogger.logApplicationPackage(Level.WARNING, "Expected newline between inputs " + last + " and " + current);
                }
                last = current;
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2356:1
    final public Reference inputElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inputElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2356:1
        inputElm thisProduction = null;
        if (buildTree) {
            thisProduction = new inputElm();
            openNodeScope(thisProduction);
        }
        Reference reference;
        InputType type = new InputType(TensorType.empty, false);
        Tensor defaultValue = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$inputElm();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2363:5
            pushOntoCallStack("inputElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2363, 5);
            if (outerFollowSet != null) {
                EnumSet newFollowSet = follow_set$SchemaParser_ccc$2363$5.clone();
                newFollowSet.addAll(outerFollowSet);
                outerFollowSet = newFollowSet;
            }
            try {
                reference = inputName();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2363:29
            if (first_set$SchemaParser_ccc$2363$31.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2363:31
                pushOntoCallStack("inputElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2363, 31);
                if (outerFollowSet != null) {
                    EnumSet newFollowSet = follow_set$SchemaParser_ccc$2363$31$.clone();
                    newFollowSet.addAll(outerFollowSet);
                    outerFollowSet = newFollowSet;
                }
                try {
                    type = valueType(reference);
                } finally {
                    popCallStack();
                }
            }
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2363:61
            if (nextTokenType() == COLON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2363:63
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2363$63);
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2363:71
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2363:72
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2363$72);
                }
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2363:79
                pushOntoCallStack("inputElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2363, 79);
                try {
                    defaultValue = tensorValue(type.tensorType());
                } finally {
                    popCallStack();
                }
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2364:5
            profile.addInput(reference, new RankProfile.Input(reference, type, Optional.ofNullable(defaultValue)));
            return reference;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2371:1
    final public Reference inputName() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "inputName";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2371:1
        inputName thisProduction = null;
        if (buildTree) {
            thisProduction = new inputName();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$inputName();
            }
            if (nextTokenType() == QUERY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2377:11
                consumeToken(QUERY, false, follow_set$SchemaParser_ccc$2377$11);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2377:19
                consumeToken(_TOKEN_188, false, follow_set$SchemaParser_ccc$2377$19);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2377:23
                pushOntoCallStack("inputName", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2377, 23);
                outerFollowSet = follow_set$SchemaParser_ccc$2377$23;
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2377:46
                EnumSet followSet43 = null;
                if (outerFollowSet != null) {
                    followSet43 = follow_set$SchemaParser_ccc$2377$46.clone();
                    followSet43.addAll(outerFollowSet);
                }
                consumeToken(_TOKEN_189, false, followSet43);
            } else if (first_set$SchemaParser_ccc$2379$9.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2379:9
                pushOntoCallStack("inputName", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2379, 9);
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("inputName", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2377, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2377$9, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2381:5
            return FeatureNames.asQueryFeature(name);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2384:1
    final public InputType valueType(Reference reference) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "valueType";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2384:1
        valueType thisProduction = null;
        if (buildTree) {
            thisProduction = new valueType();
            openNodeScope(thisProduction);
        }
        TensorType type;
        InputType result;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$valueType();
            }
            if (nextTokenType() == TENSOR_TYPE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2391:9
                pushOntoCallStack("valueType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2391, 9);
                try {
                    type = tensorTypeElm("Type of " + reference);
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2391:54
                result = new InputType(type, false);
            } else if (nextTokenType() == DOUBLE_KEYWORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2393:9
                EnumSet followSet48 = null;
                if (outerFollowSet != null) {
                    followSet48 = follow_set$SchemaParser_ccc$2393$9.clone();
                    followSet48.addAll(outerFollowSet);
                }
                consumeToken(DOUBLE_KEYWORD, false, followSet48);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2393:26
                result = new InputType(TensorType.empty, false);
            } else if (nextTokenType() == LONG_KEYWORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2395:9
                EnumSet followSet66 = null;
                if (outerFollowSet != null) {
                    followSet66 = follow_set$SchemaParser_ccc$2395$9.clone();
                    followSet66.addAll(outerFollowSet);
                }
                consumeToken(LONG_KEYWORD, false, followSet66);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2395:24
                result = new InputType(TensorType.empty, false);
                //deployLogger.logApplicationPackage(Level.WARNING, "Input " + reference + ": 'long' is not possible, treated as 'double'");
            } else if (nextTokenType() == FLOAT_KEYWORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2400:9
                EnumSet followSet84 = null;
                if (outerFollowSet != null) {
                    followSet84 = follow_set$SchemaParser_ccc$2400$9.clone();
                    followSet84.addAll(outerFollowSet);
                }
                consumeToken(FLOAT_KEYWORD, false, followSet84);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2400:25
                result = new InputType(TensorType.empty, false);
                //deployLogger.logApplicationPackage(Level.WARNING, "Input " + reference + ": 'float' is not possible, treated as 'double'");
            } else if (nextTokenType() == STRING_KEYWORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2405:9
                EnumSet followSet102 = null;
                if (outerFollowSet != null) {
                    followSet102 = follow_set$SchemaParser_ccc$2405$9.clone();
                    followSet102.addAll(outerFollowSet);
                }
                consumeToken(STRING_KEYWORD, false, followSet102);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2405:26
                result = new InputType(TensorType.empty, true);
            } else {
                pushOntoCallStack("valueType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2391, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2391$7, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2407:5
            if (result != null) {
                thisProduction.setInputType(result);
            }
            return result;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2415:1
    final public void featureListElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "featureListElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2415:1
        featureListElm thisProduction = null;
        if (buildTree) {
            thisProduction = new featureListElm();
            openNodeScope(thisProduction);
        }
        String features;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$featureListElm();
            }
            if (nextTokenType() == SUMMARYFEATURES_SL || nextTokenType == SUMMARYFEATURES_ML || nextTokenType == SUMMARYFEATURES_ML_INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2420:8
                pushOntoCallStack("featureListElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2420, 8);
                try {
                    features = summaryFeaturesElm(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == MATCHFEATURES_SL || nextTokenType == MATCHFEATURES_ML || nextTokenType == MATCHFEATURES_ML_INHERITS) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2420:51
                pushOntoCallStack("featureListElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2420, 51);
                try {
                    features = matchFeaturesElm(profile);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == RANKFEATURES_SL || nextTokenType == RANKFEATURES_ML) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2420:92
                pushOntoCallStack("featureListElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2420, 92);
                try {
                    features = rankFeaturesElm(profile);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("featureListElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2420, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2420$7, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2421:5
            thisProduction.setFeatureListString(features);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2431:1
    final public String summaryFeaturesElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "summaryFeaturesElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2431:1
        summaryFeaturesElm thisProduction = null;
        if (buildTree) {
            thisProduction = new summaryFeaturesElm();
            openNodeScope(thisProduction);
        }
        String features;
        String inherited = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$summaryFeaturesElm();
            }
            if (nextTokenType() == SUMMARYFEATURES_SL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2437:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$2437$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(SUMMARYFEATURES_SL, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2437:28
                features = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf(":") + 1);
                /*.trim();*/
            } else if (nextTokenType() == SUMMARYFEATURES_ML) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2438:7
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$2438$7.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(SUMMARYFEATURES_ML, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2438:28
                features = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf("{") + 1, lastConsumedToken.toString().lastIndexOf("}"));
                /*.trim();*/
            } else if (nextTokenType() == SUMMARYFEATURES_ML_INHERITS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2440:7
                EnumSet followSet46 = null;
                if (outerFollowSet != null) {
                    followSet46 = follow_set$SchemaParser_ccc$2440$7.clone();
                    followSet46.addAll(outerFollowSet);
                }
                consumeToken(SUMMARYFEATURES_ML_INHERITS, false, followSet46);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2440:37
                int inheritsIndex = lastConsumedToken.toString().indexOf("inherits ");
                String rest = lastConsumedToken.toString().substring(inheritsIndex + "inherits ".length());
                profile.setInheritedSummaryFeatures(rest.substring(0, rest.indexOf(" ")).trim());
                features = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf("{") + 1, lastConsumedToken.toString().lastIndexOf("}"));
                /*.trim();*/
            } else {
                pushOntoCallStack("summaryFeaturesElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2437, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2437$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2447:5
            //FeatureList featureList = getFeatureList(features);
            //if (featureList != null) {
            //    profile.addSummaryFeatures(featureList);
            //}
            return features;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2456:1
    final public void strictElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "strictElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2456:1
        strictElm thisProduction = null;
        if (buildTree) {
            thisProduction = new strictElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$strictElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2459:5
            consumeToken(STRICT, false, follow_set$SchemaParser_ccc$2459$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2459:14
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2459$14);
            if (nextTokenType() == TRUE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2460:11
                EnumSet followSet39 = null;
                if (outerFollowSet != null) {
                    followSet39 = follow_set$SchemaParser_ccc$2460$11.clone();
                    followSet39.addAll(outerFollowSet);
                }
                consumeToken(TRUE, false, followSet39);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2460:18
                profile.setStrict(true);
            } else if (nextTokenType() == FALSE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2461:11
                EnumSet followSet57 = null;
                if (outerFollowSet != null) {
                    followSet57 = follow_set$SchemaParser_ccc$2461$11.clone();
                    followSet57.addAll(outerFollowSet);
                }
                consumeToken(FALSE, false, followSet57);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2461:19
                profile.setStrict(false);
            } else {
                pushOntoCallStack("strictElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2460, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2460$9, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2465:1
    final public void significanceElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "significanceElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2465:1
        significanceElm thisProduction = null;
        if (buildTree) {
            thisProduction = new significanceElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$significanceElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2468:5
            consumeToken(SIGNIFICANCE, false, follow_set$SchemaParser_ccc$2468$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2468:20
            pushOntoCallStack("significanceElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2468, 20);
            outerFollowSet = follow_set$SchemaParser_ccc$2468$20;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2468:33
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2468:34
                if (nextTokenType() == USE_MODEL) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2468:34
                    pushOntoCallStack("significanceElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2468, 34);
                    outerFollowSet = follow_set$SchemaParser_ccc$2468$34;
                    try {
                        significanceItem(profile);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == NL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2468:62
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2468$62);
                } else {
                    break;
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2468:69
            EnumSet followSet45 = null;
            if (outerFollowSet != null) {
                followSet45 = follow_set$SchemaParser_ccc$2468$69.clone();
                followSet45.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet45);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2469:5
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2472:1
    final public void significanceItem(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "significanceItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2472:1
        significanceItem thisProduction = null;
        if (buildTree) {
            thisProduction = new significanceItem();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$significanceItem();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2475:5
            consumeToken(USE_MODEL, false, follow_set$SchemaParser_ccc$2475$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2475:17
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2475$17);
            if (nextTokenType() == TRUE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2476:11
                EnumSet followSet39 = null;
                if (outerFollowSet != null) {
                    followSet39 = follow_set$SchemaParser_ccc$2476$11.clone();
                    followSet39.addAll(outerFollowSet);
                }
                consumeToken(TRUE, false, followSet39);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2476:19
                profile.setUseSignificanceModel(true);
            } else if (nextTokenType() == FALSE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2477:11
                EnumSet followSet57 = null;
                if (outerFollowSet != null) {
                    followSet57 = follow_set$SchemaParser_ccc$2477$11.clone();
                    followSet57.addAll(outerFollowSet);
                }
                consumeToken(FALSE, false, followSet57);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2477:19
                profile.setUseSignificanceModel(false);
            } else {
                pushOntoCallStack("significanceItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2476, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2476$9, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2486:1
    final public String matchFeaturesElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "matchFeaturesElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2486:1
        matchFeaturesElm thisProduction = null;
        if (buildTree) {
            thisProduction = new matchFeaturesElm();
            openNodeScope(thisProduction);
        }
        String features;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$matchFeaturesElm();
            }
            if (nextTokenType() == MATCHFEATURES_SL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2491:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$2491$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(MATCHFEATURES_SL, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2491:26
                features = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf(":") + 1);
                /*.trim();*/
            } else if (nextTokenType() == MATCHFEATURES_ML) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2492:7
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$2492$7.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(MATCHFEATURES_ML, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2492:26
                features = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf("{") + 1, lastConsumedToken.toString().lastIndexOf("}"));
                /*.trim();*/
            } else if (nextTokenType() == MATCHFEATURES_ML_INHERITS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2494:7
                EnumSet followSet46 = null;
                if (outerFollowSet != null) {
                    followSet46 = follow_set$SchemaParser_ccc$2494$7.clone();
                    followSet46.addAll(outerFollowSet);
                }
                consumeToken(MATCHFEATURES_ML_INHERITS, false, followSet46);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2494:35
                int inheritsIndex = lastConsumedToken.toString().indexOf("inherits ");
                String rest = lastConsumedToken.toString().substring(inheritsIndex + "inherits ".length());
                profile.setInheritedMatchFeatures(rest.substring(0, rest.indexOf(" ")).trim());
                features = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf("{") + 1, lastConsumedToken.toString().lastIndexOf("}"));
                /*.trim();*/
            } else {
                pushOntoCallStack("matchFeaturesElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2491, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2491$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2501:5
            //FeatureList featureList = getFeatureList(features);
            //if (featureList != null) {
            //    profile.addMatchFeatures(featureList);
            //}
            return features;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2511:1
    final public String rankFeaturesElm(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankFeaturesElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2511:1
        rankFeaturesElm thisProduction = null;
        if (buildTree) {
            thisProduction = new rankFeaturesElm();
            openNodeScope(thisProduction);
        }
        String features;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankFeaturesElm();
            }
            if (nextTokenType() == RANKFEATURES_SL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2516:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$2516$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(RANKFEATURES_SL, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2516:25
                features = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf(":") + 1);
                /*.trim();*/
            } else if (nextTokenType() == RANKFEATURES_ML) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2517:7
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$2517$7.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(RANKFEATURES_ML, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2517:25
                features = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf("{") + 1, lastConsumedToken.toString().lastIndexOf("}"));
                /*.trim();*/
            } else {
                pushOntoCallStack("rankFeaturesElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2516, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2516$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2519:5
            //FeatureList featureList = getFeatureList(features);
            //if (featureList != null) {
            //    profile.addRankFeatures(featureList);
            //}
            return features;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2534:1
    final public void ignoreRankFeatures(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "ignoreRankFeatures";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2534:1
        ignoreRankFeatures thisProduction = null;
        if (buildTree) {
            thisProduction = new ignoreRankFeatures();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$ignoreRankFeatures();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2536:5
            EnumSet followSet13 = null;
            if (outerFollowSet != null) {
                followSet13 = follow_set$SchemaParser_ccc$2536$5.clone();
                followSet13.addAll(outerFollowSet);
            }
            consumeToken(IGNORE_DEFAULT_RANK_FEATURES, false, followSet13);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2536:36
            profile.setIgnoreDefaultRankFeatures(true);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2544:1
    final public void numThreadsPerSearch(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "numThreadsPerSearch";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2544:1
        numThreadsPerSearch thisProduction = null;
        if (buildTree) {
            thisProduction = new numThreadsPerSearch();
            openNodeScope(thisProduction);
        }
        int num;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$numThreadsPerSearch();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2549:6
            consumeToken(NUM_THREADS_PER_SEARCH, false, follow_set$SchemaParser_ccc$2549$6);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2549:31
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2549$31);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2549:39
            pushOntoCallStack("numThreadsPerSearch", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2549, 39);
            try {
                num = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2549:59
            profile.setNumThreadsPerSearch(num);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2557:1
    final public void minHitsPerThread(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "minHitsPerThread";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2557:1
        minHitsPerThread thisProduction = null;
        if (buildTree) {
            thisProduction = new minHitsPerThread();
            openNodeScope(thisProduction);
        }
        int num;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$minHitsPerThread();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2562:6
            consumeToken(MIN_HITS_PER_THREAD, false, follow_set$SchemaParser_ccc$2562$6);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2562:28
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2562$28);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2562:36
            pushOntoCallStack("minHitsPerThread", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2562, 36);
            try {
                num = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2562:56
            profile.setMinHitsPerThread(num);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2570:1
    final public void numSearchPartitions(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "numSearchPartitions";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2570:1
        numSearchPartitions thisProduction = null;
        if (buildTree) {
            thisProduction = new numSearchPartitions();
            openNodeScope(thisProduction);
        }
        int num;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$numSearchPartitions();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2575:6
            consumeToken(NUM_SEARCH_PARTITIONS, false, follow_set$SchemaParser_ccc$2575$6);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2575:30
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2575$30);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2575:38
            pushOntoCallStack("numSearchPartitions", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2575, 38);
            try {
                num = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2575:58
            profile.setNumSearchPartitions(num);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2583:1
    final public void termwiseLimit(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "termwiseLimit";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2583:1
        termwiseLimit thisProduction = null;
        if (buildTree) {
            thisProduction = new termwiseLimit();
            openNodeScope(thisProduction);
        }
        double num;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$termwiseLimit();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2588:6
            consumeToken(TERMWISE_LIMIT, false, follow_set$SchemaParser_ccc$2588$6);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2588:23
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2588$23);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2588:31
            pushOntoCallStack("termwiseLimit", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2588, 31);
            try {
                num = floatValue();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2588:51
            profile.setTermwiseLimit(num);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2596:1
    final public void postFilterThreshold(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "postFilterThreshold";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2596:1
        postFilterThreshold thisProduction = null;
        if (buildTree) {
            thisProduction = new postFilterThreshold();
            openNodeScope(thisProduction);
        }
        double threshold;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$postFilterThreshold();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2601:6
            consumeToken(POST_FILTER_THRESHOLD, false, follow_set$SchemaParser_ccc$2601$6);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2601:30
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2601$30);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2601:38
            pushOntoCallStack("postFilterThreshold", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2601, 38);
            try {
                threshold = floatValue();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2601:64
            profile.setPostFilterThreshold(threshold);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2609:1
    final public void approximateThreshold(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "approximateThreshold";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2609:1
        approximateThreshold thisProduction = null;
        if (buildTree) {
            thisProduction = new approximateThreshold();
            openNodeScope(thisProduction);
        }
        double threshold;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$approximateThreshold();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2614:6
            consumeToken(APPROXIMATE_THRESHOLD, false, follow_set$SchemaParser_ccc$2614$6);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2614:30
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2614$30);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2614:38
            pushOntoCallStack("approximateThreshold", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2614, 38);
            try {
                threshold = floatValue();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2614:64
            profile.setApproximateThreshold(threshold);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2622:1
    final public void targetHitsMaxAdjustmentFactor(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "targetHitsMaxAdjustmentFactor";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2622:1
        targetHitsMaxAdjustmentFactor thisProduction = null;
        if (buildTree) {
            thisProduction = new targetHitsMaxAdjustmentFactor();
            openNodeScope(thisProduction);
        }
        double factor;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$targetHitsMaxAdjustmentFactor();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2627:6
            consumeToken(TARGET_HITS_MAX_ADJUSTMENT_FACTOR, false, follow_set$SchemaParser_ccc$2627$6);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2627:42
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2627$42);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2627:50
            pushOntoCallStack("targetHitsMaxAdjustmentFactor", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2627, 50);
            try {
                factor = floatValue();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2627:73
            profile.setTargetHitsMaxAdjustmentFactor(factor);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2637:1
    final public void rankProperties(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankProperties";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2637:1
        rankProperties thisProduction = null;
        if (buildTree) {
            thisProduction = new rankProperties();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankProperties();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:5
            consumeToken(RANK_PROPERTIES, false, follow_set$SchemaParser_ccc$2639$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:23
            pushOntoCallStack("rankProperties", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2639, 23);
            outerFollowSet = follow_set$SchemaParser_ccc$2639$23;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:36
            while (true) {
                if (!(scan$SchemaParser_ccc$2639$37())) break;
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2640:33
                pushOntoCallStack("rankProperties", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2640, 33);
                outerFollowSet = follow_set$SchemaParser_ccc$2640$33;
                try {
                    rankProperty(profile);
                } finally {
                    popCallStack();
                }
                // Code for OneOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2640:55
                while (true) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2640:56
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2640$56);
                    if (!(nextTokenType() == NL)) break;
                }
            }
            // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2640:66
            if (first_set$SchemaParser_ccc$2640$67.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2640:67
                pushOntoCallStack("rankProperties", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2640, 67);
                outerFollowSet = follow_set$SchemaParser_ccc$2640$67$;
                try {
                    rankProperty(profile);
                } finally {
                    popCallStack();
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2640:90
            EnumSet followSet64 = null;
            if (outerFollowSet != null) {
                followSet64 = follow_set$SchemaParser_ccc$2640$90.clone();
                followSet64.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet64);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2648:1
    final public void rankProperty(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankProperty";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2648:1
        rankProperty thisProduction = null;
        if (buildTree) {
            thisProduction = new rankProperty();
            openNodeScope(thisProduction);
        }
        String key, val;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankProperty();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2653:5
            pushOntoCallStack("rankProperty", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2653, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$2653$5;
            try {
                key = rankPropertyItem();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2653:30
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2653$30);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2653:38
            pushOntoCallStack("rankProperty", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2653, 38);
            try {
                val = rankPropertyItem();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2654:5
            profile.addRankProperty(key, val);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2662:1
    final public String rankPropertyItem() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "rankPropertyItem";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2662:1
        rankPropertyItem thisProduction = null;
        if (buildTree) {
            thisProduction = new rankPropertyItem();
            openNodeScope(thisProduction);
        }
        String image = null;
        String ret = "";
        Token dToken = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$rankPropertyItem();
            }
            // Code for OneOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2669:7
            boolean inFirst2 = true;
            while (true) {
                // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2669:9
                if (first_set$SchemaParser_ccc$2669$9.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2669:9
                    pushOntoCallStack("rankPropertyItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2669, 9);
                    if (outerFollowSet != null) {
                        EnumSet newFollowSet = follow_set$SchemaParser_ccc$2669$9$.clone();
                        newFollowSet.addAll(outerFollowSet);
                        outerFollowSet = newFollowSet;
                    }
                    try {
                        image = identifierWithDashStr();
                    } finally {
                        popCallStack();
                    }
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2669:41
                    ret += image;
                } else if (nextTokenType() == DOUBLE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2670:11
                    EnumSet followSet42 = null;
                    if (outerFollowSet != null) {
                        followSet42 = follow_set$SchemaParser_ccc$2670$11.clone();
                        followSet42.addAll(outerFollowSet);
                    }
                    dToken = consumeToken(DOUBLE, false, followSet42);
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2670:29
                    ret += dToken.toString();
                } else if (nextTokenType() == DOUBLEQUOTEDSTRING || nextTokenType == SINGLEQUOTEDSTRING) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2671:11
                    pushOntoCallStack("rankPropertyItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2671, 11);
                    if (outerFollowSet != null) {
                        EnumSet newFollowSet = follow_set$SchemaParser_ccc$2671$11.clone();
                        newFollowSet.addAll(outerFollowSet);
                        outerFollowSet = newFollowSet;
                    }
                    try {
                        image = quotedString();
                    } finally {
                        popCallStack();
                    }
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2671:51
                    ret += image;
                } else if (nextTokenType() == DOT || nextTokenType == COMMA || nextTokenType == _TOKEN_188 || nextTokenType == _TOKEN_189) {
                    if (nextTokenType() == _TOKEN_188) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2672:13
                        EnumSet followSet74 = null;
                        if (outerFollowSet != null) {
                            followSet74 = follow_set$SchemaParser_ccc$2672$13.clone();
                            followSet74.addAll(outerFollowSet);
                        }
                        consumeToken(_TOKEN_188, false, followSet74);
                    } else if (nextTokenType() == _TOKEN_189) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2672:19
                        EnumSet followSet83 = null;
                        if (outerFollowSet != null) {
                            followSet83 = follow_set$SchemaParser_ccc$2672$19.clone();
                            followSet83.addAll(outerFollowSet);
                        }
                        consumeToken(_TOKEN_189, false, followSet83);
                    } else if (nextTokenType() == DOT) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2672:25
                        EnumSet followSet92 = null;
                        if (outerFollowSet != null) {
                            followSet92 = follow_set$SchemaParser_ccc$2672$25.clone();
                            followSet92.addAll(outerFollowSet);
                        }
                        consumeToken(DOT, false, followSet92);
                    } else if (nextTokenType() == COMMA) {
                        // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2672:33
                        EnumSet followSet101 = null;
                        if (outerFollowSet != null) {
                            followSet101 = follow_set$SchemaParser_ccc$2672$33.clone();
                            followSet101.addAll(outerFollowSet);
                        }
                        consumeToken(COMMA, false, followSet101);
                    } else {
                        pushOntoCallStack("rankPropertyItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2672, 13);
                        throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2672$13$, parsingStack);
                    }
                    // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2672:51
                    ret += lastConsumedToken.toString();
                } else if (inFirst2) {
                    pushOntoCallStack("rankPropertyItem", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2669, 9);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2669$9$$, parsingStack);
                } else {
                    break;
                }
                inFirst2 = false;
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2673:5
            return ret;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2681:1
    final public void fieldWeight(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldWeight";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2681:1
        fieldWeight thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldWeight();
            openNodeScope(thisProduction);
        }
        Integer num;
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldWeight();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2687:5
            consumeToken(WEIGHT, false, follow_set$SchemaParser_ccc$2687$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2687:14
            pushOntoCallStack("fieldWeight", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2687, 14);
            outerFollowSet = follow_set$SchemaParser_ccc$2687$14;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2687:37
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2687$37);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2687:45
            pushOntoCallStack("fieldWeight", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2687, 45);
            try {
                num = integerElm();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2688:5
            profile.addFieldRankWeight(name, num);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2696:1
    final public void fieldRankType(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldRankType";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2696:1
        fieldRankType thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldRankType();
            openNodeScope(thisProduction);
        }
        String name;
        String type;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldRankType();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2702:5
            consumeToken(RANK_TYPE, false, follow_set$SchemaParser_ccc$2702$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2702:17
            pushOntoCallStack("fieldRankType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2702, 17);
            outerFollowSet = follow_set$SchemaParser_ccc$2702$17;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2702:40
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2702$40);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2702:48
            pushOntoCallStack("fieldRankType", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2702, 48);
            try {
                type = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2703:5
            profile.addFieldRankType(name, type);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2711:1
    final public void fieldRankFilter(ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "fieldRankFilter";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2711:1
        fieldRankFilter thisProduction = null;
        if (buildTree) {
            thisProduction = new fieldRankFilter();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$fieldRankFilter();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2716:5
            consumeToken(RANK, false, follow_set$SchemaParser_ccc$2716$5);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2716:12
            pushOntoCallStack("fieldRankFilter", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2716, 12);
            outerFollowSet = follow_set$SchemaParser_ccc$2716$12;
            try {
                name = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2716:35
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2716$35);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2716:43
            EnumSet followSet25 = null;
            if (outerFollowSet != null) {
                followSet25 = follow_set$SchemaParser_ccc$2716$43.clone();
                followSet25.addAll(outerFollowSet);
            }
            consumeToken(FILTER, false, followSet25);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2717:5
            profile.addFieldRankFilter(name, true);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2723:1
    final public void constantsElm(ParsedSchema schema, ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "constantsElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2723:1
        constantsElm thisProduction = null;
        if (buildTree) {
            thisProduction = new constantsElm();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$constantsElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2728:5
            consumeToken(CONSTANTS, false, follow_set$SchemaParser_ccc$2728$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2728:17
            consumeToken(LBRACE, false, follow_set$SchemaParser_ccc$2728$17);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2728:26
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2728:27
                consumeToken(NL, false, follow_set$SchemaParser_ccc$2728$27);
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2729:5
            while (true) {
                if (!(first_set$SchemaParser_ccc$2729$7.contains(nextTokenType()))) break;
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2729:7
                pushOntoCallStack("constantsElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2729, 7);
                outerFollowSet = follow_set$SchemaParser_ccc$2729$7$;
                try {
                    constantElm(schema, profile);
                } finally {
                    popCallStack();
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2729:36
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2729:37
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2729$37);
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2730:5
            EnumSet followSet57 = null;
            if (outerFollowSet != null) {
                followSet57 = follow_set$SchemaParser_ccc$2730$5.clone();
                followSet57.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet57);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2733:1
    final public void constantElm(ParsedSchema schema, ParsedRankProfile profile) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "constantElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2733:1
        constantElm thisProduction = null;
        if (buildTree) {
            thisProduction = new constantElm();
            openNodeScope(thisProduction);
        }
        Reference name = null;
        InputType type = new InputType(TensorType.empty, false);
        Tensor value = null;
        String valuePath = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$constantElm();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2742:7
            pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2742, 7);
            outerFollowSet = follow_set$SchemaParser_ccc$2742$7;
            try {
                name = constantName();
            } finally {
                popCallStack();
            }
            if (scan$SchemaParser_ccc$2744$9()) {
                // Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2745:11
                if (first_set$SchemaParser_ccc$2745$13.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2745:13
                    pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2745, 13);
                    outerFollowSet = follow_set$SchemaParser_ccc$2745$13$;
                    try {
                        type = valueType(name);
                    } finally {
                        popCallStack();
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2745:39
                consumeToken(COLON, false, follow_set$SchemaParser_ccc$2745$39);
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2745:47
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2745:48
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2745$48);
                }
                if (first_set$SchemaParser_ccc$2745$57.contains(nextTokenType())) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2745:57
                    pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2745, 57);
                    try {
                        value = tensorValue(type.tensorType());
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == FILE) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2745:98
                    pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2745, 98);
                    try {
                        valuePath = fileItem();
                    } finally {
                        popCallStack();
                    }
                } else {
                    pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2745, 57);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2745$57$, parsingStack);
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2746:9
                if (value != null) profile.add(new RankProfile.Constant(name, value));
                else profile.add(new RankProfile.Constant(name, type.tensorType(), valuePath));
            } else if (nextTokenType() == LBRACE || nextTokenType == COLON) {
                if (nextTokenType() == COLON) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2754:11
                    pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2754, 11);
                    try {
                        constantValue(profile, name);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == LBRACE) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2754:42
                    pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2754, 42);
                    try {
                        constantTensor(profile, name);
                    } finally {
                        popCallStack();
                    }
                } else {
                    pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2754, 11);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2754$11, parsingStack);
                }
            } else {
                pushOntoCallStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2744, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2744$9, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2760:1
    final public Reference constantName() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "constantName";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2760:1
        constantName thisProduction = null;
        if (buildTree) {
            thisProduction = new constantName();
            openNodeScope(thisProduction);
        }
        String name;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$constantName();
            }
            if (nextTokenType() == CONSTANT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2766:11
                consumeToken(CONSTANT, false, follow_set$SchemaParser_ccc$2766$11);
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2766:22
                consumeToken(_TOKEN_188, false, follow_set$SchemaParser_ccc$2766$22);
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2766:26
                pushOntoCallStack("constantName", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2766, 26);
                outerFollowSet = follow_set$SchemaParser_ccc$2766$26;
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2766:49
                EnumSet followSet43 = null;
                if (outerFollowSet != null) {
                    followSet43 = follow_set$SchemaParser_ccc$2766$49.clone();
                    followSet43.addAll(outerFollowSet);
                }
                consumeToken(_TOKEN_189, false, followSet43);
            } else if (first_set$SchemaParser_ccc$2768$9.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2768:9
                pushOntoCallStack("constantName", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2768, 9);
                try {
                    name = identifierStr();
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("constantName", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2766, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2766$9, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2770:5
            return FeatureNames.asConstantFeature(name);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2774:1
    final public void constantValue(ParsedRankProfile profile, Reference name) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "constantValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2774:1
        constantValue thisProduction = null;
        if (buildTree) {
            thisProduction = new constantValue();
            openNodeScope(thisProduction);
        }
        Token value;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$constantValue();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2779:5
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2779$5);
            if (nextTokenType() == DOUBLE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2779:15
                EnumSet followSet28 = null;
                if (outerFollowSet != null) {
                    followSet28 = follow_set$SchemaParser_ccc$2779$15.clone();
                    followSet28.addAll(outerFollowSet);
                }
                value = consumeToken(DOUBLE, false, followSet28);
            } else if (nextTokenType() == INTEGER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2779:34
                EnumSet followSet37 = null;
                if (outerFollowSet != null) {
                    followSet37 = follow_set$SchemaParser_ccc$2779$34.clone();
                    followSet37.addAll(outerFollowSet);
                }
                value = consumeToken(INTEGER, false, followSet37);
            } else if (nextTokenType() == IDENTIFIER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2779:54
                EnumSet followSet46 = null;
                if (outerFollowSet != null) {
                    followSet46 = follow_set$SchemaParser_ccc$2779$54.clone();
                    followSet46.addAll(outerFollowSet);
                }
                value = consumeToken(IDENTIFIER, false, followSet46);
            } else {
                pushOntoCallStack("constantValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2779, 15);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2779$15$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2780:5
            profile.add(new RankProfile.Constant(name, Tensor.from(value.toString())));
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2784:1
    final public void constantTensor(ParsedRankProfile profile, Reference name) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "constantTensor";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2784:1
        constantTensor thisProduction = null;
        if (buildTree) {
            thisProduction = new constantTensor();
            openNodeScope(thisProduction);
        }
        String tensorString = "";
        TensorType type = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$constantTensor();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2790:5
            consumeToken(LBRACE, false, follow_set$SchemaParser_ccc$2790$5);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2790:14
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2790:15
                consumeToken(NL, false, follow_set$SchemaParser_ccc$2790$15);
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2791:7
            while (true) {
                if (!(nextTokenType() == TYPE || nextTokenType == TENSOR_VALUE_SL || nextTokenType == TENSOR_VALUE_ML)) break;
                if (nextTokenType() == TENSOR_VALUE_SL || nextTokenType == TENSOR_VALUE_ML) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2791:10
                    pushOntoCallStack("constantTensor", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2791, 10);
                    outerFollowSet = follow_set$SchemaParser_ccc$2791$10;
                    try {
                        tensorString = tensorValuePrefixedByValue();
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == TYPE) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2792:10
                    pushOntoCallStack("constantTensor", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2792, 10);
                    outerFollowSet = follow_set$SchemaParser_ccc$2792$10;
                    try {
                        type = tensorTypeWithPrefix(constantTensorErrorMessage(profile.name(), name));
                    } finally {
                        popCallStack();
                    }
                } else {
                    pushOntoCallStack("constantTensor", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2791, 10);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2791$10$, parsingStack);
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2792:90
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2792:91
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2792$91);
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2792:101
            EnumSet followSet72 = null;
            if (outerFollowSet != null) {
                followSet72 = follow_set$SchemaParser_ccc$2792$101.clone();
                followSet72.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet72);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2793:5
            profile.add(new RankProfile.Constant(name, type != null ? Tensor.from(type, tensorString) : Tensor.from(tensorString)));
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2797:1
    final public String constantTensorErrorMessage(String rankProfileName, Reference name) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "constantTensorErrorMessage";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2797:1
        constantTensorErrorMessage thisProduction = null;
        if (buildTree) {
            thisProduction = new constantTensorErrorMessage();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2799:5
            return "For constant tensor '" + name + "' in rank profile '" + rankProfileName + "'";
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2807:1
    final public Tensor tensorValue(TensorType type) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "tensorValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2807:1
        tensorValue thisProduction = null;
        if (buildTree) {
            thisProduction = new tensorValue();
            openNodeScope(thisProduction);
        }
        Tensor.Builder builder = Tensor.Builder.of(type);
        Number doubleValue = null;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$tensorValue();
            }
            if (nextTokenType() == LBRACE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:7
                pushOntoCallStack("tensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2813, 7);
                try {
                    mappedTensorValue(builder);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == _TOKEN_190) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:36
                pushOntoCallStack("tensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2813, 36);
                try {
                    indexedTensorValues(builder);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == DOUBLE || nextTokenType == INTEGER || nextTokenType == LONG) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:68
                pushOntoCallStack("tensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2813, 68);
                try {
                    doubleValue = number();
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("tensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2813, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2813$7, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2814:5
            if (doubleValue != null) {
                if (type.rank() > 0) throw new IllegalArgumentException("A tensor of type " + type + " cannot be a number");
                builder.cell(doubleValue.doubleValue());
            }
            return builder.build();
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2825:1
    final public void mappedTensorValue(Tensor.Builder builder) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "mappedTensorValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2825:1
        mappedTensorValue thisProduction = null;
        if (buildTree) {
            thisProduction = new mappedTensorValue();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$mappedTensorValue();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2827:5
            consumeToken(LBRACE, false, follow_set$SchemaParser_ccc$2827$5);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2828:5
            while (true) {
                if (!(first_set$SchemaParser_ccc$2828$7.contains(nextTokenType()))) break;
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2828:7
                pushOntoCallStack("mappedTensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2828, 7);
                outerFollowSet = follow_set$SchemaParser_ccc$2828$7$;
                try {
                    mappedTensorBlock(builder);
                } finally {
                    popCallStack();
                }
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:5
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:7
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$2829$7);
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:15
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:16
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2829$16);
                }
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:23
                pushOntoCallStack("mappedTensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2829, 23);
                outerFollowSet = follow_set$SchemaParser_ccc$2829$23;
                try {
                    mappedTensorBlock(builder);
                } finally {
                    popCallStack();
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2830:5
            EnumSet followSet57 = null;
            if (outerFollowSet != null) {
                followSet57 = follow_set$SchemaParser_ccc$2830$5.clone();
                followSet57.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet57);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2834:1
    final public void mappedTensorBlock(Tensor.Builder builder) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "mappedTensorBlock";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2834:1
        mappedTensorBlock thisProduction = null;
        if (buildTree) {
            thisProduction = new mappedTensorBlock();
            openNodeScope(thisProduction);
        }
        TensorAddress mappedAddress;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$mappedTensorBlock();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2839:5
            pushOntoCallStack("mappedTensorBlock", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2839, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$2839$5;
            try {
                mappedAddress = tensorAddress(builder.type());
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2839:51
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2839$51);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2839:59
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2839:60
                consumeToken(NL, false, follow_set$SchemaParser_ccc$2839$60);
            }
            if (nextTokenType() == DOUBLE || nextTokenType == INTEGER || nextTokenType == LONG) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2840:7
                pushOntoCallStack("mappedTensorBlock", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2840, 7);
                try {
                    mappedTensorCellValue(mappedAddress, builder);
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == _TOKEN_190) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2840:55
                pushOntoCallStack("mappedTensorBlock", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2840, 55);
                try {
                    indexedTensorBlockValues(mappedAddress, builder);
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("mappedTensorBlock", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2840, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2840$7, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2843:1
    final public void indexedTensorBlockValues(TensorAddress mappedAddress, Tensor.Builder builder) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "indexedTensorBlockValues";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2843:1
        indexedTensorBlockValues thisProduction = null;
        if (buildTree) {
            thisProduction = new indexedTensorBlockValues();
            openNodeScope(thisProduction);
        }
        List values = new ArrayList();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$indexedTensorBlockValues();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2848:5
            pushOntoCallStack("indexedTensorBlockValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2848, 5);
            try {
                arrayTensorValues(values);
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2849:5
            MixedTensor.BoundBuilder boundBuilder = (MixedTensor.BoundBuilder) builder;
            double[] arrayValues = new double[values.size()];
            for (int i = 0; i < values.size(); i++) {
                arrayValues[i] = values.get(i);
            }
            boundBuilder.block(mappedAddress, arrayValues);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2859:1
    final public void indexedTensorValues(Tensor.Builder builder) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "indexedTensorValues";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2859:1
        indexedTensorValues thisProduction = null;
        if (buildTree) {
            thisProduction = new indexedTensorValues();
            openNodeScope(thisProduction);
        }
        List values = new ArrayList();
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$indexedTensorValues();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2864:5
            pushOntoCallStack("indexedTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2864, 5);
            try {
                arrayTensorValues(values);
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2865:5
            IndexedTensor.BoundBuilder boundBuilder = (IndexedTensor.BoundBuilder) builder;
            double[] arrayValues = new double[values.size()];
            for (int i = 0; i < values.size(); i++) {
                arrayValues[i] = values.get(i);
            }
            boundBuilder.fill(arrayValues);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2876:1
    final public void arrayTensorValues(List values) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "arrayTensorValues";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2876:1
        arrayTensorValues thisProduction = null;
        if (buildTree) {
            thisProduction = new arrayTensorValues();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$arrayTensorValues();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:5
            consumeToken(_TOKEN_190, false, follow_set$SchemaParser_ccc$2878$5);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:9
            while (true) {
                if (!(nextTokenType() == _TOKEN_190 || nextTokenType == DOUBLE || nextTokenType == INTEGER || nextTokenType == LONG)) break;
                if (nextTokenType() == DOUBLE || nextTokenType == INTEGER || nextTokenType == LONG) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:29
                    pushOntoCallStack("arrayTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2878, 29);
                    outerFollowSet = follow_set$SchemaParser_ccc$2878$29;
                    try {
                        indexedTensorValue(values);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == _TOKEN_190) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:58
                    pushOntoCallStack("arrayTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2878, 58);
                    outerFollowSet = follow_set$SchemaParser_ccc$2878$58;
                    try {
                        arrayTensorValues(values);
                    } finally {
                        popCallStack();
                    }
                } else {
                    pushOntoCallStack("arrayTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2878, 29);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2878$29$, parsingStack);
                }
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:9
            while (true) {
                if (!(nextTokenType() == COMMA)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:11
                consumeToken(COMMA, false, follow_set$SchemaParser_ccc$2879$11);
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:19
                while (true) {
                    if (!(nextTokenType() == NL)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:20
                    consumeToken(NL, false, follow_set$SchemaParser_ccc$2879$20);
                }
                if (nextTokenType() == DOUBLE || nextTokenType == INTEGER || nextTokenType == LONG) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:29
                    pushOntoCallStack("arrayTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2879, 29);
                    outerFollowSet = follow_set$SchemaParser_ccc$2879$29;
                    try {
                        indexedTensorValue(values);
                    } finally {
                        popCallStack();
                    }
                } else if (nextTokenType() == _TOKEN_190) {
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:58
                    pushOntoCallStack("arrayTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2879, 58);
                    outerFollowSet = follow_set$SchemaParser_ccc$2879$58;
                    try {
                        arrayTensorValues(values);
                    } finally {
                        popCallStack();
                    }
                } else {
                    pushOntoCallStack("arrayTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2879, 29);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2879$29$, parsingStack);
                }
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2880:5
            EnumSet followSet95 = null;
            if (outerFollowSet != null) {
                followSet95 = follow_set$SchemaParser_ccc$2880$5.clone();
                followSet95.addAll(outerFollowSet);
            }
            consumeToken(_TOKEN_191, false, followSet95);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2883:1
    final public void indexedTensorValue(List values) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "indexedTensorValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2883:1
        indexedTensorValue thisProduction = null;
        if (buildTree) {
            thisProduction = new indexedTensorValue();
            openNodeScope(thisProduction);
        }
        Number value;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$indexedTensorValue();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2888:5
            pushOntoCallStack("indexedTensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2888, 5);
            try {
                value = number();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2889:5
            values.add(value.doubleValue());
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2892:1
    final public void mappedTensorCellValue(TensorAddress address, Tensor.Builder builder) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "mappedTensorCellValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2892:1
        mappedTensorCellValue thisProduction = null;
        if (buildTree) {
            thisProduction = new mappedTensorCellValue();
            openNodeScope(thisProduction);
        }
        double value;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$mappedTensorCellValue();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2897:5
            pushOntoCallStack("mappedTensorCellValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2897, 5);
            try {
                value = tensorCellValue();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2898:5
            builder.cell(address, value);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2901:1
    final public TensorAddress tensorAddress(TensorType type) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "tensorAddress";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2901:1
        tensorAddress thisProduction = null;
        if (buildTree) {
            thisProduction = new tensorAddress();
            openNodeScope(thisProduction);
        }
        TensorAddress.Builder builder = new TensorAddress.PartialBuilder(type);
        String label;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$tensorAddress();
            }
            if (first_set$SchemaParser_ccc$2908$9.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2908:9
                pushOntoCallStack("tensorAddress", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2908, 9);
                try {
                    label = tensorAddressLabel();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2908:38
                builder.add(label);
            } else if (nextTokenType() == LBRACE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:11
                consumeToken(LBRACE, false, follow_set$SchemaParser_ccc$2910$11);
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:15
                while (true) {
                    if (!(first_set$SchemaParser_ccc$2910$17.contains(nextTokenType()))) break;
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:17
                    pushOntoCallStack("tensorAddress", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2910, 17);
                    outerFollowSet = follow_set$SchemaParser_ccc$2910$17$;
                    try {
                        tensorAddressElement(builder);
                    } finally {
                        popCallStack();
                    }
                }
                // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:50
                while (true) {
                    if (!(nextTokenType() == COMMA)) break;
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:52
                    consumeToken(COMMA, false, follow_set$SchemaParser_ccc$2910$52);
                    // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:60
                    pushOntoCallStack("tensorAddress", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2910, 60);
                    outerFollowSet = follow_set$SchemaParser_ccc$2910$60;
                    try {
                        tensorAddressElement(builder);
                    } finally {
                        popCallStack();
                    }
                }
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:93
                EnumSet followSet73 = null;
                if (outerFollowSet != null) {
                    followSet73 = follow_set$SchemaParser_ccc$2910$93.clone();
                    followSet73.addAll(outerFollowSet);
                }
                consumeToken(RBRACE, false, followSet73);
            } else {
                pushOntoCallStack("tensorAddress", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2908, 9);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2908$9$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2912:5
            return builder.build();
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2915:1
    final public void tensorAddressElement(TensorAddress.Builder builder) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "tensorAddressElement";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2915:1
        tensorAddressElement thisProduction = null;
        if (buildTree) {
            thisProduction = new tensorAddressElement();
            openNodeScope(thisProduction);
        }
        String dimension;
        String label;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$tensorAddressElement();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:5
            pushOntoCallStack("tensorAddressElement", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2921, 5);
            outerFollowSet = follow_set$SchemaParser_ccc$2921$5;
            try {
                dimension = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:33
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2921$33);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:41
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:42
                consumeToken(NL, false, follow_set$SchemaParser_ccc$2921$42);
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:49
            pushOntoCallStack("tensorAddressElement", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2921, 49);
            try {
                label = tensorAddressLabel();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2922:5
            builder.add(dimension, label);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2925:1
    final public String tensorAddressLabel() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "tensorAddressLabel";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2925:1
        tensorAddressLabel thisProduction = null;
        if (buildTree) {
            thisProduction = new tensorAddressLabel();
            openNodeScope(thisProduction);
        }
        String label;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$tensorAddressLabel();
            }
            if (first_set$SchemaParser_ccc$2930$7.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2930:7
                pushOntoCallStack("tensorAddressLabel", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2930, 7);
                try {
                    label = identifierStr();
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == DOUBLEQUOTEDSTRING || nextTokenType == SINGLEQUOTEDSTRING) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2930:33
                pushOntoCallStack("tensorAddressLabel", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2930, 33);
                try {
                    label = quotedString();
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("tensorAddressLabel", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2930, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2930$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2931:5
            return label;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2934:1
    final public double tensorCellValue() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "tensorCellValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2934:1
        tensorCellValue thisProduction = null;
        if (buildTree) {
            thisProduction = new tensorCellValue();
            openNodeScope(thisProduction);
        }
        Number value;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$tensorCellValue();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2939:5
            pushOntoCallStack("tensorCellValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2939, 5);
            try {
                value = number();
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2940:5
            return value.doubleValue();
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2944:1
    final public String tensorValuePrefixedByValue() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "tensorValuePrefixedByValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2944:1
        tensorValuePrefixedByValue thisProduction = null;
        if (buildTree) {
            thisProduction = new tensorValuePrefixedByValue();
            openNodeScope(thisProduction);
        }
        String tensor;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$tensorValuePrefixedByValue();
            }
            if (nextTokenType() == TENSOR_VALUE_SL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2949:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$2949$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(TENSOR_VALUE_SL, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2949:25
                tensor = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf(":") + 1);
            } else if (nextTokenType() == TENSOR_VALUE_ML) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2950:7
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$2950$7.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(TENSOR_VALUE_ML, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2950:25
                tensor = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf("{") + 1, lastConsumedToken.toString().lastIndexOf("}"));
            } else {
                pushOntoCallStack("tensorValuePrefixedByValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2949, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$2949$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2952:5
            return tensor;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2957:1
    final public TensorType tensorTypeWithPrefix(String errorMessage) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "tensorTypeWithPrefix";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2957:1
        tensorTypeWithPrefix thisProduction = null;
        if (buildTree) {
            thisProduction = new tensorTypeWithPrefix();
            openNodeScope(thisProduction);
        }
        TensorType type;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$tensorTypeWithPrefix();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2960:5
            consumeToken(TYPE, false, follow_set$SchemaParser_ccc$2960$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2960:12
            consumeToken(COLON, false, follow_set$SchemaParser_ccc$2960$12);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2960:20
            pushOntoCallStack("tensorTypeWithPrefix", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2960, 20);
            try {
                type = tensorTypeElm(errorMessage);
            } finally {
                popCallStack();
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2961:5
            return type;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2965:1
    final public TensorType tensorTypeElm(String errorMessage) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "tensorTypeElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2965:1
        tensorTypeElm thisProduction = null;
        if (buildTree) {
            thisProduction = new tensorTypeElm();
            openNodeScope(thisProduction);
        }
        String tensorTypeString;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$tensorTypeElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2970:5
            EnumSet followSet13 = null;
            if (outerFollowSet != null) {
                followSet13 = follow_set$SchemaParser_ccc$2970$5.clone();
                followSet13.addAll(outerFollowSet);
            }
            consumeToken(TENSOR_TYPE, false, followSet13);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2970:19
            tensorTypeString = lastConsumedToken.toString();
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2971:5
            TensorType tensorType;
            try {
                tensorType = TensorType.fromSpec(tensorTypeString);
            } catch (IllegalArgumentException e) {
                //throw new IllegalArgumentException(errorMessage + ": Illegal tensor type spec: " + e.getMessage());
                lastConsumedToken.addIllegalArugmentException(e);
                return TensorType.empty;
            }
            return tensorType;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2984:1
    final public void importField(ParsedSchema schema) {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "importField";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2984:1
        importField thisProduction = null;
        if (buildTree) {
            thisProduction = new importField();
            openNodeScope(thisProduction);
        }
        String fieldRefSpec;
        String aliasFieldName;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$importField();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2990:5
            consumeToken(IMPORT, false, follow_set$SchemaParser_ccc$2990$5);
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2990:14
            consumeToken(FIELD, false, follow_set$SchemaParser_ccc$2990$14);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2990:22
            pushOntoCallStack("importField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2990, 22);
            outerFollowSet = follow_set$SchemaParser_ccc$2990$22;
            try {
                fieldRefSpec = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2990:53
            consumeToken(AS, false, follow_set$SchemaParser_ccc$2990$53);
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2990:58
            pushOntoCallStack("importField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2990, 58);
            outerFollowSet = follow_set$SchemaParser_ccc$2990$58;
            try {
                aliasFieldName = identifierStr();
            } finally {
                popCallStack();
            }
            // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2990:91
            pushOntoCallStack("importField", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2990, 91);
            outerFollowSet = follow_set$SchemaParser_ccc$2990$91;
            try {
                openLbrace();
            } finally {
                popCallStack();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2991:5
            EnumSet followSet37 = null;
            if (outerFollowSet != null) {
                followSet37 = follow_set$SchemaParser_ccc$2991$5.clone();
                followSet37.addAll(outerFollowSet);
            }
            consumeToken(RBRACE, false, followSet37);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2992:5
            long nDots = Utils.count(fieldRefSpec, '.');
            if (nDots != 1) {
                throw new IllegalArgumentException("Illegal field reference spec '" + fieldRefSpec + "': Does not include a single '.'");
            }
            int indexOfDot = fieldRefSpec.indexOf('.');
            String documentReferenceFieldName = fieldRefSpec.substring(0, indexOfDot);
            String foreignFieldName = fieldRefSpec.substring(indexOfDot + 1);
            schema.addImportedField(aliasFieldName, documentReferenceFieldName, foreignFieldName);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3009:1
    final public String expression() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "expression";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3009:1
        expression thisProduction = null;
        if (buildTree) {
            thisProduction = new expression();
            openNodeScope(thisProduction);
        }
        String exp;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$expression();
            }
            if (nextTokenType() == EXPRESSION_SL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3014:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$3014$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(EXPRESSION_SL, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3014:23
                exp = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf(":") + 1);
            } else if (nextTokenType() == EXPRESSION_ML) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3015:7
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$3015$7.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(EXPRESSION_ML, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3015:23
                exp = lastConsumedToken.toString().substring(lastConsumedToken.toString().indexOf("{") + 1, lastConsumedToken.toString().lastIndexOf("}"));
            } else {
                pushOntoCallStack("expression", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3014, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3014$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3017:5
            thisProduction.setExpressionString(exp);
            return exp;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    private static final EnumSet identifierWithDashStr_FIRST_SET = identifierWithDashStr_FIRST_SET_init();

    private static EnumSet identifierWithDashStr_FIRST_SET_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3023:1
    final public String identifierWithDashStr() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "identifierWithDashStr";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3023:1
        identifierWithDashStr thisProduction = null;
        if (buildTree) {
            thisProduction = new identifierWithDashStr();
            openNodeScope(thisProduction);
        }
        String identifier;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            // Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3028:5
            if (pendingRecovery) {
                recover$identifierWithDashStr();
            }
            if (first_set$SchemaParser_ccc$3028$5.contains(nextTokenType())) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3028:7
                pushOntoCallStack("identifierWithDashStr", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3028, 7);
                try {
                    identifier = identifierStr();
                } finally {
                    popCallStack();
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3028:34
                return identifier;
            } else if (first_set$SchemaParser_ccc$3030$5.contains(nextTokenType())) {
                if (nextTokenType() == IDENTIFIER_WITH_DASH) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3030:7
                    EnumSet followSet45 = null;
                    if (outerFollowSet != null) {
                        followSet45 = follow_set$SchemaParser_ccc$3030$7.clone();
                        followSet45.addAll(outerFollowSet);
                    }
                    consumeToken(IDENTIFIER_WITH_DASH, false, followSet45);
                } else if (nextTokenType() == APPROXIMATE_THRESHOLD) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3031:7
                    EnumSet followSet54 = null;
                    if (outerFollowSet != null) {
                        followSet54 = follow_set$SchemaParser_ccc$3031$7.clone();
                        followSet54.addAll(outerFollowSet);
                    }
                    consumeToken(APPROXIMATE_THRESHOLD, false, followSet54);
                } else if (nextTokenType() == CREATE_IF_NONEXISTENT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3032:7
                    EnumSet followSet63 = null;
                    if (outerFollowSet != null) {
                        followSet63 = follow_set$SchemaParser_ccc$3032$7.clone();
                        followSet63.addAll(outerFollowSet);
                    }
                    consumeToken(CREATE_IF_NONEXISTENT, false, followSet63);
                } else if (nextTokenType() == CUTOFF_FACTOR) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3033:7
                    EnumSet followSet72 = null;
                    if (outerFollowSet != null) {
                        followSet72 = follow_set$SchemaParser_ccc$3033$7.clone();
                        followSet72.addAll(outerFollowSet);
                    }
                    consumeToken(CUTOFF_FACTOR, false, followSet72);
                } else if (nextTokenType() == CUTOFF_STRATEGY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3034:7
                    EnumSet followSet81 = null;
                    if (outerFollowSet != null) {
                        followSet81 = follow_set$SchemaParser_ccc$3034$7.clone();
                        followSet81.addAll(outerFollowSet);
                    }
                    consumeToken(CUTOFF_STRATEGY, false, followSet81);
                } else if (nextTokenType() == DENSE_POSTING_LIST_THRESHOLD) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3035:7
                    EnumSet followSet90 = null;
                    if (outerFollowSet != null) {
                        followSet90 = follow_set$SchemaParser_ccc$3035$7.clone();
                        followSet90.addAll(outerFollowSet);
                    }
                    consumeToken(DENSE_POSTING_LIST_THRESHOLD, false, followSet90);
                } else if (nextTokenType() == DISTANCE_METRIC) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3036:7
                    EnumSet followSet99 = null;
                    if (outerFollowSet != null) {
                        followSet99 = follow_set$SchemaParser_ccc$3036$7.clone();
                        followSet99.addAll(outerFollowSet);
                    }
                    consumeToken(DISTANCE_METRIC, false, followSet99);
                } else if (nextTokenType() == DOCUMENT_SUMMARY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3037:7
                    EnumSet followSet108 = null;
                    if (outerFollowSet != null) {
                        followSet108 = follow_set$SchemaParser_ccc$3037$7.clone();
                        followSet108.addAll(outerFollowSet);
                    }
                    consumeToken(DOCUMENT_SUMMARY, false, followSet108);
                } else if (nextTokenType() == ENABLE_BIT_VECTORS) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3038:7
                    EnumSet followSet117 = null;
                    if (outerFollowSet != null) {
                        followSet117 = follow_set$SchemaParser_ccc$3038$7.clone();
                        followSet117.addAll(outerFollowSet);
                    }
                    consumeToken(ENABLE_BIT_VECTORS, false, followSet117);
                } else if (nextTokenType() == ENABLE_BM25) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3039:7
                    EnumSet followSet126 = null;
                    if (outerFollowSet != null) {
                        followSet126 = follow_set$SchemaParser_ccc$3039$7.clone();
                        followSet126.addAll(outerFollowSet);
                    }
                    consumeToken(ENABLE_BM25, false, followSet126);
                } else if (nextTokenType() == ENABLE_ONLY_BIT_VECTOR) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3040:7
                    EnumSet followSet135 = null;
                    if (outerFollowSet != null) {
                        followSet135 = follow_set$SchemaParser_ccc$3040$7.clone();
                        followSet135.addAll(outerFollowSet);
                    }
                    consumeToken(ENABLE_ONLY_BIT_VECTOR, false, followSet135);
                } else if (nextTokenType() == EVALUATION_POINT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3041:7
                    EnumSet followSet144 = null;
                    if (outerFollowSet != null) {
                        followSet144 = follow_set$SchemaParser_ccc$3041$7.clone();
                        followSet144.addAll(outerFollowSet);
                    }
                    consumeToken(EVALUATION_POINT, false, followSet144);
                } else if (nextTokenType() == EXACT_TERMINATOR) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3042:7
                    EnumSet followSet153 = null;
                    if (outerFollowSet != null) {
                        followSet153 = follow_set$SchemaParser_ccc$3042$7.clone();
                        followSet153.addAll(outerFollowSet);
                    }
                    consumeToken(EXACT_TERMINATOR, false, followSet153);
                } else if (nextTokenType() == EXECUTION_MODE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3043:7
                    EnumSet followSet162 = null;
                    if (outerFollowSet != null) {
                        followSet162 = follow_set$SchemaParser_ccc$3043$7.clone();
                        followSet162.addAll(outerFollowSet);
                    }
                    consumeToken(EXECUTION_MODE, false, followSet162);
                } else if (nextTokenType() == FAST_ACCESS) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3044:7
                    EnumSet followSet171 = null;
                    if (outerFollowSet != null) {
                        followSet171 = follow_set$SchemaParser_ccc$3044$7.clone();
                        followSet171.addAll(outerFollowSet);
                    }
                    consumeToken(FAST_ACCESS, false, followSet171);
                } else if (nextTokenType() == FAST_RANK) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3045:7
                    EnumSet followSet180 = null;
                    if (outerFollowSet != null) {
                        followSet180 = follow_set$SchemaParser_ccc$3045$7.clone();
                        followSet180.addAll(outerFollowSet);
                    }
                    consumeToken(FAST_RANK, false, followSet180);
                } else if (nextTokenType() == FAST_SEARCH) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3046:7
                    EnumSet followSet189 = null;
                    if (outerFollowSet != null) {
                        followSet189 = follow_set$SchemaParser_ccc$3046$7.clone();
                        followSet189.addAll(outerFollowSet);
                    }
                    consumeToken(FAST_SEARCH, false, followSet189);
                } else if (nextTokenType() == FIRST_PHASE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3047:7
                    EnumSet followSet198 = null;
                    if (outerFollowSet != null) {
                        followSet198 = follow_set$SchemaParser_ccc$3047$7.clone();
                        followSet198.addAll(outerFollowSet);
                    }
                    consumeToken(FIRST_PHASE, false, followSet198);
                } else if (nextTokenType() == FROM_DISK) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3048:7
                    EnumSet followSet207 = null;
                    if (outerFollowSet != null) {
                        followSet207 = follow_set$SchemaParser_ccc$3048$7.clone();
                        followSet207.addAll(outerFollowSet);
                    }
                    consumeToken(FROM_DISK, false, followSet207);
                } else if (nextTokenType() == GLOBAL_PHASE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3049:7
                    EnumSet followSet216 = null;
                    if (outerFollowSet != null) {
                        followSet216 = follow_set$SchemaParser_ccc$3049$7.clone();
                        followSet216.addAll(outerFollowSet);
                    }
                    consumeToken(GLOBAL_PHASE, false, followSet216);
                } else if (nextTokenType() == GPU_DEVICE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3050:7
                    EnumSet followSet225 = null;
                    if (outerFollowSet != null) {
                        followSet225 = follow_set$SchemaParser_ccc$3050$7.clone();
                        followSet225.addAll(outerFollowSet);
                    }
                    consumeToken(GPU_DEVICE, false, followSet225);
                } else if (nextTokenType() == GRAM_SIZE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3051:7
                    EnumSet followSet234 = null;
                    if (outerFollowSet != null) {
                        followSet234 = follow_set$SchemaParser_ccc$3051$7.clone();
                        followSet234.addAll(outerFollowSet);
                    }
                    consumeToken(GRAM_SIZE, false, followSet234);
                } else if (nextTokenType() == IGNORE_DEFAULT_RANK_FEATURES) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3052:7
                    EnumSet followSet243 = null;
                    if (outerFollowSet != null) {
                        followSet243 = follow_set$SchemaParser_ccc$3052$7.clone();
                        followSet243.addAll(outerFollowSet);
                    }
                    consumeToken(IGNORE_DEFAULT_RANK_FEATURES, false, followSet243);
                } else if (nextTokenType() == INTEROP_THREADS) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3053:7
                    EnumSet followSet252 = null;
                    if (outerFollowSet != null) {
                        followSet252 = follow_set$SchemaParser_ccc$3053$7.clone();
                        followSet252.addAll(outerFollowSet);
                    }
                    consumeToken(INTEROP_THREADS, false, followSet252);
                } else if (nextTokenType() == INTRAOP_THREADS) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3054:7
                    EnumSet followSet261 = null;
                    if (outerFollowSet != null) {
                        followSet261 = follow_set$SchemaParser_ccc$3054$7.clone();
                        followSet261.addAll(outerFollowSet);
                    }
                    consumeToken(INTRAOP_THREADS, false, followSet261);
                } else if (nextTokenType() == KEEP_RANK_COUNT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3055:7
                    EnumSet followSet270 = null;
                    if (outerFollowSet != null) {
                        followSet270 = follow_set$SchemaParser_ccc$3055$7.clone();
                        followSet270.addAll(outerFollowSet);
                    }
                    consumeToken(KEEP_RANK_COUNT, false, followSet270);
                } else if (nextTokenType() == LOWER_BOUND) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3056:7
                    EnumSet followSet279 = null;
                    if (outerFollowSet != null) {
                        followSet279 = follow_set$SchemaParser_ccc$3056$7.clone();
                        followSet279.addAll(outerFollowSet);
                    }
                    consumeToken(LOWER_BOUND, false, followSet279);
                } else if (nextTokenType() == MATCHED_ELEMENTS_ONLY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3057:7
                    EnumSet followSet288 = null;
                    if (outerFollowSet != null) {
                        followSet288 = follow_set$SchemaParser_ccc$3057$7.clone();
                        followSet288.addAll(outerFollowSet);
                    }
                    consumeToken(MATCHED_ELEMENTS_ONLY, false, followSet288);
                } else if (nextTokenType() == MATCH_PHASE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3058:7
                    EnumSet followSet297 = null;
                    if (outerFollowSet != null) {
                        followSet297 = follow_set$SchemaParser_ccc$3058$7.clone();
                        followSet297.addAll(outerFollowSet);
                    }
                    consumeToken(MATCH_PHASE, false, followSet297);
                } else if (nextTokenType() == MAX_FILTER_COVERAGE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3059:7
                    EnumSet followSet306 = null;
                    if (outerFollowSet != null) {
                        followSet306 = follow_set$SchemaParser_ccc$3059$7.clone();
                        followSet306.addAll(outerFollowSet);
                    }
                    consumeToken(MAX_FILTER_COVERAGE, false, followSet306);
                } else if (nextTokenType() == MAX_HITS) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3060:7
                    EnumSet followSet315 = null;
                    if (outerFollowSet != null) {
                        followSet315 = follow_set$SchemaParser_ccc$3060$7.clone();
                        followSet315.addAll(outerFollowSet);
                    }
                    consumeToken(MAX_HITS, false, followSet315);
                } else if (nextTokenType() == MAX_LENGTH) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3061:7
                    EnumSet followSet324 = null;
                    if (outerFollowSet != null) {
                        followSet324 = follow_set$SchemaParser_ccc$3061$7.clone();
                        followSet324.addAll(outerFollowSet);
                    }
                    consumeToken(MAX_LENGTH, false, followSet324);
                } else if (nextTokenType() == MAX_LINKS_PER_NODE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3062:7
                    EnumSet followSet333 = null;
                    if (outerFollowSet != null) {
                        followSet333 = follow_set$SchemaParser_ccc$3062$7.clone();
                        followSet333.addAll(outerFollowSet);
                    }
                    consumeToken(MAX_LINKS_PER_NODE, false, followSet333);
                } else if (nextTokenType() == MIN_GROUPS) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3063:7
                    EnumSet followSet342 = null;
                    if (outerFollowSet != null) {
                        followSet342 = follow_set$SchemaParser_ccc$3063$7.clone();
                        followSet342.addAll(outerFollowSet);
                    }
                    consumeToken(MIN_GROUPS, false, followSet342);
                } else if (nextTokenType() == MIN_HITS_PER_THREAD) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3064:7
                    EnumSet followSet351 = null;
                    if (outerFollowSet != null) {
                        followSet351 = follow_set$SchemaParser_ccc$3064$7.clone();
                        followSet351.addAll(outerFollowSet);
                    }
                    consumeToken(MIN_HITS_PER_THREAD, false, followSet351);
                } else if (nextTokenType() == MULTI_THREADED_INDEXING) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3065:7
                    EnumSet followSet360 = null;
                    if (outerFollowSet != null) {
                        followSet360 = follow_set$SchemaParser_ccc$3065$7.clone();
                        followSet360.addAll(outerFollowSet);
                    }
                    consumeToken(MULTI_THREADED_INDEXING, false, followSet360);
                } else if (nextTokenType() == NEIGHBORS_TO_EXPLORE_AT_INSERT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3066:7
                    EnumSet followSet369 = null;
                    if (outerFollowSet != null) {
                        followSet369 = follow_set$SchemaParser_ccc$3066$7.clone();
                        followSet369.addAll(outerFollowSet);
                    }
                    consumeToken(NEIGHBORS_TO_EXPLORE_AT_INSERT, false, followSet369);
                } else if (nextTokenType() == NUM_SEARCH_PARTITIONS) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3067:7
                    EnumSet followSet378 = null;
                    if (outerFollowSet != null) {
                        followSet378 = follow_set$SchemaParser_ccc$3067$7.clone();
                        followSet378.addAll(outerFollowSet);
                    }
                    consumeToken(NUM_SEARCH_PARTITIONS, false, followSet378);
                } else if (nextTokenType() == NUM_THREADS_PER_SEARCH) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3068:7
                    EnumSet followSet387 = null;
                    if (outerFollowSet != null) {
                        followSet387 = follow_set$SchemaParser_ccc$3068$7.clone();
                        followSet387.addAll(outerFollowSet);
                    }
                    consumeToken(NUM_THREADS_PER_SEARCH, false, followSet387);
                } else if (nextTokenType() == OMIT_SUMMARY_FEATURES) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3069:7
                    EnumSet followSet396 = null;
                    if (outerFollowSet != null) {
                        followSet396 = follow_set$SchemaParser_ccc$3069$7.clone();
                        followSet396.addAll(outerFollowSet);
                    }
                    consumeToken(OMIT_SUMMARY_FEATURES, false, followSet396);
                } else if (nextTokenType() == ON_DEMAND) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3070:7
                    EnumSet followSet405 = null;
                    if (outerFollowSet != null) {
                        followSet405 = follow_set$SchemaParser_ccc$3070$7.clone();
                        followSet405.addAll(outerFollowSet);
                    }
                    consumeToken(ON_DEMAND, false, followSet405);
                } else if (nextTokenType() == ON_FIRST_PHASE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3071:7
                    EnumSet followSet414 = null;
                    if (outerFollowSet != null) {
                        followSet414 = follow_set$SchemaParser_ccc$3071$7.clone();
                        followSet414.addAll(outerFollowSet);
                    }
                    consumeToken(ON_FIRST_PHASE, false, followSet414);
                } else if (nextTokenType() == ON_MATCH) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3072:7
                    EnumSet followSet423 = null;
                    if (outerFollowSet != null) {
                        followSet423 = follow_set$SchemaParser_ccc$3072$7.clone();
                        followSet423.addAll(outerFollowSet);
                    }
                    consumeToken(ON_MATCH, false, followSet423);
                } else if (nextTokenType() == ONNX_MODEL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3073:7
                    EnumSet followSet432 = null;
                    if (outerFollowSet != null) {
                        followSet432 = follow_set$SchemaParser_ccc$3073$7.clone();
                        followSet432.addAll(outerFollowSet);
                    }
                    consumeToken(ONNX_MODEL, false, followSet432);
                } else if (nextTokenType() == ON_SECOND_PHASE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3074:7
                    EnumSet followSet441 = null;
                    if (outerFollowSet != null) {
                        followSet441 = follow_set$SchemaParser_ccc$3074$7.clone();
                        followSet441.addAll(outerFollowSet);
                    }
                    consumeToken(ON_SECOND_PHASE, false, followSet441);
                } else if (nextTokenType() == ON_SUMMARY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3075:7
                    EnumSet followSet450 = null;
                    if (outerFollowSet != null) {
                        followSet450 = follow_set$SchemaParser_ccc$3075$7.clone();
                        followSet450.addAll(outerFollowSet);
                    }
                    consumeToken(ON_SUMMARY, false, followSet450);
                } else if (nextTokenType() == POST_FILTER_THRESHOLD) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3076:7
                    EnumSet followSet459 = null;
                    if (outerFollowSet != null) {
                        followSet459 = follow_set$SchemaParser_ccc$3076$7.clone();
                        followSet459.addAll(outerFollowSet);
                    }
                    consumeToken(POST_FILTER_THRESHOLD, false, followSet459);
                } else if (nextTokenType() == PRE_POST_FILTER_TIPPING_POINT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3077:7
                    EnumSet followSet468 = null;
                    if (outerFollowSet != null) {
                        followSet468 = follow_set$SchemaParser_ccc$3077$7.clone();
                        followSet468.addAll(outerFollowSet);
                    }
                    consumeToken(PRE_POST_FILTER_TIPPING_POINT, false, followSet468);
                } else if (nextTokenType() == QUERY_COMMAND) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3078:7
                    EnumSet followSet477 = null;
                    if (outerFollowSet != null) {
                        followSet477 = follow_set$SchemaParser_ccc$3078$7.clone();
                        followSet477.addAll(outerFollowSet);
                    }
                    consumeToken(QUERY_COMMAND, false, followSet477);
                } else if (nextTokenType() == RANK_PROFILE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3079:7
                    EnumSet followSet486 = null;
                    if (outerFollowSet != null) {
                        followSet486 = follow_set$SchemaParser_ccc$3079$7.clone();
                        followSet486.addAll(outerFollowSet);
                    }
                    consumeToken(RANK_PROFILE, false, followSet486);
                } else if (nextTokenType() == RANK_PROPERTIES) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3080:7
                    EnumSet followSet495 = null;
                    if (outerFollowSet != null) {
                        followSet495 = follow_set$SchemaParser_ccc$3080$7.clone();
                        followSet495.addAll(outerFollowSet);
                    }
                    consumeToken(RANK_PROPERTIES, false, followSet495);
                } else if (nextTokenType() == RANK_SCORE_DROP_LIMIT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3081:7
                    EnumSet followSet504 = null;
                    if (outerFollowSet != null) {
                        followSet504 = follow_set$SchemaParser_ccc$3081$7.clone();
                        followSet504.addAll(outerFollowSet);
                    }
                    consumeToken(RANK_SCORE_DROP_LIMIT, false, followSet504);
                } else if (nextTokenType() == RANK_TYPE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3082:7
                    EnumSet followSet513 = null;
                    if (outerFollowSet != null) {
                        followSet513 = follow_set$SchemaParser_ccc$3082$7.clone();
                        followSet513.addAll(outerFollowSet);
                    }
                    consumeToken(RANK_TYPE, false, followSet513);
                } else if (nextTokenType() == RAW_AS_BASE64_IN_SUMMARY) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3083:7
                    EnumSet followSet522 = null;
                    if (outerFollowSet != null) {
                        followSet522 = follow_set$SchemaParser_ccc$3083$7.clone();
                        followSet522.addAll(outerFollowSet);
                    }
                    consumeToken(RAW_AS_BASE64_IN_SUMMARY, false, followSet522);
                } else if (nextTokenType() == REMOVE_IF_ZERO) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3084:7
                    EnumSet followSet531 = null;
                    if (outerFollowSet != null) {
                        followSet531 = follow_set$SchemaParser_ccc$3084$7.clone();
                        followSet531.addAll(outerFollowSet);
                    }
                    consumeToken(REMOVE_IF_ZERO, false, followSet531);
                } else if (nextTokenType() == RERANK_COUNT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3085:7
                    EnumSet followSet540 = null;
                    if (outerFollowSet != null) {
                        followSet540 = follow_set$SchemaParser_ccc$3085$7.clone();
                        followSet540.addAll(outerFollowSet);
                    }
                    consumeToken(RERANK_COUNT, false, followSet540);
                } else if (nextTokenType() == SECOND_PHASE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3086:7
                    EnumSet followSet549 = null;
                    if (outerFollowSet != null) {
                        followSet549 = follow_set$SchemaParser_ccc$3086$7.clone();
                        followSet549.addAll(outerFollowSet);
                    }
                    consumeToken(SECOND_PHASE, false, followSet549);
                } else if (nextTokenType() == STRUCT_FIELD) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3087:7
                    EnumSet followSet558 = null;
                    if (outerFollowSet != null) {
                        followSet558 = follow_set$SchemaParser_ccc$3087$7.clone();
                        followSet558.addAll(outerFollowSet);
                    }
                    consumeToken(STRUCT_FIELD, false, followSet558);
                } else if (nextTokenType() == SUMMARY_TO) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3088:7
                    EnumSet followSet567 = null;
                    if (outerFollowSet != null) {
                        followSet567 = follow_set$SchemaParser_ccc$3088$7.clone();
                        followSet567.addAll(outerFollowSet);
                    }
                    consumeToken(SUMMARY_TO, false, followSet567);
                } else if (nextTokenType() == TARGET_HITS_MAX_ADJUSTMENT_FACTOR) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3089:7
                    EnumSet followSet576 = null;
                    if (outerFollowSet != null) {
                        followSet576 = follow_set$SchemaParser_ccc$3089$7.clone();
                        followSet576.addAll(outerFollowSet);
                    }
                    consumeToken(TARGET_HITS_MAX_ADJUSTMENT_FACTOR, false, followSet576);
                } else if (nextTokenType() == TERMWISE_LIMIT) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3090:7
                    EnumSet followSet585 = null;
                    if (outerFollowSet != null) {
                        followSet585 = follow_set$SchemaParser_ccc$3090$7.clone();
                        followSet585.addAll(outerFollowSet);
                    }
                    consumeToken(TERMWISE_LIMIT, false, followSet585);
                } else if (nextTokenType() == UPPER_BOUND) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3091:7
                    EnumSet followSet594 = null;
                    if (outerFollowSet != null) {
                        followSet594 = follow_set$SchemaParser_ccc$3091$7.clone();
                        followSet594.addAll(outerFollowSet);
                    }
                    consumeToken(UPPER_BOUND, false, followSet594);
                } else if (nextTokenType() == USE_MODEL) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3092:7
                    EnumSet followSet603 = null;
                    if (outerFollowSet != null) {
                        followSet603 = follow_set$SchemaParser_ccc$3092$7.clone();
                        followSet603.addAll(outerFollowSet);
                    }
                    consumeToken(USE_MODEL, false, followSet603);
                } else {
                    pushOntoCallStack("identifierWithDashStr", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3030, 7);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3030$7$, parsingStack);
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3093:7
                return lastConsumedToken.toString();
            } else {
                pushOntoCallStack("identifierWithDashStr", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3028, 5);
                throw new ParseException(lastConsumedToken, identifierWithDashStr_FIRST_SET, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    private static final EnumSet identifierStr_FIRST_SET = identifierStr_FIRST_SET_init();

    private static EnumSet identifierStr_FIRST_SET_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3104:1
    final public String identifierStr() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "identifierStr";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3104:1
        identifierStr thisProduction = null;
        if (buildTree) {
            thisProduction = new identifierStr();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$identifierStr();
            }
            if (nextTokenType() == ALIAS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3105:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$3105$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(ALIAS, false, followSet24);
            } else if (nextTokenType() == ALWAYS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3106:9
                EnumSet followSet33 = null;
                if (outerFollowSet != null) {
                    followSet33 = follow_set$SchemaParser_ccc$3106$9.clone();
                    followSet33.addAll(outerFollowSet);
                }
                consumeToken(ALWAYS, false, followSet33);
            } else if (nextTokenType() == ANNOTATION) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3107:9
                EnumSet followSet42 = null;
                if (outerFollowSet != null) {
                    followSet42 = follow_set$SchemaParser_ccc$3107$9.clone();
                    followSet42.addAll(outerFollowSet);
                }
                consumeToken(ANNOTATION, false, followSet42);
            } else if (nextTokenType() == ANNOTATIONREFERENCE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3108:9
                EnumSet followSet51 = null;
                if (outerFollowSet != null) {
                    followSet51 = follow_set$SchemaParser_ccc$3108$9.clone();
                    followSet51.addAll(outerFollowSet);
                }
                consumeToken(ANNOTATIONREFERENCE, false, followSet51);
            } else if (nextTokenType() == ARITY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3109:9
                EnumSet followSet60 = null;
                if (outerFollowSet != null) {
                    followSet60 = follow_set$SchemaParser_ccc$3109$9.clone();
                    followSet60.addAll(outerFollowSet);
                }
                consumeToken(ARITY, false, followSet60);
            } else if (nextTokenType() == ARRAY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3110:9
                EnumSet followSet69 = null;
                if (outerFollowSet != null) {
                    followSet69 = follow_set$SchemaParser_ccc$3110$9.clone();
                    followSet69.addAll(outerFollowSet);
                }
                consumeToken(ARRAY, false, followSet69);
            } else if (nextTokenType() == AS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3111:9
                EnumSet followSet78 = null;
                if (outerFollowSet != null) {
                    followSet78 = follow_set$SchemaParser_ccc$3111$9.clone();
                    followSet78.addAll(outerFollowSet);
                }
                consumeToken(AS, false, followSet78);
            } else if (nextTokenType() == ASCENDING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3112:9
                EnumSet followSet87 = null;
                if (outerFollowSet != null) {
                    followSet87 = follow_set$SchemaParser_ccc$3112$9.clone();
                    followSet87.addAll(outerFollowSet);
                }
                consumeToken(ASCENDING, false, followSet87);
            } else if (nextTokenType() == ATTRIBUTE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3113:9
                EnumSet followSet96 = null;
                if (outerFollowSet != null) {
                    followSet96 = follow_set$SchemaParser_ccc$3113$9.clone();
                    followSet96.addAll(outerFollowSet);
                }
                consumeToken(ATTRIBUTE, false, followSet96);
            } else if (nextTokenType() == BOLDING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3114:9
                EnumSet followSet105 = null;
                if (outerFollowSet != null) {
                    followSet105 = follow_set$SchemaParser_ccc$3114$9.clone();
                    followSet105.addAll(outerFollowSet);
                }
                consumeToken(BOLDING, false, followSet105);
            } else if (nextTokenType() == BTREE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3115:9
                EnumSet followSet114 = null;
                if (outerFollowSet != null) {
                    followSet114 = follow_set$SchemaParser_ccc$3115$9.clone();
                    followSet114.addAll(outerFollowSet);
                }
                consumeToken(BTREE, false, followSet114);
            } else if (nextTokenType() == CASED) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3116:9
                EnumSet followSet123 = null;
                if (outerFollowSet != null) {
                    followSet123 = follow_set$SchemaParser_ccc$3116$9.clone();
                    followSet123.addAll(outerFollowSet);
                }
                consumeToken(CASED, false, followSet123);
            } else if (nextTokenType() == CONSTANT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3117:9
                EnumSet followSet132 = null;
                if (outerFollowSet != null) {
                    followSet132 = follow_set$SchemaParser_ccc$3117$9.clone();
                    followSet132.addAll(outerFollowSet);
                }
                consumeToken(CONSTANT, false, followSet132);
            } else if (nextTokenType() == CONSTANTS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3118:9
                EnumSet followSet141 = null;
                if (outerFollowSet != null) {
                    followSet141 = follow_set$SchemaParser_ccc$3118$9.clone();
                    followSet141.addAll(outerFollowSet);
                }
                consumeToken(CONSTANTS, false, followSet141);
            } else if (nextTokenType() == CONTEXT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3119:9
                EnumSet followSet150 = null;
                if (outerFollowSet != null) {
                    followSet150 = follow_set$SchemaParser_ccc$3119$9.clone();
                    followSet150.addAll(outerFollowSet);
                }
                consumeToken(CONTEXT, false, followSet150);
            } else if (nextTokenType() == DESCENDING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3120:9
                EnumSet followSet159 = null;
                if (outerFollowSet != null) {
                    followSet159 = follow_set$SchemaParser_ccc$3120$9.clone();
                    followSet159.addAll(outerFollowSet);
                }
                consumeToken(DESCENDING, false, followSet159);
            } else if (nextTokenType() == DICTIONARY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3121:9
                EnumSet followSet168 = null;
                if (outerFollowSet != null) {
                    followSet168 = follow_set$SchemaParser_ccc$3121$9.clone();
                    followSet168.addAll(outerFollowSet);
                }
                consumeToken(DICTIONARY, false, followSet168);
            } else if (nextTokenType() == DIRECT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3122:9
                EnumSet followSet177 = null;
                if (outerFollowSet != null) {
                    followSet177 = follow_set$SchemaParser_ccc$3122$9.clone();
                    followSet177.addAll(outerFollowSet);
                }
                consumeToken(DIRECT, false, followSet177);
            } else if (nextTokenType() == DIVERSITY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3123:9
                EnumSet followSet186 = null;
                if (outerFollowSet != null) {
                    followSet186 = follow_set$SchemaParser_ccc$3123$9.clone();
                    followSet186.addAll(outerFollowSet);
                }
                consumeToken(DIVERSITY, false, followSet186);
            } else if (nextTokenType() == DOCUMENT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3124:9
                EnumSet followSet195 = null;
                if (outerFollowSet != null) {
                    followSet195 = follow_set$SchemaParser_ccc$3124$9.clone();
                    followSet195.addAll(outerFollowSet);
                }
                consumeToken(DOCUMENT, false, followSet195);
            } else if (nextTokenType() == DOUBLE_KEYWORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3125:9
                EnumSet followSet204 = null;
                if (outerFollowSet != null) {
                    followSet204 = follow_set$SchemaParser_ccc$3125$9.clone();
                    followSet204.addAll(outerFollowSet);
                }
                consumeToken(DOUBLE_KEYWORD, false, followSet204);
            } else if (nextTokenType() == FLOAT_KEYWORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3126:9
                EnumSet followSet213 = null;
                if (outerFollowSet != null) {
                    followSet213 = follow_set$SchemaParser_ccc$3126$9.clone();
                    followSet213.addAll(outerFollowSet);
                }
                consumeToken(FLOAT_KEYWORD, false, followSet213);
            } else if (nextTokenType() == LONG_KEYWORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3127:9
                EnumSet followSet222 = null;
                if (outerFollowSet != null) {
                    followSet222 = follow_set$SchemaParser_ccc$3127$9.clone();
                    followSet222.addAll(outerFollowSet);
                }
                consumeToken(LONG_KEYWORD, false, followSet222);
            } else if (nextTokenType() == STRING_KEYWORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3128:9
                EnumSet followSet231 = null;
                if (outerFollowSet != null) {
                    followSet231 = follow_set$SchemaParser_ccc$3128$9.clone();
                    followSet231.addAll(outerFollowSet);
                }
                consumeToken(STRING_KEYWORD, false, followSet231);
            } else if (nextTokenType() == DYNAMIC) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3129:9
                EnumSet followSet240 = null;
                if (outerFollowSet != null) {
                    followSet240 = follow_set$SchemaParser_ccc$3129$9.clone();
                    followSet240.addAll(outerFollowSet);
                }
                consumeToken(DYNAMIC, false, followSet240);
            } else if (nextTokenType() == EXACT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3130:9
                EnumSet followSet249 = null;
                if (outerFollowSet != null) {
                    followSet249 = follow_set$SchemaParser_ccc$3130$9.clone();
                    followSet249.addAll(outerFollowSet);
                }
                consumeToken(EXACT, false, followSet249);
            } else if (nextTokenType() == FALSE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3131:9
                EnumSet followSet258 = null;
                if (outerFollowSet != null) {
                    followSet258 = follow_set$SchemaParser_ccc$3131$9.clone();
                    followSet258.addAll(outerFollowSet);
                }
                consumeToken(FALSE, false, followSet258);
            } else if (nextTokenType() == FIELD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3132:9
                EnumSet followSet267 = null;
                if (outerFollowSet != null) {
                    followSet267 = follow_set$SchemaParser_ccc$3132$9.clone();
                    followSet267.addAll(outerFollowSet);
                }
                consumeToken(FIELD, false, followSet267);
            } else if (nextTokenType() == FIELDS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3133:9
                EnumSet followSet276 = null;
                if (outerFollowSet != null) {
                    followSet276 = follow_set$SchemaParser_ccc$3133$9.clone();
                    followSet276.addAll(outerFollowSet);
                }
                consumeToken(FIELDS, false, followSet276);
            } else if (nextTokenType() == FIELDSET) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3134:9
                EnumSet followSet285 = null;
                if (outerFollowSet != null) {
                    followSet285 = follow_set$SchemaParser_ccc$3134$9.clone();
                    followSet285.addAll(outerFollowSet);
                }
                consumeToken(FIELDSET, false, followSet285);
            } else if (nextTokenType() == FILE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3135:9
                EnumSet followSet294 = null;
                if (outerFollowSet != null) {
                    followSet294 = follow_set$SchemaParser_ccc$3135$9.clone();
                    followSet294.addAll(outerFollowSet);
                }
                consumeToken(FILE, false, followSet294);
            } else if (nextTokenType() == FILTER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3136:9
                EnumSet followSet303 = null;
                if (outerFollowSet != null) {
                    followSet303 = follow_set$SchemaParser_ccc$3136$9.clone();
                    followSet303.addAll(outerFollowSet);
                }
                consumeToken(FILTER, false, followSet303);
            } else if (nextTokenType() == FULL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3137:9
                EnumSet followSet312 = null;
                if (outerFollowSet != null) {
                    followSet312 = follow_set$SchemaParser_ccc$3137$9.clone();
                    followSet312.addAll(outerFollowSet);
                }
                consumeToken(FULL, false, followSet312);
            } else if (nextTokenType() == FUNCTION) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3138:9
                EnumSet followSet321 = null;
                if (outerFollowSet != null) {
                    followSet321 = follow_set$SchemaParser_ccc$3138$9.clone();
                    followSet321.addAll(outerFollowSet);
                }
                consumeToken(FUNCTION, false, followSet321);
            } else if (nextTokenType() == GRAM) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3139:9
                EnumSet followSet330 = null;
                if (outerFollowSet != null) {
                    followSet330 = follow_set$SchemaParser_ccc$3139$9.clone();
                    followSet330.addAll(outerFollowSet);
                }
                consumeToken(GRAM, false, followSet330);
            } else if (nextTokenType() == HASH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3140:9
                EnumSet followSet339 = null;
                if (outerFollowSet != null) {
                    followSet339 = follow_set$SchemaParser_ccc$3140$9.clone();
                    followSet339.addAll(outerFollowSet);
                }
                consumeToken(HASH, false, followSet339);
            } else if (nextTokenType() == HNSW) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3141:9
                EnumSet followSet348 = null;
                if (outerFollowSet != null) {
                    followSet348 = follow_set$SchemaParser_ccc$3141$9.clone();
                    followSet348.addAll(outerFollowSet);
                }
                consumeToken(HNSW, false, followSet348);
            } else if (nextTokenType() == ID) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3142:9
                EnumSet followSet357 = null;
                if (outerFollowSet != null) {
                    followSet357 = follow_set$SchemaParser_ccc$3142$9.clone();
                    followSet357.addAll(outerFollowSet);
                }
                consumeToken(ID, false, followSet357);
            } else if (nextTokenType() == IDENTICAL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3143:9
                EnumSet followSet366 = null;
                if (outerFollowSet != null) {
                    followSet366 = follow_set$SchemaParser_ccc$3143$9.clone();
                    followSet366.addAll(outerFollowSet);
                }
                consumeToken(IDENTICAL, false, followSet366);
            } else if (nextTokenType() == IDENTIFIER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3144:9
                EnumSet followSet375 = null;
                if (outerFollowSet != null) {
                    followSet375 = follow_set$SchemaParser_ccc$3144$9.clone();
                    followSet375.addAll(outerFollowSet);
                }
                consumeToken(IDENTIFIER, false, followSet375);
            } else if (nextTokenType() == IMPORT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3145:9
                EnumSet followSet384 = null;
                if (outerFollowSet != null) {
                    followSet384 = follow_set$SchemaParser_ccc$3145$9.clone();
                    followSet384.addAll(outerFollowSet);
                }
                consumeToken(IMPORT, false, followSet384);
            } else if (nextTokenType() == INDEX) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3146:9
                EnumSet followSet393 = null;
                if (outerFollowSet != null) {
                    followSet393 = follow_set$SchemaParser_ccc$3146$9.clone();
                    followSet393.addAll(outerFollowSet);
                }
                consumeToken(INDEX, false, followSet393);
            } else if (nextTokenType() == INDEXING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3147:9
                EnumSet followSet402 = null;
                if (outerFollowSet != null) {
                    followSet402 = follow_set$SchemaParser_ccc$3147$9.clone();
                    followSet402.addAll(outerFollowSet);
                }
                consumeToken(INDEXING, false, followSet402);
            } else if (nextTokenType() == INHERITS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3148:9
                EnumSet followSet411 = null;
                if (outerFollowSet != null) {
                    followSet411 = follow_set$SchemaParser_ccc$3148$9.clone();
                    followSet411.addAll(outerFollowSet);
                }
                consumeToken(INHERITS, false, followSet411);
            } else if (nextTokenType() == INLINE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3149:9
                EnumSet followSet420 = null;
                if (outerFollowSet != null) {
                    followSet420 = follow_set$SchemaParser_ccc$3149$9.clone();
                    followSet420.addAll(outerFollowSet);
                }
                consumeToken(INLINE, false, followSet420);
            } else if (nextTokenType() == INPUTS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3150:9
                EnumSet followSet429 = null;
                if (outerFollowSet != null) {
                    followSet429 = follow_set$SchemaParser_ccc$3150$9.clone();
                    followSet429.addAll(outerFollowSet);
                }
                consumeToken(INPUTS, false, followSet429);
            } else if (nextTokenType() == INTEGER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3151:9
                EnumSet followSet438 = null;
                if (outerFollowSet != null) {
                    followSet438 = follow_set$SchemaParser_ccc$3151$9.clone();
                    followSet438.addAll(outerFollowSet);
                }
                consumeToken(INTEGER, false, followSet438);
            } else if (nextTokenType() == LITERAL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3152:9
                EnumSet followSet447 = null;
                if (outerFollowSet != null) {
                    followSet447 = follow_set$SchemaParser_ccc$3152$9.clone();
                    followSet447.addAll(outerFollowSet);
                }
                consumeToken(LITERAL, false, followSet447);
            } else if (nextTokenType() == LOCALE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3153:9
                EnumSet followSet456 = null;
                if (outerFollowSet != null) {
                    followSet456 = follow_set$SchemaParser_ccc$3153$9.clone();
                    followSet456.addAll(outerFollowSet);
                }
                consumeToken(LOCALE, false, followSet456);
            } else if (nextTokenType() == LONG) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3154:9
                EnumSet followSet465 = null;
                if (outerFollowSet != null) {
                    followSet465 = follow_set$SchemaParser_ccc$3154$9.clone();
                    followSet465.addAll(outerFollowSet);
                }
                consumeToken(LONG, false, followSet465);
            } else if (nextTokenType() == LOOSE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3155:9
                EnumSet followSet474 = null;
                if (outerFollowSet != null) {
                    followSet474 = follow_set$SchemaParser_ccc$3155$9.clone();
                    followSet474.addAll(outerFollowSet);
                }
                consumeToken(LOOSE, false, followSet474);
            } else if (nextTokenType() == LOWERCASE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3156:9
                EnumSet followSet483 = null;
                if (outerFollowSet != null) {
                    followSet483 = follow_set$SchemaParser_ccc$3156$9.clone();
                    followSet483.addAll(outerFollowSet);
                }
                consumeToken(LOWERCASE, false, followSet483);
            } else if (nextTokenType() == MACRO) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3157:9
                EnumSet followSet492 = null;
                if (outerFollowSet != null) {
                    followSet492 = follow_set$SchemaParser_ccc$3157$9.clone();
                    followSet492.addAll(outerFollowSet);
                }
                consumeToken(MACRO, false, followSet492);
            } else if (nextTokenType() == MAP) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3158:9
                EnumSet followSet501 = null;
                if (outerFollowSet != null) {
                    followSet501 = follow_set$SchemaParser_ccc$3158$9.clone();
                    followSet501.addAll(outerFollowSet);
                }
                consumeToken(MAP, false, followSet501);
            } else if (nextTokenType() == MATCH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3159:9
                EnumSet followSet510 = null;
                if (outerFollowSet != null) {
                    followSet510 = follow_set$SchemaParser_ccc$3159$9.clone();
                    followSet510.addAll(outerFollowSet);
                }
                consumeToken(MATCH, false, followSet510);
            } else if (nextTokenType() == MODEL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3160:9
                EnumSet followSet519 = null;
                if (outerFollowSet != null) {
                    followSet519 = follow_set$SchemaParser_ccc$3160$9.clone();
                    followSet519.addAll(outerFollowSet);
                }
                consumeToken(MODEL, false, followSet519);
            } else if (nextTokenType() == MTOKEN) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3161:9
                EnumSet followSet528 = null;
                if (outerFollowSet != null) {
                    followSet528 = follow_set$SchemaParser_ccc$3161$9.clone();
                    followSet528.addAll(outerFollowSet);
                }
                consumeToken(MTOKEN, false, followSet528);
            } else if (nextTokenType() == MUTABLE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3162:9
                EnumSet followSet537 = null;
                if (outerFollowSet != null) {
                    followSet537 = follow_set$SchemaParser_ccc$3162$9.clone();
                    followSet537.addAll(outerFollowSet);
                }
                consumeToken(MUTABLE, false, followSet537);
            } else if (nextTokenType() == MUTATE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3163:9
                EnumSet followSet546 = null;
                if (outerFollowSet != null) {
                    followSet546 = follow_set$SchemaParser_ccc$3163$9.clone();
                    followSet546.addAll(outerFollowSet);
                }
                consumeToken(MUTATE, false, followSet546);
            } else if (nextTokenType() == NEVER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3164:9
                EnumSet followSet555 = null;
                if (outerFollowSet != null) {
                    followSet555 = follow_set$SchemaParser_ccc$3164$9.clone();
                    followSet555.addAll(outerFollowSet);
                }
                consumeToken(NEVER, false, followSet555);
            } else if (nextTokenType() == NONE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3165:9
                EnumSet followSet564 = null;
                if (outerFollowSet != null) {
                    followSet564 = follow_set$SchemaParser_ccc$3165$9.clone();
                    followSet564.addAll(outerFollowSet);
                }
                consumeToken(NONE, false, followSet564);
            } else if (nextTokenType() == NORMAL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3166:9
                EnumSet followSet573 = null;
                if (outerFollowSet != null) {
                    followSet573 = follow_set$SchemaParser_ccc$3166$9.clone();
                    followSet573.addAll(outerFollowSet);
                }
                consumeToken(NORMAL, false, followSet573);
            } else if (nextTokenType() == NORMALIZING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3167:9
                EnumSet followSet582 = null;
                if (outerFollowSet != null) {
                    followSet582 = follow_set$SchemaParser_ccc$3167$9.clone();
                    followSet582.addAll(outerFollowSet);
                }
                consumeToken(NORMALIZING, false, followSet582);
            } else if (nextTokenType() == OFF) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3168:9
                EnumSet followSet591 = null;
                if (outerFollowSet != null) {
                    followSet591 = follow_set$SchemaParser_ccc$3168$9.clone();
                    followSet591.addAll(outerFollowSet);
                }
                consumeToken(OFF, false, followSet591);
            } else if (nextTokenType() == ON) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3169:9
                EnumSet followSet600 = null;
                if (outerFollowSet != null) {
                    followSet600 = follow_set$SchemaParser_ccc$3169$9.clone();
                    followSet600.addAll(outerFollowSet);
                }
                consumeToken(ON, false, followSet600);
            } else if (nextTokenType() == OPERATION) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3170:9
                EnumSet followSet609 = null;
                if (outerFollowSet != null) {
                    followSet609 = follow_set$SchemaParser_ccc$3170$9.clone();
                    followSet609.addAll(outerFollowSet);
                }
                consumeToken(OPERATION, false, followSet609);
            } else if (nextTokenType() == ORDER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3171:9
                EnumSet followSet618 = null;
                if (outerFollowSet != null) {
                    followSet618 = follow_set$SchemaParser_ccc$3171$9.clone();
                    followSet618.addAll(outerFollowSet);
                }
                consumeToken(ORDER, false, followSet618);
            } else if (nextTokenType() == PAGED) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3172:9
                EnumSet followSet627 = null;
                if (outerFollowSet != null) {
                    followSet627 = follow_set$SchemaParser_ccc$3172$9.clone();
                    followSet627.addAll(outerFollowSet);
                }
                consumeToken(PAGED, false, followSet627);
            } else if (nextTokenType() == PARALLEL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3173:9
                EnumSet followSet636 = null;
                if (outerFollowSet != null) {
                    followSet636 = follow_set$SchemaParser_ccc$3173$9.clone();
                    followSet636.addAll(outerFollowSet);
                }
                consumeToken(PARALLEL, false, followSet636);
            } else if (nextTokenType() == PREFIX) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3174:9
                EnumSet followSet645 = null;
                if (outerFollowSet != null) {
                    followSet645 = follow_set$SchemaParser_ccc$3174$9.clone();
                    followSet645.addAll(outerFollowSet);
                }
                consumeToken(PREFIX, false, followSet645);
            } else if (nextTokenType() == PRIMARY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3175:9
                EnumSet followSet654 = null;
                if (outerFollowSet != null) {
                    followSet654 = follow_set$SchemaParser_ccc$3175$9.clone();
                    followSet654.addAll(outerFollowSet);
                }
                consumeToken(PRIMARY, false, followSet654);
            } else if (nextTokenType() == PROPERTIES) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3176:9
                EnumSet followSet663 = null;
                if (outerFollowSet != null) {
                    followSet663 = follow_set$SchemaParser_ccc$3176$9.clone();
                    followSet663.addAll(outerFollowSet);
                }
                consumeToken(PROPERTIES, false, followSet663);
            } else if (nextTokenType() == QUATERNARY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3177:9
                EnumSet followSet672 = null;
                if (outerFollowSet != null) {
                    followSet672 = follow_set$SchemaParser_ccc$3177$9.clone();
                    followSet672.addAll(outerFollowSet);
                }
                consumeToken(QUATERNARY, false, followSet672);
            } else if (nextTokenType() == QUERY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3178:9
                EnumSet followSet681 = null;
                if (outerFollowSet != null) {
                    followSet681 = follow_set$SchemaParser_ccc$3178$9.clone();
                    followSet681.addAll(outerFollowSet);
                }
                consumeToken(QUERY, false, followSet681);
            } else if (nextTokenType() == RANK) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3179:9
                EnumSet followSet690 = null;
                if (outerFollowSet != null) {
                    followSet690 = follow_set$SchemaParser_ccc$3179$9.clone();
                    followSet690.addAll(outerFollowSet);
                }
                consumeToken(RANK, false, followSet690);
            } else if (nextTokenType() == RAW) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3180:9
                EnumSet followSet699 = null;
                if (outerFollowSet != null) {
                    followSet699 = follow_set$SchemaParser_ccc$3180$9.clone();
                    followSet699.addAll(outerFollowSet);
                }
                consumeToken(RAW, false, followSet699);
            } else if (nextTokenType() == REFERENCE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3181:9
                EnumSet followSet708 = null;
                if (outerFollowSet != null) {
                    followSet708 = follow_set$SchemaParser_ccc$3181$9.clone();
                    followSet708.addAll(outerFollowSet);
                }
                consumeToken(REFERENCE, false, followSet708);
            } else if (nextTokenType() == SCHEMA) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3182:9
                EnumSet followSet717 = null;
                if (outerFollowSet != null) {
                    followSet717 = follow_set$SchemaParser_ccc$3182$9.clone();
                    followSet717.addAll(outerFollowSet);
                }
                consumeToken(SCHEMA, false, followSet717);
            } else if (nextTokenType() == SEARCH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3183:9
                EnumSet followSet726 = null;
                if (outerFollowSet != null) {
                    followSet726 = follow_set$SchemaParser_ccc$3183$9.clone();
                    followSet726.addAll(outerFollowSet);
                }
                consumeToken(SEARCH, false, followSet726);
            } else if (nextTokenType() == SECONDARY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3184:9
                EnumSet followSet735 = null;
                if (outerFollowSet != null) {
                    followSet735 = follow_set$SchemaParser_ccc$3184$9.clone();
                    followSet735.addAll(outerFollowSet);
                }
                consumeToken(SECONDARY, false, followSet735);
            } else if (nextTokenType() == SEQUENTIAL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3185:9
                EnumSet followSet744 = null;
                if (outerFollowSet != null) {
                    followSet744 = follow_set$SchemaParser_ccc$3185$9.clone();
                    followSet744.addAll(outerFollowSet);
                }
                consumeToken(SEQUENTIAL, false, followSet744);
            } else if (nextTokenType() == SORTING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3186:9
                EnumSet followSet753 = null;
                if (outerFollowSet != null) {
                    followSet753 = follow_set$SchemaParser_ccc$3186$9.clone();
                    followSet753.addAll(outerFollowSet);
                }
                consumeToken(SORTING, false, followSet753);
            } else if (nextTokenType() == SOURCE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3187:9
                EnumSet followSet762 = null;
                if (outerFollowSet != null) {
                    followSet762 = follow_set$SchemaParser_ccc$3187$9.clone();
                    followSet762.addAll(outerFollowSet);
                }
                consumeToken(SOURCE, false, followSet762);
            } else if (nextTokenType() == SSCONTEXTUAL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3188:9
                EnumSet followSet771 = null;
                if (outerFollowSet != null) {
                    followSet771 = follow_set$SchemaParser_ccc$3188$9.clone();
                    followSet771.addAll(outerFollowSet);
                }
                consumeToken(SSCONTEXTUAL, false, followSet771);
            } else if (nextTokenType() == SSOVERRIDE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3189:9
                EnumSet followSet780 = null;
                if (outerFollowSet != null) {
                    followSet780 = follow_set$SchemaParser_ccc$3189$9.clone();
                    followSet780.addAll(outerFollowSet);
                }
                consumeToken(SSOVERRIDE, false, followSet780);
            } else if (nextTokenType() == SSTITLE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3190:9
                EnumSet followSet789 = null;
                if (outerFollowSet != null) {
                    followSet789 = follow_set$SchemaParser_ccc$3190$9.clone();
                    followSet789.addAll(outerFollowSet);
                }
                consumeToken(SSTITLE, false, followSet789);
            } else if (nextTokenType() == SSURL) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3191:9
                EnumSet followSet798 = null;
                if (outerFollowSet != null) {
                    followSet798 = follow_set$SchemaParser_ccc$3191$9.clone();
                    followSet798.addAll(outerFollowSet);
                }
                consumeToken(SSURL, false, followSet798);
            } else if (nextTokenType() == STATIC) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3192:9
                EnumSet followSet807 = null;
                if (outerFollowSet != null) {
                    followSet807 = follow_set$SchemaParser_ccc$3192$9.clone();
                    followSet807.addAll(outerFollowSet);
                }
                consumeToken(STATIC, false, followSet807);
            } else if (nextTokenType() == STEMMING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3193:9
                EnumSet followSet816 = null;
                if (outerFollowSet != null) {
                    followSet816 = follow_set$SchemaParser_ccc$3193$9.clone();
                    followSet816.addAll(outerFollowSet);
                }
                consumeToken(STEMMING, false, followSet816);
            } else if (nextTokenType() == STRENGTH) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3194:9
                EnumSet followSet825 = null;
                if (outerFollowSet != null) {
                    followSet825 = follow_set$SchemaParser_ccc$3194$9.clone();
                    followSet825.addAll(outerFollowSet);
                }
                consumeToken(STRENGTH, false, followSet825);
            } else if (nextTokenType() == STRICT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3195:9
                EnumSet followSet834 = null;
                if (outerFollowSet != null) {
                    followSet834 = follow_set$SchemaParser_ccc$3195$9.clone();
                    followSet834.addAll(outerFollowSet);
                }
                consumeToken(STRICT, false, followSet834);
            } else if (nextTokenType() == SIGNIFICANCE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3196:9
                EnumSet followSet843 = null;
                if (outerFollowSet != null) {
                    followSet843 = follow_set$SchemaParser_ccc$3196$9.clone();
                    followSet843.addAll(outerFollowSet);
                }
                consumeToken(SIGNIFICANCE, false, followSet843);
            } else if (nextTokenType() == STRING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3197:9
                EnumSet followSet852 = null;
                if (outerFollowSet != null) {
                    followSet852 = follow_set$SchemaParser_ccc$3197$9.clone();
                    followSet852.addAll(outerFollowSet);
                }
                consumeToken(STRING, false, followSet852);
            } else if (nextTokenType() == STRUCT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3198:9
                EnumSet followSet861 = null;
                if (outerFollowSet != null) {
                    followSet861 = follow_set$SchemaParser_ccc$3198$9.clone();
                    followSet861.addAll(outerFollowSet);
                }
                consumeToken(STRUCT, false, followSet861);
            } else if (nextTokenType() == SUBSTRING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3199:9
                EnumSet followSet870 = null;
                if (outerFollowSet != null) {
                    followSet870 = follow_set$SchemaParser_ccc$3199$9.clone();
                    followSet870.addAll(outerFollowSet);
                }
                consumeToken(SUBSTRING, false, followSet870);
            } else if (nextTokenType() == SUFFIX) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3200:9
                EnumSet followSet879 = null;
                if (outerFollowSet != null) {
                    followSet879 = follow_set$SchemaParser_ccc$3200$9.clone();
                    followSet879.addAll(outerFollowSet);
                }
                consumeToken(SUFFIX, false, followSet879);
            } else if (nextTokenType() == SUMMARY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3201:9
                EnumSet followSet888 = null;
                if (outerFollowSet != null) {
                    followSet888 = follow_set$SchemaParser_ccc$3201$9.clone();
                    followSet888.addAll(outerFollowSet);
                }
                consumeToken(SUMMARY, false, followSet888);
            } else if (nextTokenType() == SYMMETRIC) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3202:9
                EnumSet followSet897 = null;
                if (outerFollowSet != null) {
                    followSet897 = follow_set$SchemaParser_ccc$3202$9.clone();
                    followSet897.addAll(outerFollowSet);
                }
                consumeToken(SYMMETRIC, false, followSet897);
            } else if (nextTokenType() == TERTIARY) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3203:9
                EnumSet followSet906 = null;
                if (outerFollowSet != null) {
                    followSet906 = follow_set$SchemaParser_ccc$3203$9.clone();
                    followSet906.addAll(outerFollowSet);
                }
                consumeToken(TERTIARY, false, followSet906);
            } else if (nextTokenType() == TEXT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3204:9
                EnumSet followSet915 = null;
                if (outerFollowSet != null) {
                    followSet915 = follow_set$SchemaParser_ccc$3204$9.clone();
                    followSet915.addAll(outerFollowSet);
                }
                consumeToken(TEXT, false, followSet915);
            } else if (nextTokenType() == TO) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3205:9
                EnumSet followSet924 = null;
                if (outerFollowSet != null) {
                    followSet924 = follow_set$SchemaParser_ccc$3205$9.clone();
                    followSet924.addAll(outerFollowSet);
                }
                consumeToken(TO, false, followSet924);
            } else if (nextTokenType() == TOKENS) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3206:9
                EnumSet followSet933 = null;
                if (outerFollowSet != null) {
                    followSet933 = follow_set$SchemaParser_ccc$3206$9.clone();
                    followSet933.addAll(outerFollowSet);
                }
                consumeToken(TOKENS, false, followSet933);
            } else if (nextTokenType() == TRUE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3207:9
                EnumSet followSet942 = null;
                if (outerFollowSet != null) {
                    followSet942 = follow_set$SchemaParser_ccc$3207$9.clone();
                    followSet942.addAll(outerFollowSet);
                }
                consumeToken(TRUE, false, followSet942);
            } else if (nextTokenType() == TYPE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3208:9
                EnumSet followSet951 = null;
                if (outerFollowSet != null) {
                    followSet951 = follow_set$SchemaParser_ccc$3208$9.clone();
                    followSet951.addAll(outerFollowSet);
                }
                consumeToken(TYPE, false, followSet951);
            } else if (nextTokenType() == UCA) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3209:9
                EnumSet followSet960 = null;
                if (outerFollowSet != null) {
                    followSet960 = follow_set$SchemaParser_ccc$3209$9.clone();
                    followSet960.addAll(outerFollowSet);
                }
                consumeToken(UCA, false, followSet960);
            } else if (nextTokenType() == UNCASED) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3210:9
                EnumSet followSet969 = null;
                if (outerFollowSet != null) {
                    followSet969 = follow_set$SchemaParser_ccc$3210$9.clone();
                    followSet969.addAll(outerFollowSet);
                }
                consumeToken(UNCASED, false, followSet969);
            } else if (nextTokenType() == URI) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3211:9
                EnumSet followSet978 = null;
                if (outerFollowSet != null) {
                    followSet978 = follow_set$SchemaParser_ccc$3211$9.clone();
                    followSet978.addAll(outerFollowSet);
                }
                consumeToken(URI, false, followSet978);
            } else if (nextTokenType() == VARIABLE) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3212:9
                EnumSet followSet987 = null;
                if (outerFollowSet != null) {
                    followSet987 = follow_set$SchemaParser_ccc$3212$9.clone();
                    followSet987.addAll(outerFollowSet);
                }
                consumeToken(VARIABLE, false, followSet987);
            } else if (nextTokenType() == WEIGHT) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3213:9
                EnumSet followSet996 = null;
                if (outerFollowSet != null) {
                    followSet996 = follow_set$SchemaParser_ccc$3213$9.clone();
                    followSet996.addAll(outerFollowSet);
                }
                consumeToken(WEIGHT, false, followSet996);
            } else if (nextTokenType() == WEIGHTEDSET) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3214:9
                EnumSet followSet1005 = null;
                if (outerFollowSet != null) {
                    followSet1005 = follow_set$SchemaParser_ccc$3214$9.clone();
                    followSet1005.addAll(outerFollowSet);
                }
                consumeToken(WEIGHTEDSET, false, followSet1005);
            } else if (nextTokenType() == WORD) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3215:9
                EnumSet followSet1014 = null;
                if (outerFollowSet != null) {
                    followSet1014 = follow_set$SchemaParser_ccc$3215$9.clone();
                    followSet1014.addAll(outerFollowSet);
                }
                consumeToken(WORD, false, followSet1014);
            } else {
                pushOntoCallStack("identifierStr", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3105, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3105$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3216:7
            return lastConsumedToken.toString();
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3228:1
    final public String quotedString() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "quotedString";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3228:1
        quotedString thisProduction = null;
        if (buildTree) {
            thisProduction = new quotedString();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$quotedString();
            }
            if (nextTokenType() == DOUBLEQUOTEDSTRING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3230:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$3230$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(DOUBLEQUOTEDSTRING, false, followSet24);
            } else if (nextTokenType() == SINGLEQUOTEDSTRING) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3230:30
                EnumSet followSet33 = null;
                if (outerFollowSet != null) {
                    followSet33 = follow_set$SchemaParser_ccc$3230$30.clone();
                    followSet33.addAll(outerFollowSet);
                }
                consumeToken(SINGLEQUOTEDSTRING, false, followSet33);
            } else {
                pushOntoCallStack("quotedString", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3230, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3230$7$, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3231:5
            return lastConsumedToken.toString().substring(1, lastConsumedToken.toString().length() - 1);
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3235:1
    final public Boolean bool() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "bool";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3235:1
        bool thisProduction = null;
        if (buildTree) {
            thisProduction = new bool();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$bool();
            }
            if (nextTokenType() == ON || nextTokenType == TRUE) {
                if (nextTokenType() == ON) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3237:9
                    EnumSet followSet35 = null;
                    if (outerFollowSet != null) {
                        followSet35 = follow_set$SchemaParser_ccc$3237$9.clone();
                        followSet35.addAll(outerFollowSet);
                    }
                    consumeToken(ON, false, followSet35);
                } else if (nextTokenType() == TRUE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3237:17
                    EnumSet followSet44 = null;
                    if (outerFollowSet != null) {
                        followSet44 = follow_set$SchemaParser_ccc$3237$17.clone();
                        followSet44.addAll(outerFollowSet);
                    }
                    consumeToken(TRUE, false, followSet44);
                } else {
                    pushOntoCallStack("bool", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3237, 9);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3237$9$, parsingStack);
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3237:27
                return true;
            } else if (nextTokenType() == OFF || nextTokenType == FALSE) {
                if (nextTokenType() == OFF) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3238:9
                    EnumSet followSet66 = null;
                    if (outerFollowSet != null) {
                        followSet66 = follow_set$SchemaParser_ccc$3238$9.clone();
                        followSet66.addAll(outerFollowSet);
                    }
                    consumeToken(OFF, false, followSet66);
                } else if (nextTokenType() == FALSE) {
                    // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3238:17
                    EnumSet followSet75 = null;
                    if (outerFollowSet != null) {
                        followSet75 = follow_set$SchemaParser_ccc$3238$17.clone();
                        followSet75.addAll(outerFollowSet);
                    }
                    consumeToken(FALSE, false, followSet75);
                } else {
                    pushOntoCallStack("bool", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3238, 9);
                    throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3238$9$, parsingStack);
                }
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3238:27
                return false;
            } else {
                pushOntoCallStack("bool", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3237, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3237$7, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3242:1
    final public int integerElm() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "integerElm";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3242:1
        integerElm thisProduction = null;
        if (buildTree) {
            thisProduction = new integerElm();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$integerElm();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3244:5
            EnumSet followSet13 = null;
            if (outerFollowSet != null) {
                followSet13 = follow_set$SchemaParser_ccc$3244$5.clone();
                followSet13.addAll(outerFollowSet);
            }
            consumeToken(INTEGER, false, followSet13);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3244:15
            return Integer.parseInt(lastConsumedToken.toString());
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3248:1
    final public long longValue() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "longValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3248:1
        longValue thisProduction = null;
        if (buildTree) {
            thisProduction = new longValue();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$longValue();
            }
            if (nextTokenType() == INTEGER) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3250:7
                EnumSet followSet24 = null;
                if (outerFollowSet != null) {
                    followSet24 = follow_set$SchemaParser_ccc$3250$7.clone();
                    followSet24.addAll(outerFollowSet);
                }
                consumeToken(INTEGER, false, followSet24);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3250:17
                return Long.parseLong(lastConsumedToken.toString());
            } else if (nextTokenType() == LONG) {
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3251:7
                EnumSet followSet35 = null;
                if (outerFollowSet != null) {
                    followSet35 = follow_set$SchemaParser_ccc$3251$7.clone();
                    followSet35.addAll(outerFollowSet);
                }
                consumeToken(LONG, false, followSet35);
                // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3251:17
                return Long.parseLong(lastConsumedToken.toString().substring(0, lastConsumedToken.toString().length() - 1));
            } else {
                pushOntoCallStack("longValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3250, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3250$7$, parsingStack);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3256:1
    final public double floatValue() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "floatValue";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3256:1
        floatValue thisProduction = null;
        if (buildTree) {
            thisProduction = new floatValue();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$floatValue();
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3258:5
            EnumSet followSet13 = null;
            if (outerFollowSet != null) {
                followSet13 = follow_set$SchemaParser_ccc$3258$5.clone();
                followSet13.addAll(outerFollowSet);
            }
            consumeToken(DOUBLE, false, followSet13);
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3258:14
            return Double.valueOf(lastConsumedToken.toString());
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3261:1
    final public Number number() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "number";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3261:1
        number thisProduction = null;
        if (buildTree) {
            thisProduction = new number();
            openNodeScope(thisProduction);
        }
        Number num;
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$number();
            }
            if (nextTokenType() == DOUBLE) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3266:7
                pushOntoCallStack("number", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3266, 7);
                try {
                    num = floatValue();
                } finally {
                    popCallStack();
                }
            } else if (nextTokenType() == INTEGER || nextTokenType == LONG) {
                // Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3266:26
                pushOntoCallStack("number", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3266, 26);
                try {
                    num = longValue();
                } finally {
                    popCallStack();
                }
            } else {
                pushOntoCallStack("number", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 3266, 7);
                throw new ParseException(lastConsumedToken, first_set$SchemaParser_ccc$3266$7, parsingStack);
            }
            // Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3266:44
            return num;
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3269:1
    final public void openLbrace() {
        if (cancelled) throw new CancellationException();
        this.currentlyParsedProduction = "openLbrace";
        // Code for BNFProduction specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3269:1
        openLbrace thisProduction = null;
        if (buildTree) {
            thisProduction = new openLbrace();
            openNodeScope(thisProduction);
        }
        ParseException parseException3 = null;
        int callStackSize4 = parsingStack.size();
        try {
            if (pendingRecovery) {
                recover$openLbrace();
            }
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3270:6
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3270:7
                consumeToken(NL, false, follow_set$SchemaParser_ccc$3270$7);
            }
            // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3270:14
            EnumSet followSet32 = null;
            if (outerFollowSet != null) {
                followSet32 = follow_set$SchemaParser_ccc$3270$14.clone();
                followSet32.addAll(outerFollowSet);
            }
            consumeToken(LBRACE, false, followSet32);
            // Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3270:23
            while (true) {
                if (!(nextTokenType() == NL)) break;
                // Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3270:24
                EnumSet followSet45 = null;
                if (outerFollowSet != null) {
                    followSet45 = follow_set$SchemaParser_ccc$3270$24.clone();
                    followSet45.addAll(outerFollowSet);
                }
                consumeToken(NL, false, followSet45);
            }
        } catch (ParseException e) {
            parseException3 = e;
            if (isParserTolerant()) this.pendingRecovery = true;
            throw e;
        } finally {
            restoreCallStack(callStackSize4);
            if (thisProduction != null) {
                if (parseException3 == null) {
                    closeNodeScope(thisProduction, true);
                } else {
                    closeNodeScope(thisProduction, true);
                    thisProduction.setDirty(true);
                }
            }
        }
    }

    private void recover$Root() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$RootRankProfile() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rootSchema() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rootSchemaItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rootDocument() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rootDocumentItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$documentElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$namedDocument() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$documentBodyElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rawAsBase64() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$inheritsStruct() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$inheritsDocument() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldInsideDoc() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldOutsideDoc() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldSetElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldsElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$queryCommandInFieldSetElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$annotationOutside() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$annotationElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$inheritsAnnotation() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$structInsideDoc() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$structOutsideDoc() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$structDefinitionElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$dataType() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$referenceType() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$annotationRefDataType() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$mapDataType() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$structFieldDefinition() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$structFieldElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldBodyElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$structFieldBodyElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$indexingElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryToElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$weightElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$weightedsetElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$weightedsetBody() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankTypeElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$attributeElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldSorting() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$attributeSorting() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$sortingElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$sortingSetting() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$attributeSetting() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryInDocument() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryInField() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryInFieldShort() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryInFieldLong() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryTransform() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryBolding() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summarySourceList() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryDestinationList() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldStemming() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$searchStemming() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$normalizingElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$boldingElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$dictionaryElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$dictionarySetting() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$queryCommandInField() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$aliasElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$matchSettingsElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$matchType() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$matchItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$exactTerminator() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$gramSize() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$matchSize() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$maxTermOccurrences() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$maxTokenLength() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankSettingElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$idElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$documentSummary() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$inheritsDocumentSummary() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$documentSummaryItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$indexOutsideDoc() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$indexInsideField() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$indexBody() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$hnswIndex() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$hnswIndexBody() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$onnxModelInSchema() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$onnxModelInProfile() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$onnxModel() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$onnxModelItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankingConstant() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fileItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$uriItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankProfile() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankProfileItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$inheritsRankProfile() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$mutateElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$mutate_operation() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$mutate_expr() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$functionElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$matchPhase() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$matchPhaseItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$diversityElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$diversityDeprecated() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$diversityItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$firstPhase() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$firstPhaseItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$secondPhase() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$secondPhaseItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$globalPhase() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$globalPhaseItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$inputsElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$inputElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$inputName() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$valueType() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$featureListElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$summaryFeaturesElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$strictElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$significanceElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$significanceItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$matchFeaturesElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankFeaturesElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$ignoreRankFeatures() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$numThreadsPerSearch() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$minHitsPerThread() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$numSearchPartitions() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$termwiseLimit() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$postFilterThreshold() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$approximateThreshold() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$targetHitsMaxAdjustmentFactor() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankProperties() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankProperty() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$rankPropertyItem() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldWeight() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldRankType() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$fieldRankFilter() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$constantsElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$constantElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$constantName() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$constantValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$constantTensor() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$tensorValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$mappedTensorValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$mappedTensorBlock() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$indexedTensorBlockValues() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$indexedTensorValues() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$arrayTensorValues() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$indexedTensorValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$mappedTensorCellValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$tensorAddress() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$tensorAddressElement() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$tensorAddressLabel() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$tensorCellValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$tensorValuePrefixedByValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$tensorTypeWithPrefix() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$tensorTypeElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$importField() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$expression() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$identifierWithDashStr() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$identifierStr() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (identifierStr_FIRST_SET.contains(nextTokenType())) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$quotedString() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$bool() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (nextTokenType() == ON || nextTokenType == OFF || nextTokenType == TRUE || nextTokenType == FALSE) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$integerElm() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$longValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$floatValue() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$number() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private void recover$openLbrace() {
        Token initialToken = lastConsumedToken;
        java.util.List skippedTokens = new java.util.ArrayList<>();
        boolean success = false;
        while (lastConsumedToken.getType() != EOF) {
            if (true) {
                success = true;
                break;
            }
            lastConsumedToken = nextToken(lastConsumedToken);
            skippedTokens.add(lastConsumedToken);
        }
        if (!success && !skippedTokens.isEmpty()) {
            lastConsumedToken = initialToken;
        }
        if (success && !skippedTokens.isEmpty()) {
            InvalidNode iv = new InvalidNode();
            iv.copyLocationInfo(skippedTokens.get(0));
            for (Token tok : skippedTokens) {
                iv.add(tok);
                iv.setEndOffset(tok.getEndOffset());
            }
            pushNode(iv);
        }
        pendingRecovery = !success;
    }

    private static final EnumSet first_set$SchemaParser_ccc$575$14 = tokenTypeSet(EOF, NL, SCHEMA, SEARCH, DOCUMENT);
    private static final EnumSet first_set$SchemaParser_ccc$599$9$ = tokenTypeSet(SCHEMA, SEARCH);
    private static final EnumSet first_set$SchemaParser_ccc$603$19 = first_set$SchemaParser_ccc$603$19_init();

    private static EnumSet first_set$SchemaParser_ccc$603$19_init() {
        return tokenTypeSet(ANNOTATION, DOCUMENT, STRUCT, FIELD, FIELDSET, IMPORT, DOCUMENT_SUMMARY, INDEX, CONSTANT, ONNX_MODEL, MODEL, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, STEMMING);
    }

    private static final EnumSet first_set$SchemaParser_ccc$616$9 = first_set$SchemaParser_ccc$616$9_init();

    private static EnumSet first_set$SchemaParser_ccc$616$9_init() {
        return tokenTypeSet(ANNOTATION, DOCUMENT, STRUCT, FIELD, FIELDSET, IMPORT, DOCUMENT_SUMMARY, INDEX, CONSTANT, ONNX_MODEL, MODEL, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, STEMMING);
    }

    private static final EnumSet first_set$SchemaParser_ccc$680$19 = first_set$SchemaParser_ccc$680$19_init();

    private static EnumSet first_set$SchemaParser_ccc$680$19_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$720$9 = tokenTypeSet(ANNOTATION, STRUCT, FIELD);
    private static final EnumSet first_set$SchemaParser_ccc$735$17$ = tokenTypeSet(TRUE, FALSE);
    private static final EnumSet first_set$SchemaParser_ccc$827$20 = first_set$SchemaParser_ccc$827$20_init();

    private static EnumSet first_set$SchemaParser_ccc$827$20_init() {
        return tokenTypeSet(STRUCT_FIELD, INDEXING, SUMMARY_TO, RANK_TYPE, WEIGHT, INDEX, SUMMARY, ATTRIBUTE, SORTING, DICTIONARY, STEMMING, NORMALIZING, BOLDING, QUERY_COMMAND, ALIAS, MATCH, RANK, ID, WEIGHTEDSET);
    }

    private static final EnumSet first_set$SchemaParser_ccc$841$7$ = tokenTypeSet(FIELDS, QUERY_COMMAND, MATCH);
    private static final EnumSet first_set$SchemaParser_ccc$863$33$ = first_set$SchemaParser_ccc$863$33$_init();

    private static EnumSet first_set$SchemaParser_ccc$863$33$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$863$33 = first_set$SchemaParser_ccc$863$33_init();

    private static EnumSet first_set$SchemaParser_ccc$863$33_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$986$11 = first_set$SchemaParser_ccc$986$11_init();

    private static EnumSet first_set$SchemaParser_ccc$986$11_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, TENSOR_TYPE, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1026$11 = first_set$SchemaParser_ccc$1026$11_init();

    private static EnumSet first_set$SchemaParser_ccc$1026$11_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1113$19 = first_set$SchemaParser_ccc$1113$19_init();

    private static EnumSet first_set$SchemaParser_ccc$1113$19_init() {
        return tokenTypeSet(STRUCT_FIELD, INDEXING, SUMMARY_TO, SUMMARY, ATTRIBUTE, QUERY_COMMAND, MATCH, RANK);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1126$8 = first_set$SchemaParser_ccc$1126$8_init();

    private static EnumSet first_set$SchemaParser_ccc$1126$8_init() {
        return tokenTypeSet(STRUCT_FIELD, INDEXING, SUMMARY_TO, RANK_TYPE, WEIGHT, INDEX, SUMMARY, ATTRIBUTE, SORTING, DICTIONARY, STEMMING, NORMALIZING, BOLDING, QUERY_COMMAND, ALIAS, MATCH, RANK, ID, WEIGHTEDSET);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1155$8 = first_set$SchemaParser_ccc$1155$8_init();

    private static EnumSet first_set$SchemaParser_ccc$1155$8_init() {
        return tokenTypeSet(STRUCT_FIELD, INDEXING, SUMMARY_TO, SUMMARY, ATTRIBUTE, QUERY_COMMAND, MATCH, RANK);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1212$19 = first_set$SchemaParser_ccc$1212$19_init();

    private static EnumSet first_set$SchemaParser_ccc$1212$19_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1239$21 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$1249$7$ = tokenTypeSet(CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO);
    private static final EnumSet first_set$SchemaParser_ccc$1263$18 = first_set$SchemaParser_ccc$1263$18_init();

    private static EnumSet first_set$SchemaParser_ccc$1263$18_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1279$18 = first_set$SchemaParser_ccc$1279$18_init();

    private static EnumSet first_set$SchemaParser_ccc$1279$18_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1288$12 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$1289$29 = first_set$SchemaParser_ccc$1289$29_init();

    private static EnumSet first_set$SchemaParser_ccc$1289$29_init() {
        return tokenTypeSet(SORTING, ALIAS, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DISTANCE_METRIC);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1309$13 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$1310$30 = tokenTypeSet(ASCENDING, DESCENDING, FUNCTION, LOCALE, STRENGTH);
    private static final EnumSet first_set$SchemaParser_ccc$1321$9$ = tokenTypeSet(ASCENDING, DESCENDING, FUNCTION, LOCALE, STRENGTH);
    private static final EnumSet first_set$SchemaParser_ccc$1324$32$ = tokenTypeSet(UCA, RAW, LOWERCASE);
    private static final EnumSet first_set$SchemaParser_ccc$1329$32$ = tokenTypeSet(PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL);
    private static final EnumSet first_set$SchemaParser_ccc$1350$9$ = first_set$SchemaParser_ccc$1350$9$_init();

    private static EnumSet first_set$SchemaParser_ccc$1350$9$_init() {
        return tokenTypeSet(SORTING, ALIAS, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DISTANCE_METRIC);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1361$12 = first_set$SchemaParser_ccc$1361$12_init();

    private static EnumSet first_set$SchemaParser_ccc$1361$12_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1388$6 = first_set$SchemaParser_ccc$1388$6_init();

    private static EnumSet first_set$SchemaParser_ccc$1388$6_init() {
        return tokenTypeSet(FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1406$17 = first_set$SchemaParser_ccc$1406$17_init();

    private static EnumSet first_set$SchemaParser_ccc$1406$17_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, COLON, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1406$23 = first_set$SchemaParser_ccc$1406$23_init();

    private static EnumSet first_set$SchemaParser_ccc$1406$23_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1407$17 = first_set$SchemaParser_ccc$1407$17_init();

    private static EnumSet first_set$SchemaParser_ccc$1407$17_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1419$7 = first_set$SchemaParser_ccc$1419$7_init();

    private static EnumSet first_set$SchemaParser_ccc$1419$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1423$15$ = tokenTypeSet(FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY);
    private static final EnumSet first_set$SchemaParser_ccc$1425$18$ = tokenTypeSet(FULL, STATIC);
    private static final EnumSet first_set$SchemaParser_ccc$1441$9 = first_set$SchemaParser_ccc$1441$9_init();

    private static EnumSet first_set$SchemaParser_ccc$1441$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1449$8 = first_set$SchemaParser_ccc$1449$8_init();

    private static EnumSet first_set$SchemaParser_ccc$1449$8_init() {
        return tokenTypeSet(FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1459$7$ = first_set$SchemaParser_ccc$1459$7$_init();

    private static EnumSet first_set$SchemaParser_ccc$1459$7$_init() {
        return tokenTypeSet(FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1459$7 = tokenTypeSet(FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY);
    private static final EnumSet first_set$SchemaParser_ccc$1473$7$ = tokenTypeSet(FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY);
    private static final EnumSet first_set$SchemaParser_ccc$1475$9$ = tokenTypeSet(FULL, STATIC);
    private static final EnumSet first_set$SchemaParser_ccc$1590$7 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$1596$9$ = tokenTypeSet(HASH, BTREE, CASED, UNCASED);
    private static final EnumSet first_set$SchemaParser_ccc$1608$31$ = first_set$SchemaParser_ccc$1608$31$_init();

    private static EnumSet first_set$SchemaParser_ccc$1608$31$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1608$31 = first_set$SchemaParser_ccc$1608$31_init();

    private static EnumSet first_set$SchemaParser_ccc$1608$31_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1620$14 = first_set$SchemaParser_ccc$1620$14_init();

    private static EnumSet first_set$SchemaParser_ccc$1620$14_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1628$15 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$1629$33 = first_set$SchemaParser_ccc$1629$33_init();

    private static EnumSet first_set$SchemaParser_ccc$1629$33_init() {
        return tokenTypeSet(MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, MAX_OCCURRENCES, MAX_TOKEN_LENGTH, PREFIX, SUBSTRING, SUFFIX, CASED, UNCASED, EXACT, EXACT_TERMINATOR);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1634$9$ = first_set$SchemaParser_ccc$1634$9$_init();

    private static EnumSet first_set$SchemaParser_ccc$1634$9$_init() {
        return tokenTypeSet(MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CASED, UNCASED, EXACT);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1653$7$ = first_set$SchemaParser_ccc$1653$7$_init();

    private static EnumSet first_set$SchemaParser_ccc$1653$7$_init() {
        return tokenTypeSet(MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, MAX_OCCURRENCES, MAX_TOKEN_LENGTH, PREFIX, SUBSTRING, SUFFIX, CASED, UNCASED, EXACT, EXACT_TERMINATOR);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1653$7 = first_set$SchemaParser_ccc$1653$7_init();

    private static EnumSet first_set$SchemaParser_ccc$1653$7_init() {
        return tokenTypeSet(MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CASED, UNCASED, EXACT);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1716$14 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$1727$7$ = tokenTypeSet(LITERAL, FILTER, NORMAL);
    private static final EnumSet first_set$SchemaParser_ccc$1814$7 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$1815$22 = first_set$SchemaParser_ccc$1815$22_init();

    private static EnumSet first_set$SchemaParser_ccc$1815$22_init() {
        return tokenTypeSet(PREFIX, STEMMING, ALIAS, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1832$14 = first_set$SchemaParser_ccc$1832$14_init();

    private static EnumSet first_set$SchemaParser_ccc$1832$14_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1841$7 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$1842$22 = first_set$SchemaParser_ccc$1842$22_init();

    private static EnumSet first_set$SchemaParser_ccc$1842$22_init() {
        return tokenTypeSet(PREFIX, STEMMING, ALIAS, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1862$7$ = first_set$SchemaParser_ccc$1862$7$_init();

    private static EnumSet first_set$SchemaParser_ccc$1862$7$_init() {
        return tokenTypeSet(PREFIX, STEMMING, ALIAS, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1879$7 = tokenTypeSet(HNSW);
    private static final EnumSet first_set$SchemaParser_ccc$1894$7$ = tokenTypeSet(MAX_LINKS_PER_NODE, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING);
    private static final EnumSet first_set$SchemaParser_ccc$1923$21$$ = first_set$SchemaParser_ccc$1923$21$$_init();

    private static EnumSet first_set$SchemaParser_ccc$1923$21$$_init() {
        return tokenTypeSet(NL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, FILE, URI, ONNX_INPUT_SL, ONNX_OUTPUT_SL);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1923$21 = first_set$SchemaParser_ccc$1923$21_init();

    private static EnumSet first_set$SchemaParser_ccc$1923$21_init() {
        return tokenTypeSet(INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, FILE, URI, ONNX_INPUT_SL, ONNX_OUTPUT_SL);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1939$9 = first_set$SchemaParser_ccc$1939$9_init();

    private static EnumSet first_set$SchemaParser_ccc$1939$9_init() {
        return tokenTypeSet(INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, FILE, URI, ONNX_INPUT_SL, ONNX_OUTPUT_SL);
    }

    private static final EnumSet first_set$SchemaParser_ccc$1944$36$ = tokenTypeSet(PARALLEL, SEQUENTIAL);
    private static final EnumSet first_set$SchemaParser_ccc$1975$8$ = tokenTypeSet(TYPE, FILE, URI);
    private static final EnumSet first_set$SchemaParser_ccc$1993$21$ = tokenTypeSet(IDENTIFIER, STRING, FILE_PATH);
    private static final EnumSet first_set$SchemaParser_ccc$2022$7$ = tokenTypeSet(MODEL, RANK_PROFILE);
    private static final EnumSet first_set$SchemaParser_ccc$2025$19 = first_set$SchemaParser_ccc$2025$19_init();

    private static EnumSet first_set$SchemaParser_ccc$2025$19_init() {
        return tokenTypeSet(DIVERSITY, STRICT, RANK_TYPE, WEIGHT, INPUTS, ONNX_MODEL, SIGNIFICANCE, MUTATE, FUNCTION, RANK, IGNORE_DEFAULT_RANK_FEATURES, MATCH_PHASE, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, RANK_PROPERTIES, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, CONSTANTS, MATCHFEATURES_SL, MATCHFEATURES_ML, MATCHFEATURES_ML_INHERITS, SUMMARYFEATURES_SL, SUMMARYFEATURES_ML, SUMMARYFEATURES_ML_INHERITS, RANKFEATURES_SL, RANKFEATURES_ML);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2047$9 = first_set$SchemaParser_ccc$2047$9_init();

    private static EnumSet first_set$SchemaParser_ccc$2047$9_init() {
        return tokenTypeSet(DIVERSITY, STRICT, RANK_TYPE, WEIGHT, INPUTS, ONNX_MODEL, SIGNIFICANCE, MUTATE, FUNCTION, RANK, IGNORE_DEFAULT_RANK_FEATURES, MATCH_PHASE, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, RANK_PROPERTIES, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, CONSTANTS, MATCHFEATURES_SL, MATCHFEATURES_ML, MATCHFEATURES_ML_INHERITS, SUMMARYFEATURES_SL, SUMMARYFEATURES_ML, SUMMARYFEATURES_ML_INHERITS, RANKFEATURES_SL, RANKFEATURES_ML);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2068$10 = first_set$SchemaParser_ccc$2068$10_init();

    private static EnumSet first_set$SchemaParser_ccc$2068$10_init() {
        return tokenTypeSet(MATCHFEATURES_SL, MATCHFEATURES_ML, MATCHFEATURES_ML_INHERITS, SUMMARYFEATURES_SL, SUMMARYFEATURES_ML, SUMMARYFEATURES_ML_INHERITS, RANKFEATURES_SL, RANKFEATURES_ML);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2108$6$ = tokenTypeSet(ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY);
    private static final EnumSet first_set$SchemaParser_ccc$2123$7$ = tokenTypeSet(_TOKEN_184, _TOKEN_185, _TOKEN_186);
    private static final EnumSet first_set$SchemaParser_ccc$2139$10$ = tokenTypeSet(FUNCTION, MACRO);
    private static final EnumSet first_set$SchemaParser_ccc$2142$13 = first_set$SchemaParser_ccc$2142$13_init();

    private static EnumSet first_set$SchemaParser_ccc$2142$13_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2175$33 = tokenTypeSet(DIVERSITY, ATTRIBUTE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS);
    private static final EnumSet first_set$SchemaParser_ccc$2190$7$ = tokenTypeSet(DIVERSITY, ATTRIBUTE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS);
    private static final EnumSet first_set$SchemaParser_ccc$2192$27$ = tokenTypeSet(ASCENDING, DESCENDING);
    private static final EnumSet first_set$SchemaParser_ccc$2237$9$ = tokenTypeSet(MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ATTRIBUTE);
    private static final EnumSet first_set$SchemaParser_ccc$2241$13$ = tokenTypeSet(LOOSE, STRICT);
    private static final EnumSet first_set$SchemaParser_ccc$2269$7 = tokenTypeSet(KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet first_set$SchemaParser_ccc$2297$7 = tokenTypeSet(RERANK_COUNT, RANK_SCORE_DROP_LIMIT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet first_set$SchemaParser_ccc$2324$7 = tokenTypeSet(RERANK_COUNT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet first_set$SchemaParser_ccc$2341$9 = first_set$SchemaParser_ccc$2341$9_init();

    private static EnumSet first_set$SchemaParser_ccc$2341$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2363$31 = tokenTypeSet(DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, TENSOR_TYPE);
    private static final EnumSet first_set$SchemaParser_ccc$2377$9 = first_set$SchemaParser_ccc$2377$9_init();

    private static EnumSet first_set$SchemaParser_ccc$2377$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2379$9 = first_set$SchemaParser_ccc$2379$9_init();

    private static EnumSet first_set$SchemaParser_ccc$2379$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2391$7 = tokenTypeSet(DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, TENSOR_TYPE);
    private static final EnumSet first_set$SchemaParser_ccc$2420$7 = first_set$SchemaParser_ccc$2420$7_init();

    private static EnumSet first_set$SchemaParser_ccc$2420$7_init() {
        return tokenTypeSet(MATCHFEATURES_SL, MATCHFEATURES_ML, MATCHFEATURES_ML_INHERITS, SUMMARYFEATURES_SL, SUMMARYFEATURES_ML, SUMMARYFEATURES_ML_INHERITS, RANKFEATURES_SL, RANKFEATURES_ML);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2437$7$ = tokenTypeSet(SUMMARYFEATURES_SL, SUMMARYFEATURES_ML, SUMMARYFEATURES_ML_INHERITS);
    private static final EnumSet first_set$SchemaParser_ccc$2460$9 = tokenTypeSet(TRUE, FALSE);
    private static final EnumSet first_set$SchemaParser_ccc$2476$9 = tokenTypeSet(TRUE, FALSE);
    private static final EnumSet first_set$SchemaParser_ccc$2491$7$ = tokenTypeSet(MATCHFEATURES_SL, MATCHFEATURES_ML, MATCHFEATURES_ML_INHERITS);
    private static final EnumSet first_set$SchemaParser_ccc$2516$7$ = tokenTypeSet(RANKFEATURES_SL, RANKFEATURES_ML);
    private static final EnumSet first_set$SchemaParser_ccc$2640$67 = first_set$SchemaParser_ccc$2640$67_init();

    private static EnumSet first_set$SchemaParser_ccc$2640$67_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2669$9$$ = first_set$SchemaParser_ccc$2669$9$$_init();

    private static EnumSet first_set$SchemaParser_ccc$2669$9$$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2669$9 = first_set$SchemaParser_ccc$2669$9_init();

    private static EnumSet first_set$SchemaParser_ccc$2669$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2672$13$ = tokenTypeSet(DOT, COMMA, _TOKEN_188, _TOKEN_189);
    private static final EnumSet first_set$SchemaParser_ccc$2729$7 = first_set$SchemaParser_ccc$2729$7_init();

    private static EnumSet first_set$SchemaParser_ccc$2729$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2744$9 = tokenTypeSet(LBRACE, COLON, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, TENSOR_TYPE);
    private static final EnumSet first_set$SchemaParser_ccc$2744$16 = tokenTypeSet(DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, TENSOR_TYPE);
    private static final EnumSet first_set$SchemaParser_ccc$2745$13 = tokenTypeSet(DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, TENSOR_TYPE);
    private static final EnumSet first_set$SchemaParser_ccc$2745$57$ = tokenTypeSet(LBRACE, FILE, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet first_set$SchemaParser_ccc$2745$57 = tokenTypeSet(LBRACE, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet first_set$SchemaParser_ccc$2754$11 = tokenTypeSet(LBRACE, COLON);
    private static final EnumSet first_set$SchemaParser_ccc$2766$9 = first_set$SchemaParser_ccc$2766$9_init();

    private static EnumSet first_set$SchemaParser_ccc$2766$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2768$9 = first_set$SchemaParser_ccc$2768$9_init();

    private static EnumSet first_set$SchemaParser_ccc$2768$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2779$15$ = tokenTypeSet(IDENTIFIER, DOUBLE, INTEGER);
    private static final EnumSet first_set$SchemaParser_ccc$2791$10$ = tokenTypeSet(TYPE, TENSOR_VALUE_SL, TENSOR_VALUE_ML);
    private static final EnumSet first_set$SchemaParser_ccc$2813$7 = tokenTypeSet(LBRACE, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet first_set$SchemaParser_ccc$2828$7 = first_set$SchemaParser_ccc$2828$7_init();

    private static EnumSet first_set$SchemaParser_ccc$2828$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2840$7 = tokenTypeSet(_TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet first_set$SchemaParser_ccc$2878$29$ = tokenTypeSet(_TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet first_set$SchemaParser_ccc$2879$29$ = tokenTypeSet(_TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet first_set$SchemaParser_ccc$2908$9$ = first_set$SchemaParser_ccc$2908$9$_init();

    private static EnumSet first_set$SchemaParser_ccc$2908$9$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2908$9 = first_set$SchemaParser_ccc$2908$9_init();

    private static EnumSet first_set$SchemaParser_ccc$2908$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2910$17 = first_set$SchemaParser_ccc$2910$17_init();

    private static EnumSet first_set$SchemaParser_ccc$2910$17_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2921$5 = first_set$SchemaParser_ccc$2921$5_init();

    private static EnumSet first_set$SchemaParser_ccc$2921$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2921$49 = first_set$SchemaParser_ccc$2921$49_init();

    private static EnumSet first_set$SchemaParser_ccc$2921$49_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2930$7$ = first_set$SchemaParser_ccc$2930$7$_init();

    private static EnumSet first_set$SchemaParser_ccc$2930$7$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2930$7 = first_set$SchemaParser_ccc$2930$7_init();

    private static EnumSet first_set$SchemaParser_ccc$2930$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$2949$7$ = tokenTypeSet(TENSOR_VALUE_SL, TENSOR_VALUE_ML);
    private static final EnumSet first_set$SchemaParser_ccc$3014$7$ = tokenTypeSet(EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet first_set$SchemaParser_ccc$3028$5 = first_set$SchemaParser_ccc$3028$5_init();

    private static EnumSet first_set$SchemaParser_ccc$3028$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$3030$5 = first_set$SchemaParser_ccc$3030$5_init();

    private static EnumSet first_set$SchemaParser_ccc$3030$5_init() {
        return tokenTypeSet(MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT_FIELD, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, GRAM_SIZE, MAX_LENGTH, ONNX_MODEL, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, MATCHED_ELEMENTS_ONLY, QUERY_COMMAND, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, FROM_DISK, OMIT_SUMMARY_FEATURES, ON_DEMAND, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, FAST_RANK, FAST_SEARCH, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, MAX_LINKS_PER_NODE, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, IDENTIFIER_WITH_DASH);
    }

    private static final EnumSet first_set$SchemaParser_ccc$3030$7$ = first_set$SchemaParser_ccc$3030$7$_init();

    private static EnumSet first_set$SchemaParser_ccc$3030$7$_init() {
        return tokenTypeSet(MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT_FIELD, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, GRAM_SIZE, MAX_LENGTH, ONNX_MODEL, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, MATCHED_ELEMENTS_ONLY, QUERY_COMMAND, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, FROM_DISK, OMIT_SUMMARY_FEATURES, ON_DEMAND, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, FAST_RANK, FAST_SEARCH, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, MAX_LINKS_PER_NODE, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, IDENTIFIER_WITH_DASH);
    }

    private static final EnumSet first_set$SchemaParser_ccc$3105$7$ = first_set$SchemaParser_ccc$3105$7$_init();

    private static EnumSet first_set$SchemaParser_ccc$3105$7$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet first_set$SchemaParser_ccc$3230$7$ = tokenTypeSet(DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING);
    private static final EnumSet first_set$SchemaParser_ccc$3237$7 = tokenTypeSet(ON, OFF, TRUE, FALSE);
    private static final EnumSet first_set$SchemaParser_ccc$3237$9$ = tokenTypeSet(ON, TRUE);
    private static final EnumSet first_set$SchemaParser_ccc$3238$9$ = tokenTypeSet(OFF, FALSE);
    private static final EnumSet first_set$SchemaParser_ccc$3250$7$ = tokenTypeSet(INTEGER, LONG);
    private static final EnumSet first_set$SchemaParser_ccc$3266$7 = tokenTypeSet(DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$575$6 = tokenTypeSet(EOF, NL, SCHEMA, SEARCH, DOCUMENT);
    private static final EnumSet follow_set$SchemaParser_ccc$583$6 = tokenTypeSet(NL, MODEL, RANK_PROFILE);
    private static final EnumSet follow_set$SchemaParser_ccc$583$13 = tokenTypeSet(EOF, NL);
    private static final EnumSet follow_set$SchemaParser_ccc$583$32 = tokenTypeSet(EOF, NL);
    private static final EnumSet follow_set$SchemaParser_ccc$583$39 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$599$9 = follow_set$SchemaParser_ccc$599$9_init();

    private static EnumSet follow_set$SchemaParser_ccc$599$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$599$20 = follow_set$SchemaParser_ccc$599$20_init();

    private static EnumSet follow_set$SchemaParser_ccc$599$20_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$599$31 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$599$55 = follow_set$SchemaParser_ccc$599$55_init();

    private static EnumSet follow_set$SchemaParser_ccc$599$55_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$599$66 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$603$7 = follow_set$SchemaParser_ccc$603$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$603$7_init() {
        return tokenTypeSet(NL, ANNOTATION, DOCUMENT, STRUCT, FIELD, FIELDSET, IMPORT, DOCUMENT_SUMMARY, INDEX, CONSTANT, ONNX_MODEL, MODEL, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, STEMMING, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$603$19$ = follow_set$SchemaParser_ccc$603$19$_init();

    private static EnumSet follow_set$SchemaParser_ccc$603$19$_init() {
        return tokenTypeSet(NL, ANNOTATION, DOCUMENT, STRUCT, FIELD, FIELDSET, IMPORT, DOCUMENT_SUMMARY, INDEX, CONSTANT, ONNX_MODEL, MODEL, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, STEMMING, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$603$44 = follow_set$SchemaParser_ccc$603$44_init();

    private static EnumSet follow_set$SchemaParser_ccc$603$44_init() {
        return tokenTypeSet(NL, ANNOTATION, DOCUMENT, STRUCT, FIELD, FIELDSET, IMPORT, DOCUMENT_SUMMARY, INDEX, CONSTANT, ONNX_MODEL, MODEL, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, STEMMING, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$604$7 = tokenTypeSet(EOF, NL);
    private static final EnumSet follow_set$SchemaParser_ccc$604$17 = tokenTypeSet(EOF, NL);
    private static final EnumSet follow_set$SchemaParser_ccc$604$24 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$643$8 = tokenTypeSet(EOF, NL, DOCUMENT);
    private static final EnumSet follow_set$SchemaParser_ccc$643$44 = tokenTypeSet(EOF, NL, DOCUMENT);
    private static final EnumSet follow_set$SchemaParser_ccc$643$50 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$680$7 = follow_set$SchemaParser_ccc$680$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$680$7_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$680$19$ = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$680$43 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$684$7 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$684$35 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$685$7 = tokenTypeSet(NL, ANNOTATION, STRUCT, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$685$19 = tokenTypeSet(NL, ANNOTATION, STRUCT, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$685$47 = tokenTypeSet(NL, ANNOTATION, STRUCT, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$685$54 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$704$7 = follow_set$SchemaParser_ccc$704$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$704$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$704$18 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$704$42 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$705$9 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$705$37 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$706$7 = tokenTypeSet(NL, ANNOTATION, STRUCT, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$706$17 = tokenTypeSet(NL, ANNOTATION, STRUCT, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$706$25 = tokenTypeSet(NL, ANNOTATION, STRUCT, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$706$53 = tokenTypeSet(NL, ANNOTATION, STRUCT, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$706$60 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$731$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$735$7 = tokenTypeSet(TRUE, FALSE);
    private static final EnumSet follow_set$SchemaParser_ccc$735$17 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$735$28 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$751$5 = follow_set$SchemaParser_ccc$751$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$751$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$751$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$752$7 = follow_set$SchemaParser_ccc$752$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$752$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$752$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$765$5 = follow_set$SchemaParser_ccc$765$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$765$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$765$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$766$7 = follow_set$SchemaParser_ccc$766$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$766$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$766$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$813$5 = follow_set$SchemaParser_ccc$813$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$813$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$813$13 = tokenTypeSet(TYPE);
    private static final EnumSet follow_set$SchemaParser_ccc$823$5 = follow_set$SchemaParser_ccc$823$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$823$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, TENSOR_TYPE, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$823$12 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$827$5 = follow_set$SchemaParser_ccc$827$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$827$5_init() {
        return tokenTypeSet(NL, STRUCT_FIELD, INDEXING, SUMMARY_TO, RANK_TYPE, WEIGHT, INDEX, SUMMARY, ATTRIBUTE, SORTING, DICTIONARY, STEMMING, NORMALIZING, BOLDING, QUERY_COMMAND, ALIAS, MATCH, RANK, ID, RBRACE, WEIGHTEDSET);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$827$20$ = follow_set$SchemaParser_ccc$827$20$_init();

    private static EnumSet follow_set$SchemaParser_ccc$827$20$_init() {
        return tokenTypeSet(NL, STRUCT_FIELD, INDEXING, SUMMARY_TO, RANK_TYPE, WEIGHT, INDEX, SUMMARY, ATTRIBUTE, SORTING, DICTIONARY, STEMMING, NORMALIZING, BOLDING, QUERY_COMMAND, ALIAS, MATCH, RANK, ID, RBRACE, WEIGHTEDSET);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$827$42 = follow_set$SchemaParser_ccc$827$42_init();

    private static EnumSet follow_set$SchemaParser_ccc$827$42_init() {
        return tokenTypeSet(NL, STRUCT_FIELD, INDEXING, SUMMARY_TO, RANK_TYPE, WEIGHT, INDEX, SUMMARY, ATTRIBUTE, SORTING, DICTIONARY, STEMMING, NORMALIZING, BOLDING, QUERY_COMMAND, ALIAS, MATCH, RANK, ID, RBRACE, WEIGHTEDSET);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$827$49 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$840$3 = follow_set$SchemaParser_ccc$840$3_init();

    private static EnumSet follow_set$SchemaParser_ccc$840$3_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$840$14 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$840$35 = tokenTypeSet(FIELDS, QUERY_COMMAND, MATCH);
    private static final EnumSet follow_set$SchemaParser_ccc$841$7 = tokenTypeSet(NL, FIELDS, QUERY_COMMAND, MATCH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$841$29 = tokenTypeSet(NL, FIELDS, QUERY_COMMAND, MATCH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$841$67 = tokenTypeSet(NL, FIELDS, QUERY_COMMAND, MATCH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$841$112 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$842$3 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$853$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$853$17 = follow_set$SchemaParser_ccc$853$17_init();

    private static EnumSet follow_set$SchemaParser_ccc$853$17_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$853$25 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$854$11 = follow_set$SchemaParser_ccc$854$11_init();

    private static EnumSet follow_set$SchemaParser_ccc$854$11_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$854$19 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$863$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$863$24 = follow_set$SchemaParser_ccc$863$24_init();

    private static EnumSet follow_set$SchemaParser_ccc$863$24_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$878$5 = follow_set$SchemaParser_ccc$878$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$878$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$878$18 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$879$7 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$879$33 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$880$5 = tokenTypeSet(FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$880$18 = tokenTypeSet(RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$880$39 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$897$5 = follow_set$SchemaParser_ccc$897$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$897$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$897$18 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$898$7 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$898$33 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$899$5 = tokenTypeSet(FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$899$18 = tokenTypeSet(RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$899$39 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$914$6 = tokenTypeSet(NL, FIELD);
    private static final EnumSet follow_set$SchemaParser_ccc$914$59 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$925$5 = follow_set$SchemaParser_ccc$925$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$925$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$963$7 = follow_set$SchemaParser_ccc$963$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$963$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$963$16 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$963$38 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$964$7 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$964$31 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$965$5 = tokenTypeSet(NL, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$965$19 = tokenTypeSet(NL, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$965$51 = tokenTypeSet(NL, FIELD, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$965$58 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$986$55 = tokenTypeSet(LESSTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$986$63 = follow_set$SchemaParser_ccc$986$63_init();

    private static EnumSet follow_set$SchemaParser_ccc$986$63_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, TENSOR_TYPE, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$986$74 = tokenTypeSet(GREATERTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$986$97 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$994$55 = tokenTypeSet(LESSTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$994$69 = follow_set$SchemaParser_ccc$994$69_init();

    private static EnumSet follow_set$SchemaParser_ccc$994$69_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, TENSOR_TYPE, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$994$80 = tokenTypeSet(GREATERTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$994$102 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1020$55 = tokenTypeSet(LESSTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$1020$67 = follow_set$SchemaParser_ccc$1020$67_init();

    private static EnumSet follow_set$SchemaParser_ccc$1020$67_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1020$78 = tokenTypeSet(GREATERTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$1020$110 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1026$13 = tokenTypeSet(_TOKEN_183);
    private static final EnumSet follow_set$SchemaParser_ccc$1026$39 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1057$7 = tokenTypeSet(LESSTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$1057$29 = follow_set$SchemaParser_ccc$1057$29_init();

    private static EnumSet follow_set$SchemaParser_ccc$1057$29_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1057$40 = tokenTypeSet(GREATERTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$1057$67 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1068$5 = tokenTypeSet(LESSTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$1068$11 = follow_set$SchemaParser_ccc$1068$11_init();

    private static EnumSet follow_set$SchemaParser_ccc$1068$11_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, TENSOR_TYPE, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1068$22 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1068$43 = follow_set$SchemaParser_ccc$1068$43_init();

    private static EnumSet follow_set$SchemaParser_ccc$1068$43_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, TENSOR_TYPE, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1068$51 = tokenTypeSet(GREATERTHAN);
    private static final EnumSet follow_set$SchemaParser_ccc$1068$72 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1087$5 = follow_set$SchemaParser_ccc$1087$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1087$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1087$13 = tokenTypeSet(TYPE);
    private static final EnumSet follow_set$SchemaParser_ccc$1087$34 = follow_set$SchemaParser_ccc$1087$34_init();

    private static EnumSet follow_set$SchemaParser_ccc$1087$34_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, TENSOR_TYPE, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1087$41 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1090$5 = tokenTypeSet(NL, MATCH, ID, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1090$17 = tokenTypeSet(NL, MATCH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1090$31 = tokenTypeSet(NL, MATCH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1090$41 = tokenTypeSet(NL, MATCH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1090$83 = tokenTypeSet(NL, MATCH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1090$90 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1107$5 = follow_set$SchemaParser_ccc$1107$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1107$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1107$20 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1113$5 = follow_set$SchemaParser_ccc$1113$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1113$5_init() {
        return tokenTypeSet(NL, STRUCT_FIELD, INDEXING, SUMMARY_TO, SUMMARY, ATTRIBUTE, QUERY_COMMAND, MATCH, RANK, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1113$19$ = follow_set$SchemaParser_ccc$1113$19$_init();

    private static EnumSet follow_set$SchemaParser_ccc$1113$19$_init() {
        return tokenTypeSet(NL, STRUCT_FIELD, INDEXING, SUMMARY_TO, SUMMARY, ATTRIBUTE, QUERY_COMMAND, MATCH, RANK, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1113$53 = follow_set$SchemaParser_ccc$1113$53_init();

    private static EnumSet follow_set$SchemaParser_ccc$1113$53_init() {
        return tokenTypeSet(NL, STRUCT_FIELD, INDEXING, SUMMARY_TO, SUMMARY, ATTRIBUTE, QUERY_COMMAND, MATCH, RANK, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1113$60 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1176$7 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1176$21 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1212$5 = follow_set$SchemaParser_ccc$1212$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1212$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, COLON, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1212$19$ = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1212$43 = follow_set$SchemaParser_ccc$1212$43_init();

    private static EnumSet follow_set$SchemaParser_ccc$1212$43_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1212$51 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1217$7 = follow_set$SchemaParser_ccc$1217$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$1217$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1217$15 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1230$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1230$14 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1239$5 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1239$22 = tokenTypeSet(CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO);
    private static final EnumSet follow_set$SchemaParser_ccc$1240$20 = tokenTypeSet(NL, RBRACE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO);
    private static final EnumSet follow_set$SchemaParser_ccc$1240$34 = tokenTypeSet(NL, RBRACE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO);
    private static final EnumSet follow_set$SchemaParser_ccc$1240$63 = tokenTypeSet(NL, RBRACE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO);
    private static final EnumSet follow_set$SchemaParser_ccc$1240$70 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1249$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1250$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1263$5 = follow_set$SchemaParser_ccc$1263$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1263$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, COLON, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1263$18$ = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1263$47 = follow_set$SchemaParser_ccc$1263$47_init();

    private static EnumSet follow_set$SchemaParser_ccc$1263$47_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1279$5 = follow_set$SchemaParser_ccc$1279$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1279$5_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, COLON, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1279$18$ = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1288$13 = follow_set$SchemaParser_ccc$1288$13_init();

    private static EnumSet follow_set$SchemaParser_ccc$1288$13_init() {
        return tokenTypeSet(SORTING, ALIAS, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DISTANCE_METRIC);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1289$15 = follow_set$SchemaParser_ccc$1289$15_init();

    private static EnumSet follow_set$SchemaParser_ccc$1289$15_init() {
        return tokenTypeSet(NL, SORTING, ALIAS, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, RBRACE, DISTANCE_METRIC);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1289$29$ = follow_set$SchemaParser_ccc$1289$29$_init();

    private static EnumSet follow_set$SchemaParser_ccc$1289$29$_init() {
        return tokenTypeSet(NL, SORTING, ALIAS, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, RBRACE, DISTANCE_METRIC);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1289$54 = follow_set$SchemaParser_ccc$1289$54_init();

    private static EnumSet follow_set$SchemaParser_ccc$1289$54_init() {
        return tokenTypeSet(NL, SORTING, ALIAS, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, RBRACE, DISTANCE_METRIC);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1289$61 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1308$5 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1309$14 = tokenTypeSet(ASCENDING, DESCENDING, FUNCTION, LOCALE, STRENGTH);
    private static final EnumSet follow_set$SchemaParser_ccc$1310$16 = tokenTypeSet(NL, ASCENDING, DESCENDING, FUNCTION, LOCALE, STRENGTH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1310$30$ = tokenTypeSet(NL, ASCENDING, DESCENDING, FUNCTION, LOCALE, STRENGTH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1310$53 = tokenTypeSet(NL, ASCENDING, DESCENDING, FUNCTION, LOCALE, STRENGTH, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1310$60 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1321$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1322$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1323$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1323$20 = tokenTypeSet(UCA, RAW, LOWERCASE);
    private static final EnumSet follow_set$SchemaParser_ccc$1324$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1325$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1326$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1328$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1328$20 = tokenTypeSet(PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL);
    private static final EnumSet follow_set$SchemaParser_ccc$1329$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1330$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1331$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1332$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1333$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1335$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1335$18 = follow_set$SchemaParser_ccc$1335$18_init();

    private static EnumSet follow_set$SchemaParser_ccc$1335$18_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1350$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1351$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1352$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1353$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1354$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1355$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1356$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1358$9 = follow_set$SchemaParser_ccc$1358$9_init();

    private static EnumSet follow_set$SchemaParser_ccc$1358$9_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, COLON, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1361$12$ = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1361$41 = follow_set$SchemaParser_ccc$1361$41_init();

    private static EnumSet follow_set$SchemaParser_ccc$1361$41_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1364$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1364$27 = follow_set$SchemaParser_ccc$1364$27_init();

    private static EnumSet follow_set$SchemaParser_ccc$1364$27_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1380$5 = follow_set$SchemaParser_ccc$1380$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1380$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1380$15 = tokenTypeSet(NL, TYPE, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1381$6 = follow_set$SchemaParser_ccc$1381$6_init();

    private static EnumSet follow_set$SchemaParser_ccc$1381$6_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, TENSOR_TYPE, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1381$15 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1382$5 = follow_set$SchemaParser_ccc$1382$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1382$5_init() {
        return tokenTypeSet(NL, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1388$6$ = follow_set$SchemaParser_ccc$1388$6$_init();

    private static EnumSet follow_set$SchemaParser_ccc$1388$6$_init() {
        return tokenTypeSet(NL, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1388$25 = follow_set$SchemaParser_ccc$1388$25_init();

    private static EnumSet follow_set$SchemaParser_ccc$1388$25_init() {
        return tokenTypeSet(NL, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1388$32 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1406$5 = follow_set$SchemaParser_ccc$1406$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1406$5_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, COLON, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1419$7$ = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1423$5 = tokenTypeSet(FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY);
    private static final EnumSet follow_set$SchemaParser_ccc$1423$15 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1424$17 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1425$18 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1425$27 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1426$17 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1441$9$ = tokenTypeSet(NL, TYPE, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1441$34 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1442$7 = follow_set$SchemaParser_ccc$1442$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$1442$7_init() {
        return tokenTypeSet(NL, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1449$8$ = follow_set$SchemaParser_ccc$1449$8$_init();

    private static EnumSet follow_set$SchemaParser_ccc$1449$8$_init() {
        return tokenTypeSet(NL, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1449$27 = follow_set$SchemaParser_ccc$1449$27_init();

    private static EnumSet follow_set$SchemaParser_ccc$1449$27_init() {
        return tokenTypeSet(NL, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, BOLDING, SOURCE, TO, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1449$34 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1473$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1474$8 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1475$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1475$18 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1476$8 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1490$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1490$15 = tokenTypeSet(ON, OFF, TRUE, FALSE);
    private static final EnumSet follow_set$SchemaParser_ccc$1504$7 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1504$16 = follow_set$SchemaParser_ccc$1504$16_init();

    private static EnumSet follow_set$SchemaParser_ccc$1504$16_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1504$24 = tokenTypeSet(SOURCE, COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1505$16 = follow_set$SchemaParser_ccc$1505$16_init();

    private static EnumSet follow_set$SchemaParser_ccc$1505$16_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1505$24 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1518$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1518$10 = follow_set$SchemaParser_ccc$1518$10_init();

    private static EnumSet follow_set$SchemaParser_ccc$1518$10_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1518$18 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1519$10 = follow_set$SchemaParser_ccc$1519$10_init();

    private static EnumSet follow_set$SchemaParser_ccc$1519$10_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1519$18 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1532$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1532$16 = follow_set$SchemaParser_ccc$1532$16_init();

    private static EnumSet follow_set$SchemaParser_ccc$1532$16_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1548$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1548$16 = follow_set$SchemaParser_ccc$1548$16_init();

    private static EnumSet follow_set$SchemaParser_ccc$1548$16_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1563$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1563$19 = follow_set$SchemaParser_ccc$1563$19_init();

    private static EnumSet follow_set$SchemaParser_ccc$1563$19_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1579$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1579$15 = tokenTypeSet(ON, OFF, TRUE, FALSE);
    private static final EnumSet follow_set$SchemaParser_ccc$1589$5 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1590$8 = tokenTypeSet(HASH, BTREE, CASED, UNCASED);
    private static final EnumSet follow_set$SchemaParser_ccc$1591$8 = tokenTypeSet(NL, HASH, BTREE, CASED, UNCASED, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1591$22 = tokenTypeSet(NL, HASH, BTREE, CASED, UNCASED, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1591$49 = tokenTypeSet(NL, HASH, BTREE, CASED, UNCASED, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1591$56 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1596$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1597$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1598$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1599$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1608$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1608$21 = follow_set$SchemaParser_ccc$1608$21_init();

    private static EnumSet follow_set$SchemaParser_ccc$1608$21_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1620$5 = follow_set$SchemaParser_ccc$1620$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1620$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, COLON, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1620$14$ = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1620$43 = follow_set$SchemaParser_ccc$1620$43_init();

    private static EnumSet follow_set$SchemaParser_ccc$1620$43_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1628$5 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1628$16 = follow_set$SchemaParser_ccc$1628$16_init();

    private static EnumSet follow_set$SchemaParser_ccc$1628$16_init() {
        return tokenTypeSet(MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CASED, UNCASED, EXACT);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1629$19 = follow_set$SchemaParser_ccc$1629$19_init();

    private static EnumSet follow_set$SchemaParser_ccc$1629$19_init() {
        return tokenTypeSet(NL, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, MAX_OCCURRENCES, MAX_TOKEN_LENGTH, PREFIX, SUBSTRING, SUFFIX, CASED, UNCASED, EXACT, EXACT_TERMINATOR, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1629$33$ = follow_set$SchemaParser_ccc$1629$33$_init();

    private static EnumSet follow_set$SchemaParser_ccc$1629$33$_init() {
        return tokenTypeSet(NL, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, MAX_OCCURRENCES, MAX_TOKEN_LENGTH, PREFIX, SUBSTRING, SUFFIX, CASED, UNCASED, EXACT, EXACT_TERMINATOR, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1629$56 = follow_set$SchemaParser_ccc$1629$56_init();

    private static EnumSet follow_set$SchemaParser_ccc$1629$56_init() {
        return tokenTypeSet(NL, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, MAX_OCCURRENCES, MAX_TOKEN_LENGTH, PREFIX, SUBSTRING, SUFFIX, CASED, UNCASED, EXACT, EXACT_TERMINATOR, RBRACE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1629$63 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1634$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1635$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1636$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1637$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1638$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1639$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1640$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1641$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1642$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1643$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1662$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1662$24 = tokenTypeSet(DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING);
    private static final EnumSet follow_set$SchemaParser_ccc$1673$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1673$17 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1684$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1684$18 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1694$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1694$23 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1704$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1704$24 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1716$5 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1716$15 = tokenTypeSet(LITERAL, FILTER, NORMAL);
    private static final EnumSet follow_set$SchemaParser_ccc$1717$17 = tokenTypeSet(NL, LITERAL, FILTER, NORMAL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1717$31 = tokenTypeSet(NL, LITERAL, FILTER, NORMAL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1717$55 = tokenTypeSet(NL, LITERAL, FILTER, NORMAL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1717$62 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1727$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1728$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1729$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1743$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1743$10 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1760$7 = follow_set$SchemaParser_ccc$1760$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$1760$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1761$7 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1762$8 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1763$7 = tokenTypeSet(NL, SUMMARY, FROM_DISK, OMIT_SUMMARY_FEATURES, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1765$12 = tokenTypeSet(NL, SUMMARY, FROM_DISK, OMIT_SUMMARY_FEATURES, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1766$12 = tokenTypeSet(NL, SUMMARY, FROM_DISK, OMIT_SUMMARY_FEATURES, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1767$12 = tokenTypeSet(NL, SUMMARY, FROM_DISK, OMIT_SUMMARY_FEATURES, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1768$12 = tokenTypeSet(NL, SUMMARY, FROM_DISK, OMIT_SUMMARY_FEATURES, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1770$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1785$5 = follow_set$SchemaParser_ccc$1785$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1785$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1785$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1786$7 = follow_set$SchemaParser_ccc$1786$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$1786$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1786$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1810$5 = follow_set$SchemaParser_ccc$1810$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1810$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1810$13 = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1814$8 = follow_set$SchemaParser_ccc$1814$8_init();

    private static EnumSet follow_set$SchemaParser_ccc$1814$8_init() {
        return tokenTypeSet(PREFIX, STEMMING, ALIAS, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1814$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1814$31 = follow_set$SchemaParser_ccc$1814$31_init();

    private static EnumSet follow_set$SchemaParser_ccc$1814$31_init() {
        return tokenTypeSet(PREFIX, STEMMING, ALIAS, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1814$39 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1815$8 = follow_set$SchemaParser_ccc$1815$8_init();

    private static EnumSet follow_set$SchemaParser_ccc$1815$8_init() {
        return tokenTypeSet(NL, PREFIX, STEMMING, ALIAS, RBRACE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1815$22$ = follow_set$SchemaParser_ccc$1815$22$_init();

    private static EnumSet follow_set$SchemaParser_ccc$1815$22$_init() {
        return tokenTypeSet(NL, PREFIX, STEMMING, ALIAS, RBRACE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1815$38 = follow_set$SchemaParser_ccc$1815$38_init();

    private static EnumSet follow_set$SchemaParser_ccc$1815$38_init() {
        return tokenTypeSet(NL, PREFIX, STEMMING, ALIAS, RBRACE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1815$45 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1832$5 = follow_set$SchemaParser_ccc$1832$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$1832$5_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, COLON, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1832$14$ = tokenTypeSet(NL, LBRACE, COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1841$8 = follow_set$SchemaParser_ccc$1841$8_init();

    private static EnumSet follow_set$SchemaParser_ccc$1841$8_init() {
        return tokenTypeSet(PREFIX, STEMMING, ALIAS, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1841$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1841$31 = follow_set$SchemaParser_ccc$1841$31_init();

    private static EnumSet follow_set$SchemaParser_ccc$1841$31_init() {
        return tokenTypeSet(PREFIX, STEMMING, ALIAS, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1841$39 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$1842$8 = follow_set$SchemaParser_ccc$1842$8_init();

    private static EnumSet follow_set$SchemaParser_ccc$1842$8_init() {
        return tokenTypeSet(NL, PREFIX, STEMMING, ALIAS, RBRACE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1842$22$ = follow_set$SchemaParser_ccc$1842$22$_init();

    private static EnumSet follow_set$SchemaParser_ccc$1842$22$_init() {
        return tokenTypeSet(NL, PREFIX, STEMMING, ALIAS, RBRACE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1842$38 = follow_set$SchemaParser_ccc$1842$38_init();

    private static EnumSet follow_set$SchemaParser_ccc$1842$38_init() {
        return tokenTypeSet(NL, PREFIX, STEMMING, ALIAS, RBRACE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1842$45 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1862$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1863$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1863$17 = follow_set$SchemaParser_ccc$1863$17_init();

    private static EnumSet follow_set$SchemaParser_ccc$1863$17_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1864$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1864$20 = follow_set$SchemaParser_ccc$1864$20_init();

    private static EnumSet follow_set$SchemaParser_ccc$1864$20_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1865$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1865$17 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1866$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1866$23 = tokenTypeSet(INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$1867$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1867$23 = tokenTypeSet(INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$1868$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1868$40 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$1869$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1880$8 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1880$18 = tokenTypeSet(NL, RBRACE, MAX_LINKS_PER_NODE, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING);
    private static final EnumSet follow_set$SchemaParser_ccc$1880$32 = tokenTypeSet(NL, RBRACE, MAX_LINKS_PER_NODE, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING);
    private static final EnumSet follow_set$SchemaParser_ccc$1880$56 = tokenTypeSet(NL, RBRACE, MAX_LINKS_PER_NODE, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING);
    private static final EnumSet follow_set$SchemaParser_ccc$1880$63 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1881$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1894$7 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1894$28 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1895$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1895$42 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1896$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1896$35 = tokenTypeSet(ON, OFF, TRUE, FALSE);
    private static final EnumSet follow_set$SchemaParser_ccc$1922$7 = follow_set$SchemaParser_ccc$1922$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$1922$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1922$20 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1923$7 = follow_set$SchemaParser_ccc$1923$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$1923$7_init() {
        return tokenTypeSet(NL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, FILE, URI, ONNX_INPUT_SL, ONNX_OUTPUT_SL);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1923$21$ = follow_set$SchemaParser_ccc$1923$21$_init();

    private static EnumSet follow_set$SchemaParser_ccc$1923$21$_init() {
        return tokenTypeSet(NL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, RBRACE, FILE, URI, ONNX_INPUT_SL, ONNX_OUTPUT_SL);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1923$48 = follow_set$SchemaParser_ccc$1923$48_init();

    private static EnumSet follow_set$SchemaParser_ccc$1923$48_init() {
        return tokenTypeSet(NL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, RBRACE, FILE, URI, ONNX_INPUT_SL, ONNX_OUTPUT_SL);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1923$55 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1941$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1941$22 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1942$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1942$27 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1943$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1943$27 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$1944$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1944$26 = tokenTypeSet(PARALLEL, SEQUENTIAL);
    private static final EnumSet follow_set$SchemaParser_ccc$1944$36 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1945$37 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1946$10 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1952$10 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1974$7 = follow_set$SchemaParser_ccc$1974$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$1974$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$1974$18 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1974$41 = tokenTypeSet(TYPE, FILE, URI);
    private static final EnumSet follow_set$SchemaParser_ccc$1975$8 = tokenTypeSet(TYPE, RBRACE, FILE, URI);
    private static final EnumSet follow_set$SchemaParser_ccc$1976$10 = tokenTypeSet(TYPE, RBRACE, FILE, URI);
    private static final EnumSet follow_set$SchemaParser_ccc$1977$10 = tokenTypeSet(NL, TYPE, RBRACE, FILE, URI);
    private static final EnumSet follow_set$SchemaParser_ccc$1977$74 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$1979$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$1993$4 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$1993$11 = tokenTypeSet(IDENTIFIER, STRING, FILE_PATH);
    private static final EnumSet follow_set$SchemaParser_ccc$1993$21 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$1993$35 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$1993$46 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$1993$152 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$2001$4 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2001$10 = tokenTypeSet(URI_PATH);
    private static final EnumSet follow_set$SchemaParser_ccc$2001$20 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$2001$75 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$2022$7 = follow_set$SchemaParser_ccc$2022$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$2022$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2022$17 = follow_set$SchemaParser_ccc$2022$17_init();

    private static EnumSet follow_set$SchemaParser_ccc$2022$17_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2022$34 = tokenTypeSet(NL, INHERITS, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2024$6 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2025$5 = follow_set$SchemaParser_ccc$2025$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$2025$5_init() {
        return tokenTypeSet(NL, DIVERSITY, STRICT, RANK_TYPE, WEIGHT, INPUTS, ONNX_MODEL, SIGNIFICANCE, MUTATE, FUNCTION, RANK, IGNORE_DEFAULT_RANK_FEATURES, RBRACE, MATCH_PHASE, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, RANK_PROPERTIES, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, CONSTANTS, MATCHFEATURES_SL, MATCHFEATURES_ML, MATCHFEATURES_ML_INHERITS, SUMMARYFEATURES_SL, SUMMARYFEATURES_ML, SUMMARYFEATURES_ML_INHERITS, RANKFEATURES_SL, RANKFEATURES_ML);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2025$19$ = follow_set$SchemaParser_ccc$2025$19$_init();

    private static EnumSet follow_set$SchemaParser_ccc$2025$19$_init() {
        return tokenTypeSet(NL, DIVERSITY, STRICT, RANK_TYPE, WEIGHT, INPUTS, ONNX_MODEL, SIGNIFICANCE, MUTATE, FUNCTION, RANK, IGNORE_DEFAULT_RANK_FEATURES, RBRACE, MATCH_PHASE, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, RANK_PROPERTIES, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, CONSTANTS, MATCHFEATURES_SL, MATCHFEATURES_ML, MATCHFEATURES_ML_INHERITS, SUMMARYFEATURES_SL, SUMMARYFEATURES_ML, SUMMARYFEATURES_ML_INHERITS, RANKFEATURES_SL, RANKFEATURES_ML);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2025$54 = follow_set$SchemaParser_ccc$2025$54_init();

    private static EnumSet follow_set$SchemaParser_ccc$2025$54_init() {
        return tokenTypeSet(NL, DIVERSITY, STRICT, RANK_TYPE, WEIGHT, INPUTS, ONNX_MODEL, SIGNIFICANCE, MUTATE, FUNCTION, RANK, IGNORE_DEFAULT_RANK_FEATURES, RBRACE, MATCH_PHASE, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, RANK_PROPERTIES, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, CONSTANTS, MATCHFEATURES_SL, MATCHFEATURES_ML, MATCHFEATURES_ML_INHERITS, SUMMARYFEATURES_SL, SUMMARYFEATURES_ML, SUMMARYFEATURES_ML_INHERITS, RANKFEATURES_SL, RANKFEATURES_ML);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2025$61 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2088$5 = follow_set$SchemaParser_ccc$2088$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$2088$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2088$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$2089$7 = follow_set$SchemaParser_ccc$2089$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$2089$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, IDENTIFIER, IDENTIFIER_WITH_DASH, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2089$16 = tokenTypeSet(COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$2099$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2099$14 = tokenTypeSet(ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY);
    private static final EnumSet follow_set$SchemaParser_ccc$2099$28 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$2099$54 = tokenTypeSet(ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2099$61 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2108$6 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2109$6 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2110$6 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2111$6 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2113$4 = follow_set$SchemaParser_ccc$2113$4_init();

    private static EnumSet follow_set$SchemaParser_ccc$2113$4_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2113$17 = tokenTypeSet(_TOKEN_184, _TOKEN_185, _TOKEN_186);
    private static final EnumSet follow_set$SchemaParser_ccc$2113$45 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2113$72 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2113$79 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2123$7 = tokenTypeSet(DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2123$14 = tokenTypeSet(DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2123$21 = tokenTypeSet(DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2139$10 = follow_set$SchemaParser_ccc$2139$10_init();

    private static EnumSet follow_set$SchemaParser_ccc$2139$10_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2139$23 = follow_set$SchemaParser_ccc$2139$23_init();

    private static EnumSet follow_set$SchemaParser_ccc$2139$23_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2139$33 = follow_set$SchemaParser_ccc$2139$33_init();

    private static EnumSet follow_set$SchemaParser_ccc$2139$33_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2139$54 = tokenTypeSet($, _TOKEN_188);
    private static final EnumSet follow_set$SchemaParser_ccc$2139$79 = tokenTypeSet(_TOKEN_188);
    private static final EnumSet follow_set$SchemaParser_ccc$2140$7 = follow_set$SchemaParser_ccc$2140$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$2140$7_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, _TOKEN_189, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2142$13$ = tokenTypeSet(COMMA, _TOKEN_189);
    private static final EnumSet follow_set$SchemaParser_ccc$2143$13 = follow_set$SchemaParser_ccc$2143$13_init();

    private static EnumSet follow_set$SchemaParser_ccc$2143$13_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2143$21 = tokenTypeSet(COMMA, _TOKEN_189);
    private static final EnumSet follow_set$SchemaParser_ccc$2144$7 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2145$7 = tokenTypeSet(EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2145$20 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2145$47 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2145$54 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2160$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2175$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2175$19 = follow_set$SchemaParser_ccc$2175$19_init();

    private static EnumSet follow_set$SchemaParser_ccc$2175$19_init() {
        return tokenTypeSet(NL, DIVERSITY, ATTRIBUTE, RBRACE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2175$33$ = follow_set$SchemaParser_ccc$2175$33$_init();

    private static EnumSet follow_set$SchemaParser_ccc$2175$33$_init() {
        return tokenTypeSet(NL, DIVERSITY, ATTRIBUTE, RBRACE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2175$69 = follow_set$SchemaParser_ccc$2175$69_init();

    private static EnumSet follow_set$SchemaParser_ccc$2175$69_init() {
        return tokenTypeSet(NL, DIVERSITY, ATTRIBUTE, RBRACE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2175$76 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2190$7 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2190$19 = follow_set$SchemaParser_ccc$2190$19_init();

    private static EnumSet follow_set$SchemaParser_ccc$2190$19_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2192$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2192$17 = tokenTypeSet(ASCENDING, DESCENDING);
    private static final EnumSet follow_set$SchemaParser_ccc$2192$27 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2193$29 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2194$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2194$20 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2195$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2195$31 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2196$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2196$28 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2197$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2197$41 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2212$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2212$17 = tokenTypeSet(NL, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ATTRIBUTE, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2212$31 = tokenTypeSet(NL, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ATTRIBUTE, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2212$57 = tokenTypeSet(NL, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ATTRIBUTE, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2212$64 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2223$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2223$17 = tokenTypeSet(NL, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ATTRIBUTE, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2223$31 = tokenTypeSet(NL, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ATTRIBUTE, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2223$57 = tokenTypeSet(NL, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, ATTRIBUTE, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2223$64 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2237$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2237$21 = follow_set$SchemaParser_ccc$2237$21_init();

    private static EnumSet follow_set$SchemaParser_ccc$2237$21_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2238$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2238$22 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2239$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2239$25 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2240$9 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2240$27 = tokenTypeSet(LOOSE, STRICT);
    private static final EnumSet follow_set$SchemaParser_ccc$2241$13 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2242$13 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2259$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2259$19 = tokenTypeSet(NL, RBRACE, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2259$33 = tokenTypeSet(NL, RBRACE, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2259$59 = tokenTypeSet(NL, RBRACE, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2259$66 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2270$8 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2270$26 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2271$8 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2271$32 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2282$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2282$20 = tokenTypeSet(NL, RBRACE, RERANK_COUNT, RANK_SCORE_DROP_LIMIT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2282$34 = tokenTypeSet(NL, RBRACE, RERANK_COUNT, RANK_SCORE_DROP_LIMIT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2282$61 = tokenTypeSet(NL, RBRACE, RERANK_COUNT, RANK_SCORE_DROP_LIMIT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2282$68 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2298$8 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2298$23 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2299$8 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2299$32 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2310$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2310$20 = tokenTypeSet(NL, RBRACE, RERANK_COUNT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2310$34 = tokenTypeSet(NL, RBRACE, RERANK_COUNT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2310$61 = tokenTypeSet(NL, RBRACE, RERANK_COUNT, EXPRESSION_SL, EXPRESSION_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2310$68 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2325$8 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2325$23 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2339$5 = tokenTypeSet(LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2339$14 = follow_set$SchemaParser_ccc$2339$14_init();

    private static EnumSet follow_set$SchemaParser_ccc$2339$14_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, RBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2339$24 = follow_set$SchemaParser_ccc$2339$24_init();

    private static EnumSet follow_set$SchemaParser_ccc$2339$24_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, RBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2341$9$ = follow_set$SchemaParser_ccc$2341$9$_init();

    private static EnumSet follow_set$SchemaParser_ccc$2341$9$_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, RBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2342$10 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2344$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2363$5 = tokenTypeSet(COLON, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, TENSOR_TYPE);
    private static final EnumSet follow_set$SchemaParser_ccc$2363$31$ = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2363$63 = tokenTypeSet(NL, LBRACE, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2363$72 = tokenTypeSet(NL, LBRACE, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2377$11 = tokenTypeSet(_TOKEN_188);
    private static final EnumSet follow_set$SchemaParser_ccc$2377$19 = follow_set$SchemaParser_ccc$2377$19_init();

    private static EnumSet follow_set$SchemaParser_ccc$2377$19_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2377$23 = tokenTypeSet(_TOKEN_189);
    private static final EnumSet follow_set$SchemaParser_ccc$2377$46 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2393$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2395$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2400$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2405$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2437$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2438$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2440$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2459$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2459$14 = tokenTypeSet(TRUE, FALSE);
    private static final EnumSet follow_set$SchemaParser_ccc$2460$11 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2461$11 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2468$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2468$20 = tokenTypeSet(NL, USE_MODEL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2468$34 = tokenTypeSet(NL, USE_MODEL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2468$62 = tokenTypeSet(NL, USE_MODEL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2468$69 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2475$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2475$17 = tokenTypeSet(TRUE, FALSE);
    private static final EnumSet follow_set$SchemaParser_ccc$2476$11 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2477$11 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2491$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2492$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2494$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2516$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2517$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2536$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2549$6 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2549$31 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2562$6 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2562$28 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2575$6 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2575$30 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2588$6 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2588$23 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2601$6 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2601$30 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2614$6 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2614$30 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2627$6 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2627$42 = tokenTypeSet(DOUBLE);
    private static final EnumSet follow_set$SchemaParser_ccc$2639$5 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2639$23 = follow_set$SchemaParser_ccc$2639$23_init();

    private static EnumSet follow_set$SchemaParser_ccc$2639$23_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, RBRACE, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2640$33 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$2640$56 = follow_set$SchemaParser_ccc$2640$56_init();

    private static EnumSet follow_set$SchemaParser_ccc$2640$56_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, RBRACE, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2640$67$ = tokenTypeSet(RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2640$90 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2653$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2653$30 = follow_set$SchemaParser_ccc$2653$30_init();

    private static EnumSet follow_set$SchemaParser_ccc$2653$30_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2669$9$ = follow_set$SchemaParser_ccc$2669$9$_init();

    private static EnumSet follow_set$SchemaParser_ccc$2669$9$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2670$11 = follow_set$SchemaParser_ccc$2670$11_init();

    private static EnumSet follow_set$SchemaParser_ccc$2670$11_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2671$11 = follow_set$SchemaParser_ccc$2671$11_init();

    private static EnumSet follow_set$SchemaParser_ccc$2671$11_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2672$13 = follow_set$SchemaParser_ccc$2672$13_init();

    private static EnumSet follow_set$SchemaParser_ccc$2672$13_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2672$19 = follow_set$SchemaParser_ccc$2672$19_init();

    private static EnumSet follow_set$SchemaParser_ccc$2672$19_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2672$25 = follow_set$SchemaParser_ccc$2672$25_init();

    private static EnumSet follow_set$SchemaParser_ccc$2672$25_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2672$33 = follow_set$SchemaParser_ccc$2672$33_init();

    private static EnumSet follow_set$SchemaParser_ccc$2672$33_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, MIN_GROUPS, CUTOFF_FACTOR, CUTOFF_STRATEGY, LOOSE, STRICT, DOCUMENT, OPERATION, ON_MATCH, ON_FIRST_PHASE, ON_SECOND_PHASE, ON_SUMMARY, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, STRUCT_FIELD, IMPORT, AS, INDEXING, SUMMARY_TO, DOCUMENT_SUMMARY, RANK_TYPE, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, GRAM_SIZE, MAX_LENGTH, PREFIX, SUBSTRING, SUFFIX, CONSTANT, ONNX_MODEL, SIGNIFICANCE, USE_MODEL, INTRAOP_THREADS, INTEROP_THREADS, GPU_DEVICE, EXECUTION_MODE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, RANK_PROFILE, RAW_AS_BASE64_IN_SUMMARY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, MATCHED_ELEMENTS_ONLY, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, QUERY_COMMAND, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, EXACT_TERMINATOR, IGNORE_DEFAULT_RANK_FEATURES, ID, SOURCE, TO, DIRECT, FROM_DISK, OMIT_SUMMARY_FEATURES, ALWAYS, ON_DEMAND, NEVER, ENABLE_BIT_VECTORS, ENABLE_ONLY_BIT_VECTOR, FAST_ACCESS, MUTABLE, PAGED, FAST_RANK, FAST_SEARCH, DOT, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, CREATE_IF_NONEXISTENT, REMOVE_IF_ZERO, MATCH_PHASE, EVALUATION_POINT, PRE_POST_FILTER_TIPPING_POINT, ORDER, MAX_FILTER_COVERAGE, MAX_HITS, FIRST_PHASE, SECOND_PHASE, GLOBAL_PHASE, MACRO, INLINE, ARITY, LOWER_BOUND, UPPER_BOUND, DENSE_POSTING_LIST_THRESHOLD, ENABLE_BM25, HNSW, MAX_LINKS_PER_NODE, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, DISTANCE_METRIC, NEIGHBORS_TO_EXPLORE_AT_INSERT, MULTI_THREADED_INDEXING, RANK_PROPERTIES, RERANK_COUNT, NUM_THREADS_PER_SEARCH, MIN_HITS_PER_THREAD, NUM_SEARCH_PARTITIONS, TERMWISE_LIMIT, POST_FILTER_THRESHOLD, APPROXIMATE_THRESHOLD, TARGET_HITS_MAX_ADJUSTMENT_FACTOR, KEEP_RANK_COUNT, RANK_SCORE_DROP_LIMIT, CONSTANTS, FILE, URI, _TOKEN_188, _TOKEN_189, IDENTIFIER, IDENTIFIER_WITH_DASH, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, DOUBLE, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2687$5 = follow_set$SchemaParser_ccc$2687$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$2687$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2687$14 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2687$37 = tokenTypeSet(INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2702$5 = follow_set$SchemaParser_ccc$2702$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$2702$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2702$17 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2702$40 = follow_set$SchemaParser_ccc$2702$40_init();

    private static EnumSet follow_set$SchemaParser_ccc$2702$40_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2716$5 = follow_set$SchemaParser_ccc$2716$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$2716$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2716$12 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2716$35 = tokenTypeSet(FILTER);
    private static final EnumSet follow_set$SchemaParser_ccc$2716$43 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2728$5 = tokenTypeSet(LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2728$17 = follow_set$SchemaParser_ccc$2728$17_init();

    private static EnumSet follow_set$SchemaParser_ccc$2728$17_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, RBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2728$27 = follow_set$SchemaParser_ccc$2728$27_init();

    private static EnumSet follow_set$SchemaParser_ccc$2728$27_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, RBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2729$7$ = follow_set$SchemaParser_ccc$2729$7$_init();

    private static EnumSet follow_set$SchemaParser_ccc$2729$7$_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, RBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2729$37 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2730$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2742$7 = tokenTypeSet(LBRACE, COLON, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, TENSOR_TYPE);
    private static final EnumSet follow_set$SchemaParser_ccc$2745$13$ = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2745$39 = tokenTypeSet(NL, LBRACE, FILE, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2745$48 = tokenTypeSet(NL, LBRACE, FILE, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2766$11 = tokenTypeSet(_TOKEN_188);
    private static final EnumSet follow_set$SchemaParser_ccc$2766$22 = follow_set$SchemaParser_ccc$2766$22_init();

    private static EnumSet follow_set$SchemaParser_ccc$2766$22_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2766$26 = tokenTypeSet(_TOKEN_189);
    private static final EnumSet follow_set$SchemaParser_ccc$2766$49 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2779$5 = tokenTypeSet(IDENTIFIER, DOUBLE, INTEGER);
    private static final EnumSet follow_set$SchemaParser_ccc$2779$15 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2779$34 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2779$54 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2790$5 = tokenTypeSet(NL, TYPE, RBRACE, TENSOR_VALUE_SL, TENSOR_VALUE_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2790$15 = tokenTypeSet(NL, TYPE, RBRACE, TENSOR_VALUE_SL, TENSOR_VALUE_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2791$10 = tokenTypeSet(NL, TYPE, RBRACE, TENSOR_VALUE_SL, TENSOR_VALUE_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2792$10 = tokenTypeSet(NL, TYPE, RBRACE, TENSOR_VALUE_SL, TENSOR_VALUE_ML);
    private static final EnumSet follow_set$SchemaParser_ccc$2792$91 = tokenTypeSet(NL, RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2792$101 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2827$5 = follow_set$SchemaParser_ccc$2827$5_init();

    private static EnumSet follow_set$SchemaParser_ccc$2827$5_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, RBRACE, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2828$7$ = follow_set$SchemaParser_ccc$2828$7$_init();

    private static EnumSet follow_set$SchemaParser_ccc$2828$7$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, RBRACE, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2829$7 = follow_set$SchemaParser_ccc$2829$7_init();

    private static EnumSet follow_set$SchemaParser_ccc$2829$7_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2829$16 = follow_set$SchemaParser_ccc$2829$16_init();

    private static EnumSet follow_set$SchemaParser_ccc$2829$16_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, LBRACE, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2829$23 = tokenTypeSet(RBRACE, COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$2830$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2839$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2839$51 = tokenTypeSet(NL, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2839$60 = tokenTypeSet(NL, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2878$5 = tokenTypeSet(COMMA, _TOKEN_190, _TOKEN_191, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2878$29 = tokenTypeSet(COMMA, _TOKEN_190, _TOKEN_191, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2878$58 = tokenTypeSet(COMMA, _TOKEN_190, _TOKEN_191, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2879$11 = tokenTypeSet(NL, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2879$20 = tokenTypeSet(NL, _TOKEN_190, DOUBLE, INTEGER, LONG);
    private static final EnumSet follow_set$SchemaParser_ccc$2879$29 = tokenTypeSet(COMMA, _TOKEN_191);
    private static final EnumSet follow_set$SchemaParser_ccc$2879$58 = tokenTypeSet(COMMA, _TOKEN_191);
    private static final EnumSet follow_set$SchemaParser_ccc$2880$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2910$11 = follow_set$SchemaParser_ccc$2910$11_init();

    private static EnumSet follow_set$SchemaParser_ccc$2910$11_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, RBRACE, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2910$17$ = follow_set$SchemaParser_ccc$2910$17$_init();

    private static EnumSet follow_set$SchemaParser_ccc$2910$17$_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, RBRACE, COMMA, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2910$52 = follow_set$SchemaParser_ccc$2910$52_init();

    private static EnumSet follow_set$SchemaParser_ccc$2910$52_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2910$60 = tokenTypeSet(RBRACE, COMMA);
    private static final EnumSet follow_set$SchemaParser_ccc$2910$93 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2921$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2921$33 = follow_set$SchemaParser_ccc$2921$33_init();

    private static EnumSet follow_set$SchemaParser_ccc$2921$33_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2921$42 = follow_set$SchemaParser_ccc$2921$42_init();

    private static EnumSet follow_set$SchemaParser_ccc$2921$42_init() {
        return tokenTypeSet(NL, ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, DOUBLEQUOTEDSTRING, SINGLEQUOTEDSTRING, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2949$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2950$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2960$5 = tokenTypeSet(COLON);
    private static final EnumSet follow_set$SchemaParser_ccc$2960$12 = tokenTypeSet(TENSOR_TYPE);
    private static final EnumSet follow_set$SchemaParser_ccc$2970$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$2990$5 = tokenTypeSet(FIELD);
    private static final EnumSet follow_set$SchemaParser_ccc$2990$14 = follow_set$SchemaParser_ccc$2990$14_init();

    private static EnumSet follow_set$SchemaParser_ccc$2990$14_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2990$22 = tokenTypeSet(AS);
    private static final EnumSet follow_set$SchemaParser_ccc$2990$53 = follow_set$SchemaParser_ccc$2990$53_init();

    private static EnumSet follow_set$SchemaParser_ccc$2990$53_init() {
        return tokenTypeSet(ANNOTATION, ANNOTATIONREFERENCE, SCHEMA, SEARCH, DIVERSITY, LOOSE, STRICT, DOCUMENT, OPERATION, STRUCT, INHERITS, FIELD, FIELDS, FIELDSET, IMPORT, AS, INDEXING, WEIGHT, TYPE, INDEX, INPUTS, MTOKEN, TEXT, WORD, GRAM, PREFIX, SUBSTRING, SUFFIX, CONSTANT, SIGNIFICANCE, PARALLEL, SEQUENTIAL, MODEL, MUTATE, QUERY, SUMMARY, FULL, STATIC, DYNAMIC, TOKENS, SSCONTEXTUAL, SSOVERRIDE, SSTITLE, SSURL, PROPERTIES, ATTRIBUTE, SORTING, DICTIONARY, ASCENDING, DESCENDING, UCA, RAW, LOWERCASE, FUNCTION, LOCALE, STRENGTH, PRIMARY, SECONDARY, TERTIARY, QUATERNARY, IDENTICAL, STEMMING, NORMALIZING, HASH, BTREE, CASED, UNCASED, BOLDING, NONE, ON, OFF, TRUE, FALSE, SYMMETRIC, ALIAS, MATCH, RANK, LITERAL, EXACT, FILTER, NORMAL, ID, SOURCE, TO, DIRECT, ALWAYS, NEVER, MUTABLE, PAGED, ARRAY, WEIGHTEDSET, MAP, REFERENCE, ORDER, MACRO, INLINE, ARITY, HNSW, DOUBLE_KEYWORD, FLOAT_KEYWORD, LONG_KEYWORD, STRING_KEYWORD, CONSTANTS, FILE, URI, IDENTIFIER, CONTEXT, INTEGER, LONG, STRING, VARIABLE);
    }

    private static final EnumSet follow_set$SchemaParser_ccc$2990$58 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2990$91 = tokenTypeSet(RBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$2991$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3014$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3015$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3030$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3031$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3032$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3033$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3034$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3035$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3036$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3037$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3038$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3039$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3040$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3041$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3042$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3043$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3044$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3045$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3046$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3047$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3048$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3049$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3050$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3051$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3052$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3053$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3054$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3055$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3056$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3057$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3058$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3059$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3060$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3061$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3062$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3063$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3064$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3065$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3066$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3067$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3068$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3069$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3070$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3071$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3072$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3073$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3074$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3075$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3076$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3077$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3078$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3079$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3080$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3081$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3082$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3083$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3084$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3085$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3086$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3087$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3088$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3089$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3090$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3091$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3092$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3105$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3106$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3107$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3108$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3109$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3110$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3111$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3112$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3113$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3114$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3115$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3116$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3117$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3118$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3119$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3120$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3121$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3122$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3123$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3124$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3125$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3126$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3127$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3128$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3129$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3130$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3131$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3132$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3133$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3134$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3135$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3136$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3137$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3138$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3139$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3140$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3141$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3142$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3143$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3144$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3145$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3146$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3147$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3148$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3149$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3150$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3151$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3152$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3153$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3154$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3155$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3156$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3157$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3158$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3159$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3160$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3161$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3162$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3163$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3164$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3165$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3166$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3167$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3168$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3169$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3170$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3171$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3172$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3173$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3174$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3175$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3176$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3177$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3178$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3179$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3180$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3181$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3182$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3183$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3184$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3185$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3186$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3187$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3188$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3189$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3190$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3191$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3192$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3193$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3194$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3195$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3196$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3197$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3198$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3199$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3200$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3201$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3202$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3203$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3204$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3205$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3206$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3207$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3208$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3209$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3210$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3211$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3212$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3213$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3214$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3215$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3230$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3230$30 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3237$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3237$17 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3238$9 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3238$17 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3244$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3250$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3251$7 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3258$5 = EnumSet.noneOf(TokenType.class);
    private static final EnumSet follow_set$SchemaParser_ccc$3270$7 = tokenTypeSet(NL, LBRACE);
    private static final EnumSet follow_set$SchemaParser_ccc$3270$14 = tokenTypeSet(NL);
    private static final EnumSet follow_set$SchemaParser_ccc$3270$24 = tokenTypeSet(NL);

    private boolean scanToken(TokenType expectedType, TokenType...additionalTypes) {
        Token peekedToken = nextToken(currentLookaheadToken);
        TokenType type = peekedToken.getType();
        if (type != expectedType) {
            boolean matched = false;
            for (TokenType tt : additionalTypes) {
                if (type == tt) {
                    matched = true;
                    break;
                }
            }
            if (!matched) return false;
        }
        --remainingLookahead;
        currentLookaheadToken = peekedToken;
        return true;
    }

    private boolean scanToken(EnumSet types) {
        Token peekedToken = nextToken(currentLookaheadToken);
        TokenType type = peekedToken.getType();
        if (!types.contains(type)) return false;
        --remainingLookahead;
        currentLookaheadToken = peekedToken;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:58
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2744$58(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:58
            // NonTerminal tensorValue at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:58
            pushOntoLookaheadStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2744, 58);
            currentLookaheadProduction = "tensorValue";
            try {
                if (!check$tensorValue(true)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:91
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2744$91(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:91
            // NonTerminal fileItem at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:91
            pushOntoLookaheadStack("constantElm", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2744, 91);
            currentLookaheadProduction = "fileItem";
            try {
                if (!check$fileItem(true)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:7
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2813$7$(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:7
            // NonTerminal mappedTensorValue at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:7
            pushOntoLookaheadStack("tensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2813, 7);
            currentLookaheadProduction = "mappedTensorValue";
            try {
                if (!check$mappedTensorValue(false)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:36
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2813$36(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:36
            // NonTerminal indexedTensorValues at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:36
            pushOntoLookaheadStack("tensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2813, 36);
            currentLookaheadProduction = "indexedTensorValues";
            try {
                if (!check$indexedTensorValues(false)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2828:7
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2828$7(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2828:7
            // NonTerminal mappedTensorBlock at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2828:7
            pushOntoLookaheadStack("mappedTensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2828, 7);
            currentLookaheadProduction = "mappedTensorBlock";
            try {
                if (!check$mappedTensorBlock(false)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:7
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2829$7(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:7
            if (!scanToken(COMMA)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:15
            boolean passedPredicate4 = passedPredicate;
            try {
                while (remainingLookahead > 0 && !hitFailure) {
                    Token token5 = currentLookaheadToken;
                    passedPredicate = false;
                    if (!scanToken(NL)) {
                        if (passedPredicate && !legacyGlitchyLookahead) return false;
                        currentLookaheadToken = token5;
                        break;
                    }
                }
            } finally {
                passedPredicate = passedPredicate4;
            }
            hitFailure = false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:23
            // NonTerminal mappedTensorBlock at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:23
            pushOntoLookaheadStack("mappedTensorValue", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2829, 23);
            currentLookaheadProduction = "mappedTensorBlock";
            try {
                if (!check$mappedTensorBlock(true)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2840:55
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2840$55(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2840:55
            // NonTerminal indexedTensorBlockValues at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2840:55
            pushOntoLookaheadStack("mappedTensorBlock", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2840, 55);
            currentLookaheadProduction = "indexedTensorBlockValues";
            try {
                if (!check$indexedTensorBlockValues(false)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:27
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2878$27(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:29
            Token token4 = currentLookaheadToken;
            int remainingLookahead4 = remainingLookahead;
            boolean hitFailure4 = hitFailure;
            boolean passedPredicate4 = passedPredicate;
            try {
                passedPredicate = false;
                if (!scanToken(DOUBLE, INTEGER, LONG)) {
                    currentLookaheadToken = token4;
                    remainingLookahead = remainingLookahead4;
                    hitFailure = hitFailure4;
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    passedPredicate = false;
                    if (!check$SchemaParser_ccc$2878$58(false)) {
                        currentLookaheadToken = token4;
                        remainingLookahead = remainingLookahead4;
                        hitFailure = hitFailure4;
                        return false;
                    }
                }
            } finally {
                passedPredicate = passedPredicate4;
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:58
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2878$58(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:58
            // NonTerminal arrayTensorValues at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:58
            pushOntoLookaheadStack("arrayTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2878, 58);
            currentLookaheadProduction = "arrayTensorValues";
            try {
                if (!check$arrayTensorValues(false)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:11
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2879$11(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:11
            if (!scanToken(COMMA)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:19
            boolean passedPredicate4 = passedPredicate;
            try {
                while (remainingLookahead > 0 && !hitFailure) {
                    Token token5 = currentLookaheadToken;
                    passedPredicate = false;
                    if (!scanToken(NL)) {
                        if (passedPredicate && !legacyGlitchyLookahead) return false;
                        currentLookaheadToken = token5;
                        break;
                    }
                }
            } finally {
                passedPredicate = passedPredicate4;
            }
            hitFailure = false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:29
            Token token8 = currentLookaheadToken;
            int remainingLookahead8 = remainingLookahead;
            boolean hitFailure8 = hitFailure;
            boolean passedPredicate8 = passedPredicate;
            try {
                passedPredicate = false;
                if (!scanToken(DOUBLE, INTEGER, LONG)) {
                    currentLookaheadToken = token8;
                    remainingLookahead = remainingLookahead8;
                    hitFailure = hitFailure8;
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    passedPredicate = false;
                    if (!check$SchemaParser_ccc$2879$58(false)) {
                        currentLookaheadToken = token8;
                        remainingLookahead = remainingLookahead8;
                        hitFailure = hitFailure8;
                        return false;
                    }
                }
            } finally {
                passedPredicate = passedPredicate8;
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:58
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2879$58(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:58
            // NonTerminal arrayTensorValues at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:58
            pushOntoLookaheadStack("arrayTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2879, 58);
            currentLookaheadProduction = "arrayTensorValues";
            try {
                if (!check$arrayTensorValues(false)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:9
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2910$9(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:11
            if (!scanToken(LBRACE)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:15
            boolean passedPredicate6 = passedPredicate;
            try {
                while (remainingLookahead > 0 && !hitFailure) {
                    Token token7 = currentLookaheadToken;
                    passedPredicate = false;
                    if (!check$SchemaParser_ccc$2910$17(false)) {
                        if (passedPredicate && !legacyGlitchyLookahead) return false;
                        currentLookaheadToken = token7;
                        break;
                    }
                }
            } finally {
                passedPredicate = passedPredicate6;
            }
            hitFailure = false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:50
            boolean passedPredicate9 = passedPredicate;
            try {
                while (remainingLookahead > 0 && !hitFailure) {
                    Token token10 = currentLookaheadToken;
                    passedPredicate = false;
                    if (!check$SchemaParser_ccc$2910$52(false)) {
                        if (passedPredicate && !legacyGlitchyLookahead) return false;
                        currentLookaheadToken = token10;
                        break;
                    }
                }
            } finally {
                passedPredicate = passedPredicate9;
            }
            hitFailure = false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:93
            if (!scanToken(RBRACE)) return false;
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:17
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2910$17(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:17
            // NonTerminal tensorAddressElement at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:17
            pushOntoLookaheadStack("tensorAddress", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2910, 17);
            currentLookaheadProduction = "tensorAddressElement";
            try {
                if (!check$tensorAddressElement(false)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // scanahead routine for expansion at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:52
    // BuildScanRoutine macro
    private boolean check$SchemaParser_ccc$2910$52(boolean scanToEnd) {
        boolean reachedScanCode = false;
        int passedPredicateThreshold = remainingLookahead - 1;
        try {
            lookaheadRoutineNesting++;
            // BuildPredicateCode macro
            // End BuildPredicateCode macro
            reachedScanCode = true;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:52
            if (!scanToken(COMMA)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:60
            // NonTerminal tensorAddressElement at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2910:60
            pushOntoLookaheadStack("tensorAddress", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2910, 60);
            currentLookaheadProduction = "tensorAddressElement";
            try {
                if (!check$tensorAddressElement(true)) return false;
            } finally {
                popLookaheadStack();
            }
        } finally {
            lookaheadRoutineNesting--;
            if (reachedScanCode && remainingLookahead <= passedPredicateThreshold) {
                passedPredicate = true;
            }
        }
        passedPredicate = false;
        return true;
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:986:11
    private boolean scan$SchemaParser_ccc$986$11() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$986$15(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:994:11
    private boolean scan$SchemaParser_ccc$994$11() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$994$15(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1001:11
    private boolean scan$SchemaParser_ccc$1001$11() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$1001$15(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1007:11
    private boolean scan$SchemaParser_ccc$1007$11() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$1007$15(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1013:11
    private boolean scan$SchemaParser_ccc$1013$11() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$1013$15(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1020:11
    private boolean scan$SchemaParser_ccc$1020$11() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$1020$15(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1406:17
    private boolean scan$SchemaParser_ccc$1406$17() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$1406$21(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1879:7
    private boolean scan$SchemaParser_ccc$1879$7() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$1879$11(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:37
    private boolean scan$SchemaParser_ccc$2639$37() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$2639$41(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // BuildPredicateRoutine: expansion at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:9
    private boolean scan$SchemaParser_ccc$2744$9() {
        remainingLookahead = UNLIMITED;
        currentLookaheadToken = lastConsumedToken;
        final boolean scanToEnd = false;
        try {
            // BuildPredicateCode macro
            if (remainingLookahead <= 0) {
                passedPredicate = true;
                return !hitFailure;
            }
            if (!check$SchemaParser_ccc$2744$13(true)) return false;
            // End BuildPredicateCode macro
            return true;
        } finally {
            lookaheadRoutineNesting = 0;
            currentLookaheadToken = null;
            hitFailure = false;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:986:11
    private boolean check$SchemaParser_ccc$986$15(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:986:16
            if (!scanToken(ARRAY)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:986:24
            if (!scanToken(LESSTHAN)) return false;
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:994:11
    private boolean check$SchemaParser_ccc$994$15(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:994:16
            if (!scanToken(WEIGHTEDSET)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:994:30
            if (!scanToken(LESSTHAN)) return false;
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1001:11
    private boolean check$SchemaParser_ccc$1001$15(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1001:16
            if (!scanToken(MAP)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1001:22
            if (!scanToken(LESSTHAN)) return false;
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1007:11
    private boolean check$SchemaParser_ccc$1007$15(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1007:16
            if (!scanToken(ANNOTATIONREFERENCE)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1007:38
            if (!scanToken(LESSTHAN)) return false;
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1013:11
    private boolean check$SchemaParser_ccc$1013$15(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (!scanToken(TENSOR_TYPE)) return false;
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1020:11
    private boolean check$SchemaParser_ccc$1020$15(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (!scanToken(REFERENCE)) return false;
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1406:17
    private boolean check$SchemaParser_ccc$1406$21(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1406:22
            Token token5 = currentLookaheadToken;
            boolean passedPredicate5 = passedPredicate;
            passedPredicate = false;
            try {
                if (!scanToken(first_set$SchemaParser_ccc$1406$23)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token5;
                    hitFailure = false;
                }
            } finally {
                passedPredicate = passedPredicate5;
            }
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1406:38
            if (!scanToken(COLON)) return false;
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1879:7
    private boolean check$SchemaParser_ccc$1879$11(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1879:12
            if (!scanToken(HNSW)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1879:19
            // NonTerminal openLbrace at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1879:19
            pushOntoLookaheadStack("hnswIndex", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 1879, 19);
            currentLookaheadProduction = "openLbrace";
            try {
                if (!check$openLbrace(true)) return false;
            } finally {
                popLookaheadStack();
            }
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:37
    private boolean check$SchemaParser_ccc$2639$41(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:42
            // NonTerminal rankPropertyItem at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:42
            pushOntoLookaheadStack("rankProperties", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2639, 42);
            currentLookaheadProduction = "rankPropertyItem";
            try {
                if (!check$rankPropertyItem(true)) return false;
            } finally {
                popLookaheadStack();
            }
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:61
            if (!scanToken(COLON)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:69
            // NonTerminal rankPropertyItem at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:69
            pushOntoLookaheadStack("rankProperties", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2639, 69);
            currentLookaheadProduction = "rankPropertyItem";
            try {
                if (!check$rankPropertyItem(true)) return false;
            } finally {
                popLookaheadStack();
            }
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2639:88
            if (!scanToken(NL)) return false;
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // lookahead routine for lookahead at:
    // /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:9
    private boolean check$SchemaParser_ccc$2744$13(boolean scanToEnd) {
        int prevRemainingLookahead = remainingLookahead;
        boolean prevHitFailure = hitFailure;
        Token prevScanAheadToken = currentLookaheadToken;
        try {
            lookaheadRoutineNesting++;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ZeroOrOne specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:15
            Token token5 = currentLookaheadToken;
            boolean passedPredicate5 = passedPredicate;
            passedPredicate = false;
            try {
                if (!scanToken(first_set$SchemaParser_ccc$2744$16)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token5;
                    hitFailure = false;
                }
            } finally {
                passedPredicate = passedPredicate5;
            }
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:41
            if (!scanToken(COLON)) return false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:49
            boolean passedPredicate8 = passedPredicate;
            try {
                while (remainingLookahead > 0 && !hitFailure) {
                    Token token9 = currentLookaheadToken;
                    passedPredicate = false;
                    if (!scanToken(NL)) {
                        if (passedPredicate && !legacyGlitchyLookahead) return false;
                        currentLookaheadToken = token9;
                        break;
                    }
                }
            } finally {
                passedPredicate = passedPredicate8;
            }
            hitFailure = false;
            if (hitFailure) return false;
            if (remainingLookahead <= 0) {
                return true;
            }
            // Lookahead Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2744:58
            Token token12 = currentLookaheadToken;
            int remainingLookahead12 = remainingLookahead;
            boolean hitFailure12 = hitFailure;
            boolean passedPredicate12 = passedPredicate;
            try {
                passedPredicate = false;
                if (!check$SchemaParser_ccc$2744$58(false)) {
                    currentLookaheadToken = token12;
                    remainingLookahead = remainingLookahead12;
                    hitFailure = hitFailure12;
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    passedPredicate = false;
                    if (!check$SchemaParser_ccc$2744$91(false)) {
                        currentLookaheadToken = token12;
                        remainingLookahead = remainingLookahead12;
                        hitFailure = hitFailure12;
                        return false;
                    }
                }
            } finally {
                passedPredicate = passedPredicate12;
            }
            return !hitFailure;
        } finally {
            lookaheadRoutineNesting--;
            currentLookaheadToken = prevScanAheadToken;
            remainingLookahead = prevRemainingLookahead;
            hitFailure = prevHitFailure;
        }
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$fileItem(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:4
        if (!scanToken(FILE)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:11
        if (!scanToken(COLON)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:21
        if (!scanToken(IDENTIFIER, STRING, FILE_PATH)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:60
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:147
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:151
        boolean passedPredicate11 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token12 = currentLookaheadToken;
                passedPredicate = false;
                if (!scanToken(NL)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token12;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate11;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:1993:160
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$rankPropertyItem(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for OneOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2669:7
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2669:9
        if (!scanToken(first_set$SchemaParser_ccc$2669$9$$)) return false;
        boolean passedPredicate6 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token7 = currentLookaheadToken;
                passedPredicate = false;
                if (!scanToken(first_set$SchemaParser_ccc$2669$9$$)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token7;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate6;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2673:5
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$tensorValue(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2813:7
        Token token4 = currentLookaheadToken;
        int remainingLookahead4 = remainingLookahead;
        boolean hitFailure4 = hitFailure;
        boolean passedPredicate4 = passedPredicate;
        try {
            passedPredicate = false;
            if (!check$SchemaParser_ccc$2813$7$(false)) {
                currentLookaheadToken = token4;
                remainingLookahead = remainingLookahead4;
                hitFailure = hitFailure4;
                if (passedPredicate && !legacyGlitchyLookahead) return false;
                passedPredicate = false;
                if (!check$SchemaParser_ccc$2813$36(false)) {
                    currentLookaheadToken = token4;
                    remainingLookahead = remainingLookahead4;
                    hitFailure = hitFailure4;
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    passedPredicate = false;
                    if (!scanToken(DOUBLE, INTEGER, LONG)) {
                        currentLookaheadToken = token4;
                        remainingLookahead = remainingLookahead4;
                        hitFailure = hitFailure4;
                        return false;
                    }
                }
            }
        } finally {
            passedPredicate = passedPredicate4;
        }
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2814:5
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$mappedTensorValue(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2827:5
        if (!scanToken(LBRACE)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2828:5
        boolean passedPredicate4 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token5 = currentLookaheadToken;
                passedPredicate = false;
                if (!check$SchemaParser_ccc$2828$7(false)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token5;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate4;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2829:5
        boolean passedPredicate7 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token8 = currentLookaheadToken;
                passedPredicate = false;
                if (!check$SchemaParser_ccc$2829$7(false)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token8;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate7;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2830:5
        if (!scanToken(RBRACE)) return false;
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$mappedTensorBlock(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2839:5
        // NonTerminal tensorAddress at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2839:5
        pushOntoLookaheadStack("mappedTensorBlock", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2839, 5);
        currentLookaheadProduction = "tensorAddress";
        try {
            if (!check$tensorAddress(false)) return false;
        } finally {
            popLookaheadStack();
        }
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2839:51
        if (!scanToken(COLON)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2839:59
        boolean passedPredicate5 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token6 = currentLookaheadToken;
                passedPredicate = false;
                if (!scanToken(NL)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token6;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate5;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2840:7
        Token token9 = currentLookaheadToken;
        int remainingLookahead9 = remainingLookahead;
        boolean hitFailure9 = hitFailure;
        boolean passedPredicate9 = passedPredicate;
        try {
            passedPredicate = false;
            if (!scanToken(DOUBLE, INTEGER, LONG)) {
                currentLookaheadToken = token9;
                remainingLookahead = remainingLookahead9;
                hitFailure = hitFailure9;
                if (passedPredicate && !legacyGlitchyLookahead) return false;
                passedPredicate = false;
                if (!check$SchemaParser_ccc$2840$55(false)) {
                    currentLookaheadToken = token9;
                    remainingLookahead = remainingLookahead9;
                    hitFailure = hitFailure9;
                    return false;
                }
            }
        } finally {
            passedPredicate = passedPredicate9;
        }
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$indexedTensorBlockValues(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2848:5
        // NonTerminal arrayTensorValues at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2848:5
        pushOntoLookaheadStack("indexedTensorBlockValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2848, 5);
        currentLookaheadProduction = "arrayTensorValues";
        try {
            if (!check$arrayTensorValues(false)) return false;
        } finally {
            popLookaheadStack();
        }
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2849:5
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$indexedTensorValues(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2864:5
        // NonTerminal arrayTensorValues at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2864:5
        pushOntoLookaheadStack("indexedTensorValues", "/workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc", 2864, 5);
        currentLookaheadProduction = "arrayTensorValues";
        try {
            if (!check$arrayTensorValues(false)) return false;
        } finally {
            popLookaheadStack();
        }
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2865:5
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$arrayTensorValues(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:5
        if (!scanToken(_TOKEN_190)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2878:9
        boolean passedPredicate4 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token5 = currentLookaheadToken;
                passedPredicate = false;
                if (!check$SchemaParser_ccc$2878$27(false)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token5;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate4;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2879:9
        boolean passedPredicate7 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token8 = currentLookaheadToken;
                passedPredicate = false;
                if (!check$SchemaParser_ccc$2879$11(false)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token8;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate7;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2880:5
        if (!scanToken(_TOKEN_191)) return false;
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$tensorAddress(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ExpansionChoice specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2908:9
        Token token4 = currentLookaheadToken;
        int remainingLookahead4 = remainingLookahead;
        boolean hitFailure4 = hitFailure;
        boolean passedPredicate4 = passedPredicate;
        try {
            passedPredicate = false;
            if (!scanToken(first_set$SchemaParser_ccc$2908$9)) {
                currentLookaheadToken = token4;
                remainingLookahead = remainingLookahead4;
                hitFailure = hitFailure4;
                if (passedPredicate && !legacyGlitchyLookahead) return false;
                passedPredicate = false;
                if (!check$SchemaParser_ccc$2910$9(false)) {
                    currentLookaheadToken = token4;
                    remainingLookahead = remainingLookahead4;
                    hitFailure = hitFailure4;
                    return false;
                }
            }
        } finally {
            passedPredicate = passedPredicate4;
        }
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2912:5
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$tensorAddressElement(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:5
        if (!scanToken(first_set$SchemaParser_ccc$2921$5)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:33
        if (!scanToken(COLON)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:41
        boolean passedPredicate5 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token6 = currentLookaheadToken;
                passedPredicate = false;
                if (!scanToken(NL)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token6;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate5;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for NonTerminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2921:49
        if (!scanToken(first_set$SchemaParser_ccc$2921$49)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for CodeBlock specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:2922:5
        return true;
    }

    // BuildProductionLookaheadMethod macro
    private boolean check$openLbrace(boolean scanToEnd) {
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3270:6
        boolean passedPredicate5 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token6 = currentLookaheadToken;
                passedPredicate = false;
                if (!scanToken(NL)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token6;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate5;
        }
        hitFailure = false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for Terminal specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3270:14
        if (!scanToken(LBRACE)) return false;
        if (hitFailure) return false;
        if (remainingLookahead <= 0) {
            return true;
        }
        // Lookahead Code for ZeroOrMore specified at /workspace/build/buildkite/vespaai/vespa-engine-vespa/integration/schema-language-server/language-server/src/main/ccc/SchemaParser.ccc:3270:23
        boolean passedPredicate9 = passedPredicate;
        try {
            while (remainingLookahead > 0 && !hitFailure) {
                Token token10 = currentLookaheadToken;
                passedPredicate = false;
                if (!scanToken(NL)) {
                    if (passedPredicate && !legacyGlitchyLookahead) return false;
                    currentLookaheadToken = token10;
                    break;
                }
            }
        } finally {
            passedPredicate = passedPredicate9;
        }
        hitFailure = false;
        return true;
    }

    private ArrayList parsingStack = new ArrayList<>();
    private final ArrayList lookaheadStack = new ArrayList<>();
    private EnumSet currentFollowSet;

    private void pushOntoCallStack(String methodName, String fileName, int line, int column) {
        parsingStack.add(new NonTerminalCall("SchemaParser", token_source, fileName, methodName, line, column, currentFollowSet));
    }

    private void popCallStack() {
        NonTerminalCall ntc = parsingStack.remove(parsingStack.size() - 1);
        this.currentlyParsedProduction = ntc.productionName;
        this.outerFollowSet = (EnumSet) ntc.followSet;
    }

    private void restoreCallStack(int prevSize) {
        while (parsingStack.size() > prevSize) {
            popCallStack();
        }
    }

    private void pushOntoLookaheadStack(String methodName, String fileName, int line, int column) {
        lookaheadStack.add(new NonTerminalCall("SchemaParser", token_source, fileName, methodName, line, column, null));
    }

    private void popLookaheadStack() {
        NonTerminalCall ntc = lookaheadStack.remove(lookaheadStack.size() - 1);
        this.currentLookaheadProduction = ntc.productionName;
    }

    void dumpLookaheadStack(PrintStream ps) {
        ListIterator it = lookaheadStack.listIterator(lookaheadStack.size());
        while (it.hasPrevious()) {
            it.previous().dump(ps);
        }
    }

    void dumpCallStack(PrintStream ps) {
        ListIterator it = parsingStack.listIterator(parsingStack.size());
        while (it.hasPrevious()) {
            it.previous().dump(ps);
        }
    }

    void dumpLookaheadCallStack(PrintStream ps) {
        ps.println("Current Parser Production is: " + currentlyParsedProduction);
        ps.println("Current Lookahead Production is: " + currentLookaheadProduction);
        ps.println("---Lookahead Stack---");
        dumpLookaheadStack(ps);
        ps.println("---Call Stack---");
        dumpCallStack(ps);
    }

    private boolean tolerantParsing = true;
    // Are we pending a recovery routine to
    // get back on the rails?
    private boolean pendingRecovery;
    private java.util.List parsingProblems = new java.util.ArrayList<>();

    public java.util.List getParsingProblems() {
        return parsingProblems;
    }

    public boolean hasProblems() {
        return !parsingProblems.isEmpty();
    }

    void addParsingProblem(ParsingProblem problem) {
        parsingProblems.add(problem);
    }

    public boolean isParserTolerant() {
        return tolerantParsing;
    }

    public void setParserTolerant(boolean tolerantParsing) {
        this.tolerantParsing = tolerantParsing;
    }

    private Token consumeToken(TokenType expectedType, boolean tolerant, EnumSet followSet) {
        Token nextToken = nextToken(lastConsumedToken);
        if (nextToken.getType() != expectedType) {
            nextToken = handleUnexpectedTokenType(expectedType, nextToken, tolerant, followSet);
        }
        this.lastConsumedToken = nextToken;
        this.nextTokenType = null;
        if (buildTree && tokensAreNodes) {
            lastConsumedToken.open();
            pushNode(lastConsumedToken);
            lastConsumedToken.close();
        }
        // Check whether the very next token is in the follow set of the last consumed token
        // and if it is not, we check one token ahead to see if skipping the next token remedies
        // the problem.
        if (followSet != null && isParserTolerant()) {
            nextToken = nextToken(lastConsumedToken);
            if (!followSet.contains(nextToken.getType())) {
                Token nextNext = nextToken(nextToken);
                if (followSet.contains(nextNext.getType())) {
                    nextToken.setSkipped(true);
                }
            }
        }
        return lastConsumedToken;
    }

    private Token handleUnexpectedTokenType(TokenType expectedType, Token nextToken, boolean tolerant, EnumSet followSet) {
        if (!this.tolerantParsing) {
            throw new ParseException(nextToken, EnumSet.of(expectedType), parsingStack);
        }
        Token nextNext = nextToken(nextToken);
        if (nextNext.getType() == expectedType) {
            nextToken.setSkipped(true);
            pushNode(nextToken);
            return nextNext;
        }
        if (tolerant || followSet == null || followSet.contains(nextToken.getType())) {
            Token virtualToken = Token.newToken(expectedType, token_source, 0, 0);
            virtualToken.setVirtual(true);
            virtualToken.copyLocationInfo(nextToken);
            return virtualToken;
        }
        throw new ParseException(nextToken, EnumSet.of(expectedType), parsingStack);
    }

    private boolean buildTree = true;
    private boolean tokensAreNodes = true;
    private boolean unparsedTokensAreNodes = false;

    public boolean isTreeBuildingEnabled() {
        return buildTree;
    }

    public void setUnparsedTokensAreNodes(boolean unparsedTokensAreNodes) {
        this.unparsedTokensAreNodes = unparsedTokensAreNodes;
    }

    public void setTokensAreNodes(boolean tokensAreNodes) {
        this.tokensAreNodes = tokensAreNodes;
    }

    NodeScope currentNodeScope = new NodeScope();

    /**
    * @return the root node of the AST. It only makes sense to call
    * this after a successful parse.
    */
    public Node rootNode() {
        return currentNodeScope.rootNode();
    }

    /**
    * push a node onto the top of the node stack
    * @param n the node to push
    */
    public void pushNode(Node n) {
        currentNodeScope.add(n);
    }

    /**
    * @return the node on the top of the stack, and remove it from the
    * stack.
    */
    public Node popNode() {
        return currentNodeScope.pop();
    }

    /**
    * @return the node currently on the top of the tree-building stack.
    */
    public Node peekNode() {
        return currentNodeScope.peek();
    }

    /**
    * Puts the node on the top of the stack. However, unlike pushNode()
    * it replaces the node that is currently on the top of the stack.
    * This is effectively equivalent to popNode() followed by pushNode(n)
    * @param n the node to poke
    */
    public void pokeNode(Node n) {
        currentNodeScope.poke(n);
    }

    /**
    * @return the number of Nodes on the tree-building stack in the current node
    * scope.
    */
    public int nodeArity() {
        return currentNodeScope.size();
    }

    private void openNodeScope(Node n) {
        new NodeScope();
        if (n != null) {
            n.setTokenSource(lastConsumedToken.getTokenSource());
            // We set the begin/end offsets based on the ending location
            // of the last consumed token. So, we start with a Node
            // of length zero. Typically this is overridden in the
            // closeNodeScope() method, unless this node has no children
            n.setBeginOffset(lastConsumedToken.getEndOffset());
            n.setEndOffset(n.getBeginOffset());
            n.setTokenSource(this.token_source);
            n.open();
        }
    }

    /* A definite node is constructed from a specified number of
    * children.  That number of nodes are popped from the stack and
    * made the children of the definite node.  Then the definite node
    * is pushed on to the stack.
    * @param n is the node whose scope is being closed
    * @param num is the number of child nodes to pop as children
    * @return @{code true}
    */
    private boolean closeNodeScope(Node n, int num) {
        n.setBeginOffset(lastConsumedToken.getEndOffset());
        n.setEndOffset(lastConsumedToken.getEndOffset());
        currentNodeScope.close();
        ArrayList nodes = new ArrayList<>();
        for (int i = 0; i < num; i++) {
            nodes.add(popNode());
        }
        Collections.reverse(nodes);
        for (Node child : nodes) {
            if (child.getInputSource() == n.getInputSource()) {
                n.setBeginOffset(child.getBeginOffset());
                break;
            }
        }
        for (Node child : nodes) {
            if (unparsedTokensAreNodes && child instanceof Token) {
                Token tok = (Token) child;
                while (tok.previousCachedToken() != null && tok.previousCachedToken().isUnparsed()) {
                    tok = tok.previousCachedToken();
                }
                boolean locationSet = false;
                while (tok.isUnparsed()) {
                    n.add(tok);
                    if (!locationSet && tok.getInputSource() == n.getInputSource() && tok.getBeginOffset() < n.getBeginOffset()) {
                        n.setBeginOffset(tok.getBeginOffset());
                        locationSet = true;
                    }
                    tok = tok.nextCachedToken();
                }
            }
            if (child.getInputSource() == n.getInputSource()) {
                n.setEndOffset(child.getEndOffset());
            }
            n.add(child);
        }
        n.close();
        pushNode(n);
        return true;
    }

    /**
    * A conditional node is constructed if the condition is true.  All
    * the nodes that have been pushed since the node was opened are
    * made children of the conditional node, which is then pushed
    * on to the stack.  If the condition is false the node is not
    * constructed and they are left on the stack.
    */
    private boolean closeNodeScope(Node n, boolean condition) {
        if (n == null || !condition) {
            currentNodeScope.close();
            return false;
        }
        return closeNodeScope(n, nodeArity());
    }

    public boolean getBuildTree() {
        return buildTree;
    }

    public void setBuildTree(boolean buildTree) {
        this.buildTree = buildTree;
    }


    @SuppressWarnings("serial")
    class NodeScope extends ArrayList {
        NodeScope parentScope;

        NodeScope() {
            this.parentScope = SchemaParser.this.currentNodeScope;
            SchemaParser.this.currentNodeScope = this;
        }

        boolean isRootScope() {
            return parentScope == null;
        }

        Node rootNode() {
            NodeScope ns = this;
            while (ns.parentScope != null) {
                ns = ns.parentScope;
            }
            return ns.isEmpty() ? null : ns.get(0);
        }

        Node peek() {
            if (isEmpty()) {
                return parentScope == null ? null : parentScope.peek();
            }
            return get(size() - 1);
        }

        Node pop() {
            return isEmpty() ? parentScope.pop() : remove(size() - 1);
        }

        void poke(Node n) {
            if (isEmpty()) {
                parentScope.poke(n);
            } else {
                set(size() - 1, n);
            }
        }

        void close() {
            parentScope.addAll(this);
            SchemaParser.this.currentNodeScope = parentScope;
        }

        int nestingLevel() {
            int result = 0;
            NodeScope parent = this;
            while (parent.parentScope != null) {
                result++;
                parent = parent.parentScope;
            }
            return result;
        }

        public NodeScope clone() {
            NodeScope clone = (NodeScope) super.clone();
            if (parentScope != null) {
                clone.parentScope = parentScope.clone();
            }
            return clone;
        }

    }

}






© 2015 - 2024 Weber Informatics LLC | Privacy Policy