From 4917ba28e3f306bb4e362a88269ddeb257ea6086 Mon Sep 17 00:00:00 2001 From: "Bernhard J. Berger" <bernhard.berger@uni-bremen.de> Date: Tue, 20 Sep 2022 22:02:10 +0200 Subject: [PATCH] Added generator language. --- .../.classpath | 9 + .../.project | 40 + .../META-INF/MANIFEST.MF | 16 + .../build.properties | 6 + .../pom.xml | 14 + .../services/org.eclipse.xtext.ISetup | 1 + .../ide/AbstractGeneratorDSLIdeModule.java | 60 + .../antlr/GeneratorDSLParser.java | 206 + ...artialGeneratorDSLContentAssistParser.java | 33 + .../antlr/internal/InternalGeneratorDSL.g | 6664 +++++ .../internal/InternalGeneratorDSL.tokens | 106 + .../internal/InternalGeneratorDSLLexer.java | 2351 ++ .../internal/InternalGeneratorDSLParser.java | 20130 ++++++++++++++++ .../dsl/ide/GeneratorDSLIdeModule.java | 11 + .../dsl/ide/GeneratorDSLIdeSetup.java | 22 + .../.classpath | 9 + .../.project | 40 + .../META-INF/MANIFEST.MF | 25 + .../build.properties | 7 + .../plugin.xml | 434 + .../pom.xml | 14 + .../dsl/ui/AbstractGeneratorDSLUiModule.java | 293 + ...eneratorDSLExecutableExtensionFactory.java | 29 + .../AbstractGeneratorDSLProposalProvider.java | 160 + .../dsl/ui/internal/DslActivator.java | 94 + ...neratorDSLValidatorConfigurationBlock.java | 35 + .../dsl/ui/GeneratorDSLUiModule.java | 16 + .../GeneratorDSLProposalProvider.java | 12 + .../GeneratorDSLDescriptionLabelProvider.java | 25 + .../labeling/GeneratorDSLLabelProvider.java | 31 + .../GeneratorDSLOutlineTreeProvider.java | 15 + .../GeneratorDSLQuickfixProvider.java | 26 + .../.antlr-generator-3.2.0-patch.jar | Bin 0 -> 1484649 bytes .../.classpath | 9 + .../.project | 40 + .../META-INF/MANIFEST.MF | 32 + .../build.properties | 19 + .../model/generated/GeneratorDSL.ecore | 81 + .../model/generated/GeneratorDSL.genmodel | 71 + .../plugin.xml | 10 + .../pom.xml | 14 + .../AbstractGeneratorDSLRuntimeModule.java | 201 + .../model/generator/dsl/GeneratorDSL.xtextbin | Bin 0 -> 10005 bytes .../GeneratorDSLStandaloneSetupGenerated.java | 42 + .../dsl/generatorDSL/ApplyStatement.java | 116 + .../dsl/generatorDSL/Configuration.java | 79 + .../dsl/generatorDSL/CounterRange.java | 70 + .../dsl/generatorDSL/ForStatement.java | 84 + .../generatorDSL/FunctionDefReference.java | 19 + .../FunctionDefinitionReference.java | 48 + .../dsl/generatorDSL/FunctionReference.java | 20 + .../dsl/generatorDSL/FunctionReferences.java | 40 + .../generator/dsl/generatorDSL/Functions.java | 47 + .../dsl/generatorDSL/GeneratorDSLFactory.java | 215 + .../dsl/generatorDSL/GeneratorDSLPackage.java | 1594 ++ .../dsl/generatorDSL/GeneratorDefinition.java | 73 + .../GeneratorDefinitionReference.java | 47 + .../dsl/generatorDSL/GeneratorReference.java | 20 + .../dsl/generatorDSL/GeneratorReferences.java | 40 + .../dsl/generatorDSL/Generators.java | 47 + .../dsl/generatorDSL/LoopVariable.java | 47 + .../ParametrizedFunctionDefinition.java | 73 + ...rametrizedFunctionDefinitionReference.java | 47 + .../generator/dsl/generatorDSL/Range.java | 20 + .../generator/dsl/generatorDSL/Statement.java | 20 + .../model/generator/dsl/generatorDSL/Use.java | 48 + .../generatorDSL/impl/ApplyStatementImpl.java | 401 + .../generatorDSL/impl/ConfigurationImpl.java | 289 + .../generatorDSL/impl/CounterRangeImpl.java | 237 + .../generatorDSL/impl/ForStatementImpl.java | 317 + .../impl/FunctionDefReferenceImpl.java | 41 + .../impl/FunctionDefinitionReferenceImpl.java | 176 + .../impl/FunctionReferenceImpl.java | 43 + .../impl/FunctionReferencesImpl.java | 169 + .../dsl/generatorDSL/impl/FunctionsImpl.java | 196 + .../impl/GeneratorDSLFactoryImpl.java | 356 + .../impl/GeneratorDSLPackageImpl.java | 981 + .../impl/GeneratorDefinitionImpl.java | 271 + .../GeneratorDefinitionReferenceImpl.java | 175 + .../impl/GeneratorReferenceImpl.java | 43 + .../impl/GeneratorReferencesImpl.java | 149 + .../dsl/generatorDSL/impl/GeneratorsImpl.java | 196 + .../generatorDSL/impl/LoopVariableImpl.java | 175 + .../ParametrizedFunctionDefinitionImpl.java | 271 + ...trizedFunctionDefinitionReferenceImpl.java | 175 + .../dsl/generatorDSL/impl/RangeImpl.java | 43 + .../dsl/generatorDSL/impl/StatementImpl.java | 43 + .../dsl/generatorDSL/impl/UseImpl.java | 180 + .../util/GeneratorDSLAdapterFactory.java | 513 + .../generatorDSL/util/GeneratorDSLSwitch.java | 570 + .../GeneratorDSLAntlrTokenFileProvider.java | 16 + .../dsl/parser/antlr/GeneratorDSLParser.java | 40 + .../antlr/internal/InternalGeneratorDSL.g | 3012 +++ .../internal/InternalGeneratorDSL.tokens | 106 + .../internal/InternalGeneratorDSLLexer.java | 2351 ++ .../internal/InternalGeneratorDSLParser.java | 8231 +++++++ .../AbstractGeneratorDSLScopeProvider.java | 9 + .../GeneratorDSLSemanticSequencer.java | 480 + .../GeneratorDSLSyntacticSequencer.java | 61 + .../services/GeneratorDSLGrammarAccess.java | 1511 ++ .../AbstractGeneratorDSLValidator.java | 21 + ...atorDSLConfigurableIssueCodesProvider.java | 22 + .../generator/dsl/GenerateGeneratorDSL.mwe2 | 49 + .../model/generator/dsl/GeneratorDSL.xtext | 96 + .../dsl/GeneratorDSLRuntimeModule.java | 25 + .../dsl/GeneratorDSLStandaloneSetup.java | 15 + .../converter/StringStripperConverter.java | 52 + .../dsl/converter/ValueConverterService.java | 12 + .../dsl/generator/GeneratorDSLGenerator.xtend | 25 + .../scoping/GeneratorDSLScopeProvider.java | 15 + .../dsl/validation/GeneratorDSLValidator.java | 25 + .../feature.xml | 21 + .../de.evoal.languages.releng.parent/pom.xml | 4 + 113 files changed, 56476 insertions(+) create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/.classpath create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/.project create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/META-INF/MANIFEST.MF create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/build.properties create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/pom.xml create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/META-INF/services/org.eclipse.xtext.ISetup create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/AbstractGeneratorDSLIdeModule.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/GeneratorDSLParser.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/PartialGeneratorDSLContentAssistParser.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSL.g create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSL.tokens create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSLLexer.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSLParser.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src/de/evoal/languages/model/generator/dsl/ide/GeneratorDSLIdeModule.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ide/src/de/evoal/languages/model/generator/dsl/ide/GeneratorDSLIdeSetup.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/.classpath create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/.project create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/META-INF/MANIFEST.MF create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/build.properties create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/plugin.xml create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/pom.xml create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/AbstractGeneratorDSLUiModule.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/GeneratorDSLExecutableExtensionFactory.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/contentassist/AbstractGeneratorDSLProposalProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/internal/DslActivator.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLValidatorConfigurationBlock.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/GeneratorDSLUiModule.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/contentassist/GeneratorDSLProposalProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/labeling/GeneratorDSLDescriptionLabelProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/labeling/GeneratorDSLLabelProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/outline/GeneratorDSLOutlineTreeProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/quickfix/GeneratorDSLQuickfixProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/.antlr-generator-3.2.0-patch.jar create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/.classpath create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/.project create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/META-INF/MANIFEST.MF create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/build.properties create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/model/generated/GeneratorDSL.ecore create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/model/generated/GeneratorDSL.genmodel create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/plugin.xml create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/pom.xml create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/AbstractGeneratorDSLRuntimeModule.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/GeneratorDSL.xtextbin create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/GeneratorDSLStandaloneSetupGenerated.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ApplyStatement.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Configuration.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/CounterRange.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ForStatement.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionDefReference.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionDefinitionReference.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionReference.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionReferences.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Functions.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDSLFactory.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDSLPackage.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDefinition.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDefinitionReference.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorReference.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorReferences.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Generators.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/LoopVariable.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ParametrizedFunctionDefinition.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ParametrizedFunctionDefinitionReference.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Range.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Statement.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Use.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ApplyStatementImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ConfigurationImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/CounterRangeImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ForStatementImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionDefReferenceImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionDefinitionReferenceImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionReferenceImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionReferencesImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionsImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDSLFactoryImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDSLPackageImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDefinitionImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDefinitionReferenceImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorReferenceImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorReferencesImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorsImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/LoopVariableImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ParametrizedFunctionDefinitionImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ParametrizedFunctionDefinitionReferenceImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/RangeImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/StatementImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/UseImpl.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/util/GeneratorDSLAdapterFactory.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/util/GeneratorDSLSwitch.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/GeneratorDSLAntlrTokenFileProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/GeneratorDSLParser.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.g create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.tokens create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSLLexer.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSLParser.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/scoping/AbstractGeneratorDSLScopeProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/serializer/GeneratorDSLSemanticSequencer.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/serializer/GeneratorDSLSyntacticSequencer.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/services/GeneratorDSLGrammarAccess.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/validation/AbstractGeneratorDSLValidator.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLConfigurableIssueCodesProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GenerateGeneratorDSL.mwe2 create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSL.xtext create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSLRuntimeModule.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSLStandaloneSetup.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/converter/StringStripperConverter.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/converter/ValueConverterService.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/generator/GeneratorDSLGenerator.xtend create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/scoping/GeneratorDSLScopeProvider.java create mode 100644 src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLValidator.java diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/.classpath b/src/languages/de.evoal.languages.model.generator.dsl.ide/.classpath new file mode 100644 index 00000000..9891e069 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/.classpath @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src/"/> + <classpathentry kind="src" path="src-gen/"/> + <classpathentry kind="src" path="xtend-gen/"/> + <classpathentry kind="output" path="target/classes"/> +</classpath> diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/.project b/src/languages/de.evoal.languages.model.generator.dsl.ide/.project new file mode 100644 index 00000000..a5a08772 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/.project @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>de.evoal.languages.model.generator.dsl.ide</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/META-INF/MANIFEST.MF b/src/languages/de.evoal.languages.model.generator.dsl.ide/META-INF/MANIFEST.MF new file mode 100644 index 00000000..52b7f228 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/META-INF/MANIFEST.MF @@ -0,0 +1,16 @@ +Manifest-Version: 1.0 +Automatic-Module-Name: de.evoal.languages.model.generator.dsl.ide +Bundle-ManifestVersion: 2 +Bundle-Name: de.evoal.languages.model.generator.dsl.ide +Bundle-Vendor: EvoAl Project +Bundle-Version: 1.0.0.qualifier +Bundle-SymbolicName: de.evoal.languages.model.generator.dsl.ide; singleton:=true +Bundle-ActivationPolicy: lazy +Require-Bundle: de.evoal.languages.model.generator.dsl, + org.eclipse.xtext.ide, + org.eclipse.xtext.xbase.ide, + org.antlr.runtime;bundle-version="[3.2.0,3.2.1)", + de.evoal.languages.model.instance.dsl.ide;bundle-version="1.0.0" +Bundle-RequiredExecutionEnvironment: JavaSE-11 +Export-Package: de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.internal, + de.evoal.languages.model.generator.dsl.ide.contentassist.antlr diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/build.properties b/src/languages/de.evoal.languages.model.generator.dsl.ide/build.properties new file mode 100644 index 00000000..5c6bbf99 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/build.properties @@ -0,0 +1,6 @@ +source.. = src/,\ + src-gen/,\ + xtend-gen/ +bin.includes = .,\ + META-INF/ +bin.excludes = **/*.xtend diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/pom.xml b/src/languages/de.evoal.languages.model.generator.dsl.ide/pom.xml new file mode 100644 index 00000000..3f50b5f8 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/pom.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>de.evoal.languages</groupId> + <artifactId>de.evoal.languages.releng.parent</artifactId> + <version>1.0.0-SNAPSHOT</version> + <relativePath>../de.evoal.languages.releng.parent</relativePath> + </parent> + + <artifactId>de.evoal.languages.model.generator.dsl.ide</artifactId> + <packaging>eclipse-plugin</packaging> +</project> diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/META-INF/services/org.eclipse.xtext.ISetup b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/META-INF/services/org.eclipse.xtext.ISetup new file mode 100644 index 00000000..4711c7b8 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/META-INF/services/org.eclipse.xtext.ISetup @@ -0,0 +1 @@ +de.evoal.languages.model.generator.dsl.ide.GeneratorDSLIdeSetup diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/AbstractGeneratorDSLIdeModule.java b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/AbstractGeneratorDSLIdeModule.java new file mode 100644 index 00000000..4f293249 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/AbstractGeneratorDSLIdeModule.java @@ -0,0 +1,60 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ide; + +import com.google.inject.Binder; +import com.google.inject.name.Names; +import de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.GeneratorDSLParser; +import de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.internal.InternalGeneratorDSLLexer; +import org.eclipse.xtext.ide.DefaultIdeModule; +import org.eclipse.xtext.ide.LexerIdeBindings; +import org.eclipse.xtext.ide.editor.contentassist.FQNPrefixMatcher; +import org.eclipse.xtext.ide.editor.contentassist.IPrefixMatcher; +import org.eclipse.xtext.ide.editor.contentassist.IProposalConflictHelper; +import org.eclipse.xtext.ide.editor.contentassist.antlr.AntlrProposalConflictHelper; +import org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser; +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer; +import org.eclipse.xtext.ide.refactoring.IRenameStrategy2; +import org.eclipse.xtext.ide.server.rename.IRenameService2; +import org.eclipse.xtext.ide.server.rename.RenameService2; + +/** + * Manual modifications go to {@link GeneratorDSLIdeModule}. + */ +@SuppressWarnings("all") +public abstract class AbstractGeneratorDSLIdeModule extends DefaultIdeModule { + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public void configureContentAssistLexer(Binder binder) { + binder.bind(Lexer.class) + .annotatedWith(Names.named(LexerIdeBindings.CONTENT_ASSIST)) + .to(InternalGeneratorDSLLexer.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends IContentAssistParser> bindIContentAssistParser() { + return GeneratorDSLParser.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends IProposalConflictHelper> bindIProposalConflictHelper() { + return AntlrProposalConflictHelper.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2 + public Class<? extends IPrefixMatcher> bindIPrefixMatcher() { + return FQNPrefixMatcher.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 + public Class<? extends IRenameService2> bindIRenameService2() { + return RenameService2.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 + public Class<? extends IRenameStrategy2> bindIRenameStrategy2() { + return IRenameStrategy2.DefaultImpl.class; + } + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/GeneratorDSLParser.java b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/GeneratorDSLParser.java new file mode 100644 index 00000000..961a718d --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/GeneratorDSLParser.java @@ -0,0 +1,206 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ide.contentassist.antlr; + +import com.google.common.collect.ImmutableMap; +import com.google.inject.Inject; +import com.google.inject.Singleton; +import de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.internal.InternalGeneratorDSLParser; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; +import java.util.Map; +import org.eclipse.xtext.AbstractElement; +import org.eclipse.xtext.ide.editor.contentassist.antlr.AbstractContentAssistParser; + +public class GeneratorDSLParser extends AbstractContentAssistParser { + + @Singleton + public static final class NameMappings { + + private final Map<AbstractElement, String> mappings; + + @Inject + public NameMappings(GeneratorDSLGrammarAccess grammarAccess) { + ImmutableMap.Builder<AbstractElement, String> builder = ImmutableMap.builder(); + init(builder, grammarAccess); + this.mappings = builder.build(); + } + + public String getRuleName(AbstractElement element) { + return mappings.get(element); + } + + private static void init(ImmutableMap.Builder<AbstractElement, String> builder, GeneratorDSLGrammarAccess grammarAccess) { + builder.put(grammarAccess.getStatementRuleAccess().getAlternatives(), "rule__StatementRule__Alternatives"); + builder.put(grammarAccess.getRangeRuleAccess().getAlternatives(), "rule__RangeRule__Alternatives"); + builder.put(grammarAccess.getGeneratorReferenceRuleAccess().getAlternatives(), "rule__GeneratorReferenceRule__Alternatives"); + builder.put(grammarAccess.getFunctionReferenceRuleAccess().getAlternatives(), "rule__FunctionReferenceRule__Alternatives"); + builder.put(grammarAccess.getFunctionDefReferenceRuleAccess().getAlternatives(), "rule__FunctionDefReferenceRule__Alternatives"); + builder.put(grammarAccess.getNameOrMiscRuleAccess().getAlternatives(), "rule__NameOrMiscRule__Alternatives"); + builder.put(grammarAccess.getValueRuleAccess().getAlternatives(), "rule__ValueRule__Alternatives"); + builder.put(grammarAccess.getLiteralOrReferenceRuleAccess().getAlternatives(), "rule__LiteralOrReferenceRule__Alternatives"); + builder.put(grammarAccess.getLiteralRuleAccess().getAlternatives(), "rule__LiteralRule__Alternatives"); + builder.put(grammarAccess.getNumberLiteralRuleAccess().getAlternatives(), "rule__NumberLiteralRule__Alternatives"); + builder.put(grammarAccess.getBooleanLiteralRuleAccess().getAlternatives_1(), "rule__BooleanLiteralRule__Alternatives_1"); + builder.put(grammarAccess.getStringOrIdAccess().getAlternatives(), "rule__StringOrId__Alternatives"); + builder.put(grammarAccess.getComparisonOperatorRuleAccess().getAlternatives(), "rule__ComparisonOperatorRule__Alternatives"); + builder.put(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAlternatives(), "rule__AddOrSubtractOperatorRule__Alternatives"); + builder.put(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getAlternatives(), "rule__MultiplyDivideModuloOperatorRule__Alternatives"); + builder.put(grammarAccess.getConfigurationRuleAccess().getGroup(), "rule__ConfigurationRule__Group__0"); + builder.put(grammarAccess.getUseRuleAccess().getGroup(), "rule__UseRule__Group__0"); + builder.put(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getGroup(), "rule__ParametrizedFunctionDefinitionRule__Group__0"); + builder.put(grammarAccess.getGeneratorDefinitionRuleAccess().getGroup(), "rule__GeneratorDefinitionRule__Group__0"); + builder.put(grammarAccess.getForStatementRuleAccess().getGroup(), "rule__ForStatementRule__Group__0"); + builder.put(grammarAccess.getCounterRangeRuleAccess().getGroup(), "rule__CounterRangeRule__Group__0"); + builder.put(grammarAccess.getFunctionsRuleAccess().getGroup(), "rule__FunctionsRule__Group__0"); + builder.put(grammarAccess.getFunctionReferencesRuleAccess().getGroup(), "rule__FunctionReferencesRule__Group__0"); + builder.put(grammarAccess.getFunctionReferencesRuleAccess().getGroup_2(), "rule__FunctionReferencesRule__Group_2__0"); + builder.put(grammarAccess.getGeneratorsRuleAccess().getGroup(), "rule__GeneratorsRule__Group__0"); + builder.put(grammarAccess.getGeneratorReferencesRuleAccess().getGroup(), "rule__GeneratorReferencesRule__Group__0"); + builder.put(grammarAccess.getGeneratorReferencesRuleAccess().getGroup_2(), "rule__GeneratorReferencesRule__Group_2__0"); + builder.put(grammarAccess.getApplyStatementRuleAccess().getGroup(), "rule__ApplyStatementRule__Group__0"); + builder.put(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGroup(), "rule__GeneratorDefinitionReferenceRule__Group__0"); + builder.put(grammarAccess.getLoopVariableReferenceAccess().getGroup(), "rule__LoopVariableReference__Group__0"); + builder.put(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getGroup(), "rule__FunctionDefinitionReferenceRule__Group__0"); + builder.put(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getGroup(), "rule__ParametrizedFunctionDefinitionReferenceRule__Group__0"); + builder.put(grammarAccess.getInstanceRuleAccess().getGroup(), "rule__InstanceRule__Group__0"); + builder.put(grammarAccess.getInstanceRuleAccess().getGroup_1(), "rule__InstanceRule__Group_1__0"); + builder.put(grammarAccess.getAttributeRuleAccess().getGroup(), "rule__AttributeRule__Group__0"); + builder.put(grammarAccess.getArrayRuleAccess().getGroup(), "rule__ArrayRule__Group__0"); + builder.put(grammarAccess.getArrayRuleAccess().getGroup_2(), "rule__ArrayRule__Group_2__0"); + builder.put(grammarAccess.getArrayRuleAccess().getGroup_2_1(), "rule__ArrayRule__Group_2_1__0"); + builder.put(grammarAccess.getDataReferenceRuleAccess().getGroup(), "rule__DataReferenceRule__Group__0"); + builder.put(grammarAccess.getOrExpressionRuleAccess().getGroup(), "rule__OrExpressionRule__Group__0"); + builder.put(grammarAccess.getOrExpressionRuleAccess().getGroup_1(), "rule__OrExpressionRule__Group_1__0"); + builder.put(grammarAccess.getXorExpressionRuleAccess().getGroup(), "rule__XorExpressionRule__Group__0"); + builder.put(grammarAccess.getXorExpressionRuleAccess().getGroup_1(), "rule__XorExpressionRule__Group_1__0"); + builder.put(grammarAccess.getAndExpressionRuleAccess().getGroup(), "rule__AndExpressionRule__Group__0"); + builder.put(grammarAccess.getAndExpressionRuleAccess().getGroup_1(), "rule__AndExpressionRule__Group_1__0"); + builder.put(grammarAccess.getNotExpressionRuleAccess().getGroup(), "rule__NotExpressionRule__Group__0"); + builder.put(grammarAccess.getComparisonExpressionRuleAccess().getGroup(), "rule__ComparisonExpressionRule__Group__0"); + builder.put(grammarAccess.getPartialComparisonExpressionRuleAccess().getGroup(), "rule__PartialComparisonExpressionRule__Group__0"); + builder.put(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup(), "rule__AddOrSubtractExpressionRule__Group__0"); + builder.put(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup_1(), "rule__AddOrSubtractExpressionRule__Group_1__0"); + builder.put(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup(), "rule__MultiplyDivideModuloExpressionRule__Group__0"); + builder.put(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup_1(), "rule__MultiplyDivideModuloExpressionRule__Group_1__0"); + builder.put(grammarAccess.getPowerOfExpressionRuleAccess().getGroup(), "rule__PowerOfExpressionRule__Group__0"); + builder.put(grammarAccess.getPowerOfExpressionRuleAccess().getGroup_1(), "rule__PowerOfExpressionRule__Group_1__0"); + builder.put(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getGroup(), "rule__UnaryAddOrSubtractExpressionRule__Group__0"); + builder.put(grammarAccess.getParanthesesRuleAccess().getGroup(), "rule__ParanthesesRule__Group__0"); + builder.put(grammarAccess.getCallRuleAccess().getGroup(), "rule__CallRule__Group__0"); + builder.put(grammarAccess.getCallRuleAccess().getGroup_2(), "rule__CallRule__Group_2__0"); + builder.put(grammarAccess.getCallRuleAccess().getGroup_2_1(), "rule__CallRule__Group_2_1__0"); + builder.put(grammarAccess.getFunctionNameRuleAccess().getGroup(), "rule__FunctionNameRule__Group__0"); + builder.put(grammarAccess.getValueReferenceRuleAccess().getGroup(), "rule__ValueReferenceRule__Group__0"); + builder.put(grammarAccess.getBooleanLiteralRuleAccess().getGroup(), "rule__BooleanLiteralRule__Group__0"); + builder.put(grammarAccess.getDOUBLEAccess().getGroup(), "rule__DOUBLE__Group__0"); + builder.put(grammarAccess.getConfigurationRuleAccess().getUsesAssignment_0(), "rule__ConfigurationRule__UsesAssignment_0"); + builder.put(grammarAccess.getConfigurationRuleAccess().getGeneratorsAssignment_1(), "rule__ConfigurationRule__GeneratorsAssignment_1"); + builder.put(grammarAccess.getConfigurationRuleAccess().getFunctionsAssignment_2(), "rule__ConfigurationRule__FunctionsAssignment_2"); + builder.put(grammarAccess.getConfigurationRuleAccess().getStatementsAssignment_3(), "rule__ConfigurationRule__StatementsAssignment_3"); + builder.put(grammarAccess.getUseRuleAccess().getImportURIAssignment_1(), "rule__UseRule__ImportURIAssignment_1"); + builder.put(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameAssignment_1(), "rule__ParametrizedFunctionDefinitionRule__NameAssignment_1"); + builder.put(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionAssignment_3(), "rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3"); + builder.put(grammarAccess.getGeneratorDefinitionRuleAccess().getNameAssignment_1(), "rule__GeneratorDefinitionRule__NameAssignment_1"); + builder.put(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionAssignment_3(), "rule__GeneratorDefinitionRule__DefinitionAssignment_3"); + builder.put(grammarAccess.getForStatementRuleAccess().getNameAssignment_1(), "rule__ForStatementRule__NameAssignment_1"); + builder.put(grammarAccess.getForStatementRuleAccess().getRangeAssignment_3(), "rule__ForStatementRule__RangeAssignment_3"); + builder.put(grammarAccess.getForStatementRuleAccess().getStatementsAssignment_5(), "rule__ForStatementRule__StatementsAssignment_5"); + builder.put(grammarAccess.getCounterRangeRuleAccess().getStartAssignment_1(), "rule__CounterRangeRule__StartAssignment_1"); + builder.put(grammarAccess.getCounterRangeRuleAccess().getEndAssignment_3(), "rule__CounterRangeRule__EndAssignment_3"); + builder.put(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesAssignment_2(), "rule__FunctionsRule__FunctionReferencesAssignment_2"); + builder.put(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_1(), "rule__FunctionReferencesRule__FunctionsAssignment_1"); + builder.put(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_2_1(), "rule__FunctionReferencesRule__FunctionsAssignment_2_1"); + builder.put(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesAssignment_2(), "rule__GeneratorsRule__GeneratorReferencesAssignment_2"); + builder.put(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_1(), "rule__GeneratorReferencesRule__GeneratorsAssignment_1"); + builder.put(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_2_1(), "rule__GeneratorReferencesRule__GeneratorsAssignment_2_1"); + builder.put(grammarAccess.getApplyStatementRuleAccess().getFileAssignment_1(), "rule__ApplyStatementRule__FileAssignment_1"); + builder.put(grammarAccess.getApplyStatementRuleAccess().getCountAssignment_3(), "rule__ApplyStatementRule__CountAssignment_3"); + builder.put(grammarAccess.getApplyStatementRuleAccess().getFunctionAssignment_7(), "rule__ApplyStatementRule__FunctionAssignment_7"); + builder.put(grammarAccess.getApplyStatementRuleAccess().getGeneratorAssignment_9(), "rule__ApplyStatementRule__GeneratorAssignment_9"); + builder.put(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionAssignment_1(), "rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1"); + builder.put(grammarAccess.getLoopVariableReferenceAccess().getDefinitionAssignment_1(), "rule__LoopVariableReference__DefinitionAssignment_1"); + builder.put(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2(), "rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2"); + builder.put(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2(), "rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2"); + builder.put(grammarAccess.getInstanceRuleAccess().getNameAssignment_0(), "rule__InstanceRule__NameAssignment_0"); + builder.put(grammarAccess.getInstanceRuleAccess().getAttributesAssignment_1_1(), "rule__InstanceRule__AttributesAssignment_1_1"); + builder.put(grammarAccess.getAttributeRuleAccess().getNameAssignment_0(), "rule__AttributeRule__NameAssignment_0"); + builder.put(grammarAccess.getAttributeRuleAccess().getValueAssignment_2(), "rule__AttributeRule__ValueAssignment_2"); + builder.put(grammarAccess.getNameRuleAccess().getNameAssignment(), "rule__NameRule__NameAssignment"); + builder.put(grammarAccess.getMiscRuleAccess().getNameAssignment(), "rule__MiscRule__NameAssignment"); + builder.put(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_0(), "rule__ArrayRule__ValuesAssignment_2_0"); + builder.put(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_1_1(), "rule__ArrayRule__ValuesAssignment_2_1_1"); + builder.put(grammarAccess.getLiteralValueRuleAccess().getLiteralAssignment(), "rule__LiteralValueRule__LiteralAssignment"); + builder.put(grammarAccess.getDataReferenceRuleAccess().getDefinitionAssignment_2(), "rule__DataReferenceRule__DefinitionAssignment_2"); + builder.put(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_0(), "rule__OrExpressionRule__SubExpressionsAssignment_0"); + builder.put(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_1_1(), "rule__OrExpressionRule__SubExpressionsAssignment_1_1"); + builder.put(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_0(), "rule__XorExpressionRule__SubExpressionsAssignment_0"); + builder.put(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_1_1(), "rule__XorExpressionRule__SubExpressionsAssignment_1_1"); + builder.put(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_0(), "rule__AndExpressionRule__SubExpressionsAssignment_0"); + builder.put(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_1_1(), "rule__AndExpressionRule__SubExpressionsAssignment_1_1"); + builder.put(grammarAccess.getNotExpressionRuleAccess().getNegatedAssignment_0(), "rule__NotExpressionRule__NegatedAssignment_0"); + builder.put(grammarAccess.getNotExpressionRuleAccess().getOperandAssignment_1(), "rule__NotExpressionRule__OperandAssignment_1"); + builder.put(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAssignment_0(), "rule__ComparisonExpressionRule__LeftOperandAssignment_0"); + builder.put(grammarAccess.getComparisonExpressionRuleAccess().getComparisonAssignment_1(), "rule__ComparisonExpressionRule__ComparisonAssignment_1"); + builder.put(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorAssignment_0(), "rule__PartialComparisonExpressionRule__OperatorAssignment_0"); + builder.put(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAssignment_1(), "rule__PartialComparisonExpressionRule__SubExpressionAssignment_1"); + builder.put(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandAssignment_0(), "rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0"); + builder.put(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_1_0(), "rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0"); + builder.put(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsAssignment_1_1(), "rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1"); + builder.put(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandAssignment_0(), "rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0"); + builder.put(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsAssignment_1_0(), "rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0"); + builder.put(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsAssignment_1_1(), "rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1"); + builder.put(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandAssignment_0(), "rule__PowerOfExpressionRule__LeftOperandAssignment_0"); + builder.put(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandAssignment_1_1(), "rule__PowerOfExpressionRule__RightOperandAssignment_1_1"); + builder.put(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_0(), "rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0"); + builder.put(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionAssignment_1(), "rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1"); + builder.put(grammarAccess.getParanthesesRuleAccess().getSubExpressionAssignment_1(), "rule__ParanthesesRule__SubExpressionAssignment_1"); + builder.put(grammarAccess.getCallRuleAccess().getFunctionAssignment_0(), "rule__CallRule__FunctionAssignment_0"); + builder.put(grammarAccess.getCallRuleAccess().getParametersAssignment_2_0(), "rule__CallRule__ParametersAssignment_2_0"); + builder.put(grammarAccess.getCallRuleAccess().getParametersAssignment_2_1_1(), "rule__CallRule__ParametersAssignment_2_1_1"); + builder.put(grammarAccess.getDoubleLiteralRuleAccess().getValueAssignment(), "rule__DoubleLiteralRule__ValueAssignment"); + builder.put(grammarAccess.getIntegerLiteralRuleAccess().getValueAssignment(), "rule__IntegerLiteralRule__ValueAssignment"); + builder.put(grammarAccess.getStringLiteralRuleAccess().getValueAssignment(), "rule__StringLiteralRule__ValueAssignment"); + builder.put(grammarAccess.getBooleanLiteralRuleAccess().getValueAssignment_1_0(), "rule__BooleanLiteralRule__ValueAssignment_1_0"); + } + } + + @Inject + private NameMappings nameMappings; + + @Inject + private GeneratorDSLGrammarAccess grammarAccess; + + @Override + protected InternalGeneratorDSLParser createParser() { + InternalGeneratorDSLParser result = new InternalGeneratorDSLParser(null); + result.setGrammarAccess(grammarAccess); + return result; + } + + @Override + protected String getRuleName(AbstractElement element) { + return nameMappings.getRuleName(element); + } + + @Override + protected String[] getInitialHiddenTokens() { + return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" }; + } + + public GeneratorDSLGrammarAccess getGrammarAccess() { + return this.grammarAccess; + } + + public void setGrammarAccess(GeneratorDSLGrammarAccess grammarAccess) { + this.grammarAccess = grammarAccess; + } + + public NameMappings getNameMappings() { + return nameMappings; + } + + public void setNameMappings(NameMappings nameMappings) { + this.nameMappings = nameMappings; + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/PartialGeneratorDSLContentAssistParser.java b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/PartialGeneratorDSLContentAssistParser.java new file mode 100644 index 00000000..aeb2cb5c --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/PartialGeneratorDSLContentAssistParser.java @@ -0,0 +1,33 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ide.contentassist.antlr; + +import java.util.Collection; +import java.util.Collections; +import org.eclipse.xtext.AbstractRule; +import org.eclipse.xtext.ide.editor.contentassist.antlr.FollowElement; +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser; +import org.eclipse.xtext.util.PolymorphicDispatcher; + +public class PartialGeneratorDSLContentAssistParser extends GeneratorDSLParser { + + private AbstractRule rule; + + @Override + public void initializeFor(AbstractRule rule) { + this.rule = rule; + } + + @Override + protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) { + if (rule == null || rule.eIsProxy()) + return Collections.emptyList(); + String methodName = "entryRule" + rule.getName(); + PolymorphicDispatcher<Collection<FollowElement>> dispatcher = + new PolymorphicDispatcher<Collection<FollowElement>>(methodName, 0, 0, Collections.singletonList(parser)); + dispatcher.invoke(); + return parser.getFollowElements(); + } + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSL.g b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSL.g new file mode 100644 index 00000000..8a0ab9fa --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSL.g @@ -0,0 +1,6664 @@ +/* + * generated by Xtext 2.25.0 + */ +grammar InternalGeneratorDSL; + +options { + superClass=AbstractInternalContentAssistParser; +} + +@lexer::header { +package de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer; +} + +@parser::header { +package de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.internal; + +import java.io.InputStream; +import org.eclipse.xtext.*; +import org.eclipse.xtext.parser.*; +import org.eclipse.xtext.parser.impl.*; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser; +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.DFA; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; + +} +@parser::members { + private GeneratorDSLGrammarAccess grammarAccess; + + public void setGrammarAccess(GeneratorDSLGrammarAccess grammarAccess) { + this.grammarAccess = grammarAccess; + } + + @Override + protected Grammar getGrammar() { + return grammarAccess.getGrammar(); + } + + @Override + protected String getValueForTokenName(String tokenName) { + return tokenName; + } +} + +// Entry rule entryRuleConfigurationRule +entryRuleConfigurationRule +: +{ before(grammarAccess.getConfigurationRuleRule()); } + ruleConfigurationRule +{ after(grammarAccess.getConfigurationRuleRule()); } + EOF +; + +// Rule ConfigurationRule +ruleConfigurationRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getConfigurationRuleAccess().getGroup()); } + (rule__ConfigurationRule__Group__0) + { after(grammarAccess.getConfigurationRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleUseRule +entryRuleUseRule +: +{ before(grammarAccess.getUseRuleRule()); } + ruleUseRule +{ after(grammarAccess.getUseRuleRule()); } + EOF +; + +// Rule UseRule +ruleUseRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getUseRuleAccess().getGroup()); } + (rule__UseRule__Group__0) + { after(grammarAccess.getUseRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleParametrizedFunctionDefinitionRule +entryRuleParametrizedFunctionDefinitionRule +: +{ before(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); } + ruleParametrizedFunctionDefinitionRule +{ after(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); } + EOF +; + +// Rule ParametrizedFunctionDefinitionRule +ruleParametrizedFunctionDefinitionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getGroup()); } + (rule__ParametrizedFunctionDefinitionRule__Group__0) + { after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleGeneratorDefinitionRule +entryRuleGeneratorDefinitionRule +: +{ before(grammarAccess.getGeneratorDefinitionRuleRule()); } + ruleGeneratorDefinitionRule +{ after(grammarAccess.getGeneratorDefinitionRuleRule()); } + EOF +; + +// Rule GeneratorDefinitionRule +ruleGeneratorDefinitionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getGeneratorDefinitionRuleAccess().getGroup()); } + (rule__GeneratorDefinitionRule__Group__0) + { after(grammarAccess.getGeneratorDefinitionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleStatementRule +entryRuleStatementRule +: +{ before(grammarAccess.getStatementRuleRule()); } + ruleStatementRule +{ after(grammarAccess.getStatementRuleRule()); } + EOF +; + +// Rule StatementRule +ruleStatementRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getStatementRuleAccess().getAlternatives()); } + (rule__StatementRule__Alternatives) + { after(grammarAccess.getStatementRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleForStatementRule +entryRuleForStatementRule +: +{ before(grammarAccess.getForStatementRuleRule()); } + ruleForStatementRule +{ after(grammarAccess.getForStatementRuleRule()); } + EOF +; + +// Rule ForStatementRule +ruleForStatementRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getForStatementRuleAccess().getGroup()); } + (rule__ForStatementRule__Group__0) + { after(grammarAccess.getForStatementRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleRangeRule +entryRuleRangeRule +: +{ before(grammarAccess.getRangeRuleRule()); } + ruleRangeRule +{ after(grammarAccess.getRangeRuleRule()); } + EOF +; + +// Rule RangeRule +ruleRangeRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getRangeRuleAccess().getAlternatives()); } + (rule__RangeRule__Alternatives) + { after(grammarAccess.getRangeRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleCounterRangeRule +entryRuleCounterRangeRule +: +{ before(grammarAccess.getCounterRangeRuleRule()); } + ruleCounterRangeRule +{ after(grammarAccess.getCounterRangeRuleRule()); } + EOF +; + +// Rule CounterRangeRule +ruleCounterRangeRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getCounterRangeRuleAccess().getGroup()); } + (rule__CounterRangeRule__Group__0) + { after(grammarAccess.getCounterRangeRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleFunctionsRule +entryRuleFunctionsRule +: +{ before(grammarAccess.getFunctionsRuleRule()); } + ruleFunctionsRule +{ after(grammarAccess.getFunctionsRuleRule()); } + EOF +; + +// Rule FunctionsRule +ruleFunctionsRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getFunctionsRuleAccess().getGroup()); } + (rule__FunctionsRule__Group__0) + { after(grammarAccess.getFunctionsRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleFunctionReferencesRule +entryRuleFunctionReferencesRule +: +{ before(grammarAccess.getFunctionReferencesRuleRule()); } + ruleFunctionReferencesRule +{ after(grammarAccess.getFunctionReferencesRuleRule()); } + EOF +; + +// Rule FunctionReferencesRule +ruleFunctionReferencesRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getFunctionReferencesRuleAccess().getGroup()); } + (rule__FunctionReferencesRule__Group__0) + { after(grammarAccess.getFunctionReferencesRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleGeneratorsRule +entryRuleGeneratorsRule +: +{ before(grammarAccess.getGeneratorsRuleRule()); } + ruleGeneratorsRule +{ after(grammarAccess.getGeneratorsRuleRule()); } + EOF +; + +// Rule GeneratorsRule +ruleGeneratorsRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getGeneratorsRuleAccess().getGroup()); } + (rule__GeneratorsRule__Group__0) + { after(grammarAccess.getGeneratorsRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleGeneratorReferencesRule +entryRuleGeneratorReferencesRule +: +{ before(grammarAccess.getGeneratorReferencesRuleRule()); } + ruleGeneratorReferencesRule +{ after(grammarAccess.getGeneratorReferencesRuleRule()); } + EOF +; + +// Rule GeneratorReferencesRule +ruleGeneratorReferencesRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getGroup()); } + (rule__GeneratorReferencesRule__Group__0) + { after(grammarAccess.getGeneratorReferencesRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleApplyStatementRule +entryRuleApplyStatementRule +: +{ before(grammarAccess.getApplyStatementRuleRule()); } + ruleApplyStatementRule +{ after(grammarAccess.getApplyStatementRuleRule()); } + EOF +; + +// Rule ApplyStatementRule +ruleApplyStatementRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getApplyStatementRuleAccess().getGroup()); } + (rule__ApplyStatementRule__Group__0) + { after(grammarAccess.getApplyStatementRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleGeneratorReferenceRule +entryRuleGeneratorReferenceRule +: +{ before(grammarAccess.getGeneratorReferenceRuleRule()); } + ruleGeneratorReferenceRule +{ after(grammarAccess.getGeneratorReferenceRuleRule()); } + EOF +; + +// Rule GeneratorReferenceRule +ruleGeneratorReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getGeneratorReferenceRuleAccess().getAlternatives()); } + (rule__GeneratorReferenceRule__Alternatives) + { after(grammarAccess.getGeneratorReferenceRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleGeneratorDefinitionReferenceRule +entryRuleGeneratorDefinitionReferenceRule +: +{ before(grammarAccess.getGeneratorDefinitionReferenceRuleRule()); } + ruleGeneratorDefinitionReferenceRule +{ after(grammarAccess.getGeneratorDefinitionReferenceRuleRule()); } + EOF +; + +// Rule GeneratorDefinitionReferenceRule +ruleGeneratorDefinitionReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGroup()); } + (rule__GeneratorDefinitionReferenceRule__Group__0) + { after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleFunctionReferenceRule +entryRuleFunctionReferenceRule +: +{ before(grammarAccess.getFunctionReferenceRuleRule()); } + ruleFunctionReferenceRule +{ after(grammarAccess.getFunctionReferenceRuleRule()); } + EOF +; + +// Rule FunctionReferenceRule +ruleFunctionReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getFunctionReferenceRuleAccess().getAlternatives()); } + (rule__FunctionReferenceRule__Alternatives) + { after(grammarAccess.getFunctionReferenceRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleFunctionDefReferenceRule +entryRuleFunctionDefReferenceRule +: +{ before(grammarAccess.getFunctionDefReferenceRuleRule()); } + ruleFunctionDefReferenceRule +{ after(grammarAccess.getFunctionDefReferenceRuleRule()); } + EOF +; + +// Rule FunctionDefReferenceRule +ruleFunctionDefReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getFunctionDefReferenceRuleAccess().getAlternatives()); } + (rule__FunctionDefReferenceRule__Alternatives) + { after(grammarAccess.getFunctionDefReferenceRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleLoopVariableReference +entryRuleLoopVariableReference +: +{ before(grammarAccess.getLoopVariableReferenceRule()); } + ruleLoopVariableReference +{ after(grammarAccess.getLoopVariableReferenceRule()); } + EOF +; + +// Rule LoopVariableReference +ruleLoopVariableReference + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getLoopVariableReferenceAccess().getGroup()); } + (rule__LoopVariableReference__Group__0) + { after(grammarAccess.getLoopVariableReferenceAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleFunctionDefinitionReferenceRule +entryRuleFunctionDefinitionReferenceRule +: +{ before(grammarAccess.getFunctionDefinitionReferenceRuleRule()); } + ruleFunctionDefinitionReferenceRule +{ after(grammarAccess.getFunctionDefinitionReferenceRuleRule()); } + EOF +; + +// Rule FunctionDefinitionReferenceRule +ruleFunctionDefinitionReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getGroup()); } + (rule__FunctionDefinitionReferenceRule__Group__0) + { after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleParametrizedFunctionDefinitionReferenceRule +entryRuleParametrizedFunctionDefinitionReferenceRule +: +{ before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleRule()); } + ruleParametrizedFunctionDefinitionReferenceRule +{ after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleRule()); } + EOF +; + +// Rule ParametrizedFunctionDefinitionReferenceRule +ruleParametrizedFunctionDefinitionReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getGroup()); } + (rule__ParametrizedFunctionDefinitionReferenceRule__Group__0) + { after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleInstanceRule +entryRuleInstanceRule +: +{ before(grammarAccess.getInstanceRuleRule()); } + ruleInstanceRule +{ after(grammarAccess.getInstanceRuleRule()); } + EOF +; + +// Rule InstanceRule +ruleInstanceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getInstanceRuleAccess().getGroup()); } + (rule__InstanceRule__Group__0) + { after(grammarAccess.getInstanceRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleAttributeRule +entryRuleAttributeRule +: +{ before(grammarAccess.getAttributeRuleRule()); } + ruleAttributeRule +{ after(grammarAccess.getAttributeRuleRule()); } + EOF +; + +// Rule AttributeRule +ruleAttributeRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getAttributeRuleAccess().getGroup()); } + (rule__AttributeRule__Group__0) + { after(grammarAccess.getAttributeRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleNameOrMiscRule +entryRuleNameOrMiscRule +: +{ before(grammarAccess.getNameOrMiscRuleRule()); } + ruleNameOrMiscRule +{ after(grammarAccess.getNameOrMiscRuleRule()); } + EOF +; + +// Rule NameOrMiscRule +ruleNameOrMiscRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getNameOrMiscRuleAccess().getAlternatives()); } + (rule__NameOrMiscRule__Alternatives) + { after(grammarAccess.getNameOrMiscRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleNameRule +entryRuleNameRule +: +{ before(grammarAccess.getNameRuleRule()); } + ruleNameRule +{ after(grammarAccess.getNameRuleRule()); } + EOF +; + +// Rule NameRule +ruleNameRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getNameRuleAccess().getNameAssignment()); } + (rule__NameRule__NameAssignment) + { after(grammarAccess.getNameRuleAccess().getNameAssignment()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleMiscRule +entryRuleMiscRule +: +{ before(grammarAccess.getMiscRuleRule()); } + ruleMiscRule +{ after(grammarAccess.getMiscRuleRule()); } + EOF +; + +// Rule MiscRule +ruleMiscRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getMiscRuleAccess().getNameAssignment()); } + (rule__MiscRule__NameAssignment) + { after(grammarAccess.getMiscRuleAccess().getNameAssignment()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleValueRule +entryRuleValueRule +: +{ before(grammarAccess.getValueRuleRule()); } + ruleValueRule +{ after(grammarAccess.getValueRuleRule()); } + EOF +; + +// Rule ValueRule +ruleValueRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getValueRuleAccess().getAlternatives()); } + (rule__ValueRule__Alternatives) + { after(grammarAccess.getValueRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleArrayRule +entryRuleArrayRule +: +{ before(grammarAccess.getArrayRuleRule()); } + ruleArrayRule +{ after(grammarAccess.getArrayRuleRule()); } + EOF +; + +// Rule ArrayRule +ruleArrayRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getArrayRuleAccess().getGroup()); } + (rule__ArrayRule__Group__0) + { after(grammarAccess.getArrayRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleLiteralValueRule +entryRuleLiteralValueRule +: +{ before(grammarAccess.getLiteralValueRuleRule()); } + ruleLiteralValueRule +{ after(grammarAccess.getLiteralValueRuleRule()); } + EOF +; + +// Rule LiteralValueRule +ruleLiteralValueRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getLiteralValueRuleAccess().getLiteralAssignment()); } + (rule__LiteralValueRule__LiteralAssignment) + { after(grammarAccess.getLiteralValueRuleAccess().getLiteralAssignment()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleDataReferenceRule +entryRuleDataReferenceRule +: +{ before(grammarAccess.getDataReferenceRuleRule()); } + ruleDataReferenceRule +{ after(grammarAccess.getDataReferenceRuleRule()); } + EOF +; + +// Rule DataReferenceRule +ruleDataReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getDataReferenceRuleAccess().getGroup()); } + (rule__DataReferenceRule__Group__0) + { after(grammarAccess.getDataReferenceRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleExpressionRule +entryRuleExpressionRule +: +{ before(grammarAccess.getExpressionRuleRule()); } + ruleExpressionRule +{ after(grammarAccess.getExpressionRuleRule()); } + EOF +; + +// Rule ExpressionRule +ruleExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getExpressionRuleAccess().getOrExpressionRuleParserRuleCall()); } + ruleOrExpressionRule + { after(grammarAccess.getExpressionRuleAccess().getOrExpressionRuleParserRuleCall()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleOrExpressionRule +entryRuleOrExpressionRule +: +{ before(grammarAccess.getOrExpressionRuleRule()); } + ruleOrExpressionRule +{ after(grammarAccess.getOrExpressionRuleRule()); } + EOF +; + +// Rule OrExpressionRule +ruleOrExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getOrExpressionRuleAccess().getGroup()); } + (rule__OrExpressionRule__Group__0) + { after(grammarAccess.getOrExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleXorExpressionRule +entryRuleXorExpressionRule +: +{ before(grammarAccess.getXorExpressionRuleRule()); } + ruleXorExpressionRule +{ after(grammarAccess.getXorExpressionRuleRule()); } + EOF +; + +// Rule XorExpressionRule +ruleXorExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getXorExpressionRuleAccess().getGroup()); } + (rule__XorExpressionRule__Group__0) + { after(grammarAccess.getXorExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleAndExpressionRule +entryRuleAndExpressionRule +: +{ before(grammarAccess.getAndExpressionRuleRule()); } + ruleAndExpressionRule +{ after(grammarAccess.getAndExpressionRuleRule()); } + EOF +; + +// Rule AndExpressionRule +ruleAndExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getAndExpressionRuleAccess().getGroup()); } + (rule__AndExpressionRule__Group__0) + { after(grammarAccess.getAndExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleNotExpressionRule +entryRuleNotExpressionRule +: +{ before(grammarAccess.getNotExpressionRuleRule()); } + ruleNotExpressionRule +{ after(grammarAccess.getNotExpressionRuleRule()); } + EOF +; + +// Rule NotExpressionRule +ruleNotExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getNotExpressionRuleAccess().getGroup()); } + (rule__NotExpressionRule__Group__0) + { after(grammarAccess.getNotExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleComparisonExpressionRule +entryRuleComparisonExpressionRule +: +{ before(grammarAccess.getComparisonExpressionRuleRule()); } + ruleComparisonExpressionRule +{ after(grammarAccess.getComparisonExpressionRuleRule()); } + EOF +; + +// Rule ComparisonExpressionRule +ruleComparisonExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getComparisonExpressionRuleAccess().getGroup()); } + (rule__ComparisonExpressionRule__Group__0) + { after(grammarAccess.getComparisonExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRulePartialComparisonExpressionRule +entryRulePartialComparisonExpressionRule +: +{ before(grammarAccess.getPartialComparisonExpressionRuleRule()); } + rulePartialComparisonExpressionRule +{ after(grammarAccess.getPartialComparisonExpressionRuleRule()); } + EOF +; + +// Rule PartialComparisonExpressionRule +rulePartialComparisonExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getPartialComparisonExpressionRuleAccess().getGroup()); } + (rule__PartialComparisonExpressionRule__Group__0) + { after(grammarAccess.getPartialComparisonExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleAddOrSubtractExpressionRule +entryRuleAddOrSubtractExpressionRule +: +{ before(grammarAccess.getAddOrSubtractExpressionRuleRule()); } + ruleAddOrSubtractExpressionRule +{ after(grammarAccess.getAddOrSubtractExpressionRuleRule()); } + EOF +; + +// Rule AddOrSubtractExpressionRule +ruleAddOrSubtractExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup()); } + (rule__AddOrSubtractExpressionRule__Group__0) + { after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleMultiplyDivideModuloExpressionRule +entryRuleMultiplyDivideModuloExpressionRule +: +{ before(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); } + ruleMultiplyDivideModuloExpressionRule +{ after(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); } + EOF +; + +// Rule MultiplyDivideModuloExpressionRule +ruleMultiplyDivideModuloExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup()); } + (rule__MultiplyDivideModuloExpressionRule__Group__0) + { after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRulePowerOfExpressionRule +entryRulePowerOfExpressionRule +: +{ before(grammarAccess.getPowerOfExpressionRuleRule()); } + rulePowerOfExpressionRule +{ after(grammarAccess.getPowerOfExpressionRuleRule()); } + EOF +; + +// Rule PowerOfExpressionRule +rulePowerOfExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getPowerOfExpressionRuleAccess().getGroup()); } + (rule__PowerOfExpressionRule__Group__0) + { after(grammarAccess.getPowerOfExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleUnaryAddOrSubtractExpressionRule +entryRuleUnaryAddOrSubtractExpressionRule +: +{ before(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); } + ruleUnaryAddOrSubtractExpressionRule +{ after(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); } + EOF +; + +// Rule UnaryAddOrSubtractExpressionRule +ruleUnaryAddOrSubtractExpressionRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getGroup()); } + (rule__UnaryAddOrSubtractExpressionRule__Group__0) + { after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleLiteralOrReferenceRule +entryRuleLiteralOrReferenceRule +: +{ before(grammarAccess.getLiteralOrReferenceRuleRule()); } + ruleLiteralOrReferenceRule +{ after(grammarAccess.getLiteralOrReferenceRuleRule()); } + EOF +; + +// Rule LiteralOrReferenceRule +ruleLiteralOrReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getLiteralOrReferenceRuleAccess().getAlternatives()); } + (rule__LiteralOrReferenceRule__Alternatives) + { after(grammarAccess.getLiteralOrReferenceRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleParanthesesRule +entryRuleParanthesesRule +: +{ before(grammarAccess.getParanthesesRuleRule()); } + ruleParanthesesRule +{ after(grammarAccess.getParanthesesRuleRule()); } + EOF +; + +// Rule ParanthesesRule +ruleParanthesesRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getParanthesesRuleAccess().getGroup()); } + (rule__ParanthesesRule__Group__0) + { after(grammarAccess.getParanthesesRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleCallRule +entryRuleCallRule +: +{ before(grammarAccess.getCallRuleRule()); } + ruleCallRule +{ after(grammarAccess.getCallRuleRule()); } + EOF +; + +// Rule CallRule +ruleCallRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getCallRuleAccess().getGroup()); } + (rule__CallRule__Group__0) + { after(grammarAccess.getCallRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleFunctionNameRule +entryRuleFunctionNameRule +: +{ before(grammarAccess.getFunctionNameRuleRule()); } + ruleFunctionNameRule +{ after(grammarAccess.getFunctionNameRuleRule()); } + EOF +; + +// Rule FunctionNameRule +ruleFunctionNameRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getFunctionNameRuleAccess().getGroup()); } + (rule__FunctionNameRule__Group__0) + { after(grammarAccess.getFunctionNameRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleValueReferenceRule +entryRuleValueReferenceRule +: +{ before(grammarAccess.getValueReferenceRuleRule()); } + ruleValueReferenceRule +{ after(grammarAccess.getValueReferenceRuleRule()); } + EOF +; + +// Rule ValueReferenceRule +ruleValueReferenceRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getValueReferenceRuleAccess().getGroup()); } + (rule__ValueReferenceRule__Group__0) + { after(grammarAccess.getValueReferenceRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleLiteralRule +entryRuleLiteralRule +: +{ before(grammarAccess.getLiteralRuleRule()); } + ruleLiteralRule +{ after(grammarAccess.getLiteralRuleRule()); } + EOF +; + +// Rule LiteralRule +ruleLiteralRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getLiteralRuleAccess().getAlternatives()); } + (rule__LiteralRule__Alternatives) + { after(grammarAccess.getLiteralRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleNumberLiteralRule +entryRuleNumberLiteralRule +: +{ before(grammarAccess.getNumberLiteralRuleRule()); } + ruleNumberLiteralRule +{ after(grammarAccess.getNumberLiteralRuleRule()); } + EOF +; + +// Rule NumberLiteralRule +ruleNumberLiteralRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getNumberLiteralRuleAccess().getAlternatives()); } + (rule__NumberLiteralRule__Alternatives) + { after(grammarAccess.getNumberLiteralRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleDoubleLiteralRule +entryRuleDoubleLiteralRule +: +{ before(grammarAccess.getDoubleLiteralRuleRule()); } + ruleDoubleLiteralRule +{ after(grammarAccess.getDoubleLiteralRuleRule()); } + EOF +; + +// Rule DoubleLiteralRule +ruleDoubleLiteralRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getDoubleLiteralRuleAccess().getValueAssignment()); } + (rule__DoubleLiteralRule__ValueAssignment) + { after(grammarAccess.getDoubleLiteralRuleAccess().getValueAssignment()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleIntegerLiteralRule +entryRuleIntegerLiteralRule +: +{ before(grammarAccess.getIntegerLiteralRuleRule()); } + ruleIntegerLiteralRule +{ after(grammarAccess.getIntegerLiteralRuleRule()); } + EOF +; + +// Rule IntegerLiteralRule +ruleIntegerLiteralRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getIntegerLiteralRuleAccess().getValueAssignment()); } + (rule__IntegerLiteralRule__ValueAssignment) + { after(grammarAccess.getIntegerLiteralRuleAccess().getValueAssignment()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleStringLiteralRule +entryRuleStringLiteralRule +: +{ before(grammarAccess.getStringLiteralRuleRule()); } + ruleStringLiteralRule +{ after(grammarAccess.getStringLiteralRuleRule()); } + EOF +; + +// Rule StringLiteralRule +ruleStringLiteralRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getStringLiteralRuleAccess().getValueAssignment()); } + (rule__StringLiteralRule__ValueAssignment) + { after(grammarAccess.getStringLiteralRuleAccess().getValueAssignment()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleBooleanLiteralRule +entryRuleBooleanLiteralRule +: +{ before(grammarAccess.getBooleanLiteralRuleRule()); } + ruleBooleanLiteralRule +{ after(grammarAccess.getBooleanLiteralRuleRule()); } + EOF +; + +// Rule BooleanLiteralRule +ruleBooleanLiteralRule + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getBooleanLiteralRuleAccess().getGroup()); } + (rule__BooleanLiteralRule__Group__0) + { after(grammarAccess.getBooleanLiteralRuleAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleStringOrId +entryRuleStringOrId +: +{ before(grammarAccess.getStringOrIdRule()); } + ruleStringOrId +{ after(grammarAccess.getStringOrIdRule()); } + EOF +; + +// Rule StringOrId +ruleStringOrId + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getStringOrIdAccess().getAlternatives()); } + (rule__StringOrId__Alternatives) + { after(grammarAccess.getStringOrIdAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleDOUBLE +entryRuleDOUBLE +: +{ before(grammarAccess.getDOUBLERule()); } + ruleDOUBLE +{ after(grammarAccess.getDOUBLERule()); } + EOF +; + +// Rule DOUBLE +ruleDOUBLE + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getDOUBLEAccess().getGroup()); } + (rule__DOUBLE__Group__0) + { after(grammarAccess.getDOUBLEAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Rule ComparisonOperatorRule +ruleComparisonOperatorRule + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getComparisonOperatorRuleAccess().getAlternatives()); } + (rule__ComparisonOperatorRule__Alternatives) + { after(grammarAccess.getComparisonOperatorRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Rule AddOrSubtractOperatorRule +ruleAddOrSubtractOperatorRule + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAlternatives()); } + (rule__AddOrSubtractOperatorRule__Alternatives) + { after(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Rule MultiplyDivideModuloOperatorRule +ruleMultiplyDivideModuloOperatorRule + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getAlternatives()); } + (rule__MultiplyDivideModuloOperatorRule__Alternatives) + { after(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__StatementRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getStatementRuleAccess().getForStatementRuleParserRuleCall_0()); } + ruleForStatementRule + { after(grammarAccess.getStatementRuleAccess().getForStatementRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getStatementRuleAccess().getApplyStatementRuleParserRuleCall_1()); } + ruleApplyStatementRule + { after(grammarAccess.getStatementRuleAccess().getApplyStatementRuleParserRuleCall_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__RangeRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getRangeRuleAccess().getFunctionsRuleParserRuleCall_0()); } + ruleFunctionsRule + { after(grammarAccess.getRangeRuleAccess().getFunctionsRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getRangeRuleAccess().getGeneratorsRuleParserRuleCall_1()); } + ruleGeneratorsRule + { after(grammarAccess.getRangeRuleAccess().getGeneratorsRuleParserRuleCall_1()); } + ) + | + ( + { before(grammarAccess.getRangeRuleAccess().getCounterRangeRuleParserRuleCall_2()); } + ruleCounterRangeRule + { after(grammarAccess.getRangeRuleAccess().getCounterRangeRuleParserRuleCall_2()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferenceRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getGeneratorReferenceRuleAccess().getGeneratorDefinitionReferenceRuleParserRuleCall_0()); } + ruleGeneratorDefinitionReferenceRule + { after(grammarAccess.getGeneratorReferenceRuleAccess().getGeneratorDefinitionReferenceRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getGeneratorReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); } + ruleLoopVariableReference + { after(grammarAccess.getGeneratorReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferenceRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getFunctionReferenceRuleAccess().getFunctionDefReferenceRuleParserRuleCall_0()); } + ruleFunctionDefReferenceRule + { after(grammarAccess.getFunctionReferenceRuleAccess().getFunctionDefReferenceRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getFunctionReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); } + ruleLoopVariableReference + { after(grammarAccess.getFunctionReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionDefReferenceRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getFunctionDefReferenceRuleAccess().getFunctionDefinitionReferenceRuleParserRuleCall_0()); } + ruleFunctionDefinitionReferenceRule + { after(grammarAccess.getFunctionDefReferenceRuleAccess().getFunctionDefinitionReferenceRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getFunctionDefReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1()); } + ruleParametrizedFunctionDefinitionReferenceRule + { after(grammarAccess.getFunctionDefReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__NameOrMiscRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getNameOrMiscRuleAccess().getNameRuleParserRuleCall_0()); } + ruleNameRule + { after(grammarAccess.getNameOrMiscRuleAccess().getNameRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getNameOrMiscRuleAccess().getMiscRuleParserRuleCall_1()); } + ruleMiscRule + { after(grammarAccess.getNameOrMiscRuleAccess().getMiscRuleParserRuleCall_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ValueRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getValueRuleAccess().getArrayRuleParserRuleCall_0()); } + ruleArrayRule + { after(grammarAccess.getValueRuleAccess().getArrayRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getValueRuleAccess().getDataReferenceRuleParserRuleCall_1()); } + ruleDataReferenceRule + { after(grammarAccess.getValueRuleAccess().getDataReferenceRuleParserRuleCall_1()); } + ) + | + ( + { before(grammarAccess.getValueRuleAccess().getInstanceRuleParserRuleCall_2()); } + ruleInstanceRule + { after(grammarAccess.getValueRuleAccess().getInstanceRuleParserRuleCall_2()); } + ) + | + ( + { before(grammarAccess.getValueRuleAccess().getLiteralValueRuleParserRuleCall_3()); } + ruleLiteralValueRule + { after(grammarAccess.getValueRuleAccess().getLiteralValueRuleParserRuleCall_3()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__LiteralOrReferenceRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getLiteralOrReferenceRuleAccess().getCallRuleParserRuleCall_0()); } + ruleCallRule + { after(grammarAccess.getLiteralOrReferenceRuleAccess().getCallRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getLiteralOrReferenceRuleAccess().getLiteralRuleParserRuleCall_1()); } + ruleLiteralRule + { after(grammarAccess.getLiteralOrReferenceRuleAccess().getLiteralRuleParserRuleCall_1()); } + ) + | + ( + { before(grammarAccess.getLiteralOrReferenceRuleAccess().getParanthesesRuleParserRuleCall_2()); } + ruleParanthesesRule + { after(grammarAccess.getLiteralOrReferenceRuleAccess().getParanthesesRuleParserRuleCall_2()); } + ) + | + ( + { before(grammarAccess.getLiteralOrReferenceRuleAccess().getValueReferenceRuleParserRuleCall_3()); } + ruleValueReferenceRule + { after(grammarAccess.getLiteralOrReferenceRuleAccess().getValueReferenceRuleParserRuleCall_3()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__LiteralRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getLiteralRuleAccess().getNumberLiteralRuleParserRuleCall_0()); } + ruleNumberLiteralRule + { after(grammarAccess.getLiteralRuleAccess().getNumberLiteralRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getLiteralRuleAccess().getStringLiteralRuleParserRuleCall_1()); } + ruleStringLiteralRule + { after(grammarAccess.getLiteralRuleAccess().getStringLiteralRuleParserRuleCall_1()); } + ) + | + ( + { before(grammarAccess.getLiteralRuleAccess().getBooleanLiteralRuleParserRuleCall_2()); } + ruleBooleanLiteralRule + { after(grammarAccess.getLiteralRuleAccess().getBooleanLiteralRuleParserRuleCall_2()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__NumberLiteralRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getNumberLiteralRuleAccess().getDoubleLiteralRuleParserRuleCall_0()); } + ruleDoubleLiteralRule + { after(grammarAccess.getNumberLiteralRuleAccess().getDoubleLiteralRuleParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getNumberLiteralRuleAccess().getIntegerLiteralRuleParserRuleCall_1()); } + ruleIntegerLiteralRule + { after(grammarAccess.getNumberLiteralRuleAccess().getIntegerLiteralRuleParserRuleCall_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__BooleanLiteralRule__Alternatives_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getBooleanLiteralRuleAccess().getValueAssignment_1_0()); } + (rule__BooleanLiteralRule__ValueAssignment_1_0) + { after(grammarAccess.getBooleanLiteralRuleAccess().getValueAssignment_1_0()); } + ) + | + ( + { before(grammarAccess.getBooleanLiteralRuleAccess().getFalseKeyword_1_1()); } + 'false' + { after(grammarAccess.getBooleanLiteralRuleAccess().getFalseKeyword_1_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__StringOrId__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getStringOrIdAccess().getQUOTED_IDTerminalRuleCall_0()); } + RULE_QUOTED_ID + { after(grammarAccess.getStringOrIdAccess().getQUOTED_IDTerminalRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getStringOrIdAccess().getIDTerminalRuleCall_1()); } + RULE_ID + { after(grammarAccess.getStringOrIdAccess().getIDTerminalRuleCall_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ComparisonOperatorRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getComparisonOperatorRuleAccess().getGreaterThanEnumLiteralDeclaration_0()); } + ('>=') + { after(grammarAccess.getComparisonOperatorRuleAccess().getGreaterThanEnumLiteralDeclaration_0()); } + ) + | + ( + { before(grammarAccess.getComparisonOperatorRuleAccess().getGreaterEqualEnumLiteralDeclaration_1()); } + ('>') + { after(grammarAccess.getComparisonOperatorRuleAccess().getGreaterEqualEnumLiteralDeclaration_1()); } + ) + | + ( + { before(grammarAccess.getComparisonOperatorRuleAccess().getEqualEnumLiteralDeclaration_2()); } + ('=') + { after(grammarAccess.getComparisonOperatorRuleAccess().getEqualEnumLiteralDeclaration_2()); } + ) + | + ( + { before(grammarAccess.getComparisonOperatorRuleAccess().getUnequalEnumLiteralDeclaration_3()); } + ('!=') + { after(grammarAccess.getComparisonOperatorRuleAccess().getUnequalEnumLiteralDeclaration_3()); } + ) + | + ( + { before(grammarAccess.getComparisonOperatorRuleAccess().getLessEqualEnumLiteralDeclaration_4()); } + ('<') + { after(grammarAccess.getComparisonOperatorRuleAccess().getLessEqualEnumLiteralDeclaration_4()); } + ) + | + ( + { before(grammarAccess.getComparisonOperatorRuleAccess().getLessThanEnumLiteralDeclaration_5()); } + ('<=') + { after(grammarAccess.getComparisonOperatorRuleAccess().getLessThanEnumLiteralDeclaration_5()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractOperatorRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAddEnumLiteralDeclaration_0()); } + ('+') + { after(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAddEnumLiteralDeclaration_0()); } + ) + | + ( + { before(grammarAccess.getAddOrSubtractOperatorRuleAccess().getSubtractEnumLiteralDeclaration_1()); } + ('-') + { after(grammarAccess.getAddOrSubtractOperatorRuleAccess().getSubtractEnumLiteralDeclaration_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloOperatorRule__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getMultiplyEnumLiteralDeclaration_0()); } + ('*') + { after(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getMultiplyEnumLiteralDeclaration_0()); } + ) + | + ( + { before(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getDivideEnumLiteralDeclaration_1()); } + ('/') + { after(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getDivideEnumLiteralDeclaration_1()); } + ) + | + ( + { before(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getModuloEnumLiteralDeclaration_2()); } + ('%') + { after(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getModuloEnumLiteralDeclaration_2()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ConfigurationRule__Group__0__Impl + rule__ConfigurationRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getConfigurationRuleAccess().getUsesAssignment_0()); } + (rule__ConfigurationRule__UsesAssignment_0)* + { after(grammarAccess.getConfigurationRuleAccess().getUsesAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ConfigurationRule__Group__1__Impl + rule__ConfigurationRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getConfigurationRuleAccess().getGeneratorsAssignment_1()); } + (rule__ConfigurationRule__GeneratorsAssignment_1)* + { after(grammarAccess.getConfigurationRuleAccess().getGeneratorsAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ConfigurationRule__Group__2__Impl + rule__ConfigurationRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getConfigurationRuleAccess().getFunctionsAssignment_2()); } + (rule__ConfigurationRule__FunctionsAssignment_2)* + { after(grammarAccess.getConfigurationRuleAccess().getFunctionsAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__ConfigurationRule__Group__3__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getConfigurationRuleAccess().getStatementsAssignment_3()); } + (rule__ConfigurationRule__StatementsAssignment_3)* + { after(grammarAccess.getConfigurationRuleAccess().getStatementsAssignment_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__UseRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__UseRule__Group__0__Impl + rule__UseRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__UseRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getUseRuleAccess().getUseKeyword_0()); } + 'use' + { after(grammarAccess.getUseRuleAccess().getUseKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__UseRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__UseRule__Group__1__Impl + rule__UseRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__UseRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getUseRuleAccess().getImportURIAssignment_1()); } + (rule__UseRule__ImportURIAssignment_1) + { after(grammarAccess.getUseRuleAccess().getImportURIAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__UseRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__UseRule__Group__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__UseRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getUseRuleAccess().getSemicolonKeyword_2()); } + ';' + { after(grammarAccess.getUseRuleAccess().getSemicolonKeyword_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ParametrizedFunctionDefinitionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParametrizedFunctionDefinitionRule__Group__0__Impl + rule__ParametrizedFunctionDefinitionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getFunctionKeyword_0()); } + 'function' + { after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getFunctionKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParametrizedFunctionDefinitionRule__Group__1__Impl + rule__ParametrizedFunctionDefinitionRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameAssignment_1()); } + (rule__ParametrizedFunctionDefinitionRule__NameAssignment_1) + { after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParametrizedFunctionDefinitionRule__Group__2__Impl + rule__ParametrizedFunctionDefinitionRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getUsingKeyword_2()); } + 'using' + { after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getUsingKeyword_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParametrizedFunctionDefinitionRule__Group__3__Impl + rule__ParametrizedFunctionDefinitionRule__Group__4 +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionAssignment_3()); } + (rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3) + { after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionAssignment_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__4 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParametrizedFunctionDefinitionRule__Group__4__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__Group__4__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getSemicolonKeyword_4()); } + ';' + { after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getSemicolonKeyword_4()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__GeneratorDefinitionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorDefinitionRule__Group__0__Impl + rule__GeneratorDefinitionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorDefinitionRuleAccess().getGeneratorKeyword_0()); } + 'generator' + { after(grammarAccess.getGeneratorDefinitionRuleAccess().getGeneratorKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorDefinitionRule__Group__1__Impl + rule__GeneratorDefinitionRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorDefinitionRuleAccess().getNameAssignment_1()); } + (rule__GeneratorDefinitionRule__NameAssignment_1) + { after(grammarAccess.getGeneratorDefinitionRuleAccess().getNameAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorDefinitionRule__Group__2__Impl + rule__GeneratorDefinitionRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorDefinitionRuleAccess().getUsingKeyword_2()); } + 'using' + { after(grammarAccess.getGeneratorDefinitionRuleAccess().getUsingKeyword_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorDefinitionRule__Group__3__Impl + rule__GeneratorDefinitionRule__Group__4 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionAssignment_3()); } + (rule__GeneratorDefinitionRule__DefinitionAssignment_3) + { after(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionAssignment_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__4 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorDefinitionRule__Group__4__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__Group__4__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorDefinitionRuleAccess().getSemicolonKeyword_4()); } + ';' + { after(grammarAccess.getGeneratorDefinitionRuleAccess().getSemicolonKeyword_4()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ForStatementRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ForStatementRule__Group__0__Impl + rule__ForStatementRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getForStatementRuleAccess().getForKeyword_0()); } + 'for' + { after(grammarAccess.getForStatementRuleAccess().getForKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ForStatementRule__Group__1__Impl + rule__ForStatementRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getForStatementRuleAccess().getNameAssignment_1()); } + (rule__ForStatementRule__NameAssignment_1) + { after(grammarAccess.getForStatementRuleAccess().getNameAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ForStatementRule__Group__2__Impl + rule__ForStatementRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getForStatementRuleAccess().getInKeyword_2()); } + 'in' + { after(grammarAccess.getForStatementRuleAccess().getInKeyword_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__ForStatementRule__Group__3__Impl + rule__ForStatementRule__Group__4 +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getForStatementRuleAccess().getRangeAssignment_3()); } + (rule__ForStatementRule__RangeAssignment_3) + { after(grammarAccess.getForStatementRuleAccess().getRangeAssignment_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__4 + @init { + int stackSize = keepStackSize(); + } +: + rule__ForStatementRule__Group__4__Impl + rule__ForStatementRule__Group__5 +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__4__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getForStatementRuleAccess().getLoopKeyword_4()); } + 'loop' + { after(grammarAccess.getForStatementRuleAccess().getLoopKeyword_4()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__5 + @init { + int stackSize = keepStackSize(); + } +: + rule__ForStatementRule__Group__5__Impl + rule__ForStatementRule__Group__6 +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__5__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getForStatementRuleAccess().getStatementsAssignment_5()); } + (rule__ForStatementRule__StatementsAssignment_5)* + { after(grammarAccess.getForStatementRuleAccess().getStatementsAssignment_5()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__6 + @init { + int stackSize = keepStackSize(); + } +: + rule__ForStatementRule__Group__6__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__Group__6__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getForStatementRuleAccess().getEndKeyword_6()); } + 'end' + { after(grammarAccess.getForStatementRuleAccess().getEndKeyword_6()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__CounterRangeRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__CounterRangeRule__Group__0__Impl + rule__CounterRangeRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCounterRangeRuleAccess().getLeftSquareBracketKeyword_0()); } + '[' + { after(grammarAccess.getCounterRangeRuleAccess().getLeftSquareBracketKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__CounterRangeRule__Group__1__Impl + rule__CounterRangeRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCounterRangeRuleAccess().getStartAssignment_1()); } + (rule__CounterRangeRule__StartAssignment_1) + { after(grammarAccess.getCounterRangeRuleAccess().getStartAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__CounterRangeRule__Group__2__Impl + rule__CounterRangeRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCounterRangeRuleAccess().getToKeyword_2()); } + 'to' + { after(grammarAccess.getCounterRangeRuleAccess().getToKeyword_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__CounterRangeRule__Group__3__Impl + rule__CounterRangeRule__Group__4 +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCounterRangeRuleAccess().getEndAssignment_3()); } + (rule__CounterRangeRule__EndAssignment_3) + { after(grammarAccess.getCounterRangeRuleAccess().getEndAssignment_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__4 + @init { + int stackSize = keepStackSize(); + } +: + rule__CounterRangeRule__Group__4__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__Group__4__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCounterRangeRuleAccess().getRightSquareBracketKeyword_4()); } + ']' + { after(grammarAccess.getCounterRangeRuleAccess().getRightSquareBracketKeyword_4()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__FunctionsRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionsRule__Group__0__Impl + rule__FunctionsRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionsRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionsRuleAccess().getFunctionsAction_0()); } + () + { after(grammarAccess.getFunctionsRuleAccess().getFunctionsAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionsRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionsRule__Group__1__Impl + rule__FunctionsRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionsRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionsRuleAccess().getFunctionsKeyword_1()); } + 'functions' + { after(grammarAccess.getFunctionsRuleAccess().getFunctionsKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionsRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionsRule__Group__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionsRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesAssignment_2()); } + (rule__FunctionsRule__FunctionReferencesAssignment_2)? + { after(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__FunctionReferencesRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionReferencesRule__Group__0__Impl + rule__FunctionReferencesRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionReferencesRuleAccess().getLeftSquareBracketKeyword_0()); } + '[' + { after(grammarAccess.getFunctionReferencesRuleAccess().getLeftSquareBracketKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionReferencesRule__Group__1__Impl + rule__FunctionReferencesRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_1()); } + (rule__FunctionReferencesRule__FunctionsAssignment_1) + { after(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionReferencesRule__Group__2__Impl + rule__FunctionReferencesRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionReferencesRuleAccess().getGroup_2()); } + (rule__FunctionReferencesRule__Group_2__0)* + { after(grammarAccess.getFunctionReferencesRuleAccess().getGroup_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionReferencesRule__Group__3__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionReferencesRuleAccess().getRightSquareBracketKeyword_3()); } + ']' + { after(grammarAccess.getFunctionReferencesRuleAccess().getRightSquareBracketKeyword_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__FunctionReferencesRule__Group_2__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionReferencesRule__Group_2__0__Impl + rule__FunctionReferencesRule__Group_2__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group_2__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionReferencesRuleAccess().getCommaKeyword_2_0()); } + ',' + { after(grammarAccess.getFunctionReferencesRuleAccess().getCommaKeyword_2_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group_2__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionReferencesRule__Group_2__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__Group_2__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_2_1()); } + (rule__FunctionReferencesRule__FunctionsAssignment_2_1) + { after(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_2_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__GeneratorsRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorsRule__Group__0__Impl + rule__GeneratorsRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorsRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorsRuleAccess().getGeneratorsAction_0()); } + () + { after(grammarAccess.getGeneratorsRuleAccess().getGeneratorsAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorsRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorsRule__Group__1__Impl + rule__GeneratorsRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorsRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorsRuleAccess().getGeneratorsKeyword_1()); } + 'generators' + { after(grammarAccess.getGeneratorsRuleAccess().getGeneratorsKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorsRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorsRule__Group__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorsRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesAssignment_2()); } + (rule__GeneratorsRule__GeneratorReferencesAssignment_2)? + { after(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__GeneratorReferencesRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorReferencesRule__Group__0__Impl + rule__GeneratorReferencesRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getLeftSquareBracketKeyword_0()); } + '[' + { after(grammarAccess.getGeneratorReferencesRuleAccess().getLeftSquareBracketKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorReferencesRule__Group__1__Impl + rule__GeneratorReferencesRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_1()); } + (rule__GeneratorReferencesRule__GeneratorsAssignment_1) + { after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorReferencesRule__Group__2__Impl + rule__GeneratorReferencesRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getGroup_2()); } + (rule__GeneratorReferencesRule__Group_2__0)* + { after(grammarAccess.getGeneratorReferencesRuleAccess().getGroup_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorReferencesRule__Group__3__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getRightSquareBracketKeyword_3()); } + ']' + { after(grammarAccess.getGeneratorReferencesRuleAccess().getRightSquareBracketKeyword_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__GeneratorReferencesRule__Group_2__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorReferencesRule__Group_2__0__Impl + rule__GeneratorReferencesRule__Group_2__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group_2__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getCommaKeyword_2_0()); } + ',' + { after(grammarAccess.getGeneratorReferencesRuleAccess().getCommaKeyword_2_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group_2__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorReferencesRule__Group_2__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__Group_2__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_2_1()); } + (rule__GeneratorReferencesRule__GeneratorsAssignment_2_1) + { after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_2_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ApplyStatementRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__0__Impl + rule__ApplyStatementRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getWriteKeyword_0()); } + 'write' + { after(grammarAccess.getApplyStatementRuleAccess().getWriteKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__1__Impl + rule__ApplyStatementRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getFileAssignment_1()); } + (rule__ApplyStatementRule__FileAssignment_1) + { after(grammarAccess.getApplyStatementRuleAccess().getFileAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__2__Impl + rule__ApplyStatementRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getWithKeyword_2()); } + 'with' + { after(grammarAccess.getApplyStatementRuleAccess().getWithKeyword_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__3__Impl + rule__ApplyStatementRule__Group__4 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getCountAssignment_3()); } + (rule__ApplyStatementRule__CountAssignment_3) + { after(grammarAccess.getApplyStatementRuleAccess().getCountAssignment_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__4 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__4__Impl + rule__ApplyStatementRule__Group__5 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__4__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getSamplesKeyword_4()); } + 'samples' + { after(grammarAccess.getApplyStatementRuleAccess().getSamplesKeyword_4()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__5 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__5__Impl + rule__ApplyStatementRule__Group__6 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__5__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getFromKeyword_5()); } + 'from' + { after(grammarAccess.getApplyStatementRuleAccess().getFromKeyword_5()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__6 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__6__Impl + rule__ApplyStatementRule__Group__7 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__6__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getApplyingKeyword_6()); } + 'applying' + { after(grammarAccess.getApplyStatementRuleAccess().getApplyingKeyword_6()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__7 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__7__Impl + rule__ApplyStatementRule__Group__8 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__7__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getFunctionAssignment_7()); } + (rule__ApplyStatementRule__FunctionAssignment_7) + { after(grammarAccess.getApplyStatementRuleAccess().getFunctionAssignment_7()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__8 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__8__Impl + rule__ApplyStatementRule__Group__9 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__8__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getOnKeyword_8()); } + 'on' + { after(grammarAccess.getApplyStatementRuleAccess().getOnKeyword_8()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__9 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__9__Impl + rule__ApplyStatementRule__Group__10 +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__9__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getGeneratorAssignment_9()); } + (rule__ApplyStatementRule__GeneratorAssignment_9) + { after(grammarAccess.getApplyStatementRuleAccess().getGeneratorAssignment_9()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__10 + @init { + int stackSize = keepStackSize(); + } +: + rule__ApplyStatementRule__Group__10__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__Group__10__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getApplyStatementRuleAccess().getSemicolonKeyword_10()); } + ';' + { after(grammarAccess.getApplyStatementRuleAccess().getSemicolonKeyword_10()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__GeneratorDefinitionReferenceRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorDefinitionReferenceRule__Group__0__Impl + rule__GeneratorDefinitionReferenceRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionReferenceRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGeneratorKeyword_0()); } + 'generator' + { after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGeneratorKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionReferenceRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__GeneratorDefinitionReferenceRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionReferenceRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionAssignment_1()); } + (rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1) + { after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__LoopVariableReference__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__LoopVariableReference__Group__0__Impl + rule__LoopVariableReference__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__LoopVariableReference__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getLoopVariableReferenceAccess().getLoopVariableAction_0()); } + () + { after(grammarAccess.getLoopVariableReferenceAccess().getLoopVariableAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__LoopVariableReference__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__LoopVariableReference__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__LoopVariableReference__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getLoopVariableReferenceAccess().getDefinitionAssignment_1()); } + (rule__LoopVariableReference__DefinitionAssignment_1) + { after(grammarAccess.getLoopVariableReferenceAccess().getDefinitionAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__FunctionDefinitionReferenceRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionDefinitionReferenceRule__Group__0__Impl + rule__FunctionDefinitionReferenceRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionDefinitionReferenceRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getFunctionDefinitionReferenceAction_0()); } + () + { after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getFunctionDefinitionReferenceAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionDefinitionReferenceRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionDefinitionReferenceRule__Group__1__Impl + rule__FunctionDefinitionReferenceRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionDefinitionReferenceRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionKeyword_1()); } + 'definition' + { after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionDefinitionReferenceRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionDefinitionReferenceRule__Group__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionDefinitionReferenceRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2()); } + (rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2) + { after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl + rule__ParametrizedFunctionDefinitionReferenceRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceAction_0()); } + () + { after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionReferenceRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl + rule__ParametrizedFunctionDefinitionReferenceRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getFunctionKeyword_1()); } + 'function' + { after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getFunctionKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionReferenceRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2()); } + (rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2) + { after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__InstanceRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__InstanceRule__Group__0__Impl + rule__InstanceRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getInstanceRuleAccess().getNameAssignment_0()); } + (rule__InstanceRule__NameAssignment_0) + { after(grammarAccess.getInstanceRuleAccess().getNameAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__InstanceRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getInstanceRuleAccess().getGroup_1()); } + (rule__InstanceRule__Group_1__0)? + { after(grammarAccess.getInstanceRuleAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__InstanceRule__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__InstanceRule__Group_1__0__Impl + rule__InstanceRule__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getInstanceRuleAccess().getLeftCurlyBracketKeyword_1_0()); } + '{' + { after(grammarAccess.getInstanceRuleAccess().getLeftCurlyBracketKeyword_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__InstanceRule__Group_1__1__Impl + rule__InstanceRule__Group_1__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getInstanceRuleAccess().getAttributesAssignment_1_1()); } + (rule__InstanceRule__AttributesAssignment_1_1)* + { after(grammarAccess.getInstanceRuleAccess().getAttributesAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__Group_1__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__InstanceRule__Group_1__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__Group_1__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getInstanceRuleAccess().getRightCurlyBracketKeyword_1_2()); } + '}' + { after(grammarAccess.getInstanceRuleAccess().getRightCurlyBracketKeyword_1_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__AttributeRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__AttributeRule__Group__0__Impl + rule__AttributeRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAttributeRuleAccess().getNameAssignment_0()); } + (rule__AttributeRule__NameAssignment_0) + { after(grammarAccess.getAttributeRuleAccess().getNameAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__AttributeRule__Group__1__Impl + rule__AttributeRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAttributeRuleAccess().getColonEqualsSignKeyword_1()); } + ':=' + { after(grammarAccess.getAttributeRuleAccess().getColonEqualsSignKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__AttributeRule__Group__2__Impl + rule__AttributeRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAttributeRuleAccess().getValueAssignment_2()); } + (rule__AttributeRule__ValueAssignment_2) + { after(grammarAccess.getAttributeRuleAccess().getValueAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__AttributeRule__Group__3__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAttributeRuleAccess().getSemicolonKeyword_3()); } + ';' + { after(grammarAccess.getAttributeRuleAccess().getSemicolonKeyword_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ArrayRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArrayRule__Group__0__Impl + rule__ArrayRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArrayRuleAccess().getArrayAction_0()); } + () + { after(grammarAccess.getArrayRuleAccess().getArrayAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArrayRule__Group__1__Impl + rule__ArrayRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArrayRuleAccess().getLeftSquareBracketKeyword_1()); } + '[' + { after(grammarAccess.getArrayRuleAccess().getLeftSquareBracketKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArrayRule__Group__2__Impl + rule__ArrayRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArrayRuleAccess().getGroup_2()); } + (rule__ArrayRule__Group_2__0)? + { after(grammarAccess.getArrayRuleAccess().getGroup_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArrayRule__Group__3__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArrayRuleAccess().getRightSquareBracketKeyword_3()); } + ']' + { after(grammarAccess.getArrayRuleAccess().getRightSquareBracketKeyword_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ArrayRule__Group_2__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArrayRule__Group_2__0__Impl + rule__ArrayRule__Group_2__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group_2__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_0()); } + (rule__ArrayRule__ValuesAssignment_2_0) + { after(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group_2__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArrayRule__Group_2__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group_2__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArrayRuleAccess().getGroup_2_1()); } + (rule__ArrayRule__Group_2_1__0)* + { after(grammarAccess.getArrayRuleAccess().getGroup_2_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ArrayRule__Group_2_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArrayRule__Group_2_1__0__Impl + rule__ArrayRule__Group_2_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group_2_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArrayRuleAccess().getCommaKeyword_2_1_0()); } + ',' + { after(grammarAccess.getArrayRuleAccess().getCommaKeyword_2_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group_2_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArrayRule__Group_2_1__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__Group_2_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_1_1()); } + (rule__ArrayRule__ValuesAssignment_2_1_1) + { after(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__DataReferenceRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__DataReferenceRule__Group__0__Impl + rule__DataReferenceRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__DataReferenceRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getDataReferenceRuleAccess().getDataReferenceAction_0()); } + () + { after(grammarAccess.getDataReferenceRuleAccess().getDataReferenceAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__DataReferenceRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__DataReferenceRule__Group__1__Impl + rule__DataReferenceRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__DataReferenceRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getDataReferenceRuleAccess().getDataKeyword_1()); } + 'data' + { after(grammarAccess.getDataReferenceRuleAccess().getDataKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__DataReferenceRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__DataReferenceRule__Group__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__DataReferenceRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getDataReferenceRuleAccess().getDefinitionAssignment_2()); } + (rule__DataReferenceRule__DefinitionAssignment_2) + { after(grammarAccess.getDataReferenceRuleAccess().getDefinitionAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__OrExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__OrExpressionRule__Group__0__Impl + rule__OrExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__OrExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_0()); } + (rule__OrExpressionRule__SubExpressionsAssignment_0) + { after(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__OrExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__OrExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__OrExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getOrExpressionRuleAccess().getGroup_1()); } + (rule__OrExpressionRule__Group_1__0)* + { after(grammarAccess.getOrExpressionRuleAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__OrExpressionRule__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__OrExpressionRule__Group_1__0__Impl + rule__OrExpressionRule__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__OrExpressionRule__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getOrExpressionRuleAccess().getORKeyword_1_0()); } + 'OR' + { after(grammarAccess.getOrExpressionRuleAccess().getORKeyword_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__OrExpressionRule__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__OrExpressionRule__Group_1__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__OrExpressionRule__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_1_1()); } + (rule__OrExpressionRule__SubExpressionsAssignment_1_1) + { after(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__XorExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__XorExpressionRule__Group__0__Impl + rule__XorExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__XorExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_0()); } + (rule__XorExpressionRule__SubExpressionsAssignment_0) + { after(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__XorExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__XorExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__XorExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getXorExpressionRuleAccess().getGroup_1()); } + (rule__XorExpressionRule__Group_1__0)* + { after(grammarAccess.getXorExpressionRuleAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__XorExpressionRule__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__XorExpressionRule__Group_1__0__Impl + rule__XorExpressionRule__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__XorExpressionRule__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getXorExpressionRuleAccess().getXORKeyword_1_0()); } + 'XOR' + { after(grammarAccess.getXorExpressionRuleAccess().getXORKeyword_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__XorExpressionRule__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__XorExpressionRule__Group_1__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__XorExpressionRule__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_1_1()); } + (rule__XorExpressionRule__SubExpressionsAssignment_1_1) + { after(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__AndExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__AndExpressionRule__Group__0__Impl + rule__AndExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__AndExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_0()); } + (rule__AndExpressionRule__SubExpressionsAssignment_0) + { after(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AndExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__AndExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__AndExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAndExpressionRuleAccess().getGroup_1()); } + (rule__AndExpressionRule__Group_1__0)* + { after(grammarAccess.getAndExpressionRuleAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__AndExpressionRule__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__AndExpressionRule__Group_1__0__Impl + rule__AndExpressionRule__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__AndExpressionRule__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAndExpressionRuleAccess().getANDKeyword_1_0()); } + 'AND' + { after(grammarAccess.getAndExpressionRuleAccess().getANDKeyword_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AndExpressionRule__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__AndExpressionRule__Group_1__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__AndExpressionRule__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_1_1()); } + (rule__AndExpressionRule__SubExpressionsAssignment_1_1) + { after(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__NotExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__NotExpressionRule__Group__0__Impl + rule__NotExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__NotExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getNotExpressionRuleAccess().getNegatedAssignment_0()); } + (rule__NotExpressionRule__NegatedAssignment_0)? + { after(grammarAccess.getNotExpressionRuleAccess().getNegatedAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__NotExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__NotExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__NotExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getNotExpressionRuleAccess().getOperandAssignment_1()); } + (rule__NotExpressionRule__OperandAssignment_1) + { after(grammarAccess.getNotExpressionRuleAccess().getOperandAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ComparisonExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ComparisonExpressionRule__Group__0__Impl + rule__ComparisonExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ComparisonExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAssignment_0()); } + (rule__ComparisonExpressionRule__LeftOperandAssignment_0) + { after(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ComparisonExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ComparisonExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ComparisonExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getComparisonExpressionRuleAccess().getComparisonAssignment_1()); } + (rule__ComparisonExpressionRule__ComparisonAssignment_1)* + { after(grammarAccess.getComparisonExpressionRuleAccess().getComparisonAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__PartialComparisonExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__PartialComparisonExpressionRule__Group__0__Impl + rule__PartialComparisonExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__PartialComparisonExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorAssignment_0()); } + (rule__PartialComparisonExpressionRule__OperatorAssignment_0) + { after(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__PartialComparisonExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__PartialComparisonExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__PartialComparisonExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAssignment_1()); } + (rule__PartialComparisonExpressionRule__SubExpressionAssignment_1) + { after(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__AddOrSubtractExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__AddOrSubtractExpressionRule__Group__0__Impl + rule__AddOrSubtractExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandAssignment_0()); } + (rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0) + { after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__AddOrSubtractExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup_1()); } + (rule__AddOrSubtractExpressionRule__Group_1__0)* + { after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__AddOrSubtractExpressionRule__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__AddOrSubtractExpressionRule__Group_1__0__Impl + rule__AddOrSubtractExpressionRule__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_1_0()); } + (rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0) + { after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__AddOrSubtractExpressionRule__Group_1__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsAssignment_1_1()); } + (rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1) + { after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__MultiplyDivideModuloExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplyDivideModuloExpressionRule__Group__0__Impl + rule__MultiplyDivideModuloExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandAssignment_0()); } + (rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0) + { after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplyDivideModuloExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup_1()); } + (rule__MultiplyDivideModuloExpressionRule__Group_1__0)* + { after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__MultiplyDivideModuloExpressionRule__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl + rule__MultiplyDivideModuloExpressionRule__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsAssignment_1_0()); } + (rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0) + { after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsAssignment_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsAssignment_1_1()); } + (rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1) + { after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__PowerOfExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__PowerOfExpressionRule__Group__0__Impl + rule__PowerOfExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__PowerOfExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandAssignment_0()); } + (rule__PowerOfExpressionRule__LeftOperandAssignment_0) + { after(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__PowerOfExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__PowerOfExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__PowerOfExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getPowerOfExpressionRuleAccess().getGroup_1()); } + (rule__PowerOfExpressionRule__Group_1__0)? + { after(grammarAccess.getPowerOfExpressionRuleAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__PowerOfExpressionRule__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__PowerOfExpressionRule__Group_1__0__Impl + rule__PowerOfExpressionRule__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__PowerOfExpressionRule__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getPowerOfExpressionRuleAccess().getCircumflexAccentKeyword_1_0()); } + '^' + { after(grammarAccess.getPowerOfExpressionRuleAccess().getCircumflexAccentKeyword_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__PowerOfExpressionRule__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__PowerOfExpressionRule__Group_1__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__PowerOfExpressionRule__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandAssignment_1_1()); } + (rule__PowerOfExpressionRule__RightOperandAssignment_1_1) + { after(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__UnaryAddOrSubtractExpressionRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl + rule__UnaryAddOrSubtractExpressionRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_0()); } + (rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0)* + { after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryAddOrSubtractExpressionRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionAssignment_1()); } + (rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1) + { after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ParanthesesRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParanthesesRule__Group__0__Impl + rule__ParanthesesRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ParanthesesRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParanthesesRuleAccess().getLeftParenthesisKeyword_0()); } + '(' + { after(grammarAccess.getParanthesesRuleAccess().getLeftParenthesisKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParanthesesRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParanthesesRule__Group__1__Impl + rule__ParanthesesRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ParanthesesRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParanthesesRuleAccess().getSubExpressionAssignment_1()); } + (rule__ParanthesesRule__SubExpressionAssignment_1) + { after(grammarAccess.getParanthesesRuleAccess().getSubExpressionAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParanthesesRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ParanthesesRule__Group__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ParanthesesRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getParanthesesRuleAccess().getRightParenthesisKeyword_2()); } + ')' + { after(grammarAccess.getParanthesesRuleAccess().getRightParenthesisKeyword_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__CallRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__CallRule__Group__0__Impl + rule__CallRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallRuleAccess().getFunctionAssignment_0()); } + (rule__CallRule__FunctionAssignment_0) + { after(grammarAccess.getCallRuleAccess().getFunctionAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__CallRule__Group__1__Impl + rule__CallRule__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallRuleAccess().getLeftParenthesisKeyword_1()); } + '(' + { after(grammarAccess.getCallRuleAccess().getLeftParenthesisKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__CallRule__Group__2__Impl + rule__CallRule__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallRuleAccess().getGroup_2()); } + (rule__CallRule__Group_2__0)? + { after(grammarAccess.getCallRuleAccess().getGroup_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__CallRule__Group__3__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallRuleAccess().getRightParenthesisKeyword_3()); } + ')' + { after(grammarAccess.getCallRuleAccess().getRightParenthesisKeyword_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__CallRule__Group_2__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__CallRule__Group_2__0__Impl + rule__CallRule__Group_2__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group_2__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallRuleAccess().getParametersAssignment_2_0()); } + (rule__CallRule__ParametersAssignment_2_0) + { after(grammarAccess.getCallRuleAccess().getParametersAssignment_2_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group_2__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__CallRule__Group_2__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group_2__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallRuleAccess().getGroup_2_1()); } + (rule__CallRule__Group_2_1__0)* + { after(grammarAccess.getCallRuleAccess().getGroup_2_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__CallRule__Group_2_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__CallRule__Group_2_1__0__Impl + rule__CallRule__Group_2_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group_2_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallRuleAccess().getCommaKeyword_2_1_0()); } + ',' + { after(grammarAccess.getCallRuleAccess().getCommaKeyword_2_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group_2_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__CallRule__Group_2_1__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__Group_2_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallRuleAccess().getParametersAssignment_2_1_1()); } + (rule__CallRule__ParametersAssignment_2_1_1) + { after(grammarAccess.getCallRuleAccess().getParametersAssignment_2_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__FunctionNameRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionNameRule__Group__0__Impl + rule__FunctionNameRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionNameRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionNameRuleAccess().getFunctionNameAction_0()); } + () + { after(grammarAccess.getFunctionNameRuleAccess().getFunctionNameAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionNameRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__FunctionNameRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionNameRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getFunctionNameRuleAccess().getCallKeyword_1()); } + 'call' + { after(grammarAccess.getFunctionNameRuleAccess().getCallKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ValueReferenceRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ValueReferenceRule__Group__0__Impl + rule__ValueReferenceRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ValueReferenceRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getValueReferenceRuleAccess().getValueReferenceAction_0()); } + () + { after(grammarAccess.getValueReferenceRuleAccess().getValueReferenceAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ValueReferenceRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ValueReferenceRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ValueReferenceRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getValueReferenceRuleAccess().getValueKeyword_1()); } + 'value' + { after(grammarAccess.getValueReferenceRuleAccess().getValueKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__BooleanLiteralRule__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__BooleanLiteralRule__Group__0__Impl + rule__BooleanLiteralRule__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__BooleanLiteralRule__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getBooleanLiteralRuleAccess().getBooleanLiteralAction_0()); } + () + { after(grammarAccess.getBooleanLiteralRuleAccess().getBooleanLiteralAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__BooleanLiteralRule__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__BooleanLiteralRule__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__BooleanLiteralRule__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getBooleanLiteralRuleAccess().getAlternatives_1()); } + (rule__BooleanLiteralRule__Alternatives_1) + { after(grammarAccess.getBooleanLiteralRuleAccess().getAlternatives_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__DOUBLE__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__DOUBLE__Group__0__Impl + rule__DOUBLE__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__DOUBLE__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_0()); } + RULE_INT + { after(grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__DOUBLE__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__DOUBLE__Group__1__Impl + rule__DOUBLE__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__DOUBLE__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getDOUBLEAccess().getFullStopKeyword_1()); } + '.' + { after(grammarAccess.getDOUBLEAccess().getFullStopKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__DOUBLE__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__DOUBLE__Group__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__DOUBLE__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_2()); } + RULE_INT + { after(grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ConfigurationRule__UsesAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getConfigurationRuleAccess().getUsesUseRuleParserRuleCall_0_0()); } + ruleUseRule + { after(grammarAccess.getConfigurationRuleAccess().getUsesUseRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__GeneratorsAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getConfigurationRuleAccess().getGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0()); } + ruleGeneratorDefinitionRule + { after(grammarAccess.getConfigurationRuleAccess().getGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__FunctionsAssignment_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getConfigurationRuleAccess().getFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0()); } + ruleParametrizedFunctionDefinitionRule + { after(grammarAccess.getConfigurationRuleAccess().getFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ConfigurationRule__StatementsAssignment_3 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getConfigurationRuleAccess().getStatementsStatementRuleParserRuleCall_3_0()); } + ruleStatementRule + { after(grammarAccess.getConfigurationRuleAccess().getStatementsStatementRuleParserRuleCall_3_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__UseRule__ImportURIAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getUseRuleAccess().getImportURISTRINGTerminalRuleCall_1_0()); } + RULE_STRING + { after(grammarAccess.getUseRuleAccess().getImportURISTRINGTerminalRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); } + ruleStringOrId + { after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); } + ruleInstanceRule + { after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__NameAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getGeneratorDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); } + ruleStringOrId + { after(grammarAccess.getGeneratorDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionRule__DefinitionAssignment_3 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); } + ruleInstanceRule + { after(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__NameAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getForStatementRuleAccess().getNameIDTerminalRuleCall_1_0()); } + RULE_ID + { after(grammarAccess.getForStatementRuleAccess().getNameIDTerminalRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__RangeAssignment_3 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getForStatementRuleAccess().getRangeRangeRuleParserRuleCall_3_0()); } + ruleRangeRule + { after(grammarAccess.getForStatementRuleAccess().getRangeRangeRuleParserRuleCall_3_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ForStatementRule__StatementsAssignment_5 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getForStatementRuleAccess().getStatementsStatementRuleParserRuleCall_5_0()); } + ruleStatementRule + { after(grammarAccess.getForStatementRuleAccess().getStatementsStatementRuleParserRuleCall_5_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__StartAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getCounterRangeRuleAccess().getStartINTTerminalRuleCall_1_0()); } + RULE_INT + { after(grammarAccess.getCounterRangeRuleAccess().getStartINTTerminalRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__CounterRangeRule__EndAssignment_3 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getCounterRangeRuleAccess().getEndINTTerminalRuleCall_3_0()); } + RULE_INT + { after(grammarAccess.getCounterRangeRuleAccess().getEndINTTerminalRuleCall_3_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionsRule__FunctionReferencesAssignment_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0()); } + ruleFunctionReferencesRule + { after(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__FunctionsAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_1_0()); } + ruleFunctionDefReferenceRule + { after(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionReferencesRule__FunctionsAssignment_2_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0()); } + ruleFunctionDefReferenceRule + { after(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorsRule__GeneratorReferencesAssignment_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0()); } + ruleGeneratorReferencesRule + { after(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__GeneratorsAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_1_0()); } + ( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_1_0_1()); } + ruleStringOrId + { after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_1_0_1()); } + ) + { after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_2_1_0()); } + ( + { before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_2_1_0_1()); } + ruleStringOrId + { after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_2_1_0_1()); } + ) + { after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_2_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__FileAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getApplyStatementRuleAccess().getFileSTRINGTerminalRuleCall_1_0()); } + RULE_STRING + { after(grammarAccess.getApplyStatementRuleAccess().getFileSTRINGTerminalRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__CountAssignment_3 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getApplyStatementRuleAccess().getCountINTTerminalRuleCall_3_0()); } + RULE_INT + { after(grammarAccess.getApplyStatementRuleAccess().getCountINTTerminalRuleCall_3_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__FunctionAssignment_7 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getApplyStatementRuleAccess().getFunctionFunctionReferenceRuleParserRuleCall_7_0()); } + ruleFunctionReferenceRule + { after(grammarAccess.getApplyStatementRuleAccess().getFunctionFunctionReferenceRuleParserRuleCall_7_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ApplyStatementRule__GeneratorAssignment_9 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getApplyStatementRuleAccess().getGeneratorGeneratorReferenceRuleParserRuleCall_9_0()); } + ruleGeneratorReferenceRule + { after(grammarAccess.getApplyStatementRuleAccess().getGeneratorGeneratorReferenceRuleParserRuleCall_9_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionCrossReference_1_0()); } + ( + { before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionStringOrIdParserRuleCall_1_0_1()); } + ruleStringOrId + { after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionStringOrIdParserRuleCall_1_0_1()); } + ) + { after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionCrossReference_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__LoopVariableReference__DefinitionAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementCrossReference_1_0()); } + ( + { before(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementIDTerminalRuleCall_1_0_1()); } + RULE_ID + { after(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementIDTerminalRuleCall_1_0_1()); } + ) + { after(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementCrossReference_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionCrossReference_2_0()); } + ( + { before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionStringOrIdParserRuleCall_2_0_1()); } + ruleStringOrId + { after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionStringOrIdParserRuleCall_2_0_1()); } + ) + { after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionCrossReference_2_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceCrossReference_2_0()); } + ( + { before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceStringOrIdParserRuleCall_2_0_1()); } + ruleStringOrId + { after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceStringOrIdParserRuleCall_2_0_1()); } + ) + { after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceCrossReference_2_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__NameAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionCrossReference_0_0()); } + ( + { before(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionStringOrIdParserRuleCall_0_0_1()); } + ruleStringOrId + { after(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionStringOrIdParserRuleCall_0_0_1()); } + ) + { after(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionCrossReference_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__InstanceRule__AttributesAssignment_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getInstanceRuleAccess().getAttributesAttributeRuleParserRuleCall_1_1_0()); } + ruleAttributeRule + { after(grammarAccess.getInstanceRuleAccess().getAttributesAttributeRuleParserRuleCall_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__NameAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAttributeRuleAccess().getNameNameOrMiscRuleParserRuleCall_0_0()); } + ruleNameOrMiscRule + { after(grammarAccess.getAttributeRuleAccess().getNameNameOrMiscRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeRule__ValueAssignment_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAttributeRuleAccess().getValueValueRuleParserRuleCall_2_0()); } + ruleValueRule + { after(grammarAccess.getAttributeRuleAccess().getValueValueRuleParserRuleCall_2_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__NameRule__NameAssignment + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionCrossReference_0()); } + ( + { before(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionStringOrIdParserRuleCall_0_1()); } + ruleStringOrId + { after(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionStringOrIdParserRuleCall_0_1()); } + ) + { after(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionCrossReference_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__MiscRule__NameAssignment + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getMiscRuleAccess().getNameSTRINGTerminalRuleCall_0()); } + RULE_STRING + { after(grammarAccess.getMiscRuleAccess().getNameSTRINGTerminalRuleCall_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__ValuesAssignment_2_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_0_0()); } + ruleValueRule + { after(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArrayRule__ValuesAssignment_2_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_1_1_0()); } + ruleValueRule + { after(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__LiteralValueRule__LiteralAssignment + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getLiteralValueRuleAccess().getLiteralLiteralRuleParserRuleCall_0()); } + ruleLiteralRule + { after(grammarAccess.getLiteralValueRuleAccess().getLiteralLiteralRuleParserRuleCall_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__DataReferenceRule__DefinitionAssignment_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionCrossReference_2_0()); } + ( + { before(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionStringOrIdParserRuleCall_2_0_1()); } + ruleStringOrId + { after(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionStringOrIdParserRuleCall_2_0_1()); } + ) + { after(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionCrossReference_2_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__OrExpressionRule__SubExpressionsAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_0_0()); } + ruleXorExpressionRule + { after(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__OrExpressionRule__SubExpressionsAssignment_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_1_1_0()); } + ruleXorExpressionRule + { after(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__XorExpressionRule__SubExpressionsAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_0_0()); } + ruleAndExpressionRule + { after(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__XorExpressionRule__SubExpressionsAssignment_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_1_1_0()); } + ruleAndExpressionRule + { after(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AndExpressionRule__SubExpressionsAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_0_0()); } + ruleNotExpressionRule + { after(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AndExpressionRule__SubExpressionsAssignment_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_1_1_0()); } + ruleNotExpressionRule + { after(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__NotExpressionRule__NegatedAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); } + ( + { before(grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); } + '!' + { after(grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); } + ) + { after(grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__NotExpressionRule__OperandAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getNotExpressionRuleAccess().getOperandComparisonExpressionRuleParserRuleCall_1_0()); } + ruleComparisonExpressionRule + { after(grammarAccess.getNotExpressionRuleAccess().getOperandComparisonExpressionRuleParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ComparisonExpressionRule__LeftOperandAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAddOrSubtractExpressionRuleParserRuleCall_0_0()); } + ruleAddOrSubtractExpressionRule + { after(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAddOrSubtractExpressionRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ComparisonExpressionRule__ComparisonAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getComparisonExpressionRuleAccess().getComparisonPartialComparisonExpressionRuleParserRuleCall_1_0()); } + rulePartialComparisonExpressionRule + { after(grammarAccess.getComparisonExpressionRuleAccess().getComparisonPartialComparisonExpressionRuleParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__PartialComparisonExpressionRule__OperatorAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorComparisonOperatorRuleEnumRuleCall_0_0()); } + ruleComparisonOperatorRule + { after(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorComparisonOperatorRuleEnumRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAddOrSubtractExpressionRuleParserRuleCall_1_0()); } + ruleAddOrSubtractExpressionRule + { after(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAddOrSubtractExpressionRuleParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandMultiplyDivideModuloExpressionRuleParserRuleCall_0_0()); } + ruleMultiplyDivideModuloExpressionRule + { after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandMultiplyDivideModuloExpressionRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_1_0_0()); } + ruleAddOrSubtractOperatorRule + { after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_1_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsMultiplyDivideModuloExpressionRuleParserRuleCall_1_1_0()); } + ruleMultiplyDivideModuloExpressionRule + { after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsMultiplyDivideModuloExpressionRuleParserRuleCall_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandPowerOfExpressionRuleParserRuleCall_0_0()); } + rulePowerOfExpressionRule + { after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandPowerOfExpressionRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsMultiplyDivideModuloOperatorRuleEnumRuleCall_1_0_0()); } + ruleMultiplyDivideModuloOperatorRule + { after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsMultiplyDivideModuloOperatorRuleEnumRuleCall_1_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsPowerOfExpressionRuleParserRuleCall_1_1_0()); } + rulePowerOfExpressionRule + { after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsPowerOfExpressionRuleParserRuleCall_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__PowerOfExpressionRule__LeftOperandAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandUnaryAddOrSubtractExpressionRuleParserRuleCall_0_0()); } + ruleUnaryAddOrSubtractExpressionRule + { after(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandUnaryAddOrSubtractExpressionRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__PowerOfExpressionRule__RightOperandAssignment_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandPowerOfExpressionRuleParserRuleCall_1_1_0()); } + rulePowerOfExpressionRule + { after(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandPowerOfExpressionRuleParserRuleCall_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_0_0()); } + ruleAddOrSubtractOperatorRule + { after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionLiteralOrReferenceRuleParserRuleCall_1_0()); } + ruleLiteralOrReferenceRule + { after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionLiteralOrReferenceRuleParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ParanthesesRule__SubExpressionAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getParanthesesRuleAccess().getSubExpressionExpressionRuleParserRuleCall_1_0()); } + ruleExpressionRule + { after(grammarAccess.getParanthesesRuleAccess().getSubExpressionExpressionRuleParserRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__FunctionAssignment_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getCallRuleAccess().getFunctionFunctionNameRuleParserRuleCall_0_0()); } + ruleFunctionNameRule + { after(grammarAccess.getCallRuleAccess().getFunctionFunctionNameRuleParserRuleCall_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__ParametersAssignment_2_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_0_0()); } + ruleExpressionRule + { after(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__CallRule__ParametersAssignment_2_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_1_1_0()); } + ruleExpressionRule + { after(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__DoubleLiteralRule__ValueAssignment + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getDoubleLiteralRuleAccess().getValueDOUBLEParserRuleCall_0()); } + ruleDOUBLE + { after(grammarAccess.getDoubleLiteralRuleAccess().getValueDOUBLEParserRuleCall_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__IntegerLiteralRule__ValueAssignment + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getIntegerLiteralRuleAccess().getValueINTTerminalRuleCall_0()); } + RULE_INT + { after(grammarAccess.getIntegerLiteralRuleAccess().getValueINTTerminalRuleCall_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__StringLiteralRule__ValueAssignment + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getStringLiteralRuleAccess().getValueSTRINGTerminalRuleCall_0()); } + RULE_STRING + { after(grammarAccess.getStringLiteralRuleAccess().getValueSTRINGTerminalRuleCall_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__BooleanLiteralRule__ValueAssignment_1_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); } + ( + { before(grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); } + 'true' + { after(grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); } + ) + { after(grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"'; + +RULE_QUOTED_ID : '\'' ('\\' .|~(('\\'|'\'')))* '\''; + +RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; + +RULE_INT : ('0'..'9')+; + +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/'; + +RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?; + +RULE_WS : (' '|'\t'|'\r'|'\n')+; + +RULE_ANY_OTHER : .; diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSL.tokens b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSL.tokens new file mode 100644 index 00000000..bc5f3c29 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSL.tokens @@ -0,0 +1,106 @@ +'!'=59 +'!='=16 +'%'=23 +'('=54 +')'=55 +'*'=21 +'+'=19 +','=37 +'-'=20 +'.'=58 +'/'=22 +':='=48 +';'=25 +'<'=17 +'<='=18 +'='=15 +'>'=14 +'>='=13 +'AND'=52 +'OR'=50 +'XOR'=51 +'['=33 +']'=35 +'^'=53 +'applying'=43 +'call'=56 +'data'=49 +'definition'=45 +'end'=32 +'false'=12 +'for'=29 +'from'=42 +'function'=26 +'functions'=36 +'generator'=28 +'generators'=38 +'in'=30 +'loop'=31 +'on'=44 +'samples'=41 +'to'=34 +'true'=60 +'use'=24 +'using'=27 +'value'=57 +'with'=40 +'write'=39 +'{'=46 +'}'=47 +RULE_ANY_OTHER=11 +RULE_ID=5 +RULE_INT=6 +RULE_ML_COMMENT=8 +RULE_QUOTED_ID=4 +RULE_SL_COMMENT=9 +RULE_STRING=7 +RULE_WS=10 +T__12=12 +T__13=13 +T__14=14 +T__15=15 +T__16=16 +T__17=17 +T__18=18 +T__19=19 +T__20=20 +T__21=21 +T__22=22 +T__23=23 +T__24=24 +T__25=25 +T__26=26 +T__27=27 +T__28=28 +T__29=29 +T__30=30 +T__31=31 +T__32=32 +T__33=33 +T__34=34 +T__35=35 +T__36=36 +T__37=37 +T__38=38 +T__39=39 +T__40=40 +T__41=41 +T__42=42 +T__43=43 +T__44=44 +T__45=45 +T__46=46 +T__47=47 +T__48=48 +T__49=49 +T__50=50 +T__51=51 +T__52=52 +T__53=53 +T__54=54 +T__55=55 +T__56=56 +T__57=57 +T__58=58 +T__59=59 +T__60=60 diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSLLexer.java b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSLLexer.java new file mode 100644 index 00000000..56e593ff --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSLLexer.java @@ -0,0 +1,2351 @@ +package de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer; + + +import org.antlr.runtime.*; +import java.util.Stack; +import java.util.List; +import java.util.ArrayList; + +@SuppressWarnings("all") +public class InternalGeneratorDSLLexer extends Lexer { + public static final int T__50=50; + public static final int T__19=19; + public static final int T__15=15; + public static final int T__59=59; + public static final int T__16=16; + public static final int T__17=17; + public static final int T__18=18; + public static final int T__55=55; + public static final int T__12=12; + public static final int T__56=56; + public static final int T__13=13; + public static final int T__57=57; + public static final int T__14=14; + public static final int T__58=58; + public static final int T__51=51; + public static final int T__52=52; + public static final int T__53=53; + public static final int T__54=54; + public static final int T__60=60; + public static final int RULE_ID=5; + public static final int RULE_QUOTED_ID=4; + public static final int T__26=26; + public static final int T__27=27; + public static final int T__28=28; + public static final int RULE_INT=6; + public static final int T__29=29; + public static final int T__22=22; + public static final int RULE_ML_COMMENT=8; + public static final int T__23=23; + public static final int T__24=24; + public static final int T__25=25; + public static final int T__20=20; + public static final int T__21=21; + public static final int RULE_STRING=7; + public static final int RULE_SL_COMMENT=9; + public static final int T__37=37; + public static final int T__38=38; + public static final int T__39=39; + public static final int T__33=33; + public static final int T__34=34; + public static final int T__35=35; + public static final int T__36=36; + public static final int EOF=-1; + public static final int T__30=30; + public static final int T__31=31; + public static final int T__32=32; + public static final int RULE_WS=10; + public static final int RULE_ANY_OTHER=11; + public static final int T__48=48; + public static final int T__49=49; + public static final int T__44=44; + public static final int T__45=45; + public static final int T__46=46; + public static final int T__47=47; + public static final int T__40=40; + public static final int T__41=41; + public static final int T__42=42; + public static final int T__43=43; + + // delegates + // delegators + + public InternalGeneratorDSLLexer() {;} + public InternalGeneratorDSLLexer(CharStream input) { + this(input, new RecognizerSharedState()); + } + public InternalGeneratorDSLLexer(CharStream input, RecognizerSharedState state) { + super(input,state); + + } + public String getGrammarFileName() { return "InternalGeneratorDSL.g"; } + + // $ANTLR start "T__12" + public final void mT__12() throws RecognitionException { + try { + int _type = T__12; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:11:7: ( 'false' ) + // InternalGeneratorDSL.g:11:9: 'false' + { + match("false"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__12" + + // $ANTLR start "T__13" + public final void mT__13() throws RecognitionException { + try { + int _type = T__13; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:12:7: ( '>=' ) + // InternalGeneratorDSL.g:12:9: '>=' + { + match(">="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__13" + + // $ANTLR start "T__14" + public final void mT__14() throws RecognitionException { + try { + int _type = T__14; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:13:7: ( '>' ) + // InternalGeneratorDSL.g:13:9: '>' + { + match('>'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__14" + + // $ANTLR start "T__15" + public final void mT__15() throws RecognitionException { + try { + int _type = T__15; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:14:7: ( '=' ) + // InternalGeneratorDSL.g:14:9: '=' + { + match('='); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__15" + + // $ANTLR start "T__16" + public final void mT__16() throws RecognitionException { + try { + int _type = T__16; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:15:7: ( '!=' ) + // InternalGeneratorDSL.g:15:9: '!=' + { + match("!="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__16" + + // $ANTLR start "T__17" + public final void mT__17() throws RecognitionException { + try { + int _type = T__17; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:16:7: ( '<' ) + // InternalGeneratorDSL.g:16:9: '<' + { + match('<'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__17" + + // $ANTLR start "T__18" + public final void mT__18() throws RecognitionException { + try { + int _type = T__18; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:17:7: ( '<=' ) + // InternalGeneratorDSL.g:17:9: '<=' + { + match("<="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__18" + + // $ANTLR start "T__19" + public final void mT__19() throws RecognitionException { + try { + int _type = T__19; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:18:7: ( '+' ) + // InternalGeneratorDSL.g:18:9: '+' + { + match('+'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__19" + + // $ANTLR start "T__20" + public final void mT__20() throws RecognitionException { + try { + int _type = T__20; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:19:7: ( '-' ) + // InternalGeneratorDSL.g:19:9: '-' + { + match('-'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__20" + + // $ANTLR start "T__21" + public final void mT__21() throws RecognitionException { + try { + int _type = T__21; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:20:7: ( '*' ) + // InternalGeneratorDSL.g:20:9: '*' + { + match('*'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__21" + + // $ANTLR start "T__22" + public final void mT__22() throws RecognitionException { + try { + int _type = T__22; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:21:7: ( '/' ) + // InternalGeneratorDSL.g:21:9: '/' + { + match('/'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__22" + + // $ANTLR start "T__23" + public final void mT__23() throws RecognitionException { + try { + int _type = T__23; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:22:7: ( '%' ) + // InternalGeneratorDSL.g:22:9: '%' + { + match('%'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__23" + + // $ANTLR start "T__24" + public final void mT__24() throws RecognitionException { + try { + int _type = T__24; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:23:7: ( 'use' ) + // InternalGeneratorDSL.g:23:9: 'use' + { + match("use"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__24" + + // $ANTLR start "T__25" + public final void mT__25() throws RecognitionException { + try { + int _type = T__25; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:24:7: ( ';' ) + // InternalGeneratorDSL.g:24:9: ';' + { + match(';'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__25" + + // $ANTLR start "T__26" + public final void mT__26() throws RecognitionException { + try { + int _type = T__26; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:25:7: ( 'function' ) + // InternalGeneratorDSL.g:25:9: 'function' + { + match("function"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__26" + + // $ANTLR start "T__27" + public final void mT__27() throws RecognitionException { + try { + int _type = T__27; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:26:7: ( 'using' ) + // InternalGeneratorDSL.g:26:9: 'using' + { + match("using"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__27" + + // $ANTLR start "T__28" + public final void mT__28() throws RecognitionException { + try { + int _type = T__28; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:27:7: ( 'generator' ) + // InternalGeneratorDSL.g:27:9: 'generator' + { + match("generator"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__28" + + // $ANTLR start "T__29" + public final void mT__29() throws RecognitionException { + try { + int _type = T__29; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:28:7: ( 'for' ) + // InternalGeneratorDSL.g:28:9: 'for' + { + match("for"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__29" + + // $ANTLR start "T__30" + public final void mT__30() throws RecognitionException { + try { + int _type = T__30; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:29:7: ( 'in' ) + // InternalGeneratorDSL.g:29:9: 'in' + { + match("in"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__30" + + // $ANTLR start "T__31" + public final void mT__31() throws RecognitionException { + try { + int _type = T__31; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:30:7: ( 'loop' ) + // InternalGeneratorDSL.g:30:9: 'loop' + { + match("loop"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__31" + + // $ANTLR start "T__32" + public final void mT__32() throws RecognitionException { + try { + int _type = T__32; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:31:7: ( 'end' ) + // InternalGeneratorDSL.g:31:9: 'end' + { + match("end"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__32" + + // $ANTLR start "T__33" + public final void mT__33() throws RecognitionException { + try { + int _type = T__33; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:32:7: ( '[' ) + // InternalGeneratorDSL.g:32:9: '[' + { + match('['); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__33" + + // $ANTLR start "T__34" + public final void mT__34() throws RecognitionException { + try { + int _type = T__34; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:33:7: ( 'to' ) + // InternalGeneratorDSL.g:33:9: 'to' + { + match("to"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__34" + + // $ANTLR start "T__35" + public final void mT__35() throws RecognitionException { + try { + int _type = T__35; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:34:7: ( ']' ) + // InternalGeneratorDSL.g:34:9: ']' + { + match(']'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__35" + + // $ANTLR start "T__36" + public final void mT__36() throws RecognitionException { + try { + int _type = T__36; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:35:7: ( 'functions' ) + // InternalGeneratorDSL.g:35:9: 'functions' + { + match("functions"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__36" + + // $ANTLR start "T__37" + public final void mT__37() throws RecognitionException { + try { + int _type = T__37; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:36:7: ( ',' ) + // InternalGeneratorDSL.g:36:9: ',' + { + match(','); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__37" + + // $ANTLR start "T__38" + public final void mT__38() throws RecognitionException { + try { + int _type = T__38; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:37:7: ( 'generators' ) + // InternalGeneratorDSL.g:37:9: 'generators' + { + match("generators"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__38" + + // $ANTLR start "T__39" + public final void mT__39() throws RecognitionException { + try { + int _type = T__39; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:38:7: ( 'write' ) + // InternalGeneratorDSL.g:38:9: 'write' + { + match("write"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__39" + + // $ANTLR start "T__40" + public final void mT__40() throws RecognitionException { + try { + int _type = T__40; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:39:7: ( 'with' ) + // InternalGeneratorDSL.g:39:9: 'with' + { + match("with"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__40" + + // $ANTLR start "T__41" + public final void mT__41() throws RecognitionException { + try { + int _type = T__41; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:40:7: ( 'samples' ) + // InternalGeneratorDSL.g:40:9: 'samples' + { + match("samples"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__41" + + // $ANTLR start "T__42" + public final void mT__42() throws RecognitionException { + try { + int _type = T__42; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:41:7: ( 'from' ) + // InternalGeneratorDSL.g:41:9: 'from' + { + match("from"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__42" + + // $ANTLR start "T__43" + public final void mT__43() throws RecognitionException { + try { + int _type = T__43; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:42:7: ( 'applying' ) + // InternalGeneratorDSL.g:42:9: 'applying' + { + match("applying"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__43" + + // $ANTLR start "T__44" + public final void mT__44() throws RecognitionException { + try { + int _type = T__44; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:43:7: ( 'on' ) + // InternalGeneratorDSL.g:43:9: 'on' + { + match("on"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__44" + + // $ANTLR start "T__45" + public final void mT__45() throws RecognitionException { + try { + int _type = T__45; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:44:7: ( 'definition' ) + // InternalGeneratorDSL.g:44:9: 'definition' + { + match("definition"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__45" + + // $ANTLR start "T__46" + public final void mT__46() throws RecognitionException { + try { + int _type = T__46; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:45:7: ( '{' ) + // InternalGeneratorDSL.g:45:9: '{' + { + match('{'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__46" + + // $ANTLR start "T__47" + public final void mT__47() throws RecognitionException { + try { + int _type = T__47; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:46:7: ( '}' ) + // InternalGeneratorDSL.g:46:9: '}' + { + match('}'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__47" + + // $ANTLR start "T__48" + public final void mT__48() throws RecognitionException { + try { + int _type = T__48; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:47:7: ( ':=' ) + // InternalGeneratorDSL.g:47:9: ':=' + { + match(":="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__48" + + // $ANTLR start "T__49" + public final void mT__49() throws RecognitionException { + try { + int _type = T__49; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:48:7: ( 'data' ) + // InternalGeneratorDSL.g:48:9: 'data' + { + match("data"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__49" + + // $ANTLR start "T__50" + public final void mT__50() throws RecognitionException { + try { + int _type = T__50; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:49:7: ( 'OR' ) + // InternalGeneratorDSL.g:49:9: 'OR' + { + match("OR"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__50" + + // $ANTLR start "T__51" + public final void mT__51() throws RecognitionException { + try { + int _type = T__51; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:50:7: ( 'XOR' ) + // InternalGeneratorDSL.g:50:9: 'XOR' + { + match("XOR"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__51" + + // $ANTLR start "T__52" + public final void mT__52() throws RecognitionException { + try { + int _type = T__52; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:51:7: ( 'AND' ) + // InternalGeneratorDSL.g:51:9: 'AND' + { + match("AND"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__52" + + // $ANTLR start "T__53" + public final void mT__53() throws RecognitionException { + try { + int _type = T__53; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:52:7: ( '^' ) + // InternalGeneratorDSL.g:52:9: '^' + { + match('^'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__53" + + // $ANTLR start "T__54" + public final void mT__54() throws RecognitionException { + try { + int _type = T__54; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:53:7: ( '(' ) + // InternalGeneratorDSL.g:53:9: '(' + { + match('('); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__54" + + // $ANTLR start "T__55" + public final void mT__55() throws RecognitionException { + try { + int _type = T__55; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:54:7: ( ')' ) + // InternalGeneratorDSL.g:54:9: ')' + { + match(')'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__55" + + // $ANTLR start "T__56" + public final void mT__56() throws RecognitionException { + try { + int _type = T__56; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:55:7: ( 'call' ) + // InternalGeneratorDSL.g:55:9: 'call' + { + match("call"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__56" + + // $ANTLR start "T__57" + public final void mT__57() throws RecognitionException { + try { + int _type = T__57; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:56:7: ( 'value' ) + // InternalGeneratorDSL.g:56:9: 'value' + { + match("value"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__57" + + // $ANTLR start "T__58" + public final void mT__58() throws RecognitionException { + try { + int _type = T__58; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:57:7: ( '.' ) + // InternalGeneratorDSL.g:57:9: '.' + { + match('.'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__58" + + // $ANTLR start "T__59" + public final void mT__59() throws RecognitionException { + try { + int _type = T__59; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:58:7: ( '!' ) + // InternalGeneratorDSL.g:58:9: '!' + { + match('!'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__59" + + // $ANTLR start "T__60" + public final void mT__60() throws RecognitionException { + try { + int _type = T__60; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:59:7: ( 'true' ) + // InternalGeneratorDSL.g:59:9: 'true' + { + match("true"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__60" + + // $ANTLR start "RULE_STRING" + public final void mRULE_STRING() throws RecognitionException { + try { + int _type = RULE_STRING; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:6650:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' ) + // InternalGeneratorDSL.g:6650:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' + { + match('\"'); + // InternalGeneratorDSL.g:6650:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* + loop1: + do { + int alt1=3; + int LA1_0 = input.LA(1); + + if ( (LA1_0=='\\') ) { + alt1=1; + } + else if ( ((LA1_0>='\u0000' && LA1_0<='!')||(LA1_0>='#' && LA1_0<='[')||(LA1_0>=']' && LA1_0<='\uFFFF')) ) { + alt1=2; + } + + + switch (alt1) { + case 1 : + // InternalGeneratorDSL.g:6650:20: '\\\\' . + { + match('\\'); + matchAny(); + + } + break; + case 2 : + // InternalGeneratorDSL.g:6650:27: ~ ( ( '\\\\' | '\"' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop1; + } + } while (true); + + match('\"'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_STRING" + + // $ANTLR start "RULE_QUOTED_ID" + public final void mRULE_QUOTED_ID() throws RecognitionException { + try { + int _type = RULE_QUOTED_ID; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:6652:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) + // InternalGeneratorDSL.g:6652:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' + { + match('\''); + // InternalGeneratorDSL.g:6652:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* + loop2: + do { + int alt2=3; + int LA2_0 = input.LA(1); + + if ( (LA2_0=='\\') ) { + alt2=1; + } + else if ( ((LA2_0>='\u0000' && LA2_0<='&')||(LA2_0>='(' && LA2_0<='[')||(LA2_0>=']' && LA2_0<='\uFFFF')) ) { + alt2=2; + } + + + switch (alt2) { + case 1 : + // InternalGeneratorDSL.g:6652:24: '\\\\' . + { + match('\\'); + matchAny(); + + } + break; + case 2 : + // InternalGeneratorDSL.g:6652:31: ~ ( ( '\\\\' | '\\'' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop2; + } + } while (true); + + match('\''); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_QUOTED_ID" + + // $ANTLR start "RULE_ID" + public final void mRULE_ID() throws RecognitionException { + try { + int _type = RULE_ID; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:6654:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) + // InternalGeneratorDSL.g:6654:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + { + // InternalGeneratorDSL.g:6654:11: ( '^' )? + int alt3=2; + int LA3_0 = input.LA(1); + + if ( (LA3_0=='^') ) { + alt3=1; + } + switch (alt3) { + case 1 : + // InternalGeneratorDSL.g:6654:11: '^' + { + match('^'); + + } + break; + + } + + if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + // InternalGeneratorDSL.g:6654:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + loop4: + do { + int alt4=2; + int LA4_0 = input.LA(1); + + if ( ((LA4_0>='0' && LA4_0<='9')||(LA4_0>='A' && LA4_0<='Z')||LA4_0=='_'||(LA4_0>='a' && LA4_0<='z')) ) { + alt4=1; + } + + + switch (alt4) { + case 1 : + // InternalGeneratorDSL.g: + { + if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop4; + } + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ID" + + // $ANTLR start "RULE_INT" + public final void mRULE_INT() throws RecognitionException { + try { + int _type = RULE_INT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:6656:10: ( ( '0' .. '9' )+ ) + // InternalGeneratorDSL.g:6656:12: ( '0' .. '9' )+ + { + // InternalGeneratorDSL.g:6656:12: ( '0' .. '9' )+ + int cnt5=0; + loop5: + do { + int alt5=2; + int LA5_0 = input.LA(1); + + if ( ((LA5_0>='0' && LA5_0<='9')) ) { + alt5=1; + } + + + switch (alt5) { + case 1 : + // InternalGeneratorDSL.g:6656:13: '0' .. '9' + { + matchRange('0','9'); + + } + break; + + default : + if ( cnt5 >= 1 ) break loop5; + EarlyExitException eee = + new EarlyExitException(5, input); + throw eee; + } + cnt5++; + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_INT" + + // $ANTLR start "RULE_ML_COMMENT" + public final void mRULE_ML_COMMENT() throws RecognitionException { + try { + int _type = RULE_ML_COMMENT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:6658:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // InternalGeneratorDSL.g:6658:19: '/*' ( options {greedy=false; } : . )* '*/' + { + match("/*"); + + // InternalGeneratorDSL.g:6658:24: ( options {greedy=false; } : . )* + loop6: + do { + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0=='*') ) { + int LA6_1 = input.LA(2); + + if ( (LA6_1=='/') ) { + alt6=2; + } + else if ( ((LA6_1>='\u0000' && LA6_1<='.')||(LA6_1>='0' && LA6_1<='\uFFFF')) ) { + alt6=1; + } + + + } + else if ( ((LA6_0>='\u0000' && LA6_0<=')')||(LA6_0>='+' && LA6_0<='\uFFFF')) ) { + alt6=1; + } + + + switch (alt6) { + case 1 : + // InternalGeneratorDSL.g:6658:52: . + { + matchAny(); + + } + break; + + default : + break loop6; + } + } while (true); + + match("*/"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ML_COMMENT" + + // $ANTLR start "RULE_SL_COMMENT" + public final void mRULE_SL_COMMENT() throws RecognitionException { + try { + int _type = RULE_SL_COMMENT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:6660:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) + // InternalGeneratorDSL.g:6660:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? + { + match("//"); + + // InternalGeneratorDSL.g:6660:24: (~ ( ( '\\n' | '\\r' ) ) )* + loop7: + do { + int alt7=2; + int LA7_0 = input.LA(1); + + if ( ((LA7_0>='\u0000' && LA7_0<='\t')||(LA7_0>='\u000B' && LA7_0<='\f')||(LA7_0>='\u000E' && LA7_0<='\uFFFF')) ) { + alt7=1; + } + + + switch (alt7) { + case 1 : + // InternalGeneratorDSL.g:6660:24: ~ ( ( '\\n' | '\\r' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop7; + } + } while (true); + + // InternalGeneratorDSL.g:6660:40: ( ( '\\r' )? '\\n' )? + int alt9=2; + int LA9_0 = input.LA(1); + + if ( (LA9_0=='\n'||LA9_0=='\r') ) { + alt9=1; + } + switch (alt9) { + case 1 : + // InternalGeneratorDSL.g:6660:41: ( '\\r' )? '\\n' + { + // InternalGeneratorDSL.g:6660:41: ( '\\r' )? + int alt8=2; + int LA8_0 = input.LA(1); + + if ( (LA8_0=='\r') ) { + alt8=1; + } + switch (alt8) { + case 1 : + // InternalGeneratorDSL.g:6660:41: '\\r' + { + match('\r'); + + } + break; + + } + + match('\n'); + + } + break; + + } + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_SL_COMMENT" + + // $ANTLR start "RULE_WS" + public final void mRULE_WS() throws RecognitionException { + try { + int _type = RULE_WS; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:6662:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // InternalGeneratorDSL.g:6662:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + { + // InternalGeneratorDSL.g:6662:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + int cnt10=0; + loop10: + do { + int alt10=2; + int LA10_0 = input.LA(1); + + if ( ((LA10_0>='\t' && LA10_0<='\n')||LA10_0=='\r'||LA10_0==' ') ) { + alt10=1; + } + + + switch (alt10) { + case 1 : + // InternalGeneratorDSL.g: + { + if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + if ( cnt10 >= 1 ) break loop10; + EarlyExitException eee = + new EarlyExitException(10, input); + throw eee; + } + cnt10++; + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_WS" + + // $ANTLR start "RULE_ANY_OTHER" + public final void mRULE_ANY_OTHER() throws RecognitionException { + try { + int _type = RULE_ANY_OTHER; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:6664:16: ( . ) + // InternalGeneratorDSL.g:6664:18: . + { + matchAny(); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ANY_OTHER" + + public void mTokens() throws RecognitionException { + // InternalGeneratorDSL.g:1:8: ( T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | RULE_STRING | RULE_QUOTED_ID | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) + int alt11=57; + alt11 = dfa11.predict(input); + switch (alt11) { + case 1 : + // InternalGeneratorDSL.g:1:10: T__12 + { + mT__12(); + + } + break; + case 2 : + // InternalGeneratorDSL.g:1:16: T__13 + { + mT__13(); + + } + break; + case 3 : + // InternalGeneratorDSL.g:1:22: T__14 + { + mT__14(); + + } + break; + case 4 : + // InternalGeneratorDSL.g:1:28: T__15 + { + mT__15(); + + } + break; + case 5 : + // InternalGeneratorDSL.g:1:34: T__16 + { + mT__16(); + + } + break; + case 6 : + // InternalGeneratorDSL.g:1:40: T__17 + { + mT__17(); + + } + break; + case 7 : + // InternalGeneratorDSL.g:1:46: T__18 + { + mT__18(); + + } + break; + case 8 : + // InternalGeneratorDSL.g:1:52: T__19 + { + mT__19(); + + } + break; + case 9 : + // InternalGeneratorDSL.g:1:58: T__20 + { + mT__20(); + + } + break; + case 10 : + // InternalGeneratorDSL.g:1:64: T__21 + { + mT__21(); + + } + break; + case 11 : + // InternalGeneratorDSL.g:1:70: T__22 + { + mT__22(); + + } + break; + case 12 : + // InternalGeneratorDSL.g:1:76: T__23 + { + mT__23(); + + } + break; + case 13 : + // InternalGeneratorDSL.g:1:82: T__24 + { + mT__24(); + + } + break; + case 14 : + // InternalGeneratorDSL.g:1:88: T__25 + { + mT__25(); + + } + break; + case 15 : + // InternalGeneratorDSL.g:1:94: T__26 + { + mT__26(); + + } + break; + case 16 : + // InternalGeneratorDSL.g:1:100: T__27 + { + mT__27(); + + } + break; + case 17 : + // InternalGeneratorDSL.g:1:106: T__28 + { + mT__28(); + + } + break; + case 18 : + // InternalGeneratorDSL.g:1:112: T__29 + { + mT__29(); + + } + break; + case 19 : + // InternalGeneratorDSL.g:1:118: T__30 + { + mT__30(); + + } + break; + case 20 : + // InternalGeneratorDSL.g:1:124: T__31 + { + mT__31(); + + } + break; + case 21 : + // InternalGeneratorDSL.g:1:130: T__32 + { + mT__32(); + + } + break; + case 22 : + // InternalGeneratorDSL.g:1:136: T__33 + { + mT__33(); + + } + break; + case 23 : + // InternalGeneratorDSL.g:1:142: T__34 + { + mT__34(); + + } + break; + case 24 : + // InternalGeneratorDSL.g:1:148: T__35 + { + mT__35(); + + } + break; + case 25 : + // InternalGeneratorDSL.g:1:154: T__36 + { + mT__36(); + + } + break; + case 26 : + // InternalGeneratorDSL.g:1:160: T__37 + { + mT__37(); + + } + break; + case 27 : + // InternalGeneratorDSL.g:1:166: T__38 + { + mT__38(); + + } + break; + case 28 : + // InternalGeneratorDSL.g:1:172: T__39 + { + mT__39(); + + } + break; + case 29 : + // InternalGeneratorDSL.g:1:178: T__40 + { + mT__40(); + + } + break; + case 30 : + // InternalGeneratorDSL.g:1:184: T__41 + { + mT__41(); + + } + break; + case 31 : + // InternalGeneratorDSL.g:1:190: T__42 + { + mT__42(); + + } + break; + case 32 : + // InternalGeneratorDSL.g:1:196: T__43 + { + mT__43(); + + } + break; + case 33 : + // InternalGeneratorDSL.g:1:202: T__44 + { + mT__44(); + + } + break; + case 34 : + // InternalGeneratorDSL.g:1:208: T__45 + { + mT__45(); + + } + break; + case 35 : + // InternalGeneratorDSL.g:1:214: T__46 + { + mT__46(); + + } + break; + case 36 : + // InternalGeneratorDSL.g:1:220: T__47 + { + mT__47(); + + } + break; + case 37 : + // InternalGeneratorDSL.g:1:226: T__48 + { + mT__48(); + + } + break; + case 38 : + // InternalGeneratorDSL.g:1:232: T__49 + { + mT__49(); + + } + break; + case 39 : + // InternalGeneratorDSL.g:1:238: T__50 + { + mT__50(); + + } + break; + case 40 : + // InternalGeneratorDSL.g:1:244: T__51 + { + mT__51(); + + } + break; + case 41 : + // InternalGeneratorDSL.g:1:250: T__52 + { + mT__52(); + + } + break; + case 42 : + // InternalGeneratorDSL.g:1:256: T__53 + { + mT__53(); + + } + break; + case 43 : + // InternalGeneratorDSL.g:1:262: T__54 + { + mT__54(); + + } + break; + case 44 : + // InternalGeneratorDSL.g:1:268: T__55 + { + mT__55(); + + } + break; + case 45 : + // InternalGeneratorDSL.g:1:274: T__56 + { + mT__56(); + + } + break; + case 46 : + // InternalGeneratorDSL.g:1:280: T__57 + { + mT__57(); + + } + break; + case 47 : + // InternalGeneratorDSL.g:1:286: T__58 + { + mT__58(); + + } + break; + case 48 : + // InternalGeneratorDSL.g:1:292: T__59 + { + mT__59(); + + } + break; + case 49 : + // InternalGeneratorDSL.g:1:298: T__60 + { + mT__60(); + + } + break; + case 50 : + // InternalGeneratorDSL.g:1:304: RULE_STRING + { + mRULE_STRING(); + + } + break; + case 51 : + // InternalGeneratorDSL.g:1:316: RULE_QUOTED_ID + { + mRULE_QUOTED_ID(); + + } + break; + case 52 : + // InternalGeneratorDSL.g:1:331: RULE_ID + { + mRULE_ID(); + + } + break; + case 53 : + // InternalGeneratorDSL.g:1:339: RULE_INT + { + mRULE_INT(); + + } + break; + case 54 : + // InternalGeneratorDSL.g:1:348: RULE_ML_COMMENT + { + mRULE_ML_COMMENT(); + + } + break; + case 55 : + // InternalGeneratorDSL.g:1:364: RULE_SL_COMMENT + { + mRULE_SL_COMMENT(); + + } + break; + case 56 : + // InternalGeneratorDSL.g:1:380: RULE_WS + { + mRULE_WS(); + + } + break; + case 57 : + // InternalGeneratorDSL.g:1:388: RULE_ANY_OTHER + { + mRULE_ANY_OTHER(); + + } + break; + + } + + } + + + protected DFA11 dfa11 = new DFA11(this); + static final String DFA11_eotS = + "\1\uffff\1\60\1\62\1\uffff\1\65\1\67\3\uffff\1\75\1\uffff\1\60\1\uffff\4\60\1\uffff\1\60\2\uffff\5\60\2\uffff\1\53\3\60\1\127\2\uffff\2\60\1\uffff\2\53\4\uffff\4\60\17\uffff\1\60\1\uffff\1\60\1\150\2\60\1\uffff\1\153\1\60\2\uffff\4\60\1\161\2\60\3\uffff\1\164\2\60\3\uffff\2\60\5\uffff\2\60\1\173\1\60\1\175\2\60\1\uffff\1\60\1\u0081\1\uffff\5\60\1\uffff\2\60\1\uffff\1\u0089\1\u008a\4\60\1\uffff\1\u008f\1\uffff\2\60\1\u0092\1\uffff\1\u0093\1\60\1\u0095\3\60\1\u0099\2\uffff\1\u009a\1\60\1\u009c\1\60\1\uffff\1\u009e\1\60\2\uffff\1\u00a0\1\uffff\3\60\2\uffff\1\u00a4\1\uffff\1\60\1\uffff\1\60\1\uffff\3\60\1\uffff\2\60\1\u00ac\2\60\1\u00b0\1\60\1\uffff\1\u00b2\1\60\1\u00b4\1\uffff\1\u00b6\1\uffff\1\60\1\uffff\1\u00b8\1\uffff\1\u00b9\2\uffff"; + static final String DFA11_eofS = + "\u00ba\uffff"; + static final String DFA11_minS = + "\1\0\1\141\1\75\1\uffff\2\75\3\uffff\1\52\1\uffff\1\163\1\uffff\1\145\1\156\1\157\1\156\1\uffff\1\157\2\uffff\1\151\1\141\1\160\1\156\1\141\2\uffff\1\75\1\122\1\117\1\116\1\101\2\uffff\2\141\1\uffff\2\0\4\uffff\1\154\1\156\1\162\1\157\17\uffff\1\145\1\uffff\1\156\1\60\1\157\1\144\1\uffff\1\60\1\165\2\uffff\1\151\1\164\1\155\1\160\1\60\1\146\1\164\3\uffff\1\60\1\122\1\104\3\uffff\2\154\5\uffff\1\163\1\143\1\60\1\155\1\60\1\156\1\145\1\uffff\1\160\1\60\1\uffff\1\145\1\164\1\150\1\160\1\154\1\uffff\1\151\1\141\1\uffff\2\60\1\154\1\165\1\145\1\164\1\uffff\1\60\1\uffff\1\147\1\162\1\60\1\uffff\1\60\1\145\1\60\1\154\1\171\1\156\1\60\2\uffff\1\60\1\145\1\60\1\151\1\uffff\1\60\1\141\2\uffff\1\60\1\uffff\1\145\2\151\2\uffff\1\60\1\uffff\1\157\1\uffff\1\164\1\uffff\1\163\1\156\1\164\1\uffff\1\156\1\157\1\60\1\147\1\151\1\60\1\162\1\uffff\1\60\1\157\1\60\1\uffff\1\60\1\uffff\1\156\1\uffff\1\60\1\uffff\1\60\2\uffff"; + static final String DFA11_maxS = + "\1\uffff\1\165\1\75\1\uffff\2\75\3\uffff\1\57\1\uffff\1\163\1\uffff\1\145\1\156\1\157\1\156\1\uffff\1\162\2\uffff\1\162\1\141\1\160\1\156\1\145\2\uffff\1\75\1\122\1\117\1\116\1\172\2\uffff\2\141\1\uffff\2\uffff\4\uffff\1\154\1\156\1\162\1\157\17\uffff\1\151\1\uffff\1\156\1\172\1\157\1\144\1\uffff\1\172\1\165\2\uffff\1\151\1\164\1\155\1\160\1\172\1\146\1\164\3\uffff\1\172\1\122\1\104\3\uffff\2\154\5\uffff\1\163\1\143\1\172\1\155\1\172\1\156\1\145\1\uffff\1\160\1\172\1\uffff\1\145\1\164\1\150\1\160\1\154\1\uffff\1\151\1\141\1\uffff\2\172\1\154\1\165\1\145\1\164\1\uffff\1\172\1\uffff\1\147\1\162\1\172\1\uffff\1\172\1\145\1\172\1\154\1\171\1\156\1\172\2\uffff\1\172\1\145\1\172\1\151\1\uffff\1\172\1\141\2\uffff\1\172\1\uffff\1\145\2\151\2\uffff\1\172\1\uffff\1\157\1\uffff\1\164\1\uffff\1\163\1\156\1\164\1\uffff\1\156\1\157\1\172\1\147\1\151\1\172\1\162\1\uffff\1\172\1\157\1\172\1\uffff\1\172\1\uffff\1\156\1\uffff\1\172\1\uffff\1\172\2\uffff"; + static final String DFA11_acceptS = + "\3\uffff\1\4\2\uffff\1\10\1\11\1\12\1\uffff\1\14\1\uffff\1\16\4\uffff\1\26\1\uffff\1\30\1\32\5\uffff\1\43\1\44\5\uffff\1\53\1\54\2\uffff\1\57\2\uffff\1\64\1\65\1\70\1\71\4\uffff\1\64\1\2\1\3\1\4\1\5\1\60\1\7\1\6\1\10\1\11\1\12\1\66\1\67\1\13\1\14\1\uffff\1\16\4\uffff\1\26\2\uffff\1\30\1\32\7\uffff\1\43\1\44\1\45\3\uffff\1\52\1\53\1\54\2\uffff\1\57\1\62\1\63\1\65\1\70\7\uffff\1\23\2\uffff\1\27\5\uffff\1\41\2\uffff\1\47\6\uffff\1\22\1\uffff\1\15\3\uffff\1\25\7\uffff\1\50\1\51\4\uffff\1\37\2\uffff\1\24\1\61\1\uffff\1\35\3\uffff\1\46\1\55\1\uffff\1\1\1\uffff\1\20\1\uffff\1\34\3\uffff\1\56\7\uffff\1\36\3\uffff\1\17\1\uffff\1\40\1\uffff\1\31\1\uffff\1\21\1\uffff\1\33\1\42"; + static final String DFA11_specialS = + "\1\1\45\uffff\1\2\1\0\u0092\uffff}>"; + static final String[] DFA11_transitionS = { + "\11\53\2\52\2\53\1\52\22\53\1\52\1\4\1\46\2\53\1\12\1\53\1\47\1\41\1\42\1\10\1\6\1\24\1\7\1\45\1\11\12\51\1\34\1\14\1\5\1\3\1\2\2\53\1\37\15\50\1\35\10\50\1\36\2\50\1\21\1\53\1\23\1\40\1\50\1\53\1\27\1\50\1\43\1\31\1\20\1\1\1\15\1\50\1\16\2\50\1\17\2\50\1\30\3\50\1\26\1\22\1\13\1\44\1\25\3\50\1\32\1\53\1\33\uff82\53", + "\1\54\15\uffff\1\56\2\uffff\1\57\2\uffff\1\55", + "\1\61", + "", + "\1\64", + "\1\66", + "", + "", + "", + "\1\73\4\uffff\1\74", + "", + "\1\77", + "", + "\1\101", + "\1\102", + "\1\103", + "\1\104", + "", + "\1\106\2\uffff\1\107", + "", + "", + "\1\113\10\uffff\1\112", + "\1\114", + "\1\115", + "\1\116", + "\1\120\3\uffff\1\117", + "", + "", + "\1\123", + "\1\124", + "\1\125", + "\1\126", + "\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "", + "\1\132", + "\1\133", + "", + "\0\135", + "\0\136", + "", + "", + "", + "", + "\1\141", + "\1\142", + "\1\143", + "\1\144", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "\1\145\3\uffff\1\146", + "", + "\1\147", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\151", + "\1\152", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\154", + "", + "", + "\1\155", + "\1\156", + "\1\157", + "\1\160", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\162", + "\1\163", + "", + "", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\165", + "\1\166", + "", + "", + "", + "\1\167", + "\1\170", + "", + "", + "", + "", + "", + "\1\171", + "\1\172", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\174", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\176", + "\1\177", + "", + "\1\u0080", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "\1\u0082", + "\1\u0083", + "\1\u0084", + "\1\u0085", + "\1\u0086", + "", + "\1\u0087", + "\1\u0088", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\u008b", + "\1\u008c", + "\1\u008d", + "\1\u008e", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "\1\u0090", + "\1\u0091", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\u0094", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\u0096", + "\1\u0097", + "\1\u0098", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\u009b", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\u009d", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\u009f", + "", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "\1\u00a1", + "\1\u00a2", + "\1\u00a3", + "", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "\1\u00a5", + "", + "\1\u00a6", + "", + "\1\u00a7", + "\1\u00a8", + "\1\u00a9", + "", + "\1\u00aa", + "\1\u00ab", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\u00ad", + "\1\u00ae", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\22\60\1\u00af\7\60", + "\1\u00b1", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "\1\u00b3", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\22\60\1\u00b5\7\60", + "", + "\1\u00b7", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "\12\60\7\uffff\32\60\4\uffff\1\60\1\uffff\32\60", + "", + "" + }; + + static final short[] DFA11_eot = DFA.unpackEncodedString(DFA11_eotS); + static final short[] DFA11_eof = DFA.unpackEncodedString(DFA11_eofS); + static final char[] DFA11_min = DFA.unpackEncodedStringToUnsignedChars(DFA11_minS); + static final char[] DFA11_max = DFA.unpackEncodedStringToUnsignedChars(DFA11_maxS); + static final short[] DFA11_accept = DFA.unpackEncodedString(DFA11_acceptS); + static final short[] DFA11_special = DFA.unpackEncodedString(DFA11_specialS); + static final short[][] DFA11_transition; + + static { + int numStates = DFA11_transitionS.length; + DFA11_transition = new short[numStates][]; + for (int i=0; i<numStates; i++) { + DFA11_transition[i] = DFA.unpackEncodedString(DFA11_transitionS[i]); + } + } + + class DFA11 extends DFA { + + public DFA11(BaseRecognizer recognizer) { + this.recognizer = recognizer; + this.decisionNumber = 11; + this.eot = DFA11_eot; + this.eof = DFA11_eof; + this.min = DFA11_min; + this.max = DFA11_max; + this.accept = DFA11_accept; + this.special = DFA11_special; + this.transition = DFA11_transition; + } + public String getDescription() { + return "1:1: Tokens : ( T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | RULE_STRING | RULE_QUOTED_ID | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );"; + } + public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { + IntStream input = _input; + int _s = s; + switch ( s ) { + case 0 : + int LA11_39 = input.LA(1); + + s = -1; + if ( ((LA11_39>='\u0000' && LA11_39<='\uFFFF')) ) {s = 94;} + + else s = 43; + + if ( s>=0 ) return s; + break; + case 1 : + int LA11_0 = input.LA(1); + + s = -1; + if ( (LA11_0=='f') ) {s = 1;} + + else if ( (LA11_0=='>') ) {s = 2;} + + else if ( (LA11_0=='=') ) {s = 3;} + + else if ( (LA11_0=='!') ) {s = 4;} + + else if ( (LA11_0=='<') ) {s = 5;} + + else if ( (LA11_0=='+') ) {s = 6;} + + else if ( (LA11_0=='-') ) {s = 7;} + + else if ( (LA11_0=='*') ) {s = 8;} + + else if ( (LA11_0=='/') ) {s = 9;} + + else if ( (LA11_0=='%') ) {s = 10;} + + else if ( (LA11_0=='u') ) {s = 11;} + + else if ( (LA11_0==';') ) {s = 12;} + + else if ( (LA11_0=='g') ) {s = 13;} + + else if ( (LA11_0=='i') ) {s = 14;} + + else if ( (LA11_0=='l') ) {s = 15;} + + else if ( (LA11_0=='e') ) {s = 16;} + + else if ( (LA11_0=='[') ) {s = 17;} + + else if ( (LA11_0=='t') ) {s = 18;} + + else if ( (LA11_0==']') ) {s = 19;} + + else if ( (LA11_0==',') ) {s = 20;} + + else if ( (LA11_0=='w') ) {s = 21;} + + else if ( (LA11_0=='s') ) {s = 22;} + + else if ( (LA11_0=='a') ) {s = 23;} + + else if ( (LA11_0=='o') ) {s = 24;} + + else if ( (LA11_0=='d') ) {s = 25;} + + else if ( (LA11_0=='{') ) {s = 26;} + + else if ( (LA11_0=='}') ) {s = 27;} + + else if ( (LA11_0==':') ) {s = 28;} + + else if ( (LA11_0=='O') ) {s = 29;} + + else if ( (LA11_0=='X') ) {s = 30;} + + else if ( (LA11_0=='A') ) {s = 31;} + + else if ( (LA11_0=='^') ) {s = 32;} + + else if ( (LA11_0=='(') ) {s = 33;} + + else if ( (LA11_0==')') ) {s = 34;} + + else if ( (LA11_0=='c') ) {s = 35;} + + else if ( (LA11_0=='v') ) {s = 36;} + + else if ( (LA11_0=='.') ) {s = 37;} + + else if ( (LA11_0=='\"') ) {s = 38;} + + else if ( (LA11_0=='\'') ) {s = 39;} + + else if ( ((LA11_0>='B' && LA11_0<='N')||(LA11_0>='P' && LA11_0<='W')||(LA11_0>='Y' && LA11_0<='Z')||LA11_0=='_'||LA11_0=='b'||LA11_0=='h'||(LA11_0>='j' && LA11_0<='k')||(LA11_0>='m' && LA11_0<='n')||(LA11_0>='p' && LA11_0<='r')||(LA11_0>='x' && LA11_0<='z')) ) {s = 40;} + + else if ( ((LA11_0>='0' && LA11_0<='9')) ) {s = 41;} + + else if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {s = 42;} + + else if ( ((LA11_0>='\u0000' && LA11_0<='\b')||(LA11_0>='\u000B' && LA11_0<='\f')||(LA11_0>='\u000E' && LA11_0<='\u001F')||(LA11_0>='#' && LA11_0<='$')||LA11_0=='&'||(LA11_0>='?' && LA11_0<='@')||LA11_0=='\\'||LA11_0=='`'||LA11_0=='|'||(LA11_0>='~' && LA11_0<='\uFFFF')) ) {s = 43;} + + if ( s>=0 ) return s; + break; + case 2 : + int LA11_38 = input.LA(1); + + s = -1; + if ( ((LA11_38>='\u0000' && LA11_38<='\uFFFF')) ) {s = 93;} + + else s = 43; + + if ( s>=0 ) return s; + break; + } + NoViableAltException nvae = + new NoViableAltException(getDescription(), 11, _s, input); + error(nvae); + throw nvae; + } + } + + +} \ No newline at end of file diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSLParser.java b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSLParser.java new file mode 100644 index 00000000..2947bc61 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src-gen/de/evoal/languages/model/generator/dsl/ide/contentassist/antlr/internal/InternalGeneratorDSLParser.java @@ -0,0 +1,20130 @@ +package de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.internal; + +import java.io.InputStream; +import org.eclipse.xtext.*; +import org.eclipse.xtext.parser.*; +import org.eclipse.xtext.parser.impl.*; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser; +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.DFA; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; + + + +import org.antlr.runtime.*; +import java.util.Stack; +import java.util.List; +import java.util.ArrayList; + +@SuppressWarnings("all") +public class InternalGeneratorDSLParser extends AbstractInternalContentAssistParser { + public static final String[] tokenNames = new String[] { + "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_QUOTED_ID", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'false'", "'>='", "'>'", "'='", "'!='", "'<'", "'<='", "'+'", "'-'", "'*'", "'/'", "'%'", "'use'", "';'", "'function'", "'using'", "'generator'", "'for'", "'in'", "'loop'", "'end'", "'['", "'to'", "']'", "'functions'", "','", "'generators'", "'write'", "'with'", "'samples'", "'from'", "'applying'", "'on'", "'definition'", "'{'", "'}'", "':='", "'data'", "'OR'", "'XOR'", "'AND'", "'^'", "'('", "')'", "'call'", "'value'", "'.'", "'!'", "'true'" + }; + public static final int T__50=50; + public static final int T__19=19; + public static final int T__15=15; + public static final int T__59=59; + public static final int T__16=16; + public static final int T__17=17; + public static final int T__18=18; + public static final int T__55=55; + public static final int T__12=12; + public static final int T__56=56; + public static final int T__13=13; + public static final int T__57=57; + public static final int T__14=14; + public static final int T__58=58; + public static final int T__51=51; + public static final int T__52=52; + public static final int T__53=53; + public static final int T__54=54; + public static final int T__60=60; + public static final int RULE_ID=5; + public static final int RULE_QUOTED_ID=4; + public static final int T__26=26; + public static final int T__27=27; + public static final int T__28=28; + public static final int RULE_INT=6; + public static final int T__29=29; + public static final int T__22=22; + public static final int RULE_ML_COMMENT=8; + public static final int T__23=23; + public static final int T__24=24; + public static final int T__25=25; + public static final int T__20=20; + public static final int T__21=21; + public static final int RULE_STRING=7; + public static final int RULE_SL_COMMENT=9; + public static final int T__37=37; + public static final int T__38=38; + public static final int T__39=39; + public static final int T__33=33; + public static final int T__34=34; + public static final int T__35=35; + public static final int T__36=36; + public static final int EOF=-1; + public static final int T__30=30; + public static final int T__31=31; + public static final int T__32=32; + public static final int RULE_WS=10; + public static final int RULE_ANY_OTHER=11; + public static final int T__48=48; + public static final int T__49=49; + public static final int T__44=44; + public static final int T__45=45; + public static final int T__46=46; + public static final int T__47=47; + public static final int T__40=40; + public static final int T__41=41; + public static final int T__42=42; + public static final int T__43=43; + + // delegates + // delegators + + + public InternalGeneratorDSLParser(TokenStream input) { + this(input, new RecognizerSharedState()); + } + public InternalGeneratorDSLParser(TokenStream input, RecognizerSharedState state) { + super(input, state); + + } + + + public String[] getTokenNames() { return InternalGeneratorDSLParser.tokenNames; } + public String getGrammarFileName() { return "InternalGeneratorDSL.g"; } + + + private GeneratorDSLGrammarAccess grammarAccess; + + public void setGrammarAccess(GeneratorDSLGrammarAccess grammarAccess) { + this.grammarAccess = grammarAccess; + } + + @Override + protected Grammar getGrammar() { + return grammarAccess.getGrammar(); + } + + @Override + protected String getValueForTokenName(String tokenName) { + return tokenName; + } + + + + // $ANTLR start "entryRuleConfigurationRule" + // InternalGeneratorDSL.g:53:1: entryRuleConfigurationRule : ruleConfigurationRule EOF ; + public final void entryRuleConfigurationRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:54:1: ( ruleConfigurationRule EOF ) + // InternalGeneratorDSL.g:55:1: ruleConfigurationRule EOF + { + before(grammarAccess.getConfigurationRuleRule()); + pushFollow(FOLLOW_1); + ruleConfigurationRule(); + + state._fsp--; + + after(grammarAccess.getConfigurationRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleConfigurationRule" + + + // $ANTLR start "ruleConfigurationRule" + // InternalGeneratorDSL.g:62:1: ruleConfigurationRule : ( ( rule__ConfigurationRule__Group__0 ) ) ; + public final void ruleConfigurationRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:66:2: ( ( ( rule__ConfigurationRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:67:2: ( ( rule__ConfigurationRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:67:2: ( ( rule__ConfigurationRule__Group__0 ) ) + // InternalGeneratorDSL.g:68:3: ( rule__ConfigurationRule__Group__0 ) + { + before(grammarAccess.getConfigurationRuleAccess().getGroup()); + // InternalGeneratorDSL.g:69:3: ( rule__ConfigurationRule__Group__0 ) + // InternalGeneratorDSL.g:69:4: rule__ConfigurationRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ConfigurationRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getConfigurationRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleConfigurationRule" + + + // $ANTLR start "entryRuleUseRule" + // InternalGeneratorDSL.g:78:1: entryRuleUseRule : ruleUseRule EOF ; + public final void entryRuleUseRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:79:1: ( ruleUseRule EOF ) + // InternalGeneratorDSL.g:80:1: ruleUseRule EOF + { + before(grammarAccess.getUseRuleRule()); + pushFollow(FOLLOW_1); + ruleUseRule(); + + state._fsp--; + + after(grammarAccess.getUseRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleUseRule" + + + // $ANTLR start "ruleUseRule" + // InternalGeneratorDSL.g:87:1: ruleUseRule : ( ( rule__UseRule__Group__0 ) ) ; + public final void ruleUseRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:91:2: ( ( ( rule__UseRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:92:2: ( ( rule__UseRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:92:2: ( ( rule__UseRule__Group__0 ) ) + // InternalGeneratorDSL.g:93:3: ( rule__UseRule__Group__0 ) + { + before(grammarAccess.getUseRuleAccess().getGroup()); + // InternalGeneratorDSL.g:94:3: ( rule__UseRule__Group__0 ) + // InternalGeneratorDSL.g:94:4: rule__UseRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__UseRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getUseRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleUseRule" + + + // $ANTLR start "entryRuleParametrizedFunctionDefinitionRule" + // InternalGeneratorDSL.g:103:1: entryRuleParametrizedFunctionDefinitionRule : ruleParametrizedFunctionDefinitionRule EOF ; + public final void entryRuleParametrizedFunctionDefinitionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:104:1: ( ruleParametrizedFunctionDefinitionRule EOF ) + // InternalGeneratorDSL.g:105:1: ruleParametrizedFunctionDefinitionRule EOF + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); + pushFollow(FOLLOW_1); + ruleParametrizedFunctionDefinitionRule(); + + state._fsp--; + + after(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleParametrizedFunctionDefinitionRule" + + + // $ANTLR start "ruleParametrizedFunctionDefinitionRule" + // InternalGeneratorDSL.g:112:1: ruleParametrizedFunctionDefinitionRule : ( ( rule__ParametrizedFunctionDefinitionRule__Group__0 ) ) ; + public final void ruleParametrizedFunctionDefinitionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:116:2: ( ( ( rule__ParametrizedFunctionDefinitionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:117:2: ( ( rule__ParametrizedFunctionDefinitionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:117:2: ( ( rule__ParametrizedFunctionDefinitionRule__Group__0 ) ) + // InternalGeneratorDSL.g:118:3: ( rule__ParametrizedFunctionDefinitionRule__Group__0 ) + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:119:3: ( rule__ParametrizedFunctionDefinitionRule__Group__0 ) + // InternalGeneratorDSL.g:119:4: rule__ParametrizedFunctionDefinitionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleParametrizedFunctionDefinitionRule" + + + // $ANTLR start "entryRuleGeneratorDefinitionRule" + // InternalGeneratorDSL.g:128:1: entryRuleGeneratorDefinitionRule : ruleGeneratorDefinitionRule EOF ; + public final void entryRuleGeneratorDefinitionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:129:1: ( ruleGeneratorDefinitionRule EOF ) + // InternalGeneratorDSL.g:130:1: ruleGeneratorDefinitionRule EOF + { + before(grammarAccess.getGeneratorDefinitionRuleRule()); + pushFollow(FOLLOW_1); + ruleGeneratorDefinitionRule(); + + state._fsp--; + + after(grammarAccess.getGeneratorDefinitionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleGeneratorDefinitionRule" + + + // $ANTLR start "ruleGeneratorDefinitionRule" + // InternalGeneratorDSL.g:137:1: ruleGeneratorDefinitionRule : ( ( rule__GeneratorDefinitionRule__Group__0 ) ) ; + public final void ruleGeneratorDefinitionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:141:2: ( ( ( rule__GeneratorDefinitionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:142:2: ( ( rule__GeneratorDefinitionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:142:2: ( ( rule__GeneratorDefinitionRule__Group__0 ) ) + // InternalGeneratorDSL.g:143:3: ( rule__GeneratorDefinitionRule__Group__0 ) + { + before(grammarAccess.getGeneratorDefinitionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:144:3: ( rule__GeneratorDefinitionRule__Group__0 ) + // InternalGeneratorDSL.g:144:4: rule__GeneratorDefinitionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorDefinitionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleGeneratorDefinitionRule" + + + // $ANTLR start "entryRuleStatementRule" + // InternalGeneratorDSL.g:153:1: entryRuleStatementRule : ruleStatementRule EOF ; + public final void entryRuleStatementRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:154:1: ( ruleStatementRule EOF ) + // InternalGeneratorDSL.g:155:1: ruleStatementRule EOF + { + before(grammarAccess.getStatementRuleRule()); + pushFollow(FOLLOW_1); + ruleStatementRule(); + + state._fsp--; + + after(grammarAccess.getStatementRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleStatementRule" + + + // $ANTLR start "ruleStatementRule" + // InternalGeneratorDSL.g:162:1: ruleStatementRule : ( ( rule__StatementRule__Alternatives ) ) ; + public final void ruleStatementRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:166:2: ( ( ( rule__StatementRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:167:2: ( ( rule__StatementRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:167:2: ( ( rule__StatementRule__Alternatives ) ) + // InternalGeneratorDSL.g:168:3: ( rule__StatementRule__Alternatives ) + { + before(grammarAccess.getStatementRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:169:3: ( rule__StatementRule__Alternatives ) + // InternalGeneratorDSL.g:169:4: rule__StatementRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__StatementRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getStatementRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleStatementRule" + + + // $ANTLR start "entryRuleForStatementRule" + // InternalGeneratorDSL.g:178:1: entryRuleForStatementRule : ruleForStatementRule EOF ; + public final void entryRuleForStatementRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:179:1: ( ruleForStatementRule EOF ) + // InternalGeneratorDSL.g:180:1: ruleForStatementRule EOF + { + before(grammarAccess.getForStatementRuleRule()); + pushFollow(FOLLOW_1); + ruleForStatementRule(); + + state._fsp--; + + after(grammarAccess.getForStatementRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleForStatementRule" + + + // $ANTLR start "ruleForStatementRule" + // InternalGeneratorDSL.g:187:1: ruleForStatementRule : ( ( rule__ForStatementRule__Group__0 ) ) ; + public final void ruleForStatementRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:191:2: ( ( ( rule__ForStatementRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:192:2: ( ( rule__ForStatementRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:192:2: ( ( rule__ForStatementRule__Group__0 ) ) + // InternalGeneratorDSL.g:193:3: ( rule__ForStatementRule__Group__0 ) + { + before(grammarAccess.getForStatementRuleAccess().getGroup()); + // InternalGeneratorDSL.g:194:3: ( rule__ForStatementRule__Group__0 ) + // InternalGeneratorDSL.g:194:4: rule__ForStatementRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ForStatementRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getForStatementRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleForStatementRule" + + + // $ANTLR start "entryRuleRangeRule" + // InternalGeneratorDSL.g:203:1: entryRuleRangeRule : ruleRangeRule EOF ; + public final void entryRuleRangeRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:204:1: ( ruleRangeRule EOF ) + // InternalGeneratorDSL.g:205:1: ruleRangeRule EOF + { + before(grammarAccess.getRangeRuleRule()); + pushFollow(FOLLOW_1); + ruleRangeRule(); + + state._fsp--; + + after(grammarAccess.getRangeRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleRangeRule" + + + // $ANTLR start "ruleRangeRule" + // InternalGeneratorDSL.g:212:1: ruleRangeRule : ( ( rule__RangeRule__Alternatives ) ) ; + public final void ruleRangeRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:216:2: ( ( ( rule__RangeRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:217:2: ( ( rule__RangeRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:217:2: ( ( rule__RangeRule__Alternatives ) ) + // InternalGeneratorDSL.g:218:3: ( rule__RangeRule__Alternatives ) + { + before(grammarAccess.getRangeRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:219:3: ( rule__RangeRule__Alternatives ) + // InternalGeneratorDSL.g:219:4: rule__RangeRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__RangeRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getRangeRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleRangeRule" + + + // $ANTLR start "entryRuleCounterRangeRule" + // InternalGeneratorDSL.g:228:1: entryRuleCounterRangeRule : ruleCounterRangeRule EOF ; + public final void entryRuleCounterRangeRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:229:1: ( ruleCounterRangeRule EOF ) + // InternalGeneratorDSL.g:230:1: ruleCounterRangeRule EOF + { + before(grammarAccess.getCounterRangeRuleRule()); + pushFollow(FOLLOW_1); + ruleCounterRangeRule(); + + state._fsp--; + + after(grammarAccess.getCounterRangeRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleCounterRangeRule" + + + // $ANTLR start "ruleCounterRangeRule" + // InternalGeneratorDSL.g:237:1: ruleCounterRangeRule : ( ( rule__CounterRangeRule__Group__0 ) ) ; + public final void ruleCounterRangeRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:241:2: ( ( ( rule__CounterRangeRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:242:2: ( ( rule__CounterRangeRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:242:2: ( ( rule__CounterRangeRule__Group__0 ) ) + // InternalGeneratorDSL.g:243:3: ( rule__CounterRangeRule__Group__0 ) + { + before(grammarAccess.getCounterRangeRuleAccess().getGroup()); + // InternalGeneratorDSL.g:244:3: ( rule__CounterRangeRule__Group__0 ) + // InternalGeneratorDSL.g:244:4: rule__CounterRangeRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__CounterRangeRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getCounterRangeRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleCounterRangeRule" + + + // $ANTLR start "entryRuleFunctionsRule" + // InternalGeneratorDSL.g:253:1: entryRuleFunctionsRule : ruleFunctionsRule EOF ; + public final void entryRuleFunctionsRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:254:1: ( ruleFunctionsRule EOF ) + // InternalGeneratorDSL.g:255:1: ruleFunctionsRule EOF + { + before(grammarAccess.getFunctionsRuleRule()); + pushFollow(FOLLOW_1); + ruleFunctionsRule(); + + state._fsp--; + + after(grammarAccess.getFunctionsRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleFunctionsRule" + + + // $ANTLR start "ruleFunctionsRule" + // InternalGeneratorDSL.g:262:1: ruleFunctionsRule : ( ( rule__FunctionsRule__Group__0 ) ) ; + public final void ruleFunctionsRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:266:2: ( ( ( rule__FunctionsRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:267:2: ( ( rule__FunctionsRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:267:2: ( ( rule__FunctionsRule__Group__0 ) ) + // InternalGeneratorDSL.g:268:3: ( rule__FunctionsRule__Group__0 ) + { + before(grammarAccess.getFunctionsRuleAccess().getGroup()); + // InternalGeneratorDSL.g:269:3: ( rule__FunctionsRule__Group__0 ) + // InternalGeneratorDSL.g:269:4: rule__FunctionsRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__FunctionsRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionsRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleFunctionsRule" + + + // $ANTLR start "entryRuleFunctionReferencesRule" + // InternalGeneratorDSL.g:278:1: entryRuleFunctionReferencesRule : ruleFunctionReferencesRule EOF ; + public final void entryRuleFunctionReferencesRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:279:1: ( ruleFunctionReferencesRule EOF ) + // InternalGeneratorDSL.g:280:1: ruleFunctionReferencesRule EOF + { + before(grammarAccess.getFunctionReferencesRuleRule()); + pushFollow(FOLLOW_1); + ruleFunctionReferencesRule(); + + state._fsp--; + + after(grammarAccess.getFunctionReferencesRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleFunctionReferencesRule" + + + // $ANTLR start "ruleFunctionReferencesRule" + // InternalGeneratorDSL.g:287:1: ruleFunctionReferencesRule : ( ( rule__FunctionReferencesRule__Group__0 ) ) ; + public final void ruleFunctionReferencesRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:291:2: ( ( ( rule__FunctionReferencesRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:292:2: ( ( rule__FunctionReferencesRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:292:2: ( ( rule__FunctionReferencesRule__Group__0 ) ) + // InternalGeneratorDSL.g:293:3: ( rule__FunctionReferencesRule__Group__0 ) + { + before(grammarAccess.getFunctionReferencesRuleAccess().getGroup()); + // InternalGeneratorDSL.g:294:3: ( rule__FunctionReferencesRule__Group__0 ) + // InternalGeneratorDSL.g:294:4: rule__FunctionReferencesRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionReferencesRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleFunctionReferencesRule" + + + // $ANTLR start "entryRuleGeneratorsRule" + // InternalGeneratorDSL.g:303:1: entryRuleGeneratorsRule : ruleGeneratorsRule EOF ; + public final void entryRuleGeneratorsRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:304:1: ( ruleGeneratorsRule EOF ) + // InternalGeneratorDSL.g:305:1: ruleGeneratorsRule EOF + { + before(grammarAccess.getGeneratorsRuleRule()); + pushFollow(FOLLOW_1); + ruleGeneratorsRule(); + + state._fsp--; + + after(grammarAccess.getGeneratorsRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleGeneratorsRule" + + + // $ANTLR start "ruleGeneratorsRule" + // InternalGeneratorDSL.g:312:1: ruleGeneratorsRule : ( ( rule__GeneratorsRule__Group__0 ) ) ; + public final void ruleGeneratorsRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:316:2: ( ( ( rule__GeneratorsRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:317:2: ( ( rule__GeneratorsRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:317:2: ( ( rule__GeneratorsRule__Group__0 ) ) + // InternalGeneratorDSL.g:318:3: ( rule__GeneratorsRule__Group__0 ) + { + before(grammarAccess.getGeneratorsRuleAccess().getGroup()); + // InternalGeneratorDSL.g:319:3: ( rule__GeneratorsRule__Group__0 ) + // InternalGeneratorDSL.g:319:4: rule__GeneratorsRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__GeneratorsRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorsRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleGeneratorsRule" + + + // $ANTLR start "entryRuleGeneratorReferencesRule" + // InternalGeneratorDSL.g:328:1: entryRuleGeneratorReferencesRule : ruleGeneratorReferencesRule EOF ; + public final void entryRuleGeneratorReferencesRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:329:1: ( ruleGeneratorReferencesRule EOF ) + // InternalGeneratorDSL.g:330:1: ruleGeneratorReferencesRule EOF + { + before(grammarAccess.getGeneratorReferencesRuleRule()); + pushFollow(FOLLOW_1); + ruleGeneratorReferencesRule(); + + state._fsp--; + + after(grammarAccess.getGeneratorReferencesRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleGeneratorReferencesRule" + + + // $ANTLR start "ruleGeneratorReferencesRule" + // InternalGeneratorDSL.g:337:1: ruleGeneratorReferencesRule : ( ( rule__GeneratorReferencesRule__Group__0 ) ) ; + public final void ruleGeneratorReferencesRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:341:2: ( ( ( rule__GeneratorReferencesRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:342:2: ( ( rule__GeneratorReferencesRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:342:2: ( ( rule__GeneratorReferencesRule__Group__0 ) ) + // InternalGeneratorDSL.g:343:3: ( rule__GeneratorReferencesRule__Group__0 ) + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getGroup()); + // InternalGeneratorDSL.g:344:3: ( rule__GeneratorReferencesRule__Group__0 ) + // InternalGeneratorDSL.g:344:4: rule__GeneratorReferencesRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorReferencesRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleGeneratorReferencesRule" + + + // $ANTLR start "entryRuleApplyStatementRule" + // InternalGeneratorDSL.g:353:1: entryRuleApplyStatementRule : ruleApplyStatementRule EOF ; + public final void entryRuleApplyStatementRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:354:1: ( ruleApplyStatementRule EOF ) + // InternalGeneratorDSL.g:355:1: ruleApplyStatementRule EOF + { + before(grammarAccess.getApplyStatementRuleRule()); + pushFollow(FOLLOW_1); + ruleApplyStatementRule(); + + state._fsp--; + + after(grammarAccess.getApplyStatementRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleApplyStatementRule" + + + // $ANTLR start "ruleApplyStatementRule" + // InternalGeneratorDSL.g:362:1: ruleApplyStatementRule : ( ( rule__ApplyStatementRule__Group__0 ) ) ; + public final void ruleApplyStatementRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:366:2: ( ( ( rule__ApplyStatementRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:367:2: ( ( rule__ApplyStatementRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:367:2: ( ( rule__ApplyStatementRule__Group__0 ) ) + // InternalGeneratorDSL.g:368:3: ( rule__ApplyStatementRule__Group__0 ) + { + before(grammarAccess.getApplyStatementRuleAccess().getGroup()); + // InternalGeneratorDSL.g:369:3: ( rule__ApplyStatementRule__Group__0 ) + // InternalGeneratorDSL.g:369:4: rule__ApplyStatementRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getApplyStatementRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleApplyStatementRule" + + + // $ANTLR start "entryRuleGeneratorReferenceRule" + // InternalGeneratorDSL.g:378:1: entryRuleGeneratorReferenceRule : ruleGeneratorReferenceRule EOF ; + public final void entryRuleGeneratorReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:379:1: ( ruleGeneratorReferenceRule EOF ) + // InternalGeneratorDSL.g:380:1: ruleGeneratorReferenceRule EOF + { + before(grammarAccess.getGeneratorReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleGeneratorReferenceRule(); + + state._fsp--; + + after(grammarAccess.getGeneratorReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleGeneratorReferenceRule" + + + // $ANTLR start "ruleGeneratorReferenceRule" + // InternalGeneratorDSL.g:387:1: ruleGeneratorReferenceRule : ( ( rule__GeneratorReferenceRule__Alternatives ) ) ; + public final void ruleGeneratorReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:391:2: ( ( ( rule__GeneratorReferenceRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:392:2: ( ( rule__GeneratorReferenceRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:392:2: ( ( rule__GeneratorReferenceRule__Alternatives ) ) + // InternalGeneratorDSL.g:393:3: ( rule__GeneratorReferenceRule__Alternatives ) + { + before(grammarAccess.getGeneratorReferenceRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:394:3: ( rule__GeneratorReferenceRule__Alternatives ) + // InternalGeneratorDSL.g:394:4: rule__GeneratorReferenceRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__GeneratorReferenceRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorReferenceRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleGeneratorReferenceRule" + + + // $ANTLR start "entryRuleGeneratorDefinitionReferenceRule" + // InternalGeneratorDSL.g:403:1: entryRuleGeneratorDefinitionReferenceRule : ruleGeneratorDefinitionReferenceRule EOF ; + public final void entryRuleGeneratorDefinitionReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:404:1: ( ruleGeneratorDefinitionReferenceRule EOF ) + // InternalGeneratorDSL.g:405:1: ruleGeneratorDefinitionReferenceRule EOF + { + before(grammarAccess.getGeneratorDefinitionReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleGeneratorDefinitionReferenceRule(); + + state._fsp--; + + after(grammarAccess.getGeneratorDefinitionReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleGeneratorDefinitionReferenceRule" + + + // $ANTLR start "ruleGeneratorDefinitionReferenceRule" + // InternalGeneratorDSL.g:412:1: ruleGeneratorDefinitionReferenceRule : ( ( rule__GeneratorDefinitionReferenceRule__Group__0 ) ) ; + public final void ruleGeneratorDefinitionReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:416:2: ( ( ( rule__GeneratorDefinitionReferenceRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:417:2: ( ( rule__GeneratorDefinitionReferenceRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:417:2: ( ( rule__GeneratorDefinitionReferenceRule__Group__0 ) ) + // InternalGeneratorDSL.g:418:3: ( rule__GeneratorDefinitionReferenceRule__Group__0 ) + { + before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGroup()); + // InternalGeneratorDSL.g:419:3: ( rule__GeneratorDefinitionReferenceRule__Group__0 ) + // InternalGeneratorDSL.g:419:4: rule__GeneratorDefinitionReferenceRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionReferenceRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleGeneratorDefinitionReferenceRule" + + + // $ANTLR start "entryRuleFunctionReferenceRule" + // InternalGeneratorDSL.g:428:1: entryRuleFunctionReferenceRule : ruleFunctionReferenceRule EOF ; + public final void entryRuleFunctionReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:429:1: ( ruleFunctionReferenceRule EOF ) + // InternalGeneratorDSL.g:430:1: ruleFunctionReferenceRule EOF + { + before(grammarAccess.getFunctionReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleFunctionReferenceRule(); + + state._fsp--; + + after(grammarAccess.getFunctionReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleFunctionReferenceRule" + + + // $ANTLR start "ruleFunctionReferenceRule" + // InternalGeneratorDSL.g:437:1: ruleFunctionReferenceRule : ( ( rule__FunctionReferenceRule__Alternatives ) ) ; + public final void ruleFunctionReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:441:2: ( ( ( rule__FunctionReferenceRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:442:2: ( ( rule__FunctionReferenceRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:442:2: ( ( rule__FunctionReferenceRule__Alternatives ) ) + // InternalGeneratorDSL.g:443:3: ( rule__FunctionReferenceRule__Alternatives ) + { + before(grammarAccess.getFunctionReferenceRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:444:3: ( rule__FunctionReferenceRule__Alternatives ) + // InternalGeneratorDSL.g:444:4: rule__FunctionReferenceRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__FunctionReferenceRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionReferenceRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleFunctionReferenceRule" + + + // $ANTLR start "entryRuleFunctionDefReferenceRule" + // InternalGeneratorDSL.g:453:1: entryRuleFunctionDefReferenceRule : ruleFunctionDefReferenceRule EOF ; + public final void entryRuleFunctionDefReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:454:1: ( ruleFunctionDefReferenceRule EOF ) + // InternalGeneratorDSL.g:455:1: ruleFunctionDefReferenceRule EOF + { + before(grammarAccess.getFunctionDefReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleFunctionDefReferenceRule(); + + state._fsp--; + + after(grammarAccess.getFunctionDefReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleFunctionDefReferenceRule" + + + // $ANTLR start "ruleFunctionDefReferenceRule" + // InternalGeneratorDSL.g:462:1: ruleFunctionDefReferenceRule : ( ( rule__FunctionDefReferenceRule__Alternatives ) ) ; + public final void ruleFunctionDefReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:466:2: ( ( ( rule__FunctionDefReferenceRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:467:2: ( ( rule__FunctionDefReferenceRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:467:2: ( ( rule__FunctionDefReferenceRule__Alternatives ) ) + // InternalGeneratorDSL.g:468:3: ( rule__FunctionDefReferenceRule__Alternatives ) + { + before(grammarAccess.getFunctionDefReferenceRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:469:3: ( rule__FunctionDefReferenceRule__Alternatives ) + // InternalGeneratorDSL.g:469:4: rule__FunctionDefReferenceRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__FunctionDefReferenceRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionDefReferenceRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleFunctionDefReferenceRule" + + + // $ANTLR start "entryRuleLoopVariableReference" + // InternalGeneratorDSL.g:478:1: entryRuleLoopVariableReference : ruleLoopVariableReference EOF ; + public final void entryRuleLoopVariableReference() throws RecognitionException { + try { + // InternalGeneratorDSL.g:479:1: ( ruleLoopVariableReference EOF ) + // InternalGeneratorDSL.g:480:1: ruleLoopVariableReference EOF + { + before(grammarAccess.getLoopVariableReferenceRule()); + pushFollow(FOLLOW_1); + ruleLoopVariableReference(); + + state._fsp--; + + after(grammarAccess.getLoopVariableReferenceRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleLoopVariableReference" + + + // $ANTLR start "ruleLoopVariableReference" + // InternalGeneratorDSL.g:487:1: ruleLoopVariableReference : ( ( rule__LoopVariableReference__Group__0 ) ) ; + public final void ruleLoopVariableReference() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:491:2: ( ( ( rule__LoopVariableReference__Group__0 ) ) ) + // InternalGeneratorDSL.g:492:2: ( ( rule__LoopVariableReference__Group__0 ) ) + { + // InternalGeneratorDSL.g:492:2: ( ( rule__LoopVariableReference__Group__0 ) ) + // InternalGeneratorDSL.g:493:3: ( rule__LoopVariableReference__Group__0 ) + { + before(grammarAccess.getLoopVariableReferenceAccess().getGroup()); + // InternalGeneratorDSL.g:494:3: ( rule__LoopVariableReference__Group__0 ) + // InternalGeneratorDSL.g:494:4: rule__LoopVariableReference__Group__0 + { + pushFollow(FOLLOW_2); + rule__LoopVariableReference__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getLoopVariableReferenceAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleLoopVariableReference" + + + // $ANTLR start "entryRuleFunctionDefinitionReferenceRule" + // InternalGeneratorDSL.g:503:1: entryRuleFunctionDefinitionReferenceRule : ruleFunctionDefinitionReferenceRule EOF ; + public final void entryRuleFunctionDefinitionReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:504:1: ( ruleFunctionDefinitionReferenceRule EOF ) + // InternalGeneratorDSL.g:505:1: ruleFunctionDefinitionReferenceRule EOF + { + before(grammarAccess.getFunctionDefinitionReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleFunctionDefinitionReferenceRule(); + + state._fsp--; + + after(grammarAccess.getFunctionDefinitionReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleFunctionDefinitionReferenceRule" + + + // $ANTLR start "ruleFunctionDefinitionReferenceRule" + // InternalGeneratorDSL.g:512:1: ruleFunctionDefinitionReferenceRule : ( ( rule__FunctionDefinitionReferenceRule__Group__0 ) ) ; + public final void ruleFunctionDefinitionReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:516:2: ( ( ( rule__FunctionDefinitionReferenceRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:517:2: ( ( rule__FunctionDefinitionReferenceRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:517:2: ( ( rule__FunctionDefinitionReferenceRule__Group__0 ) ) + // InternalGeneratorDSL.g:518:3: ( rule__FunctionDefinitionReferenceRule__Group__0 ) + { + before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getGroup()); + // InternalGeneratorDSL.g:519:3: ( rule__FunctionDefinitionReferenceRule__Group__0 ) + // InternalGeneratorDSL.g:519:4: rule__FunctionDefinitionReferenceRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__FunctionDefinitionReferenceRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleFunctionDefinitionReferenceRule" + + + // $ANTLR start "entryRuleParametrizedFunctionDefinitionReferenceRule" + // InternalGeneratorDSL.g:528:1: entryRuleParametrizedFunctionDefinitionReferenceRule : ruleParametrizedFunctionDefinitionReferenceRule EOF ; + public final void entryRuleParametrizedFunctionDefinitionReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:529:1: ( ruleParametrizedFunctionDefinitionReferenceRule EOF ) + // InternalGeneratorDSL.g:530:1: ruleParametrizedFunctionDefinitionReferenceRule EOF + { + before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleParametrizedFunctionDefinitionReferenceRule(); + + state._fsp--; + + after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleParametrizedFunctionDefinitionReferenceRule" + + + // $ANTLR start "ruleParametrizedFunctionDefinitionReferenceRule" + // InternalGeneratorDSL.g:537:1: ruleParametrizedFunctionDefinitionReferenceRule : ( ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 ) ) ; + public final void ruleParametrizedFunctionDefinitionReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:541:2: ( ( ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:542:2: ( ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:542:2: ( ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 ) ) + // InternalGeneratorDSL.g:543:3: ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 ) + { + before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getGroup()); + // InternalGeneratorDSL.g:544:3: ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 ) + // InternalGeneratorDSL.g:544:4: rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionReferenceRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleParametrizedFunctionDefinitionReferenceRule" + + + // $ANTLR start "entryRuleInstanceRule" + // InternalGeneratorDSL.g:553:1: entryRuleInstanceRule : ruleInstanceRule EOF ; + public final void entryRuleInstanceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:554:1: ( ruleInstanceRule EOF ) + // InternalGeneratorDSL.g:555:1: ruleInstanceRule EOF + { + before(grammarAccess.getInstanceRuleRule()); + pushFollow(FOLLOW_1); + ruleInstanceRule(); + + state._fsp--; + + after(grammarAccess.getInstanceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleInstanceRule" + + + // $ANTLR start "ruleInstanceRule" + // InternalGeneratorDSL.g:562:1: ruleInstanceRule : ( ( rule__InstanceRule__Group__0 ) ) ; + public final void ruleInstanceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:566:2: ( ( ( rule__InstanceRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:567:2: ( ( rule__InstanceRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:567:2: ( ( rule__InstanceRule__Group__0 ) ) + // InternalGeneratorDSL.g:568:3: ( rule__InstanceRule__Group__0 ) + { + before(grammarAccess.getInstanceRuleAccess().getGroup()); + // InternalGeneratorDSL.g:569:3: ( rule__InstanceRule__Group__0 ) + // InternalGeneratorDSL.g:569:4: rule__InstanceRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__InstanceRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getInstanceRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleInstanceRule" + + + // $ANTLR start "entryRuleAttributeRule" + // InternalGeneratorDSL.g:578:1: entryRuleAttributeRule : ruleAttributeRule EOF ; + public final void entryRuleAttributeRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:579:1: ( ruleAttributeRule EOF ) + // InternalGeneratorDSL.g:580:1: ruleAttributeRule EOF + { + before(grammarAccess.getAttributeRuleRule()); + pushFollow(FOLLOW_1); + ruleAttributeRule(); + + state._fsp--; + + after(grammarAccess.getAttributeRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleAttributeRule" + + + // $ANTLR start "ruleAttributeRule" + // InternalGeneratorDSL.g:587:1: ruleAttributeRule : ( ( rule__AttributeRule__Group__0 ) ) ; + public final void ruleAttributeRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:591:2: ( ( ( rule__AttributeRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:592:2: ( ( rule__AttributeRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:592:2: ( ( rule__AttributeRule__Group__0 ) ) + // InternalGeneratorDSL.g:593:3: ( rule__AttributeRule__Group__0 ) + { + before(grammarAccess.getAttributeRuleAccess().getGroup()); + // InternalGeneratorDSL.g:594:3: ( rule__AttributeRule__Group__0 ) + // InternalGeneratorDSL.g:594:4: rule__AttributeRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__AttributeRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getAttributeRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleAttributeRule" + + + // $ANTLR start "entryRuleNameOrMiscRule" + // InternalGeneratorDSL.g:603:1: entryRuleNameOrMiscRule : ruleNameOrMiscRule EOF ; + public final void entryRuleNameOrMiscRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:604:1: ( ruleNameOrMiscRule EOF ) + // InternalGeneratorDSL.g:605:1: ruleNameOrMiscRule EOF + { + before(grammarAccess.getNameOrMiscRuleRule()); + pushFollow(FOLLOW_1); + ruleNameOrMiscRule(); + + state._fsp--; + + after(grammarAccess.getNameOrMiscRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleNameOrMiscRule" + + + // $ANTLR start "ruleNameOrMiscRule" + // InternalGeneratorDSL.g:612:1: ruleNameOrMiscRule : ( ( rule__NameOrMiscRule__Alternatives ) ) ; + public final void ruleNameOrMiscRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:616:2: ( ( ( rule__NameOrMiscRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:617:2: ( ( rule__NameOrMiscRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:617:2: ( ( rule__NameOrMiscRule__Alternatives ) ) + // InternalGeneratorDSL.g:618:3: ( rule__NameOrMiscRule__Alternatives ) + { + before(grammarAccess.getNameOrMiscRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:619:3: ( rule__NameOrMiscRule__Alternatives ) + // InternalGeneratorDSL.g:619:4: rule__NameOrMiscRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__NameOrMiscRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getNameOrMiscRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleNameOrMiscRule" + + + // $ANTLR start "entryRuleNameRule" + // InternalGeneratorDSL.g:628:1: entryRuleNameRule : ruleNameRule EOF ; + public final void entryRuleNameRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:629:1: ( ruleNameRule EOF ) + // InternalGeneratorDSL.g:630:1: ruleNameRule EOF + { + before(grammarAccess.getNameRuleRule()); + pushFollow(FOLLOW_1); + ruleNameRule(); + + state._fsp--; + + after(grammarAccess.getNameRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleNameRule" + + + // $ANTLR start "ruleNameRule" + // InternalGeneratorDSL.g:637:1: ruleNameRule : ( ( rule__NameRule__NameAssignment ) ) ; + public final void ruleNameRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:641:2: ( ( ( rule__NameRule__NameAssignment ) ) ) + // InternalGeneratorDSL.g:642:2: ( ( rule__NameRule__NameAssignment ) ) + { + // InternalGeneratorDSL.g:642:2: ( ( rule__NameRule__NameAssignment ) ) + // InternalGeneratorDSL.g:643:3: ( rule__NameRule__NameAssignment ) + { + before(grammarAccess.getNameRuleAccess().getNameAssignment()); + // InternalGeneratorDSL.g:644:3: ( rule__NameRule__NameAssignment ) + // InternalGeneratorDSL.g:644:4: rule__NameRule__NameAssignment + { + pushFollow(FOLLOW_2); + rule__NameRule__NameAssignment(); + + state._fsp--; + + + } + + after(grammarAccess.getNameRuleAccess().getNameAssignment()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleNameRule" + + + // $ANTLR start "entryRuleMiscRule" + // InternalGeneratorDSL.g:653:1: entryRuleMiscRule : ruleMiscRule EOF ; + public final void entryRuleMiscRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:654:1: ( ruleMiscRule EOF ) + // InternalGeneratorDSL.g:655:1: ruleMiscRule EOF + { + before(grammarAccess.getMiscRuleRule()); + pushFollow(FOLLOW_1); + ruleMiscRule(); + + state._fsp--; + + after(grammarAccess.getMiscRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleMiscRule" + + + // $ANTLR start "ruleMiscRule" + // InternalGeneratorDSL.g:662:1: ruleMiscRule : ( ( rule__MiscRule__NameAssignment ) ) ; + public final void ruleMiscRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:666:2: ( ( ( rule__MiscRule__NameAssignment ) ) ) + // InternalGeneratorDSL.g:667:2: ( ( rule__MiscRule__NameAssignment ) ) + { + // InternalGeneratorDSL.g:667:2: ( ( rule__MiscRule__NameAssignment ) ) + // InternalGeneratorDSL.g:668:3: ( rule__MiscRule__NameAssignment ) + { + before(grammarAccess.getMiscRuleAccess().getNameAssignment()); + // InternalGeneratorDSL.g:669:3: ( rule__MiscRule__NameAssignment ) + // InternalGeneratorDSL.g:669:4: rule__MiscRule__NameAssignment + { + pushFollow(FOLLOW_2); + rule__MiscRule__NameAssignment(); + + state._fsp--; + + + } + + after(grammarAccess.getMiscRuleAccess().getNameAssignment()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleMiscRule" + + + // $ANTLR start "entryRuleValueRule" + // InternalGeneratorDSL.g:678:1: entryRuleValueRule : ruleValueRule EOF ; + public final void entryRuleValueRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:679:1: ( ruleValueRule EOF ) + // InternalGeneratorDSL.g:680:1: ruleValueRule EOF + { + before(grammarAccess.getValueRuleRule()); + pushFollow(FOLLOW_1); + ruleValueRule(); + + state._fsp--; + + after(grammarAccess.getValueRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleValueRule" + + + // $ANTLR start "ruleValueRule" + // InternalGeneratorDSL.g:687:1: ruleValueRule : ( ( rule__ValueRule__Alternatives ) ) ; + public final void ruleValueRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:691:2: ( ( ( rule__ValueRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:692:2: ( ( rule__ValueRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:692:2: ( ( rule__ValueRule__Alternatives ) ) + // InternalGeneratorDSL.g:693:3: ( rule__ValueRule__Alternatives ) + { + before(grammarAccess.getValueRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:694:3: ( rule__ValueRule__Alternatives ) + // InternalGeneratorDSL.g:694:4: rule__ValueRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__ValueRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getValueRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleValueRule" + + + // $ANTLR start "entryRuleArrayRule" + // InternalGeneratorDSL.g:703:1: entryRuleArrayRule : ruleArrayRule EOF ; + public final void entryRuleArrayRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:704:1: ( ruleArrayRule EOF ) + // InternalGeneratorDSL.g:705:1: ruleArrayRule EOF + { + before(grammarAccess.getArrayRuleRule()); + pushFollow(FOLLOW_1); + ruleArrayRule(); + + state._fsp--; + + after(grammarAccess.getArrayRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleArrayRule" + + + // $ANTLR start "ruleArrayRule" + // InternalGeneratorDSL.g:712:1: ruleArrayRule : ( ( rule__ArrayRule__Group__0 ) ) ; + public final void ruleArrayRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:716:2: ( ( ( rule__ArrayRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:717:2: ( ( rule__ArrayRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:717:2: ( ( rule__ArrayRule__Group__0 ) ) + // InternalGeneratorDSL.g:718:3: ( rule__ArrayRule__Group__0 ) + { + before(grammarAccess.getArrayRuleAccess().getGroup()); + // InternalGeneratorDSL.g:719:3: ( rule__ArrayRule__Group__0 ) + // InternalGeneratorDSL.g:719:4: rule__ArrayRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ArrayRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getArrayRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleArrayRule" + + + // $ANTLR start "entryRuleLiteralValueRule" + // InternalGeneratorDSL.g:728:1: entryRuleLiteralValueRule : ruleLiteralValueRule EOF ; + public final void entryRuleLiteralValueRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:729:1: ( ruleLiteralValueRule EOF ) + // InternalGeneratorDSL.g:730:1: ruleLiteralValueRule EOF + { + before(grammarAccess.getLiteralValueRuleRule()); + pushFollow(FOLLOW_1); + ruleLiteralValueRule(); + + state._fsp--; + + after(grammarAccess.getLiteralValueRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleLiteralValueRule" + + + // $ANTLR start "ruleLiteralValueRule" + // InternalGeneratorDSL.g:737:1: ruleLiteralValueRule : ( ( rule__LiteralValueRule__LiteralAssignment ) ) ; + public final void ruleLiteralValueRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:741:2: ( ( ( rule__LiteralValueRule__LiteralAssignment ) ) ) + // InternalGeneratorDSL.g:742:2: ( ( rule__LiteralValueRule__LiteralAssignment ) ) + { + // InternalGeneratorDSL.g:742:2: ( ( rule__LiteralValueRule__LiteralAssignment ) ) + // InternalGeneratorDSL.g:743:3: ( rule__LiteralValueRule__LiteralAssignment ) + { + before(grammarAccess.getLiteralValueRuleAccess().getLiteralAssignment()); + // InternalGeneratorDSL.g:744:3: ( rule__LiteralValueRule__LiteralAssignment ) + // InternalGeneratorDSL.g:744:4: rule__LiteralValueRule__LiteralAssignment + { + pushFollow(FOLLOW_2); + rule__LiteralValueRule__LiteralAssignment(); + + state._fsp--; + + + } + + after(grammarAccess.getLiteralValueRuleAccess().getLiteralAssignment()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleLiteralValueRule" + + + // $ANTLR start "entryRuleDataReferenceRule" + // InternalGeneratorDSL.g:753:1: entryRuleDataReferenceRule : ruleDataReferenceRule EOF ; + public final void entryRuleDataReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:754:1: ( ruleDataReferenceRule EOF ) + // InternalGeneratorDSL.g:755:1: ruleDataReferenceRule EOF + { + before(grammarAccess.getDataReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleDataReferenceRule(); + + state._fsp--; + + after(grammarAccess.getDataReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleDataReferenceRule" + + + // $ANTLR start "ruleDataReferenceRule" + // InternalGeneratorDSL.g:762:1: ruleDataReferenceRule : ( ( rule__DataReferenceRule__Group__0 ) ) ; + public final void ruleDataReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:766:2: ( ( ( rule__DataReferenceRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:767:2: ( ( rule__DataReferenceRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:767:2: ( ( rule__DataReferenceRule__Group__0 ) ) + // InternalGeneratorDSL.g:768:3: ( rule__DataReferenceRule__Group__0 ) + { + before(grammarAccess.getDataReferenceRuleAccess().getGroup()); + // InternalGeneratorDSL.g:769:3: ( rule__DataReferenceRule__Group__0 ) + // InternalGeneratorDSL.g:769:4: rule__DataReferenceRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__DataReferenceRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getDataReferenceRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleDataReferenceRule" + + + // $ANTLR start "entryRuleExpressionRule" + // InternalGeneratorDSL.g:778:1: entryRuleExpressionRule : ruleExpressionRule EOF ; + public final void entryRuleExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:779:1: ( ruleExpressionRule EOF ) + // InternalGeneratorDSL.g:780:1: ruleExpressionRule EOF + { + before(grammarAccess.getExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleExpressionRule(); + + state._fsp--; + + after(grammarAccess.getExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleExpressionRule" + + + // $ANTLR start "ruleExpressionRule" + // InternalGeneratorDSL.g:787:1: ruleExpressionRule : ( ruleOrExpressionRule ) ; + public final void ruleExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:791:2: ( ( ruleOrExpressionRule ) ) + // InternalGeneratorDSL.g:792:2: ( ruleOrExpressionRule ) + { + // InternalGeneratorDSL.g:792:2: ( ruleOrExpressionRule ) + // InternalGeneratorDSL.g:793:3: ruleOrExpressionRule + { + before(grammarAccess.getExpressionRuleAccess().getOrExpressionRuleParserRuleCall()); + pushFollow(FOLLOW_2); + ruleOrExpressionRule(); + + state._fsp--; + + after(grammarAccess.getExpressionRuleAccess().getOrExpressionRuleParserRuleCall()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleExpressionRule" + + + // $ANTLR start "entryRuleOrExpressionRule" + // InternalGeneratorDSL.g:803:1: entryRuleOrExpressionRule : ruleOrExpressionRule EOF ; + public final void entryRuleOrExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:804:1: ( ruleOrExpressionRule EOF ) + // InternalGeneratorDSL.g:805:1: ruleOrExpressionRule EOF + { + before(grammarAccess.getOrExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleOrExpressionRule(); + + state._fsp--; + + after(grammarAccess.getOrExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleOrExpressionRule" + + + // $ANTLR start "ruleOrExpressionRule" + // InternalGeneratorDSL.g:812:1: ruleOrExpressionRule : ( ( rule__OrExpressionRule__Group__0 ) ) ; + public final void ruleOrExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:816:2: ( ( ( rule__OrExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:817:2: ( ( rule__OrExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:817:2: ( ( rule__OrExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:818:3: ( rule__OrExpressionRule__Group__0 ) + { + before(grammarAccess.getOrExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:819:3: ( rule__OrExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:819:4: rule__OrExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__OrExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getOrExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleOrExpressionRule" + + + // $ANTLR start "entryRuleXorExpressionRule" + // InternalGeneratorDSL.g:828:1: entryRuleXorExpressionRule : ruleXorExpressionRule EOF ; + public final void entryRuleXorExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:829:1: ( ruleXorExpressionRule EOF ) + // InternalGeneratorDSL.g:830:1: ruleXorExpressionRule EOF + { + before(grammarAccess.getXorExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleXorExpressionRule(); + + state._fsp--; + + after(grammarAccess.getXorExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleXorExpressionRule" + + + // $ANTLR start "ruleXorExpressionRule" + // InternalGeneratorDSL.g:837:1: ruleXorExpressionRule : ( ( rule__XorExpressionRule__Group__0 ) ) ; + public final void ruleXorExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:841:2: ( ( ( rule__XorExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:842:2: ( ( rule__XorExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:842:2: ( ( rule__XorExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:843:3: ( rule__XorExpressionRule__Group__0 ) + { + before(grammarAccess.getXorExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:844:3: ( rule__XorExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:844:4: rule__XorExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__XorExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getXorExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleXorExpressionRule" + + + // $ANTLR start "entryRuleAndExpressionRule" + // InternalGeneratorDSL.g:853:1: entryRuleAndExpressionRule : ruleAndExpressionRule EOF ; + public final void entryRuleAndExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:854:1: ( ruleAndExpressionRule EOF ) + // InternalGeneratorDSL.g:855:1: ruleAndExpressionRule EOF + { + before(grammarAccess.getAndExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleAndExpressionRule(); + + state._fsp--; + + after(grammarAccess.getAndExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleAndExpressionRule" + + + // $ANTLR start "ruleAndExpressionRule" + // InternalGeneratorDSL.g:862:1: ruleAndExpressionRule : ( ( rule__AndExpressionRule__Group__0 ) ) ; + public final void ruleAndExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:866:2: ( ( ( rule__AndExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:867:2: ( ( rule__AndExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:867:2: ( ( rule__AndExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:868:3: ( rule__AndExpressionRule__Group__0 ) + { + before(grammarAccess.getAndExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:869:3: ( rule__AndExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:869:4: rule__AndExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__AndExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getAndExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleAndExpressionRule" + + + // $ANTLR start "entryRuleNotExpressionRule" + // InternalGeneratorDSL.g:878:1: entryRuleNotExpressionRule : ruleNotExpressionRule EOF ; + public final void entryRuleNotExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:879:1: ( ruleNotExpressionRule EOF ) + // InternalGeneratorDSL.g:880:1: ruleNotExpressionRule EOF + { + before(grammarAccess.getNotExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleNotExpressionRule(); + + state._fsp--; + + after(grammarAccess.getNotExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleNotExpressionRule" + + + // $ANTLR start "ruleNotExpressionRule" + // InternalGeneratorDSL.g:887:1: ruleNotExpressionRule : ( ( rule__NotExpressionRule__Group__0 ) ) ; + public final void ruleNotExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:891:2: ( ( ( rule__NotExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:892:2: ( ( rule__NotExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:892:2: ( ( rule__NotExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:893:3: ( rule__NotExpressionRule__Group__0 ) + { + before(grammarAccess.getNotExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:894:3: ( rule__NotExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:894:4: rule__NotExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__NotExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getNotExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleNotExpressionRule" + + + // $ANTLR start "entryRuleComparisonExpressionRule" + // InternalGeneratorDSL.g:903:1: entryRuleComparisonExpressionRule : ruleComparisonExpressionRule EOF ; + public final void entryRuleComparisonExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:904:1: ( ruleComparisonExpressionRule EOF ) + // InternalGeneratorDSL.g:905:1: ruleComparisonExpressionRule EOF + { + before(grammarAccess.getComparisonExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleComparisonExpressionRule(); + + state._fsp--; + + after(grammarAccess.getComparisonExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleComparisonExpressionRule" + + + // $ANTLR start "ruleComparisonExpressionRule" + // InternalGeneratorDSL.g:912:1: ruleComparisonExpressionRule : ( ( rule__ComparisonExpressionRule__Group__0 ) ) ; + public final void ruleComparisonExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:916:2: ( ( ( rule__ComparisonExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:917:2: ( ( rule__ComparisonExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:917:2: ( ( rule__ComparisonExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:918:3: ( rule__ComparisonExpressionRule__Group__0 ) + { + before(grammarAccess.getComparisonExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:919:3: ( rule__ComparisonExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:919:4: rule__ComparisonExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ComparisonExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getComparisonExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleComparisonExpressionRule" + + + // $ANTLR start "entryRulePartialComparisonExpressionRule" + // InternalGeneratorDSL.g:928:1: entryRulePartialComparisonExpressionRule : rulePartialComparisonExpressionRule EOF ; + public final void entryRulePartialComparisonExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:929:1: ( rulePartialComparisonExpressionRule EOF ) + // InternalGeneratorDSL.g:930:1: rulePartialComparisonExpressionRule EOF + { + before(grammarAccess.getPartialComparisonExpressionRuleRule()); + pushFollow(FOLLOW_1); + rulePartialComparisonExpressionRule(); + + state._fsp--; + + after(grammarAccess.getPartialComparisonExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRulePartialComparisonExpressionRule" + + + // $ANTLR start "rulePartialComparisonExpressionRule" + // InternalGeneratorDSL.g:937:1: rulePartialComparisonExpressionRule : ( ( rule__PartialComparisonExpressionRule__Group__0 ) ) ; + public final void rulePartialComparisonExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:941:2: ( ( ( rule__PartialComparisonExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:942:2: ( ( rule__PartialComparisonExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:942:2: ( ( rule__PartialComparisonExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:943:3: ( rule__PartialComparisonExpressionRule__Group__0 ) + { + before(grammarAccess.getPartialComparisonExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:944:3: ( rule__PartialComparisonExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:944:4: rule__PartialComparisonExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__PartialComparisonExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getPartialComparisonExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rulePartialComparisonExpressionRule" + + + // $ANTLR start "entryRuleAddOrSubtractExpressionRule" + // InternalGeneratorDSL.g:953:1: entryRuleAddOrSubtractExpressionRule : ruleAddOrSubtractExpressionRule EOF ; + public final void entryRuleAddOrSubtractExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:954:1: ( ruleAddOrSubtractExpressionRule EOF ) + // InternalGeneratorDSL.g:955:1: ruleAddOrSubtractExpressionRule EOF + { + before(grammarAccess.getAddOrSubtractExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleAddOrSubtractExpressionRule(); + + state._fsp--; + + after(grammarAccess.getAddOrSubtractExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleAddOrSubtractExpressionRule" + + + // $ANTLR start "ruleAddOrSubtractExpressionRule" + // InternalGeneratorDSL.g:962:1: ruleAddOrSubtractExpressionRule : ( ( rule__AddOrSubtractExpressionRule__Group__0 ) ) ; + public final void ruleAddOrSubtractExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:966:2: ( ( ( rule__AddOrSubtractExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:967:2: ( ( rule__AddOrSubtractExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:967:2: ( ( rule__AddOrSubtractExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:968:3: ( rule__AddOrSubtractExpressionRule__Group__0 ) + { + before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:969:3: ( rule__AddOrSubtractExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:969:4: rule__AddOrSubtractExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__AddOrSubtractExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleAddOrSubtractExpressionRule" + + + // $ANTLR start "entryRuleMultiplyDivideModuloExpressionRule" + // InternalGeneratorDSL.g:978:1: entryRuleMultiplyDivideModuloExpressionRule : ruleMultiplyDivideModuloExpressionRule EOF ; + public final void entryRuleMultiplyDivideModuloExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:979:1: ( ruleMultiplyDivideModuloExpressionRule EOF ) + // InternalGeneratorDSL.g:980:1: ruleMultiplyDivideModuloExpressionRule EOF + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleMultiplyDivideModuloExpressionRule(); + + state._fsp--; + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleMultiplyDivideModuloExpressionRule" + + + // $ANTLR start "ruleMultiplyDivideModuloExpressionRule" + // InternalGeneratorDSL.g:987:1: ruleMultiplyDivideModuloExpressionRule : ( ( rule__MultiplyDivideModuloExpressionRule__Group__0 ) ) ; + public final void ruleMultiplyDivideModuloExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:991:2: ( ( ( rule__MultiplyDivideModuloExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:992:2: ( ( rule__MultiplyDivideModuloExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:992:2: ( ( rule__MultiplyDivideModuloExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:993:3: ( rule__MultiplyDivideModuloExpressionRule__Group__0 ) + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:994:3: ( rule__MultiplyDivideModuloExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:994:4: rule__MultiplyDivideModuloExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleMultiplyDivideModuloExpressionRule" + + + // $ANTLR start "entryRulePowerOfExpressionRule" + // InternalGeneratorDSL.g:1003:1: entryRulePowerOfExpressionRule : rulePowerOfExpressionRule EOF ; + public final void entryRulePowerOfExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1004:1: ( rulePowerOfExpressionRule EOF ) + // InternalGeneratorDSL.g:1005:1: rulePowerOfExpressionRule EOF + { + before(grammarAccess.getPowerOfExpressionRuleRule()); + pushFollow(FOLLOW_1); + rulePowerOfExpressionRule(); + + state._fsp--; + + after(grammarAccess.getPowerOfExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRulePowerOfExpressionRule" + + + // $ANTLR start "rulePowerOfExpressionRule" + // InternalGeneratorDSL.g:1012:1: rulePowerOfExpressionRule : ( ( rule__PowerOfExpressionRule__Group__0 ) ) ; + public final void rulePowerOfExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1016:2: ( ( ( rule__PowerOfExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:1017:2: ( ( rule__PowerOfExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:1017:2: ( ( rule__PowerOfExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:1018:3: ( rule__PowerOfExpressionRule__Group__0 ) + { + before(grammarAccess.getPowerOfExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:1019:3: ( rule__PowerOfExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:1019:4: rule__PowerOfExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__PowerOfExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getPowerOfExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rulePowerOfExpressionRule" + + + // $ANTLR start "entryRuleUnaryAddOrSubtractExpressionRule" + // InternalGeneratorDSL.g:1028:1: entryRuleUnaryAddOrSubtractExpressionRule : ruleUnaryAddOrSubtractExpressionRule EOF ; + public final void entryRuleUnaryAddOrSubtractExpressionRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1029:1: ( ruleUnaryAddOrSubtractExpressionRule EOF ) + // InternalGeneratorDSL.g:1030:1: ruleUnaryAddOrSubtractExpressionRule EOF + { + before(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); + pushFollow(FOLLOW_1); + ruleUnaryAddOrSubtractExpressionRule(); + + state._fsp--; + + after(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleUnaryAddOrSubtractExpressionRule" + + + // $ANTLR start "ruleUnaryAddOrSubtractExpressionRule" + // InternalGeneratorDSL.g:1037:1: ruleUnaryAddOrSubtractExpressionRule : ( ( rule__UnaryAddOrSubtractExpressionRule__Group__0 ) ) ; + public final void ruleUnaryAddOrSubtractExpressionRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1041:2: ( ( ( rule__UnaryAddOrSubtractExpressionRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:1042:2: ( ( rule__UnaryAddOrSubtractExpressionRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:1042:2: ( ( rule__UnaryAddOrSubtractExpressionRule__Group__0 ) ) + // InternalGeneratorDSL.g:1043:3: ( rule__UnaryAddOrSubtractExpressionRule__Group__0 ) + { + before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getGroup()); + // InternalGeneratorDSL.g:1044:3: ( rule__UnaryAddOrSubtractExpressionRule__Group__0 ) + // InternalGeneratorDSL.g:1044:4: rule__UnaryAddOrSubtractExpressionRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__UnaryAddOrSubtractExpressionRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleUnaryAddOrSubtractExpressionRule" + + + // $ANTLR start "entryRuleLiteralOrReferenceRule" + // InternalGeneratorDSL.g:1053:1: entryRuleLiteralOrReferenceRule : ruleLiteralOrReferenceRule EOF ; + public final void entryRuleLiteralOrReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1054:1: ( ruleLiteralOrReferenceRule EOF ) + // InternalGeneratorDSL.g:1055:1: ruleLiteralOrReferenceRule EOF + { + before(grammarAccess.getLiteralOrReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleLiteralOrReferenceRule(); + + state._fsp--; + + after(grammarAccess.getLiteralOrReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleLiteralOrReferenceRule" + + + // $ANTLR start "ruleLiteralOrReferenceRule" + // InternalGeneratorDSL.g:1062:1: ruleLiteralOrReferenceRule : ( ( rule__LiteralOrReferenceRule__Alternatives ) ) ; + public final void ruleLiteralOrReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1066:2: ( ( ( rule__LiteralOrReferenceRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:1067:2: ( ( rule__LiteralOrReferenceRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:1067:2: ( ( rule__LiteralOrReferenceRule__Alternatives ) ) + // InternalGeneratorDSL.g:1068:3: ( rule__LiteralOrReferenceRule__Alternatives ) + { + before(grammarAccess.getLiteralOrReferenceRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:1069:3: ( rule__LiteralOrReferenceRule__Alternatives ) + // InternalGeneratorDSL.g:1069:4: rule__LiteralOrReferenceRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__LiteralOrReferenceRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getLiteralOrReferenceRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleLiteralOrReferenceRule" + + + // $ANTLR start "entryRuleParanthesesRule" + // InternalGeneratorDSL.g:1078:1: entryRuleParanthesesRule : ruleParanthesesRule EOF ; + public final void entryRuleParanthesesRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1079:1: ( ruleParanthesesRule EOF ) + // InternalGeneratorDSL.g:1080:1: ruleParanthesesRule EOF + { + before(grammarAccess.getParanthesesRuleRule()); + pushFollow(FOLLOW_1); + ruleParanthesesRule(); + + state._fsp--; + + after(grammarAccess.getParanthesesRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleParanthesesRule" + + + // $ANTLR start "ruleParanthesesRule" + // InternalGeneratorDSL.g:1087:1: ruleParanthesesRule : ( ( rule__ParanthesesRule__Group__0 ) ) ; + public final void ruleParanthesesRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1091:2: ( ( ( rule__ParanthesesRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:1092:2: ( ( rule__ParanthesesRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:1092:2: ( ( rule__ParanthesesRule__Group__0 ) ) + // InternalGeneratorDSL.g:1093:3: ( rule__ParanthesesRule__Group__0 ) + { + before(grammarAccess.getParanthesesRuleAccess().getGroup()); + // InternalGeneratorDSL.g:1094:3: ( rule__ParanthesesRule__Group__0 ) + // InternalGeneratorDSL.g:1094:4: rule__ParanthesesRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ParanthesesRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getParanthesesRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleParanthesesRule" + + + // $ANTLR start "entryRuleCallRule" + // InternalGeneratorDSL.g:1103:1: entryRuleCallRule : ruleCallRule EOF ; + public final void entryRuleCallRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1104:1: ( ruleCallRule EOF ) + // InternalGeneratorDSL.g:1105:1: ruleCallRule EOF + { + before(grammarAccess.getCallRuleRule()); + pushFollow(FOLLOW_1); + ruleCallRule(); + + state._fsp--; + + after(grammarAccess.getCallRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleCallRule" + + + // $ANTLR start "ruleCallRule" + // InternalGeneratorDSL.g:1112:1: ruleCallRule : ( ( rule__CallRule__Group__0 ) ) ; + public final void ruleCallRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1116:2: ( ( ( rule__CallRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:1117:2: ( ( rule__CallRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:1117:2: ( ( rule__CallRule__Group__0 ) ) + // InternalGeneratorDSL.g:1118:3: ( rule__CallRule__Group__0 ) + { + before(grammarAccess.getCallRuleAccess().getGroup()); + // InternalGeneratorDSL.g:1119:3: ( rule__CallRule__Group__0 ) + // InternalGeneratorDSL.g:1119:4: rule__CallRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__CallRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getCallRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleCallRule" + + + // $ANTLR start "entryRuleFunctionNameRule" + // InternalGeneratorDSL.g:1128:1: entryRuleFunctionNameRule : ruleFunctionNameRule EOF ; + public final void entryRuleFunctionNameRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1129:1: ( ruleFunctionNameRule EOF ) + // InternalGeneratorDSL.g:1130:1: ruleFunctionNameRule EOF + { + before(grammarAccess.getFunctionNameRuleRule()); + pushFollow(FOLLOW_1); + ruleFunctionNameRule(); + + state._fsp--; + + after(grammarAccess.getFunctionNameRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleFunctionNameRule" + + + // $ANTLR start "ruleFunctionNameRule" + // InternalGeneratorDSL.g:1137:1: ruleFunctionNameRule : ( ( rule__FunctionNameRule__Group__0 ) ) ; + public final void ruleFunctionNameRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1141:2: ( ( ( rule__FunctionNameRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:1142:2: ( ( rule__FunctionNameRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:1142:2: ( ( rule__FunctionNameRule__Group__0 ) ) + // InternalGeneratorDSL.g:1143:3: ( rule__FunctionNameRule__Group__0 ) + { + before(grammarAccess.getFunctionNameRuleAccess().getGroup()); + // InternalGeneratorDSL.g:1144:3: ( rule__FunctionNameRule__Group__0 ) + // InternalGeneratorDSL.g:1144:4: rule__FunctionNameRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__FunctionNameRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionNameRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleFunctionNameRule" + + + // $ANTLR start "entryRuleValueReferenceRule" + // InternalGeneratorDSL.g:1153:1: entryRuleValueReferenceRule : ruleValueReferenceRule EOF ; + public final void entryRuleValueReferenceRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1154:1: ( ruleValueReferenceRule EOF ) + // InternalGeneratorDSL.g:1155:1: ruleValueReferenceRule EOF + { + before(grammarAccess.getValueReferenceRuleRule()); + pushFollow(FOLLOW_1); + ruleValueReferenceRule(); + + state._fsp--; + + after(grammarAccess.getValueReferenceRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleValueReferenceRule" + + + // $ANTLR start "ruleValueReferenceRule" + // InternalGeneratorDSL.g:1162:1: ruleValueReferenceRule : ( ( rule__ValueReferenceRule__Group__0 ) ) ; + public final void ruleValueReferenceRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1166:2: ( ( ( rule__ValueReferenceRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:1167:2: ( ( rule__ValueReferenceRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:1167:2: ( ( rule__ValueReferenceRule__Group__0 ) ) + // InternalGeneratorDSL.g:1168:3: ( rule__ValueReferenceRule__Group__0 ) + { + before(grammarAccess.getValueReferenceRuleAccess().getGroup()); + // InternalGeneratorDSL.g:1169:3: ( rule__ValueReferenceRule__Group__0 ) + // InternalGeneratorDSL.g:1169:4: rule__ValueReferenceRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__ValueReferenceRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getValueReferenceRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleValueReferenceRule" + + + // $ANTLR start "entryRuleLiteralRule" + // InternalGeneratorDSL.g:1178:1: entryRuleLiteralRule : ruleLiteralRule EOF ; + public final void entryRuleLiteralRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1179:1: ( ruleLiteralRule EOF ) + // InternalGeneratorDSL.g:1180:1: ruleLiteralRule EOF + { + before(grammarAccess.getLiteralRuleRule()); + pushFollow(FOLLOW_1); + ruleLiteralRule(); + + state._fsp--; + + after(grammarAccess.getLiteralRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleLiteralRule" + + + // $ANTLR start "ruleLiteralRule" + // InternalGeneratorDSL.g:1187:1: ruleLiteralRule : ( ( rule__LiteralRule__Alternatives ) ) ; + public final void ruleLiteralRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1191:2: ( ( ( rule__LiteralRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:1192:2: ( ( rule__LiteralRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:1192:2: ( ( rule__LiteralRule__Alternatives ) ) + // InternalGeneratorDSL.g:1193:3: ( rule__LiteralRule__Alternatives ) + { + before(grammarAccess.getLiteralRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:1194:3: ( rule__LiteralRule__Alternatives ) + // InternalGeneratorDSL.g:1194:4: rule__LiteralRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__LiteralRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getLiteralRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleLiteralRule" + + + // $ANTLR start "entryRuleNumberLiteralRule" + // InternalGeneratorDSL.g:1203:1: entryRuleNumberLiteralRule : ruleNumberLiteralRule EOF ; + public final void entryRuleNumberLiteralRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1204:1: ( ruleNumberLiteralRule EOF ) + // InternalGeneratorDSL.g:1205:1: ruleNumberLiteralRule EOF + { + before(grammarAccess.getNumberLiteralRuleRule()); + pushFollow(FOLLOW_1); + ruleNumberLiteralRule(); + + state._fsp--; + + after(grammarAccess.getNumberLiteralRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleNumberLiteralRule" + + + // $ANTLR start "ruleNumberLiteralRule" + // InternalGeneratorDSL.g:1212:1: ruleNumberLiteralRule : ( ( rule__NumberLiteralRule__Alternatives ) ) ; + public final void ruleNumberLiteralRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1216:2: ( ( ( rule__NumberLiteralRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:1217:2: ( ( rule__NumberLiteralRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:1217:2: ( ( rule__NumberLiteralRule__Alternatives ) ) + // InternalGeneratorDSL.g:1218:3: ( rule__NumberLiteralRule__Alternatives ) + { + before(grammarAccess.getNumberLiteralRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:1219:3: ( rule__NumberLiteralRule__Alternatives ) + // InternalGeneratorDSL.g:1219:4: rule__NumberLiteralRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__NumberLiteralRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getNumberLiteralRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleNumberLiteralRule" + + + // $ANTLR start "entryRuleDoubleLiteralRule" + // InternalGeneratorDSL.g:1228:1: entryRuleDoubleLiteralRule : ruleDoubleLiteralRule EOF ; + public final void entryRuleDoubleLiteralRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1229:1: ( ruleDoubleLiteralRule EOF ) + // InternalGeneratorDSL.g:1230:1: ruleDoubleLiteralRule EOF + { + before(grammarAccess.getDoubleLiteralRuleRule()); + pushFollow(FOLLOW_1); + ruleDoubleLiteralRule(); + + state._fsp--; + + after(grammarAccess.getDoubleLiteralRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleDoubleLiteralRule" + + + // $ANTLR start "ruleDoubleLiteralRule" + // InternalGeneratorDSL.g:1237:1: ruleDoubleLiteralRule : ( ( rule__DoubleLiteralRule__ValueAssignment ) ) ; + public final void ruleDoubleLiteralRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1241:2: ( ( ( rule__DoubleLiteralRule__ValueAssignment ) ) ) + // InternalGeneratorDSL.g:1242:2: ( ( rule__DoubleLiteralRule__ValueAssignment ) ) + { + // InternalGeneratorDSL.g:1242:2: ( ( rule__DoubleLiteralRule__ValueAssignment ) ) + // InternalGeneratorDSL.g:1243:3: ( rule__DoubleLiteralRule__ValueAssignment ) + { + before(grammarAccess.getDoubleLiteralRuleAccess().getValueAssignment()); + // InternalGeneratorDSL.g:1244:3: ( rule__DoubleLiteralRule__ValueAssignment ) + // InternalGeneratorDSL.g:1244:4: rule__DoubleLiteralRule__ValueAssignment + { + pushFollow(FOLLOW_2); + rule__DoubleLiteralRule__ValueAssignment(); + + state._fsp--; + + + } + + after(grammarAccess.getDoubleLiteralRuleAccess().getValueAssignment()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleDoubleLiteralRule" + + + // $ANTLR start "entryRuleIntegerLiteralRule" + // InternalGeneratorDSL.g:1253:1: entryRuleIntegerLiteralRule : ruleIntegerLiteralRule EOF ; + public final void entryRuleIntegerLiteralRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1254:1: ( ruleIntegerLiteralRule EOF ) + // InternalGeneratorDSL.g:1255:1: ruleIntegerLiteralRule EOF + { + before(grammarAccess.getIntegerLiteralRuleRule()); + pushFollow(FOLLOW_1); + ruleIntegerLiteralRule(); + + state._fsp--; + + after(grammarAccess.getIntegerLiteralRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleIntegerLiteralRule" + + + // $ANTLR start "ruleIntegerLiteralRule" + // InternalGeneratorDSL.g:1262:1: ruleIntegerLiteralRule : ( ( rule__IntegerLiteralRule__ValueAssignment ) ) ; + public final void ruleIntegerLiteralRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1266:2: ( ( ( rule__IntegerLiteralRule__ValueAssignment ) ) ) + // InternalGeneratorDSL.g:1267:2: ( ( rule__IntegerLiteralRule__ValueAssignment ) ) + { + // InternalGeneratorDSL.g:1267:2: ( ( rule__IntegerLiteralRule__ValueAssignment ) ) + // InternalGeneratorDSL.g:1268:3: ( rule__IntegerLiteralRule__ValueAssignment ) + { + before(grammarAccess.getIntegerLiteralRuleAccess().getValueAssignment()); + // InternalGeneratorDSL.g:1269:3: ( rule__IntegerLiteralRule__ValueAssignment ) + // InternalGeneratorDSL.g:1269:4: rule__IntegerLiteralRule__ValueAssignment + { + pushFollow(FOLLOW_2); + rule__IntegerLiteralRule__ValueAssignment(); + + state._fsp--; + + + } + + after(grammarAccess.getIntegerLiteralRuleAccess().getValueAssignment()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleIntegerLiteralRule" + + + // $ANTLR start "entryRuleStringLiteralRule" + // InternalGeneratorDSL.g:1278:1: entryRuleStringLiteralRule : ruleStringLiteralRule EOF ; + public final void entryRuleStringLiteralRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1279:1: ( ruleStringLiteralRule EOF ) + // InternalGeneratorDSL.g:1280:1: ruleStringLiteralRule EOF + { + before(grammarAccess.getStringLiteralRuleRule()); + pushFollow(FOLLOW_1); + ruleStringLiteralRule(); + + state._fsp--; + + after(grammarAccess.getStringLiteralRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleStringLiteralRule" + + + // $ANTLR start "ruleStringLiteralRule" + // InternalGeneratorDSL.g:1287:1: ruleStringLiteralRule : ( ( rule__StringLiteralRule__ValueAssignment ) ) ; + public final void ruleStringLiteralRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1291:2: ( ( ( rule__StringLiteralRule__ValueAssignment ) ) ) + // InternalGeneratorDSL.g:1292:2: ( ( rule__StringLiteralRule__ValueAssignment ) ) + { + // InternalGeneratorDSL.g:1292:2: ( ( rule__StringLiteralRule__ValueAssignment ) ) + // InternalGeneratorDSL.g:1293:3: ( rule__StringLiteralRule__ValueAssignment ) + { + before(grammarAccess.getStringLiteralRuleAccess().getValueAssignment()); + // InternalGeneratorDSL.g:1294:3: ( rule__StringLiteralRule__ValueAssignment ) + // InternalGeneratorDSL.g:1294:4: rule__StringLiteralRule__ValueAssignment + { + pushFollow(FOLLOW_2); + rule__StringLiteralRule__ValueAssignment(); + + state._fsp--; + + + } + + after(grammarAccess.getStringLiteralRuleAccess().getValueAssignment()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleStringLiteralRule" + + + // $ANTLR start "entryRuleBooleanLiteralRule" + // InternalGeneratorDSL.g:1303:1: entryRuleBooleanLiteralRule : ruleBooleanLiteralRule EOF ; + public final void entryRuleBooleanLiteralRule() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1304:1: ( ruleBooleanLiteralRule EOF ) + // InternalGeneratorDSL.g:1305:1: ruleBooleanLiteralRule EOF + { + before(grammarAccess.getBooleanLiteralRuleRule()); + pushFollow(FOLLOW_1); + ruleBooleanLiteralRule(); + + state._fsp--; + + after(grammarAccess.getBooleanLiteralRuleRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleBooleanLiteralRule" + + + // $ANTLR start "ruleBooleanLiteralRule" + // InternalGeneratorDSL.g:1312:1: ruleBooleanLiteralRule : ( ( rule__BooleanLiteralRule__Group__0 ) ) ; + public final void ruleBooleanLiteralRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1316:2: ( ( ( rule__BooleanLiteralRule__Group__0 ) ) ) + // InternalGeneratorDSL.g:1317:2: ( ( rule__BooleanLiteralRule__Group__0 ) ) + { + // InternalGeneratorDSL.g:1317:2: ( ( rule__BooleanLiteralRule__Group__0 ) ) + // InternalGeneratorDSL.g:1318:3: ( rule__BooleanLiteralRule__Group__0 ) + { + before(grammarAccess.getBooleanLiteralRuleAccess().getGroup()); + // InternalGeneratorDSL.g:1319:3: ( rule__BooleanLiteralRule__Group__0 ) + // InternalGeneratorDSL.g:1319:4: rule__BooleanLiteralRule__Group__0 + { + pushFollow(FOLLOW_2); + rule__BooleanLiteralRule__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getBooleanLiteralRuleAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleBooleanLiteralRule" + + + // $ANTLR start "entryRuleStringOrId" + // InternalGeneratorDSL.g:1328:1: entryRuleStringOrId : ruleStringOrId EOF ; + public final void entryRuleStringOrId() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1329:1: ( ruleStringOrId EOF ) + // InternalGeneratorDSL.g:1330:1: ruleStringOrId EOF + { + before(grammarAccess.getStringOrIdRule()); + pushFollow(FOLLOW_1); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getStringOrIdRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleStringOrId" + + + // $ANTLR start "ruleStringOrId" + // InternalGeneratorDSL.g:1337:1: ruleStringOrId : ( ( rule__StringOrId__Alternatives ) ) ; + public final void ruleStringOrId() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1341:2: ( ( ( rule__StringOrId__Alternatives ) ) ) + // InternalGeneratorDSL.g:1342:2: ( ( rule__StringOrId__Alternatives ) ) + { + // InternalGeneratorDSL.g:1342:2: ( ( rule__StringOrId__Alternatives ) ) + // InternalGeneratorDSL.g:1343:3: ( rule__StringOrId__Alternatives ) + { + before(grammarAccess.getStringOrIdAccess().getAlternatives()); + // InternalGeneratorDSL.g:1344:3: ( rule__StringOrId__Alternatives ) + // InternalGeneratorDSL.g:1344:4: rule__StringOrId__Alternatives + { + pushFollow(FOLLOW_2); + rule__StringOrId__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getStringOrIdAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleStringOrId" + + + // $ANTLR start "entryRuleDOUBLE" + // InternalGeneratorDSL.g:1353:1: entryRuleDOUBLE : ruleDOUBLE EOF ; + public final void entryRuleDOUBLE() throws RecognitionException { + try { + // InternalGeneratorDSL.g:1354:1: ( ruleDOUBLE EOF ) + // InternalGeneratorDSL.g:1355:1: ruleDOUBLE EOF + { + before(grammarAccess.getDOUBLERule()); + pushFollow(FOLLOW_1); + ruleDOUBLE(); + + state._fsp--; + + after(grammarAccess.getDOUBLERule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleDOUBLE" + + + // $ANTLR start "ruleDOUBLE" + // InternalGeneratorDSL.g:1362:1: ruleDOUBLE : ( ( rule__DOUBLE__Group__0 ) ) ; + public final void ruleDOUBLE() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1366:2: ( ( ( rule__DOUBLE__Group__0 ) ) ) + // InternalGeneratorDSL.g:1367:2: ( ( rule__DOUBLE__Group__0 ) ) + { + // InternalGeneratorDSL.g:1367:2: ( ( rule__DOUBLE__Group__0 ) ) + // InternalGeneratorDSL.g:1368:3: ( rule__DOUBLE__Group__0 ) + { + before(grammarAccess.getDOUBLEAccess().getGroup()); + // InternalGeneratorDSL.g:1369:3: ( rule__DOUBLE__Group__0 ) + // InternalGeneratorDSL.g:1369:4: rule__DOUBLE__Group__0 + { + pushFollow(FOLLOW_2); + rule__DOUBLE__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getDOUBLEAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleDOUBLE" + + + // $ANTLR start "ruleComparisonOperatorRule" + // InternalGeneratorDSL.g:1378:1: ruleComparisonOperatorRule : ( ( rule__ComparisonOperatorRule__Alternatives ) ) ; + public final void ruleComparisonOperatorRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1382:1: ( ( ( rule__ComparisonOperatorRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:1383:2: ( ( rule__ComparisonOperatorRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:1383:2: ( ( rule__ComparisonOperatorRule__Alternatives ) ) + // InternalGeneratorDSL.g:1384:3: ( rule__ComparisonOperatorRule__Alternatives ) + { + before(grammarAccess.getComparisonOperatorRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:1385:3: ( rule__ComparisonOperatorRule__Alternatives ) + // InternalGeneratorDSL.g:1385:4: rule__ComparisonOperatorRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__ComparisonOperatorRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getComparisonOperatorRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleComparisonOperatorRule" + + + // $ANTLR start "ruleAddOrSubtractOperatorRule" + // InternalGeneratorDSL.g:1394:1: ruleAddOrSubtractOperatorRule : ( ( rule__AddOrSubtractOperatorRule__Alternatives ) ) ; + public final void ruleAddOrSubtractOperatorRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1398:1: ( ( ( rule__AddOrSubtractOperatorRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:1399:2: ( ( rule__AddOrSubtractOperatorRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:1399:2: ( ( rule__AddOrSubtractOperatorRule__Alternatives ) ) + // InternalGeneratorDSL.g:1400:3: ( rule__AddOrSubtractOperatorRule__Alternatives ) + { + before(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:1401:3: ( rule__AddOrSubtractOperatorRule__Alternatives ) + // InternalGeneratorDSL.g:1401:4: rule__AddOrSubtractOperatorRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__AddOrSubtractOperatorRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleAddOrSubtractOperatorRule" + + + // $ANTLR start "ruleMultiplyDivideModuloOperatorRule" + // InternalGeneratorDSL.g:1410:1: ruleMultiplyDivideModuloOperatorRule : ( ( rule__MultiplyDivideModuloOperatorRule__Alternatives ) ) ; + public final void ruleMultiplyDivideModuloOperatorRule() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1414:1: ( ( ( rule__MultiplyDivideModuloOperatorRule__Alternatives ) ) ) + // InternalGeneratorDSL.g:1415:2: ( ( rule__MultiplyDivideModuloOperatorRule__Alternatives ) ) + { + // InternalGeneratorDSL.g:1415:2: ( ( rule__MultiplyDivideModuloOperatorRule__Alternatives ) ) + // InternalGeneratorDSL.g:1416:3: ( rule__MultiplyDivideModuloOperatorRule__Alternatives ) + { + before(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getAlternatives()); + // InternalGeneratorDSL.g:1417:3: ( rule__MultiplyDivideModuloOperatorRule__Alternatives ) + // InternalGeneratorDSL.g:1417:4: rule__MultiplyDivideModuloOperatorRule__Alternatives + { + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloOperatorRule__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleMultiplyDivideModuloOperatorRule" + + + // $ANTLR start "rule__StatementRule__Alternatives" + // InternalGeneratorDSL.g:1425:1: rule__StatementRule__Alternatives : ( ( ruleForStatementRule ) | ( ruleApplyStatementRule ) ); + public final void rule__StatementRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1429:1: ( ( ruleForStatementRule ) | ( ruleApplyStatementRule ) ) + int alt1=2; + int LA1_0 = input.LA(1); + + if ( (LA1_0==29) ) { + alt1=1; + } + else if ( (LA1_0==39) ) { + alt1=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 1, 0, input); + + throw nvae; + } + switch (alt1) { + case 1 : + // InternalGeneratorDSL.g:1430:2: ( ruleForStatementRule ) + { + // InternalGeneratorDSL.g:1430:2: ( ruleForStatementRule ) + // InternalGeneratorDSL.g:1431:3: ruleForStatementRule + { + before(grammarAccess.getStatementRuleAccess().getForStatementRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleForStatementRule(); + + state._fsp--; + + after(grammarAccess.getStatementRuleAccess().getForStatementRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1436:2: ( ruleApplyStatementRule ) + { + // InternalGeneratorDSL.g:1436:2: ( ruleApplyStatementRule ) + // InternalGeneratorDSL.g:1437:3: ruleApplyStatementRule + { + before(grammarAccess.getStatementRuleAccess().getApplyStatementRuleParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleApplyStatementRule(); + + state._fsp--; + + after(grammarAccess.getStatementRuleAccess().getApplyStatementRuleParserRuleCall_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__StatementRule__Alternatives" + + + // $ANTLR start "rule__RangeRule__Alternatives" + // InternalGeneratorDSL.g:1446:1: rule__RangeRule__Alternatives : ( ( ruleFunctionsRule ) | ( ruleGeneratorsRule ) | ( ruleCounterRangeRule ) ); + public final void rule__RangeRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1450:1: ( ( ruleFunctionsRule ) | ( ruleGeneratorsRule ) | ( ruleCounterRangeRule ) ) + int alt2=3; + switch ( input.LA(1) ) { + case 36: + { + alt2=1; + } + break; + case 38: + { + alt2=2; + } + break; + case 33: + { + alt2=3; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 2, 0, input); + + throw nvae; + } + + switch (alt2) { + case 1 : + // InternalGeneratorDSL.g:1451:2: ( ruleFunctionsRule ) + { + // InternalGeneratorDSL.g:1451:2: ( ruleFunctionsRule ) + // InternalGeneratorDSL.g:1452:3: ruleFunctionsRule + { + before(grammarAccess.getRangeRuleAccess().getFunctionsRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleFunctionsRule(); + + state._fsp--; + + after(grammarAccess.getRangeRuleAccess().getFunctionsRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1457:2: ( ruleGeneratorsRule ) + { + // InternalGeneratorDSL.g:1457:2: ( ruleGeneratorsRule ) + // InternalGeneratorDSL.g:1458:3: ruleGeneratorsRule + { + before(grammarAccess.getRangeRuleAccess().getGeneratorsRuleParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleGeneratorsRule(); + + state._fsp--; + + after(grammarAccess.getRangeRuleAccess().getGeneratorsRuleParserRuleCall_1()); + + } + + + } + break; + case 3 : + // InternalGeneratorDSL.g:1463:2: ( ruleCounterRangeRule ) + { + // InternalGeneratorDSL.g:1463:2: ( ruleCounterRangeRule ) + // InternalGeneratorDSL.g:1464:3: ruleCounterRangeRule + { + before(grammarAccess.getRangeRuleAccess().getCounterRangeRuleParserRuleCall_2()); + pushFollow(FOLLOW_2); + ruleCounterRangeRule(); + + state._fsp--; + + after(grammarAccess.getRangeRuleAccess().getCounterRangeRuleParserRuleCall_2()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__RangeRule__Alternatives" + + + // $ANTLR start "rule__GeneratorReferenceRule__Alternatives" + // InternalGeneratorDSL.g:1473:1: rule__GeneratorReferenceRule__Alternatives : ( ( ruleGeneratorDefinitionReferenceRule ) | ( ruleLoopVariableReference ) ); + public final void rule__GeneratorReferenceRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1477:1: ( ( ruleGeneratorDefinitionReferenceRule ) | ( ruleLoopVariableReference ) ) + int alt3=2; + int LA3_0 = input.LA(1); + + if ( (LA3_0==28) ) { + alt3=1; + } + else if ( (LA3_0==RULE_ID) ) { + alt3=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 3, 0, input); + + throw nvae; + } + switch (alt3) { + case 1 : + // InternalGeneratorDSL.g:1478:2: ( ruleGeneratorDefinitionReferenceRule ) + { + // InternalGeneratorDSL.g:1478:2: ( ruleGeneratorDefinitionReferenceRule ) + // InternalGeneratorDSL.g:1479:3: ruleGeneratorDefinitionReferenceRule + { + before(grammarAccess.getGeneratorReferenceRuleAccess().getGeneratorDefinitionReferenceRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleGeneratorDefinitionReferenceRule(); + + state._fsp--; + + after(grammarAccess.getGeneratorReferenceRuleAccess().getGeneratorDefinitionReferenceRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1484:2: ( ruleLoopVariableReference ) + { + // InternalGeneratorDSL.g:1484:2: ( ruleLoopVariableReference ) + // InternalGeneratorDSL.g:1485:3: ruleLoopVariableReference + { + before(grammarAccess.getGeneratorReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleLoopVariableReference(); + + state._fsp--; + + after(grammarAccess.getGeneratorReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferenceRule__Alternatives" + + + // $ANTLR start "rule__FunctionReferenceRule__Alternatives" + // InternalGeneratorDSL.g:1494:1: rule__FunctionReferenceRule__Alternatives : ( ( ruleFunctionDefReferenceRule ) | ( ruleLoopVariableReference ) ); + public final void rule__FunctionReferenceRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1498:1: ( ( ruleFunctionDefReferenceRule ) | ( ruleLoopVariableReference ) ) + int alt4=2; + int LA4_0 = input.LA(1); + + if ( (LA4_0==26||LA4_0==45) ) { + alt4=1; + } + else if ( (LA4_0==RULE_ID) ) { + alt4=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 4, 0, input); + + throw nvae; + } + switch (alt4) { + case 1 : + // InternalGeneratorDSL.g:1499:2: ( ruleFunctionDefReferenceRule ) + { + // InternalGeneratorDSL.g:1499:2: ( ruleFunctionDefReferenceRule ) + // InternalGeneratorDSL.g:1500:3: ruleFunctionDefReferenceRule + { + before(grammarAccess.getFunctionReferenceRuleAccess().getFunctionDefReferenceRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleFunctionDefReferenceRule(); + + state._fsp--; + + after(grammarAccess.getFunctionReferenceRuleAccess().getFunctionDefReferenceRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1505:2: ( ruleLoopVariableReference ) + { + // InternalGeneratorDSL.g:1505:2: ( ruleLoopVariableReference ) + // InternalGeneratorDSL.g:1506:3: ruleLoopVariableReference + { + before(grammarAccess.getFunctionReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleLoopVariableReference(); + + state._fsp--; + + after(grammarAccess.getFunctionReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferenceRule__Alternatives" + + + // $ANTLR start "rule__FunctionDefReferenceRule__Alternatives" + // InternalGeneratorDSL.g:1515:1: rule__FunctionDefReferenceRule__Alternatives : ( ( ruleFunctionDefinitionReferenceRule ) | ( ruleParametrizedFunctionDefinitionReferenceRule ) ); + public final void rule__FunctionDefReferenceRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1519:1: ( ( ruleFunctionDefinitionReferenceRule ) | ( ruleParametrizedFunctionDefinitionReferenceRule ) ) + int alt5=2; + int LA5_0 = input.LA(1); + + if ( (LA5_0==45) ) { + alt5=1; + } + else if ( (LA5_0==26) ) { + alt5=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 5, 0, input); + + throw nvae; + } + switch (alt5) { + case 1 : + // InternalGeneratorDSL.g:1520:2: ( ruleFunctionDefinitionReferenceRule ) + { + // InternalGeneratorDSL.g:1520:2: ( ruleFunctionDefinitionReferenceRule ) + // InternalGeneratorDSL.g:1521:3: ruleFunctionDefinitionReferenceRule + { + before(grammarAccess.getFunctionDefReferenceRuleAccess().getFunctionDefinitionReferenceRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleFunctionDefinitionReferenceRule(); + + state._fsp--; + + after(grammarAccess.getFunctionDefReferenceRuleAccess().getFunctionDefinitionReferenceRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1526:2: ( ruleParametrizedFunctionDefinitionReferenceRule ) + { + // InternalGeneratorDSL.g:1526:2: ( ruleParametrizedFunctionDefinitionReferenceRule ) + // InternalGeneratorDSL.g:1527:3: ruleParametrizedFunctionDefinitionReferenceRule + { + before(grammarAccess.getFunctionDefReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleParametrizedFunctionDefinitionReferenceRule(); + + state._fsp--; + + after(grammarAccess.getFunctionDefReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefReferenceRule__Alternatives" + + + // $ANTLR start "rule__NameOrMiscRule__Alternatives" + // InternalGeneratorDSL.g:1536:1: rule__NameOrMiscRule__Alternatives : ( ( ruleNameRule ) | ( ruleMiscRule ) ); + public final void rule__NameOrMiscRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1540:1: ( ( ruleNameRule ) | ( ruleMiscRule ) ) + int alt6=2; + int LA6_0 = input.LA(1); + + if ( ((LA6_0>=RULE_QUOTED_ID && LA6_0<=RULE_ID)) ) { + alt6=1; + } + else if ( (LA6_0==RULE_STRING) ) { + alt6=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 6, 0, input); + + throw nvae; + } + switch (alt6) { + case 1 : + // InternalGeneratorDSL.g:1541:2: ( ruleNameRule ) + { + // InternalGeneratorDSL.g:1541:2: ( ruleNameRule ) + // InternalGeneratorDSL.g:1542:3: ruleNameRule + { + before(grammarAccess.getNameOrMiscRuleAccess().getNameRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleNameRule(); + + state._fsp--; + + after(grammarAccess.getNameOrMiscRuleAccess().getNameRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1547:2: ( ruleMiscRule ) + { + // InternalGeneratorDSL.g:1547:2: ( ruleMiscRule ) + // InternalGeneratorDSL.g:1548:3: ruleMiscRule + { + before(grammarAccess.getNameOrMiscRuleAccess().getMiscRuleParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleMiscRule(); + + state._fsp--; + + after(grammarAccess.getNameOrMiscRuleAccess().getMiscRuleParserRuleCall_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NameOrMiscRule__Alternatives" + + + // $ANTLR start "rule__ValueRule__Alternatives" + // InternalGeneratorDSL.g:1557:1: rule__ValueRule__Alternatives : ( ( ruleArrayRule ) | ( ruleDataReferenceRule ) | ( ruleInstanceRule ) | ( ruleLiteralValueRule ) ); + public final void rule__ValueRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1561:1: ( ( ruleArrayRule ) | ( ruleDataReferenceRule ) | ( ruleInstanceRule ) | ( ruleLiteralValueRule ) ) + int alt7=4; + switch ( input.LA(1) ) { + case 33: + { + alt7=1; + } + break; + case 49: + { + alt7=2; + } + break; + case RULE_QUOTED_ID: + case RULE_ID: + { + alt7=3; + } + break; + case RULE_INT: + case RULE_STRING: + case 12: + case 60: + { + alt7=4; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 7, 0, input); + + throw nvae; + } + + switch (alt7) { + case 1 : + // InternalGeneratorDSL.g:1562:2: ( ruleArrayRule ) + { + // InternalGeneratorDSL.g:1562:2: ( ruleArrayRule ) + // InternalGeneratorDSL.g:1563:3: ruleArrayRule + { + before(grammarAccess.getValueRuleAccess().getArrayRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleArrayRule(); + + state._fsp--; + + after(grammarAccess.getValueRuleAccess().getArrayRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1568:2: ( ruleDataReferenceRule ) + { + // InternalGeneratorDSL.g:1568:2: ( ruleDataReferenceRule ) + // InternalGeneratorDSL.g:1569:3: ruleDataReferenceRule + { + before(grammarAccess.getValueRuleAccess().getDataReferenceRuleParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleDataReferenceRule(); + + state._fsp--; + + after(grammarAccess.getValueRuleAccess().getDataReferenceRuleParserRuleCall_1()); + + } + + + } + break; + case 3 : + // InternalGeneratorDSL.g:1574:2: ( ruleInstanceRule ) + { + // InternalGeneratorDSL.g:1574:2: ( ruleInstanceRule ) + // InternalGeneratorDSL.g:1575:3: ruleInstanceRule + { + before(grammarAccess.getValueRuleAccess().getInstanceRuleParserRuleCall_2()); + pushFollow(FOLLOW_2); + ruleInstanceRule(); + + state._fsp--; + + after(grammarAccess.getValueRuleAccess().getInstanceRuleParserRuleCall_2()); + + } + + + } + break; + case 4 : + // InternalGeneratorDSL.g:1580:2: ( ruleLiteralValueRule ) + { + // InternalGeneratorDSL.g:1580:2: ( ruleLiteralValueRule ) + // InternalGeneratorDSL.g:1581:3: ruleLiteralValueRule + { + before(grammarAccess.getValueRuleAccess().getLiteralValueRuleParserRuleCall_3()); + pushFollow(FOLLOW_2); + ruleLiteralValueRule(); + + state._fsp--; + + after(grammarAccess.getValueRuleAccess().getLiteralValueRuleParserRuleCall_3()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ValueRule__Alternatives" + + + // $ANTLR start "rule__LiteralOrReferenceRule__Alternatives" + // InternalGeneratorDSL.g:1590:1: rule__LiteralOrReferenceRule__Alternatives : ( ( ruleCallRule ) | ( ruleLiteralRule ) | ( ruleParanthesesRule ) | ( ruleValueReferenceRule ) ); + public final void rule__LiteralOrReferenceRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1594:1: ( ( ruleCallRule ) | ( ruleLiteralRule ) | ( ruleParanthesesRule ) | ( ruleValueReferenceRule ) ) + int alt8=4; + switch ( input.LA(1) ) { + case 56: + { + alt8=1; + } + break; + case RULE_INT: + case RULE_STRING: + case 12: + case 60: + { + alt8=2; + } + break; + case 54: + { + alt8=3; + } + break; + case 57: + { + alt8=4; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 8, 0, input); + + throw nvae; + } + + switch (alt8) { + case 1 : + // InternalGeneratorDSL.g:1595:2: ( ruleCallRule ) + { + // InternalGeneratorDSL.g:1595:2: ( ruleCallRule ) + // InternalGeneratorDSL.g:1596:3: ruleCallRule + { + before(grammarAccess.getLiteralOrReferenceRuleAccess().getCallRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleCallRule(); + + state._fsp--; + + after(grammarAccess.getLiteralOrReferenceRuleAccess().getCallRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1601:2: ( ruleLiteralRule ) + { + // InternalGeneratorDSL.g:1601:2: ( ruleLiteralRule ) + // InternalGeneratorDSL.g:1602:3: ruleLiteralRule + { + before(grammarAccess.getLiteralOrReferenceRuleAccess().getLiteralRuleParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleLiteralRule(); + + state._fsp--; + + after(grammarAccess.getLiteralOrReferenceRuleAccess().getLiteralRuleParserRuleCall_1()); + + } + + + } + break; + case 3 : + // InternalGeneratorDSL.g:1607:2: ( ruleParanthesesRule ) + { + // InternalGeneratorDSL.g:1607:2: ( ruleParanthesesRule ) + // InternalGeneratorDSL.g:1608:3: ruleParanthesesRule + { + before(grammarAccess.getLiteralOrReferenceRuleAccess().getParanthesesRuleParserRuleCall_2()); + pushFollow(FOLLOW_2); + ruleParanthesesRule(); + + state._fsp--; + + after(grammarAccess.getLiteralOrReferenceRuleAccess().getParanthesesRuleParserRuleCall_2()); + + } + + + } + break; + case 4 : + // InternalGeneratorDSL.g:1613:2: ( ruleValueReferenceRule ) + { + // InternalGeneratorDSL.g:1613:2: ( ruleValueReferenceRule ) + // InternalGeneratorDSL.g:1614:3: ruleValueReferenceRule + { + before(grammarAccess.getLiteralOrReferenceRuleAccess().getValueReferenceRuleParserRuleCall_3()); + pushFollow(FOLLOW_2); + ruleValueReferenceRule(); + + state._fsp--; + + after(grammarAccess.getLiteralOrReferenceRuleAccess().getValueReferenceRuleParserRuleCall_3()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__LiteralOrReferenceRule__Alternatives" + + + // $ANTLR start "rule__LiteralRule__Alternatives" + // InternalGeneratorDSL.g:1623:1: rule__LiteralRule__Alternatives : ( ( ruleNumberLiteralRule ) | ( ruleStringLiteralRule ) | ( ruleBooleanLiteralRule ) ); + public final void rule__LiteralRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1627:1: ( ( ruleNumberLiteralRule ) | ( ruleStringLiteralRule ) | ( ruleBooleanLiteralRule ) ) + int alt9=3; + switch ( input.LA(1) ) { + case RULE_INT: + { + alt9=1; + } + break; + case RULE_STRING: + { + alt9=2; + } + break; + case 12: + case 60: + { + alt9=3; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 9, 0, input); + + throw nvae; + } + + switch (alt9) { + case 1 : + // InternalGeneratorDSL.g:1628:2: ( ruleNumberLiteralRule ) + { + // InternalGeneratorDSL.g:1628:2: ( ruleNumberLiteralRule ) + // InternalGeneratorDSL.g:1629:3: ruleNumberLiteralRule + { + before(grammarAccess.getLiteralRuleAccess().getNumberLiteralRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleNumberLiteralRule(); + + state._fsp--; + + after(grammarAccess.getLiteralRuleAccess().getNumberLiteralRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1634:2: ( ruleStringLiteralRule ) + { + // InternalGeneratorDSL.g:1634:2: ( ruleStringLiteralRule ) + // InternalGeneratorDSL.g:1635:3: ruleStringLiteralRule + { + before(grammarAccess.getLiteralRuleAccess().getStringLiteralRuleParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleStringLiteralRule(); + + state._fsp--; + + after(grammarAccess.getLiteralRuleAccess().getStringLiteralRuleParserRuleCall_1()); + + } + + + } + break; + case 3 : + // InternalGeneratorDSL.g:1640:2: ( ruleBooleanLiteralRule ) + { + // InternalGeneratorDSL.g:1640:2: ( ruleBooleanLiteralRule ) + // InternalGeneratorDSL.g:1641:3: ruleBooleanLiteralRule + { + before(grammarAccess.getLiteralRuleAccess().getBooleanLiteralRuleParserRuleCall_2()); + pushFollow(FOLLOW_2); + ruleBooleanLiteralRule(); + + state._fsp--; + + after(grammarAccess.getLiteralRuleAccess().getBooleanLiteralRuleParserRuleCall_2()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__LiteralRule__Alternatives" + + + // $ANTLR start "rule__NumberLiteralRule__Alternatives" + // InternalGeneratorDSL.g:1650:1: rule__NumberLiteralRule__Alternatives : ( ( ruleDoubleLiteralRule ) | ( ruleIntegerLiteralRule ) ); + public final void rule__NumberLiteralRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1654:1: ( ( ruleDoubleLiteralRule ) | ( ruleIntegerLiteralRule ) ) + int alt10=2; + int LA10_0 = input.LA(1); + + if ( (LA10_0==RULE_INT) ) { + int LA10_1 = input.LA(2); + + if ( (LA10_1==EOF||(LA10_1>=13 && LA10_1<=23)||LA10_1==25||LA10_1==35||LA10_1==37||(LA10_1>=50 && LA10_1<=53)||LA10_1==55) ) { + alt10=2; + } + else if ( (LA10_1==58) ) { + alt10=1; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 10, 1, input); + + throw nvae; + } + } + else { + NoViableAltException nvae = + new NoViableAltException("", 10, 0, input); + + throw nvae; + } + switch (alt10) { + case 1 : + // InternalGeneratorDSL.g:1655:2: ( ruleDoubleLiteralRule ) + { + // InternalGeneratorDSL.g:1655:2: ( ruleDoubleLiteralRule ) + // InternalGeneratorDSL.g:1656:3: ruleDoubleLiteralRule + { + before(grammarAccess.getNumberLiteralRuleAccess().getDoubleLiteralRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleDoubleLiteralRule(); + + state._fsp--; + + after(grammarAccess.getNumberLiteralRuleAccess().getDoubleLiteralRuleParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1661:2: ( ruleIntegerLiteralRule ) + { + // InternalGeneratorDSL.g:1661:2: ( ruleIntegerLiteralRule ) + // InternalGeneratorDSL.g:1662:3: ruleIntegerLiteralRule + { + before(grammarAccess.getNumberLiteralRuleAccess().getIntegerLiteralRuleParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleIntegerLiteralRule(); + + state._fsp--; + + after(grammarAccess.getNumberLiteralRuleAccess().getIntegerLiteralRuleParserRuleCall_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NumberLiteralRule__Alternatives" + + + // $ANTLR start "rule__BooleanLiteralRule__Alternatives_1" + // InternalGeneratorDSL.g:1671:1: rule__BooleanLiteralRule__Alternatives_1 : ( ( ( rule__BooleanLiteralRule__ValueAssignment_1_0 ) ) | ( 'false' ) ); + public final void rule__BooleanLiteralRule__Alternatives_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1675:1: ( ( ( rule__BooleanLiteralRule__ValueAssignment_1_0 ) ) | ( 'false' ) ) + int alt11=2; + int LA11_0 = input.LA(1); + + if ( (LA11_0==60) ) { + alt11=1; + } + else if ( (LA11_0==12) ) { + alt11=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 11, 0, input); + + throw nvae; + } + switch (alt11) { + case 1 : + // InternalGeneratorDSL.g:1676:2: ( ( rule__BooleanLiteralRule__ValueAssignment_1_0 ) ) + { + // InternalGeneratorDSL.g:1676:2: ( ( rule__BooleanLiteralRule__ValueAssignment_1_0 ) ) + // InternalGeneratorDSL.g:1677:3: ( rule__BooleanLiteralRule__ValueAssignment_1_0 ) + { + before(grammarAccess.getBooleanLiteralRuleAccess().getValueAssignment_1_0()); + // InternalGeneratorDSL.g:1678:3: ( rule__BooleanLiteralRule__ValueAssignment_1_0 ) + // InternalGeneratorDSL.g:1678:4: rule__BooleanLiteralRule__ValueAssignment_1_0 + { + pushFollow(FOLLOW_2); + rule__BooleanLiteralRule__ValueAssignment_1_0(); + + state._fsp--; + + + } + + after(grammarAccess.getBooleanLiteralRuleAccess().getValueAssignment_1_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1682:2: ( 'false' ) + { + // InternalGeneratorDSL.g:1682:2: ( 'false' ) + // InternalGeneratorDSL.g:1683:3: 'false' + { + before(grammarAccess.getBooleanLiteralRuleAccess().getFalseKeyword_1_1()); + match(input,12,FOLLOW_2); + after(grammarAccess.getBooleanLiteralRuleAccess().getFalseKeyword_1_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__BooleanLiteralRule__Alternatives_1" + + + // $ANTLR start "rule__StringOrId__Alternatives" + // InternalGeneratorDSL.g:1692:1: rule__StringOrId__Alternatives : ( ( RULE_QUOTED_ID ) | ( RULE_ID ) ); + public final void rule__StringOrId__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1696:1: ( ( RULE_QUOTED_ID ) | ( RULE_ID ) ) + int alt12=2; + int LA12_0 = input.LA(1); + + if ( (LA12_0==RULE_QUOTED_ID) ) { + alt12=1; + } + else if ( (LA12_0==RULE_ID) ) { + alt12=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 12, 0, input); + + throw nvae; + } + switch (alt12) { + case 1 : + // InternalGeneratorDSL.g:1697:2: ( RULE_QUOTED_ID ) + { + // InternalGeneratorDSL.g:1697:2: ( RULE_QUOTED_ID ) + // InternalGeneratorDSL.g:1698:3: RULE_QUOTED_ID + { + before(grammarAccess.getStringOrIdAccess().getQUOTED_IDTerminalRuleCall_0()); + match(input,RULE_QUOTED_ID,FOLLOW_2); + after(grammarAccess.getStringOrIdAccess().getQUOTED_IDTerminalRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1703:2: ( RULE_ID ) + { + // InternalGeneratorDSL.g:1703:2: ( RULE_ID ) + // InternalGeneratorDSL.g:1704:3: RULE_ID + { + before(grammarAccess.getStringOrIdAccess().getIDTerminalRuleCall_1()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getStringOrIdAccess().getIDTerminalRuleCall_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__StringOrId__Alternatives" + + + // $ANTLR start "rule__ComparisonOperatorRule__Alternatives" + // InternalGeneratorDSL.g:1713:1: rule__ComparisonOperatorRule__Alternatives : ( ( ( '>=' ) ) | ( ( '>' ) ) | ( ( '=' ) ) | ( ( '!=' ) ) | ( ( '<' ) ) | ( ( '<=' ) ) ); + public final void rule__ComparisonOperatorRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1717:1: ( ( ( '>=' ) ) | ( ( '>' ) ) | ( ( '=' ) ) | ( ( '!=' ) ) | ( ( '<' ) ) | ( ( '<=' ) ) ) + int alt13=6; + switch ( input.LA(1) ) { + case 13: + { + alt13=1; + } + break; + case 14: + { + alt13=2; + } + break; + case 15: + { + alt13=3; + } + break; + case 16: + { + alt13=4; + } + break; + case 17: + { + alt13=5; + } + break; + case 18: + { + alt13=6; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 13, 0, input); + + throw nvae; + } + + switch (alt13) { + case 1 : + // InternalGeneratorDSL.g:1718:2: ( ( '>=' ) ) + { + // InternalGeneratorDSL.g:1718:2: ( ( '>=' ) ) + // InternalGeneratorDSL.g:1719:3: ( '>=' ) + { + before(grammarAccess.getComparisonOperatorRuleAccess().getGreaterThanEnumLiteralDeclaration_0()); + // InternalGeneratorDSL.g:1720:3: ( '>=' ) + // InternalGeneratorDSL.g:1720:4: '>=' + { + match(input,13,FOLLOW_2); + + } + + after(grammarAccess.getComparisonOperatorRuleAccess().getGreaterThanEnumLiteralDeclaration_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1724:2: ( ( '>' ) ) + { + // InternalGeneratorDSL.g:1724:2: ( ( '>' ) ) + // InternalGeneratorDSL.g:1725:3: ( '>' ) + { + before(grammarAccess.getComparisonOperatorRuleAccess().getGreaterEqualEnumLiteralDeclaration_1()); + // InternalGeneratorDSL.g:1726:3: ( '>' ) + // InternalGeneratorDSL.g:1726:4: '>' + { + match(input,14,FOLLOW_2); + + } + + after(grammarAccess.getComparisonOperatorRuleAccess().getGreaterEqualEnumLiteralDeclaration_1()); + + } + + + } + break; + case 3 : + // InternalGeneratorDSL.g:1730:2: ( ( '=' ) ) + { + // InternalGeneratorDSL.g:1730:2: ( ( '=' ) ) + // InternalGeneratorDSL.g:1731:3: ( '=' ) + { + before(grammarAccess.getComparisonOperatorRuleAccess().getEqualEnumLiteralDeclaration_2()); + // InternalGeneratorDSL.g:1732:3: ( '=' ) + // InternalGeneratorDSL.g:1732:4: '=' + { + match(input,15,FOLLOW_2); + + } + + after(grammarAccess.getComparisonOperatorRuleAccess().getEqualEnumLiteralDeclaration_2()); + + } + + + } + break; + case 4 : + // InternalGeneratorDSL.g:1736:2: ( ( '!=' ) ) + { + // InternalGeneratorDSL.g:1736:2: ( ( '!=' ) ) + // InternalGeneratorDSL.g:1737:3: ( '!=' ) + { + before(grammarAccess.getComparisonOperatorRuleAccess().getUnequalEnumLiteralDeclaration_3()); + // InternalGeneratorDSL.g:1738:3: ( '!=' ) + // InternalGeneratorDSL.g:1738:4: '!=' + { + match(input,16,FOLLOW_2); + + } + + after(grammarAccess.getComparisonOperatorRuleAccess().getUnequalEnumLiteralDeclaration_3()); + + } + + + } + break; + case 5 : + // InternalGeneratorDSL.g:1742:2: ( ( '<' ) ) + { + // InternalGeneratorDSL.g:1742:2: ( ( '<' ) ) + // InternalGeneratorDSL.g:1743:3: ( '<' ) + { + before(grammarAccess.getComparisonOperatorRuleAccess().getLessEqualEnumLiteralDeclaration_4()); + // InternalGeneratorDSL.g:1744:3: ( '<' ) + // InternalGeneratorDSL.g:1744:4: '<' + { + match(input,17,FOLLOW_2); + + } + + after(grammarAccess.getComparisonOperatorRuleAccess().getLessEqualEnumLiteralDeclaration_4()); + + } + + + } + break; + case 6 : + // InternalGeneratorDSL.g:1748:2: ( ( '<=' ) ) + { + // InternalGeneratorDSL.g:1748:2: ( ( '<=' ) ) + // InternalGeneratorDSL.g:1749:3: ( '<=' ) + { + before(grammarAccess.getComparisonOperatorRuleAccess().getLessThanEnumLiteralDeclaration_5()); + // InternalGeneratorDSL.g:1750:3: ( '<=' ) + // InternalGeneratorDSL.g:1750:4: '<=' + { + match(input,18,FOLLOW_2); + + } + + after(grammarAccess.getComparisonOperatorRuleAccess().getLessThanEnumLiteralDeclaration_5()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ComparisonOperatorRule__Alternatives" + + + // $ANTLR start "rule__AddOrSubtractOperatorRule__Alternatives" + // InternalGeneratorDSL.g:1758:1: rule__AddOrSubtractOperatorRule__Alternatives : ( ( ( '+' ) ) | ( ( '-' ) ) ); + public final void rule__AddOrSubtractOperatorRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1762:1: ( ( ( '+' ) ) | ( ( '-' ) ) ) + int alt14=2; + int LA14_0 = input.LA(1); + + if ( (LA14_0==19) ) { + alt14=1; + } + else if ( (LA14_0==20) ) { + alt14=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 14, 0, input); + + throw nvae; + } + switch (alt14) { + case 1 : + // InternalGeneratorDSL.g:1763:2: ( ( '+' ) ) + { + // InternalGeneratorDSL.g:1763:2: ( ( '+' ) ) + // InternalGeneratorDSL.g:1764:3: ( '+' ) + { + before(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAddEnumLiteralDeclaration_0()); + // InternalGeneratorDSL.g:1765:3: ( '+' ) + // InternalGeneratorDSL.g:1765:4: '+' + { + match(input,19,FOLLOW_2); + + } + + after(grammarAccess.getAddOrSubtractOperatorRuleAccess().getAddEnumLiteralDeclaration_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1769:2: ( ( '-' ) ) + { + // InternalGeneratorDSL.g:1769:2: ( ( '-' ) ) + // InternalGeneratorDSL.g:1770:3: ( '-' ) + { + before(grammarAccess.getAddOrSubtractOperatorRuleAccess().getSubtractEnumLiteralDeclaration_1()); + // InternalGeneratorDSL.g:1771:3: ( '-' ) + // InternalGeneratorDSL.g:1771:4: '-' + { + match(input,20,FOLLOW_2); + + } + + after(grammarAccess.getAddOrSubtractOperatorRuleAccess().getSubtractEnumLiteralDeclaration_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractOperatorRule__Alternatives" + + + // $ANTLR start "rule__MultiplyDivideModuloOperatorRule__Alternatives" + // InternalGeneratorDSL.g:1779:1: rule__MultiplyDivideModuloOperatorRule__Alternatives : ( ( ( '*' ) ) | ( ( '/' ) ) | ( ( '%' ) ) ); + public final void rule__MultiplyDivideModuloOperatorRule__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1783:1: ( ( ( '*' ) ) | ( ( '/' ) ) | ( ( '%' ) ) ) + int alt15=3; + switch ( input.LA(1) ) { + case 21: + { + alt15=1; + } + break; + case 22: + { + alt15=2; + } + break; + case 23: + { + alt15=3; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 15, 0, input); + + throw nvae; + } + + switch (alt15) { + case 1 : + // InternalGeneratorDSL.g:1784:2: ( ( '*' ) ) + { + // InternalGeneratorDSL.g:1784:2: ( ( '*' ) ) + // InternalGeneratorDSL.g:1785:3: ( '*' ) + { + before(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getMultiplyEnumLiteralDeclaration_0()); + // InternalGeneratorDSL.g:1786:3: ( '*' ) + // InternalGeneratorDSL.g:1786:4: '*' + { + match(input,21,FOLLOW_2); + + } + + after(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getMultiplyEnumLiteralDeclaration_0()); + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1790:2: ( ( '/' ) ) + { + // InternalGeneratorDSL.g:1790:2: ( ( '/' ) ) + // InternalGeneratorDSL.g:1791:3: ( '/' ) + { + before(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getDivideEnumLiteralDeclaration_1()); + // InternalGeneratorDSL.g:1792:3: ( '/' ) + // InternalGeneratorDSL.g:1792:4: '/' + { + match(input,22,FOLLOW_2); + + } + + after(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getDivideEnumLiteralDeclaration_1()); + + } + + + } + break; + case 3 : + // InternalGeneratorDSL.g:1796:2: ( ( '%' ) ) + { + // InternalGeneratorDSL.g:1796:2: ( ( '%' ) ) + // InternalGeneratorDSL.g:1797:3: ( '%' ) + { + before(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getModuloEnumLiteralDeclaration_2()); + // InternalGeneratorDSL.g:1798:3: ( '%' ) + // InternalGeneratorDSL.g:1798:4: '%' + { + match(input,23,FOLLOW_2); + + } + + after(grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getModuloEnumLiteralDeclaration_2()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloOperatorRule__Alternatives" + + + // $ANTLR start "rule__ConfigurationRule__Group__0" + // InternalGeneratorDSL.g:1806:1: rule__ConfigurationRule__Group__0 : rule__ConfigurationRule__Group__0__Impl rule__ConfigurationRule__Group__1 ; + public final void rule__ConfigurationRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1810:1: ( rule__ConfigurationRule__Group__0__Impl rule__ConfigurationRule__Group__1 ) + // InternalGeneratorDSL.g:1811:2: rule__ConfigurationRule__Group__0__Impl rule__ConfigurationRule__Group__1 + { + pushFollow(FOLLOW_3); + rule__ConfigurationRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ConfigurationRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__Group__0" + + + // $ANTLR start "rule__ConfigurationRule__Group__0__Impl" + // InternalGeneratorDSL.g:1818:1: rule__ConfigurationRule__Group__0__Impl : ( ( rule__ConfigurationRule__UsesAssignment_0 )* ) ; + public final void rule__ConfigurationRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1822:1: ( ( ( rule__ConfigurationRule__UsesAssignment_0 )* ) ) + // InternalGeneratorDSL.g:1823:1: ( ( rule__ConfigurationRule__UsesAssignment_0 )* ) + { + // InternalGeneratorDSL.g:1823:1: ( ( rule__ConfigurationRule__UsesAssignment_0 )* ) + // InternalGeneratorDSL.g:1824:2: ( rule__ConfigurationRule__UsesAssignment_0 )* + { + before(grammarAccess.getConfigurationRuleAccess().getUsesAssignment_0()); + // InternalGeneratorDSL.g:1825:2: ( rule__ConfigurationRule__UsesAssignment_0 )* + loop16: + do { + int alt16=2; + int LA16_0 = input.LA(1); + + if ( (LA16_0==24) ) { + alt16=1; + } + + + switch (alt16) { + case 1 : + // InternalGeneratorDSL.g:1825:3: rule__ConfigurationRule__UsesAssignment_0 + { + pushFollow(FOLLOW_4); + rule__ConfigurationRule__UsesAssignment_0(); + + state._fsp--; + + + } + break; + + default : + break loop16; + } + } while (true); + + after(grammarAccess.getConfigurationRuleAccess().getUsesAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__Group__0__Impl" + + + // $ANTLR start "rule__ConfigurationRule__Group__1" + // InternalGeneratorDSL.g:1833:1: rule__ConfigurationRule__Group__1 : rule__ConfigurationRule__Group__1__Impl rule__ConfigurationRule__Group__2 ; + public final void rule__ConfigurationRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1837:1: ( rule__ConfigurationRule__Group__1__Impl rule__ConfigurationRule__Group__2 ) + // InternalGeneratorDSL.g:1838:2: rule__ConfigurationRule__Group__1__Impl rule__ConfigurationRule__Group__2 + { + pushFollow(FOLLOW_3); + rule__ConfigurationRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ConfigurationRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__Group__1" + + + // $ANTLR start "rule__ConfigurationRule__Group__1__Impl" + // InternalGeneratorDSL.g:1845:1: rule__ConfigurationRule__Group__1__Impl : ( ( rule__ConfigurationRule__GeneratorsAssignment_1 )* ) ; + public final void rule__ConfigurationRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1849:1: ( ( ( rule__ConfigurationRule__GeneratorsAssignment_1 )* ) ) + // InternalGeneratorDSL.g:1850:1: ( ( rule__ConfigurationRule__GeneratorsAssignment_1 )* ) + { + // InternalGeneratorDSL.g:1850:1: ( ( rule__ConfigurationRule__GeneratorsAssignment_1 )* ) + // InternalGeneratorDSL.g:1851:2: ( rule__ConfigurationRule__GeneratorsAssignment_1 )* + { + before(grammarAccess.getConfigurationRuleAccess().getGeneratorsAssignment_1()); + // InternalGeneratorDSL.g:1852:2: ( rule__ConfigurationRule__GeneratorsAssignment_1 )* + loop17: + do { + int alt17=2; + int LA17_0 = input.LA(1); + + if ( (LA17_0==28) ) { + alt17=1; + } + + + switch (alt17) { + case 1 : + // InternalGeneratorDSL.g:1852:3: rule__ConfigurationRule__GeneratorsAssignment_1 + { + pushFollow(FOLLOW_5); + rule__ConfigurationRule__GeneratorsAssignment_1(); + + state._fsp--; + + + } + break; + + default : + break loop17; + } + } while (true); + + after(grammarAccess.getConfigurationRuleAccess().getGeneratorsAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__Group__1__Impl" + + + // $ANTLR start "rule__ConfigurationRule__Group__2" + // InternalGeneratorDSL.g:1860:1: rule__ConfigurationRule__Group__2 : rule__ConfigurationRule__Group__2__Impl rule__ConfigurationRule__Group__3 ; + public final void rule__ConfigurationRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1864:1: ( rule__ConfigurationRule__Group__2__Impl rule__ConfigurationRule__Group__3 ) + // InternalGeneratorDSL.g:1865:2: rule__ConfigurationRule__Group__2__Impl rule__ConfigurationRule__Group__3 + { + pushFollow(FOLLOW_3); + rule__ConfigurationRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ConfigurationRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__Group__2" + + + // $ANTLR start "rule__ConfigurationRule__Group__2__Impl" + // InternalGeneratorDSL.g:1872:1: rule__ConfigurationRule__Group__2__Impl : ( ( rule__ConfigurationRule__FunctionsAssignment_2 )* ) ; + public final void rule__ConfigurationRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1876:1: ( ( ( rule__ConfigurationRule__FunctionsAssignment_2 )* ) ) + // InternalGeneratorDSL.g:1877:1: ( ( rule__ConfigurationRule__FunctionsAssignment_2 )* ) + { + // InternalGeneratorDSL.g:1877:1: ( ( rule__ConfigurationRule__FunctionsAssignment_2 )* ) + // InternalGeneratorDSL.g:1878:2: ( rule__ConfigurationRule__FunctionsAssignment_2 )* + { + before(grammarAccess.getConfigurationRuleAccess().getFunctionsAssignment_2()); + // InternalGeneratorDSL.g:1879:2: ( rule__ConfigurationRule__FunctionsAssignment_2 )* + loop18: + do { + int alt18=2; + int LA18_0 = input.LA(1); + + if ( (LA18_0==26) ) { + alt18=1; + } + + + switch (alt18) { + case 1 : + // InternalGeneratorDSL.g:1879:3: rule__ConfigurationRule__FunctionsAssignment_2 + { + pushFollow(FOLLOW_6); + rule__ConfigurationRule__FunctionsAssignment_2(); + + state._fsp--; + + + } + break; + + default : + break loop18; + } + } while (true); + + after(grammarAccess.getConfigurationRuleAccess().getFunctionsAssignment_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__Group__2__Impl" + + + // $ANTLR start "rule__ConfigurationRule__Group__3" + // InternalGeneratorDSL.g:1887:1: rule__ConfigurationRule__Group__3 : rule__ConfigurationRule__Group__3__Impl ; + public final void rule__ConfigurationRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1891:1: ( rule__ConfigurationRule__Group__3__Impl ) + // InternalGeneratorDSL.g:1892:2: rule__ConfigurationRule__Group__3__Impl + { + pushFollow(FOLLOW_2); + rule__ConfigurationRule__Group__3__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__Group__3" + + + // $ANTLR start "rule__ConfigurationRule__Group__3__Impl" + // InternalGeneratorDSL.g:1898:1: rule__ConfigurationRule__Group__3__Impl : ( ( rule__ConfigurationRule__StatementsAssignment_3 )* ) ; + public final void rule__ConfigurationRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1902:1: ( ( ( rule__ConfigurationRule__StatementsAssignment_3 )* ) ) + // InternalGeneratorDSL.g:1903:1: ( ( rule__ConfigurationRule__StatementsAssignment_3 )* ) + { + // InternalGeneratorDSL.g:1903:1: ( ( rule__ConfigurationRule__StatementsAssignment_3 )* ) + // InternalGeneratorDSL.g:1904:2: ( rule__ConfigurationRule__StatementsAssignment_3 )* + { + before(grammarAccess.getConfigurationRuleAccess().getStatementsAssignment_3()); + // InternalGeneratorDSL.g:1905:2: ( rule__ConfigurationRule__StatementsAssignment_3 )* + loop19: + do { + int alt19=2; + int LA19_0 = input.LA(1); + + if ( (LA19_0==29||LA19_0==39) ) { + alt19=1; + } + + + switch (alt19) { + case 1 : + // InternalGeneratorDSL.g:1905:3: rule__ConfigurationRule__StatementsAssignment_3 + { + pushFollow(FOLLOW_7); + rule__ConfigurationRule__StatementsAssignment_3(); + + state._fsp--; + + + } + break; + + default : + break loop19; + } + } while (true); + + after(grammarAccess.getConfigurationRuleAccess().getStatementsAssignment_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__Group__3__Impl" + + + // $ANTLR start "rule__UseRule__Group__0" + // InternalGeneratorDSL.g:1914:1: rule__UseRule__Group__0 : rule__UseRule__Group__0__Impl rule__UseRule__Group__1 ; + public final void rule__UseRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1918:1: ( rule__UseRule__Group__0__Impl rule__UseRule__Group__1 ) + // InternalGeneratorDSL.g:1919:2: rule__UseRule__Group__0__Impl rule__UseRule__Group__1 + { + pushFollow(FOLLOW_8); + rule__UseRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UseRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UseRule__Group__0" + + + // $ANTLR start "rule__UseRule__Group__0__Impl" + // InternalGeneratorDSL.g:1926:1: rule__UseRule__Group__0__Impl : ( 'use' ) ; + public final void rule__UseRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1930:1: ( ( 'use' ) ) + // InternalGeneratorDSL.g:1931:1: ( 'use' ) + { + // InternalGeneratorDSL.g:1931:1: ( 'use' ) + // InternalGeneratorDSL.g:1932:2: 'use' + { + before(grammarAccess.getUseRuleAccess().getUseKeyword_0()); + match(input,24,FOLLOW_2); + after(grammarAccess.getUseRuleAccess().getUseKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UseRule__Group__0__Impl" + + + // $ANTLR start "rule__UseRule__Group__1" + // InternalGeneratorDSL.g:1941:1: rule__UseRule__Group__1 : rule__UseRule__Group__1__Impl rule__UseRule__Group__2 ; + public final void rule__UseRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1945:1: ( rule__UseRule__Group__1__Impl rule__UseRule__Group__2 ) + // InternalGeneratorDSL.g:1946:2: rule__UseRule__Group__1__Impl rule__UseRule__Group__2 + { + pushFollow(FOLLOW_9); + rule__UseRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UseRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UseRule__Group__1" + + + // $ANTLR start "rule__UseRule__Group__1__Impl" + // InternalGeneratorDSL.g:1953:1: rule__UseRule__Group__1__Impl : ( ( rule__UseRule__ImportURIAssignment_1 ) ) ; + public final void rule__UseRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1957:1: ( ( ( rule__UseRule__ImportURIAssignment_1 ) ) ) + // InternalGeneratorDSL.g:1958:1: ( ( rule__UseRule__ImportURIAssignment_1 ) ) + { + // InternalGeneratorDSL.g:1958:1: ( ( rule__UseRule__ImportURIAssignment_1 ) ) + // InternalGeneratorDSL.g:1959:2: ( rule__UseRule__ImportURIAssignment_1 ) + { + before(grammarAccess.getUseRuleAccess().getImportURIAssignment_1()); + // InternalGeneratorDSL.g:1960:2: ( rule__UseRule__ImportURIAssignment_1 ) + // InternalGeneratorDSL.g:1960:3: rule__UseRule__ImportURIAssignment_1 + { + pushFollow(FOLLOW_2); + rule__UseRule__ImportURIAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getUseRuleAccess().getImportURIAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UseRule__Group__1__Impl" + + + // $ANTLR start "rule__UseRule__Group__2" + // InternalGeneratorDSL.g:1968:1: rule__UseRule__Group__2 : rule__UseRule__Group__2__Impl ; + public final void rule__UseRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1972:1: ( rule__UseRule__Group__2__Impl ) + // InternalGeneratorDSL.g:1973:2: rule__UseRule__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__UseRule__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UseRule__Group__2" + + + // $ANTLR start "rule__UseRule__Group__2__Impl" + // InternalGeneratorDSL.g:1979:1: rule__UseRule__Group__2__Impl : ( ';' ) ; + public final void rule__UseRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1983:1: ( ( ';' ) ) + // InternalGeneratorDSL.g:1984:1: ( ';' ) + { + // InternalGeneratorDSL.g:1984:1: ( ';' ) + // InternalGeneratorDSL.g:1985:2: ';' + { + before(grammarAccess.getUseRuleAccess().getSemicolonKeyword_2()); + match(input,25,FOLLOW_2); + after(grammarAccess.getUseRuleAccess().getSemicolonKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UseRule__Group__2__Impl" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__0" + // InternalGeneratorDSL.g:1995:1: rule__ParametrizedFunctionDefinitionRule__Group__0 : rule__ParametrizedFunctionDefinitionRule__Group__0__Impl rule__ParametrizedFunctionDefinitionRule__Group__1 ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:1999:1: ( rule__ParametrizedFunctionDefinitionRule__Group__0__Impl rule__ParametrizedFunctionDefinitionRule__Group__1 ) + // InternalGeneratorDSL.g:2000:2: rule__ParametrizedFunctionDefinitionRule__Group__0__Impl rule__ParametrizedFunctionDefinitionRule__Group__1 + { + pushFollow(FOLLOW_10); + rule__ParametrizedFunctionDefinitionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__0" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__0__Impl" + // InternalGeneratorDSL.g:2007:1: rule__ParametrizedFunctionDefinitionRule__Group__0__Impl : ( 'function' ) ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2011:1: ( ( 'function' ) ) + // InternalGeneratorDSL.g:2012:1: ( 'function' ) + { + // InternalGeneratorDSL.g:2012:1: ( 'function' ) + // InternalGeneratorDSL.g:2013:2: 'function' + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getFunctionKeyword_0()); + match(input,26,FOLLOW_2); + after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getFunctionKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__0__Impl" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__1" + // InternalGeneratorDSL.g:2022:1: rule__ParametrizedFunctionDefinitionRule__Group__1 : rule__ParametrizedFunctionDefinitionRule__Group__1__Impl rule__ParametrizedFunctionDefinitionRule__Group__2 ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2026:1: ( rule__ParametrizedFunctionDefinitionRule__Group__1__Impl rule__ParametrizedFunctionDefinitionRule__Group__2 ) + // InternalGeneratorDSL.g:2027:2: rule__ParametrizedFunctionDefinitionRule__Group__1__Impl rule__ParametrizedFunctionDefinitionRule__Group__2 + { + pushFollow(FOLLOW_11); + rule__ParametrizedFunctionDefinitionRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__1" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__1__Impl" + // InternalGeneratorDSL.g:2034:1: rule__ParametrizedFunctionDefinitionRule__Group__1__Impl : ( ( rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 ) ) ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2038:1: ( ( ( rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 ) ) ) + // InternalGeneratorDSL.g:2039:1: ( ( rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 ) ) + { + // InternalGeneratorDSL.g:2039:1: ( ( rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 ) ) + // InternalGeneratorDSL.g:2040:2: ( rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 ) + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameAssignment_1()); + // InternalGeneratorDSL.g:2041:2: ( rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 ) + // InternalGeneratorDSL.g:2041:3: rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 + { + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionRule__NameAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__1__Impl" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__2" + // InternalGeneratorDSL.g:2049:1: rule__ParametrizedFunctionDefinitionRule__Group__2 : rule__ParametrizedFunctionDefinitionRule__Group__2__Impl rule__ParametrizedFunctionDefinitionRule__Group__3 ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2053:1: ( rule__ParametrizedFunctionDefinitionRule__Group__2__Impl rule__ParametrizedFunctionDefinitionRule__Group__3 ) + // InternalGeneratorDSL.g:2054:2: rule__ParametrizedFunctionDefinitionRule__Group__2__Impl rule__ParametrizedFunctionDefinitionRule__Group__3 + { + pushFollow(FOLLOW_10); + rule__ParametrizedFunctionDefinitionRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__2" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__2__Impl" + // InternalGeneratorDSL.g:2061:1: rule__ParametrizedFunctionDefinitionRule__Group__2__Impl : ( 'using' ) ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2065:1: ( ( 'using' ) ) + // InternalGeneratorDSL.g:2066:1: ( 'using' ) + { + // InternalGeneratorDSL.g:2066:1: ( 'using' ) + // InternalGeneratorDSL.g:2067:2: 'using' + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getUsingKeyword_2()); + match(input,27,FOLLOW_2); + after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getUsingKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__2__Impl" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__3" + // InternalGeneratorDSL.g:2076:1: rule__ParametrizedFunctionDefinitionRule__Group__3 : rule__ParametrizedFunctionDefinitionRule__Group__3__Impl rule__ParametrizedFunctionDefinitionRule__Group__4 ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2080:1: ( rule__ParametrizedFunctionDefinitionRule__Group__3__Impl rule__ParametrizedFunctionDefinitionRule__Group__4 ) + // InternalGeneratorDSL.g:2081:2: rule__ParametrizedFunctionDefinitionRule__Group__3__Impl rule__ParametrizedFunctionDefinitionRule__Group__4 + { + pushFollow(FOLLOW_9); + rule__ParametrizedFunctionDefinitionRule__Group__3__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionRule__Group__4(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__3" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__3__Impl" + // InternalGeneratorDSL.g:2088:1: rule__ParametrizedFunctionDefinitionRule__Group__3__Impl : ( ( rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 ) ) ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2092:1: ( ( ( rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 ) ) ) + // InternalGeneratorDSL.g:2093:1: ( ( rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 ) ) + { + // InternalGeneratorDSL.g:2093:1: ( ( rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 ) ) + // InternalGeneratorDSL.g:2094:2: ( rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 ) + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionAssignment_3()); + // InternalGeneratorDSL.g:2095:2: ( rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 ) + // InternalGeneratorDSL.g:2095:3: rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 + { + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionAssignment_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__3__Impl" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__4" + // InternalGeneratorDSL.g:2103:1: rule__ParametrizedFunctionDefinitionRule__Group__4 : rule__ParametrizedFunctionDefinitionRule__Group__4__Impl ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__4() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2107:1: ( rule__ParametrizedFunctionDefinitionRule__Group__4__Impl ) + // InternalGeneratorDSL.g:2108:2: rule__ParametrizedFunctionDefinitionRule__Group__4__Impl + { + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionRule__Group__4__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__4" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__Group__4__Impl" + // InternalGeneratorDSL.g:2114:1: rule__ParametrizedFunctionDefinitionRule__Group__4__Impl : ( ';' ) ; + public final void rule__ParametrizedFunctionDefinitionRule__Group__4__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2118:1: ( ( ';' ) ) + // InternalGeneratorDSL.g:2119:1: ( ';' ) + { + // InternalGeneratorDSL.g:2119:1: ( ';' ) + // InternalGeneratorDSL.g:2120:2: ';' + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getSemicolonKeyword_4()); + match(input,25,FOLLOW_2); + after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getSemicolonKeyword_4()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__Group__4__Impl" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__0" + // InternalGeneratorDSL.g:2130:1: rule__GeneratorDefinitionRule__Group__0 : rule__GeneratorDefinitionRule__Group__0__Impl rule__GeneratorDefinitionRule__Group__1 ; + public final void rule__GeneratorDefinitionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2134:1: ( rule__GeneratorDefinitionRule__Group__0__Impl rule__GeneratorDefinitionRule__Group__1 ) + // InternalGeneratorDSL.g:2135:2: rule__GeneratorDefinitionRule__Group__0__Impl rule__GeneratorDefinitionRule__Group__1 + { + pushFollow(FOLLOW_10); + rule__GeneratorDefinitionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__0" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__0__Impl" + // InternalGeneratorDSL.g:2142:1: rule__GeneratorDefinitionRule__Group__0__Impl : ( 'generator' ) ; + public final void rule__GeneratorDefinitionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2146:1: ( ( 'generator' ) ) + // InternalGeneratorDSL.g:2147:1: ( 'generator' ) + { + // InternalGeneratorDSL.g:2147:1: ( 'generator' ) + // InternalGeneratorDSL.g:2148:2: 'generator' + { + before(grammarAccess.getGeneratorDefinitionRuleAccess().getGeneratorKeyword_0()); + match(input,28,FOLLOW_2); + after(grammarAccess.getGeneratorDefinitionRuleAccess().getGeneratorKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__0__Impl" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__1" + // InternalGeneratorDSL.g:2157:1: rule__GeneratorDefinitionRule__Group__1 : rule__GeneratorDefinitionRule__Group__1__Impl rule__GeneratorDefinitionRule__Group__2 ; + public final void rule__GeneratorDefinitionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2161:1: ( rule__GeneratorDefinitionRule__Group__1__Impl rule__GeneratorDefinitionRule__Group__2 ) + // InternalGeneratorDSL.g:2162:2: rule__GeneratorDefinitionRule__Group__1__Impl rule__GeneratorDefinitionRule__Group__2 + { + pushFollow(FOLLOW_11); + rule__GeneratorDefinitionRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__1" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__1__Impl" + // InternalGeneratorDSL.g:2169:1: rule__GeneratorDefinitionRule__Group__1__Impl : ( ( rule__GeneratorDefinitionRule__NameAssignment_1 ) ) ; + public final void rule__GeneratorDefinitionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2173:1: ( ( ( rule__GeneratorDefinitionRule__NameAssignment_1 ) ) ) + // InternalGeneratorDSL.g:2174:1: ( ( rule__GeneratorDefinitionRule__NameAssignment_1 ) ) + { + // InternalGeneratorDSL.g:2174:1: ( ( rule__GeneratorDefinitionRule__NameAssignment_1 ) ) + // InternalGeneratorDSL.g:2175:2: ( rule__GeneratorDefinitionRule__NameAssignment_1 ) + { + before(grammarAccess.getGeneratorDefinitionRuleAccess().getNameAssignment_1()); + // InternalGeneratorDSL.g:2176:2: ( rule__GeneratorDefinitionRule__NameAssignment_1 ) + // InternalGeneratorDSL.g:2176:3: rule__GeneratorDefinitionRule__NameAssignment_1 + { + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionRule__NameAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorDefinitionRuleAccess().getNameAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__1__Impl" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__2" + // InternalGeneratorDSL.g:2184:1: rule__GeneratorDefinitionRule__Group__2 : rule__GeneratorDefinitionRule__Group__2__Impl rule__GeneratorDefinitionRule__Group__3 ; + public final void rule__GeneratorDefinitionRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2188:1: ( rule__GeneratorDefinitionRule__Group__2__Impl rule__GeneratorDefinitionRule__Group__3 ) + // InternalGeneratorDSL.g:2189:2: rule__GeneratorDefinitionRule__Group__2__Impl rule__GeneratorDefinitionRule__Group__3 + { + pushFollow(FOLLOW_10); + rule__GeneratorDefinitionRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__2" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__2__Impl" + // InternalGeneratorDSL.g:2196:1: rule__GeneratorDefinitionRule__Group__2__Impl : ( 'using' ) ; + public final void rule__GeneratorDefinitionRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2200:1: ( ( 'using' ) ) + // InternalGeneratorDSL.g:2201:1: ( 'using' ) + { + // InternalGeneratorDSL.g:2201:1: ( 'using' ) + // InternalGeneratorDSL.g:2202:2: 'using' + { + before(grammarAccess.getGeneratorDefinitionRuleAccess().getUsingKeyword_2()); + match(input,27,FOLLOW_2); + after(grammarAccess.getGeneratorDefinitionRuleAccess().getUsingKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__2__Impl" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__3" + // InternalGeneratorDSL.g:2211:1: rule__GeneratorDefinitionRule__Group__3 : rule__GeneratorDefinitionRule__Group__3__Impl rule__GeneratorDefinitionRule__Group__4 ; + public final void rule__GeneratorDefinitionRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2215:1: ( rule__GeneratorDefinitionRule__Group__3__Impl rule__GeneratorDefinitionRule__Group__4 ) + // InternalGeneratorDSL.g:2216:2: rule__GeneratorDefinitionRule__Group__3__Impl rule__GeneratorDefinitionRule__Group__4 + { + pushFollow(FOLLOW_9); + rule__GeneratorDefinitionRule__Group__3__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionRule__Group__4(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__3" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__3__Impl" + // InternalGeneratorDSL.g:2223:1: rule__GeneratorDefinitionRule__Group__3__Impl : ( ( rule__GeneratorDefinitionRule__DefinitionAssignment_3 ) ) ; + public final void rule__GeneratorDefinitionRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2227:1: ( ( ( rule__GeneratorDefinitionRule__DefinitionAssignment_3 ) ) ) + // InternalGeneratorDSL.g:2228:1: ( ( rule__GeneratorDefinitionRule__DefinitionAssignment_3 ) ) + { + // InternalGeneratorDSL.g:2228:1: ( ( rule__GeneratorDefinitionRule__DefinitionAssignment_3 ) ) + // InternalGeneratorDSL.g:2229:2: ( rule__GeneratorDefinitionRule__DefinitionAssignment_3 ) + { + before(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionAssignment_3()); + // InternalGeneratorDSL.g:2230:2: ( rule__GeneratorDefinitionRule__DefinitionAssignment_3 ) + // InternalGeneratorDSL.g:2230:3: rule__GeneratorDefinitionRule__DefinitionAssignment_3 + { + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionRule__DefinitionAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionAssignment_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__3__Impl" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__4" + // InternalGeneratorDSL.g:2238:1: rule__GeneratorDefinitionRule__Group__4 : rule__GeneratorDefinitionRule__Group__4__Impl ; + public final void rule__GeneratorDefinitionRule__Group__4() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2242:1: ( rule__GeneratorDefinitionRule__Group__4__Impl ) + // InternalGeneratorDSL.g:2243:2: rule__GeneratorDefinitionRule__Group__4__Impl + { + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionRule__Group__4__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__4" + + + // $ANTLR start "rule__GeneratorDefinitionRule__Group__4__Impl" + // InternalGeneratorDSL.g:2249:1: rule__GeneratorDefinitionRule__Group__4__Impl : ( ';' ) ; + public final void rule__GeneratorDefinitionRule__Group__4__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2253:1: ( ( ';' ) ) + // InternalGeneratorDSL.g:2254:1: ( ';' ) + { + // InternalGeneratorDSL.g:2254:1: ( ';' ) + // InternalGeneratorDSL.g:2255:2: ';' + { + before(grammarAccess.getGeneratorDefinitionRuleAccess().getSemicolonKeyword_4()); + match(input,25,FOLLOW_2); + after(grammarAccess.getGeneratorDefinitionRuleAccess().getSemicolonKeyword_4()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__Group__4__Impl" + + + // $ANTLR start "rule__ForStatementRule__Group__0" + // InternalGeneratorDSL.g:2265:1: rule__ForStatementRule__Group__0 : rule__ForStatementRule__Group__0__Impl rule__ForStatementRule__Group__1 ; + public final void rule__ForStatementRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2269:1: ( rule__ForStatementRule__Group__0__Impl rule__ForStatementRule__Group__1 ) + // InternalGeneratorDSL.g:2270:2: rule__ForStatementRule__Group__0__Impl rule__ForStatementRule__Group__1 + { + pushFollow(FOLLOW_12); + rule__ForStatementRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ForStatementRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__0" + + + // $ANTLR start "rule__ForStatementRule__Group__0__Impl" + // InternalGeneratorDSL.g:2277:1: rule__ForStatementRule__Group__0__Impl : ( 'for' ) ; + public final void rule__ForStatementRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2281:1: ( ( 'for' ) ) + // InternalGeneratorDSL.g:2282:1: ( 'for' ) + { + // InternalGeneratorDSL.g:2282:1: ( 'for' ) + // InternalGeneratorDSL.g:2283:2: 'for' + { + before(grammarAccess.getForStatementRuleAccess().getForKeyword_0()); + match(input,29,FOLLOW_2); + after(grammarAccess.getForStatementRuleAccess().getForKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__0__Impl" + + + // $ANTLR start "rule__ForStatementRule__Group__1" + // InternalGeneratorDSL.g:2292:1: rule__ForStatementRule__Group__1 : rule__ForStatementRule__Group__1__Impl rule__ForStatementRule__Group__2 ; + public final void rule__ForStatementRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2296:1: ( rule__ForStatementRule__Group__1__Impl rule__ForStatementRule__Group__2 ) + // InternalGeneratorDSL.g:2297:2: rule__ForStatementRule__Group__1__Impl rule__ForStatementRule__Group__2 + { + pushFollow(FOLLOW_13); + rule__ForStatementRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ForStatementRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__1" + + + // $ANTLR start "rule__ForStatementRule__Group__1__Impl" + // InternalGeneratorDSL.g:2304:1: rule__ForStatementRule__Group__1__Impl : ( ( rule__ForStatementRule__NameAssignment_1 ) ) ; + public final void rule__ForStatementRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2308:1: ( ( ( rule__ForStatementRule__NameAssignment_1 ) ) ) + // InternalGeneratorDSL.g:2309:1: ( ( rule__ForStatementRule__NameAssignment_1 ) ) + { + // InternalGeneratorDSL.g:2309:1: ( ( rule__ForStatementRule__NameAssignment_1 ) ) + // InternalGeneratorDSL.g:2310:2: ( rule__ForStatementRule__NameAssignment_1 ) + { + before(grammarAccess.getForStatementRuleAccess().getNameAssignment_1()); + // InternalGeneratorDSL.g:2311:2: ( rule__ForStatementRule__NameAssignment_1 ) + // InternalGeneratorDSL.g:2311:3: rule__ForStatementRule__NameAssignment_1 + { + pushFollow(FOLLOW_2); + rule__ForStatementRule__NameAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getForStatementRuleAccess().getNameAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__1__Impl" + + + // $ANTLR start "rule__ForStatementRule__Group__2" + // InternalGeneratorDSL.g:2319:1: rule__ForStatementRule__Group__2 : rule__ForStatementRule__Group__2__Impl rule__ForStatementRule__Group__3 ; + public final void rule__ForStatementRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2323:1: ( rule__ForStatementRule__Group__2__Impl rule__ForStatementRule__Group__3 ) + // InternalGeneratorDSL.g:2324:2: rule__ForStatementRule__Group__2__Impl rule__ForStatementRule__Group__3 + { + pushFollow(FOLLOW_14); + rule__ForStatementRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ForStatementRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__2" + + + // $ANTLR start "rule__ForStatementRule__Group__2__Impl" + // InternalGeneratorDSL.g:2331:1: rule__ForStatementRule__Group__2__Impl : ( 'in' ) ; + public final void rule__ForStatementRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2335:1: ( ( 'in' ) ) + // InternalGeneratorDSL.g:2336:1: ( 'in' ) + { + // InternalGeneratorDSL.g:2336:1: ( 'in' ) + // InternalGeneratorDSL.g:2337:2: 'in' + { + before(grammarAccess.getForStatementRuleAccess().getInKeyword_2()); + match(input,30,FOLLOW_2); + after(grammarAccess.getForStatementRuleAccess().getInKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__2__Impl" + + + // $ANTLR start "rule__ForStatementRule__Group__3" + // InternalGeneratorDSL.g:2346:1: rule__ForStatementRule__Group__3 : rule__ForStatementRule__Group__3__Impl rule__ForStatementRule__Group__4 ; + public final void rule__ForStatementRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2350:1: ( rule__ForStatementRule__Group__3__Impl rule__ForStatementRule__Group__4 ) + // InternalGeneratorDSL.g:2351:2: rule__ForStatementRule__Group__3__Impl rule__ForStatementRule__Group__4 + { + pushFollow(FOLLOW_15); + rule__ForStatementRule__Group__3__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ForStatementRule__Group__4(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__3" + + + // $ANTLR start "rule__ForStatementRule__Group__3__Impl" + // InternalGeneratorDSL.g:2358:1: rule__ForStatementRule__Group__3__Impl : ( ( rule__ForStatementRule__RangeAssignment_3 ) ) ; + public final void rule__ForStatementRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2362:1: ( ( ( rule__ForStatementRule__RangeAssignment_3 ) ) ) + // InternalGeneratorDSL.g:2363:1: ( ( rule__ForStatementRule__RangeAssignment_3 ) ) + { + // InternalGeneratorDSL.g:2363:1: ( ( rule__ForStatementRule__RangeAssignment_3 ) ) + // InternalGeneratorDSL.g:2364:2: ( rule__ForStatementRule__RangeAssignment_3 ) + { + before(grammarAccess.getForStatementRuleAccess().getRangeAssignment_3()); + // InternalGeneratorDSL.g:2365:2: ( rule__ForStatementRule__RangeAssignment_3 ) + // InternalGeneratorDSL.g:2365:3: rule__ForStatementRule__RangeAssignment_3 + { + pushFollow(FOLLOW_2); + rule__ForStatementRule__RangeAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getForStatementRuleAccess().getRangeAssignment_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__3__Impl" + + + // $ANTLR start "rule__ForStatementRule__Group__4" + // InternalGeneratorDSL.g:2373:1: rule__ForStatementRule__Group__4 : rule__ForStatementRule__Group__4__Impl rule__ForStatementRule__Group__5 ; + public final void rule__ForStatementRule__Group__4() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2377:1: ( rule__ForStatementRule__Group__4__Impl rule__ForStatementRule__Group__5 ) + // InternalGeneratorDSL.g:2378:2: rule__ForStatementRule__Group__4__Impl rule__ForStatementRule__Group__5 + { + pushFollow(FOLLOW_16); + rule__ForStatementRule__Group__4__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ForStatementRule__Group__5(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__4" + + + // $ANTLR start "rule__ForStatementRule__Group__4__Impl" + // InternalGeneratorDSL.g:2385:1: rule__ForStatementRule__Group__4__Impl : ( 'loop' ) ; + public final void rule__ForStatementRule__Group__4__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2389:1: ( ( 'loop' ) ) + // InternalGeneratorDSL.g:2390:1: ( 'loop' ) + { + // InternalGeneratorDSL.g:2390:1: ( 'loop' ) + // InternalGeneratorDSL.g:2391:2: 'loop' + { + before(grammarAccess.getForStatementRuleAccess().getLoopKeyword_4()); + match(input,31,FOLLOW_2); + after(grammarAccess.getForStatementRuleAccess().getLoopKeyword_4()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__4__Impl" + + + // $ANTLR start "rule__ForStatementRule__Group__5" + // InternalGeneratorDSL.g:2400:1: rule__ForStatementRule__Group__5 : rule__ForStatementRule__Group__5__Impl rule__ForStatementRule__Group__6 ; + public final void rule__ForStatementRule__Group__5() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2404:1: ( rule__ForStatementRule__Group__5__Impl rule__ForStatementRule__Group__6 ) + // InternalGeneratorDSL.g:2405:2: rule__ForStatementRule__Group__5__Impl rule__ForStatementRule__Group__6 + { + pushFollow(FOLLOW_16); + rule__ForStatementRule__Group__5__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ForStatementRule__Group__6(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__5" + + + // $ANTLR start "rule__ForStatementRule__Group__5__Impl" + // InternalGeneratorDSL.g:2412:1: rule__ForStatementRule__Group__5__Impl : ( ( rule__ForStatementRule__StatementsAssignment_5 )* ) ; + public final void rule__ForStatementRule__Group__5__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2416:1: ( ( ( rule__ForStatementRule__StatementsAssignment_5 )* ) ) + // InternalGeneratorDSL.g:2417:1: ( ( rule__ForStatementRule__StatementsAssignment_5 )* ) + { + // InternalGeneratorDSL.g:2417:1: ( ( rule__ForStatementRule__StatementsAssignment_5 )* ) + // InternalGeneratorDSL.g:2418:2: ( rule__ForStatementRule__StatementsAssignment_5 )* + { + before(grammarAccess.getForStatementRuleAccess().getStatementsAssignment_5()); + // InternalGeneratorDSL.g:2419:2: ( rule__ForStatementRule__StatementsAssignment_5 )* + loop20: + do { + int alt20=2; + int LA20_0 = input.LA(1); + + if ( (LA20_0==29||LA20_0==39) ) { + alt20=1; + } + + + switch (alt20) { + case 1 : + // InternalGeneratorDSL.g:2419:3: rule__ForStatementRule__StatementsAssignment_5 + { + pushFollow(FOLLOW_7); + rule__ForStatementRule__StatementsAssignment_5(); + + state._fsp--; + + + } + break; + + default : + break loop20; + } + } while (true); + + after(grammarAccess.getForStatementRuleAccess().getStatementsAssignment_5()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__5__Impl" + + + // $ANTLR start "rule__ForStatementRule__Group__6" + // InternalGeneratorDSL.g:2427:1: rule__ForStatementRule__Group__6 : rule__ForStatementRule__Group__6__Impl ; + public final void rule__ForStatementRule__Group__6() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2431:1: ( rule__ForStatementRule__Group__6__Impl ) + // InternalGeneratorDSL.g:2432:2: rule__ForStatementRule__Group__6__Impl + { + pushFollow(FOLLOW_2); + rule__ForStatementRule__Group__6__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__6" + + + // $ANTLR start "rule__ForStatementRule__Group__6__Impl" + // InternalGeneratorDSL.g:2438:1: rule__ForStatementRule__Group__6__Impl : ( 'end' ) ; + public final void rule__ForStatementRule__Group__6__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2442:1: ( ( 'end' ) ) + // InternalGeneratorDSL.g:2443:1: ( 'end' ) + { + // InternalGeneratorDSL.g:2443:1: ( 'end' ) + // InternalGeneratorDSL.g:2444:2: 'end' + { + before(grammarAccess.getForStatementRuleAccess().getEndKeyword_6()); + match(input,32,FOLLOW_2); + after(grammarAccess.getForStatementRuleAccess().getEndKeyword_6()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__Group__6__Impl" + + + // $ANTLR start "rule__CounterRangeRule__Group__0" + // InternalGeneratorDSL.g:2454:1: rule__CounterRangeRule__Group__0 : rule__CounterRangeRule__Group__0__Impl rule__CounterRangeRule__Group__1 ; + public final void rule__CounterRangeRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2458:1: ( rule__CounterRangeRule__Group__0__Impl rule__CounterRangeRule__Group__1 ) + // InternalGeneratorDSL.g:2459:2: rule__CounterRangeRule__Group__0__Impl rule__CounterRangeRule__Group__1 + { + pushFollow(FOLLOW_17); + rule__CounterRangeRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CounterRangeRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__0" + + + // $ANTLR start "rule__CounterRangeRule__Group__0__Impl" + // InternalGeneratorDSL.g:2466:1: rule__CounterRangeRule__Group__0__Impl : ( '[' ) ; + public final void rule__CounterRangeRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2470:1: ( ( '[' ) ) + // InternalGeneratorDSL.g:2471:1: ( '[' ) + { + // InternalGeneratorDSL.g:2471:1: ( '[' ) + // InternalGeneratorDSL.g:2472:2: '[' + { + before(grammarAccess.getCounterRangeRuleAccess().getLeftSquareBracketKeyword_0()); + match(input,33,FOLLOW_2); + after(grammarAccess.getCounterRangeRuleAccess().getLeftSquareBracketKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__0__Impl" + + + // $ANTLR start "rule__CounterRangeRule__Group__1" + // InternalGeneratorDSL.g:2481:1: rule__CounterRangeRule__Group__1 : rule__CounterRangeRule__Group__1__Impl rule__CounterRangeRule__Group__2 ; + public final void rule__CounterRangeRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2485:1: ( rule__CounterRangeRule__Group__1__Impl rule__CounterRangeRule__Group__2 ) + // InternalGeneratorDSL.g:2486:2: rule__CounterRangeRule__Group__1__Impl rule__CounterRangeRule__Group__2 + { + pushFollow(FOLLOW_18); + rule__CounterRangeRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CounterRangeRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__1" + + + // $ANTLR start "rule__CounterRangeRule__Group__1__Impl" + // InternalGeneratorDSL.g:2493:1: rule__CounterRangeRule__Group__1__Impl : ( ( rule__CounterRangeRule__StartAssignment_1 ) ) ; + public final void rule__CounterRangeRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2497:1: ( ( ( rule__CounterRangeRule__StartAssignment_1 ) ) ) + // InternalGeneratorDSL.g:2498:1: ( ( rule__CounterRangeRule__StartAssignment_1 ) ) + { + // InternalGeneratorDSL.g:2498:1: ( ( rule__CounterRangeRule__StartAssignment_1 ) ) + // InternalGeneratorDSL.g:2499:2: ( rule__CounterRangeRule__StartAssignment_1 ) + { + before(grammarAccess.getCounterRangeRuleAccess().getStartAssignment_1()); + // InternalGeneratorDSL.g:2500:2: ( rule__CounterRangeRule__StartAssignment_1 ) + // InternalGeneratorDSL.g:2500:3: rule__CounterRangeRule__StartAssignment_1 + { + pushFollow(FOLLOW_2); + rule__CounterRangeRule__StartAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getCounterRangeRuleAccess().getStartAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__1__Impl" + + + // $ANTLR start "rule__CounterRangeRule__Group__2" + // InternalGeneratorDSL.g:2508:1: rule__CounterRangeRule__Group__2 : rule__CounterRangeRule__Group__2__Impl rule__CounterRangeRule__Group__3 ; + public final void rule__CounterRangeRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2512:1: ( rule__CounterRangeRule__Group__2__Impl rule__CounterRangeRule__Group__3 ) + // InternalGeneratorDSL.g:2513:2: rule__CounterRangeRule__Group__2__Impl rule__CounterRangeRule__Group__3 + { + pushFollow(FOLLOW_17); + rule__CounterRangeRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CounterRangeRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__2" + + + // $ANTLR start "rule__CounterRangeRule__Group__2__Impl" + // InternalGeneratorDSL.g:2520:1: rule__CounterRangeRule__Group__2__Impl : ( 'to' ) ; + public final void rule__CounterRangeRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2524:1: ( ( 'to' ) ) + // InternalGeneratorDSL.g:2525:1: ( 'to' ) + { + // InternalGeneratorDSL.g:2525:1: ( 'to' ) + // InternalGeneratorDSL.g:2526:2: 'to' + { + before(grammarAccess.getCounterRangeRuleAccess().getToKeyword_2()); + match(input,34,FOLLOW_2); + after(grammarAccess.getCounterRangeRuleAccess().getToKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__2__Impl" + + + // $ANTLR start "rule__CounterRangeRule__Group__3" + // InternalGeneratorDSL.g:2535:1: rule__CounterRangeRule__Group__3 : rule__CounterRangeRule__Group__3__Impl rule__CounterRangeRule__Group__4 ; + public final void rule__CounterRangeRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2539:1: ( rule__CounterRangeRule__Group__3__Impl rule__CounterRangeRule__Group__4 ) + // InternalGeneratorDSL.g:2540:2: rule__CounterRangeRule__Group__3__Impl rule__CounterRangeRule__Group__4 + { + pushFollow(FOLLOW_19); + rule__CounterRangeRule__Group__3__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CounterRangeRule__Group__4(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__3" + + + // $ANTLR start "rule__CounterRangeRule__Group__3__Impl" + // InternalGeneratorDSL.g:2547:1: rule__CounterRangeRule__Group__3__Impl : ( ( rule__CounterRangeRule__EndAssignment_3 ) ) ; + public final void rule__CounterRangeRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2551:1: ( ( ( rule__CounterRangeRule__EndAssignment_3 ) ) ) + // InternalGeneratorDSL.g:2552:1: ( ( rule__CounterRangeRule__EndAssignment_3 ) ) + { + // InternalGeneratorDSL.g:2552:1: ( ( rule__CounterRangeRule__EndAssignment_3 ) ) + // InternalGeneratorDSL.g:2553:2: ( rule__CounterRangeRule__EndAssignment_3 ) + { + before(grammarAccess.getCounterRangeRuleAccess().getEndAssignment_3()); + // InternalGeneratorDSL.g:2554:2: ( rule__CounterRangeRule__EndAssignment_3 ) + // InternalGeneratorDSL.g:2554:3: rule__CounterRangeRule__EndAssignment_3 + { + pushFollow(FOLLOW_2); + rule__CounterRangeRule__EndAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getCounterRangeRuleAccess().getEndAssignment_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__3__Impl" + + + // $ANTLR start "rule__CounterRangeRule__Group__4" + // InternalGeneratorDSL.g:2562:1: rule__CounterRangeRule__Group__4 : rule__CounterRangeRule__Group__4__Impl ; + public final void rule__CounterRangeRule__Group__4() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2566:1: ( rule__CounterRangeRule__Group__4__Impl ) + // InternalGeneratorDSL.g:2567:2: rule__CounterRangeRule__Group__4__Impl + { + pushFollow(FOLLOW_2); + rule__CounterRangeRule__Group__4__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__4" + + + // $ANTLR start "rule__CounterRangeRule__Group__4__Impl" + // InternalGeneratorDSL.g:2573:1: rule__CounterRangeRule__Group__4__Impl : ( ']' ) ; + public final void rule__CounterRangeRule__Group__4__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2577:1: ( ( ']' ) ) + // InternalGeneratorDSL.g:2578:1: ( ']' ) + { + // InternalGeneratorDSL.g:2578:1: ( ']' ) + // InternalGeneratorDSL.g:2579:2: ']' + { + before(grammarAccess.getCounterRangeRuleAccess().getRightSquareBracketKeyword_4()); + match(input,35,FOLLOW_2); + after(grammarAccess.getCounterRangeRuleAccess().getRightSquareBracketKeyword_4()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__Group__4__Impl" + + + // $ANTLR start "rule__FunctionsRule__Group__0" + // InternalGeneratorDSL.g:2589:1: rule__FunctionsRule__Group__0 : rule__FunctionsRule__Group__0__Impl rule__FunctionsRule__Group__1 ; + public final void rule__FunctionsRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2593:1: ( rule__FunctionsRule__Group__0__Impl rule__FunctionsRule__Group__1 ) + // InternalGeneratorDSL.g:2594:2: rule__FunctionsRule__Group__0__Impl rule__FunctionsRule__Group__1 + { + pushFollow(FOLLOW_20); + rule__FunctionsRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionsRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionsRule__Group__0" + + + // $ANTLR start "rule__FunctionsRule__Group__0__Impl" + // InternalGeneratorDSL.g:2601:1: rule__FunctionsRule__Group__0__Impl : ( () ) ; + public final void rule__FunctionsRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2605:1: ( ( () ) ) + // InternalGeneratorDSL.g:2606:1: ( () ) + { + // InternalGeneratorDSL.g:2606:1: ( () ) + // InternalGeneratorDSL.g:2607:2: () + { + before(grammarAccess.getFunctionsRuleAccess().getFunctionsAction_0()); + // InternalGeneratorDSL.g:2608:2: () + // InternalGeneratorDSL.g:2608:3: + { + } + + after(grammarAccess.getFunctionsRuleAccess().getFunctionsAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionsRule__Group__0__Impl" + + + // $ANTLR start "rule__FunctionsRule__Group__1" + // InternalGeneratorDSL.g:2616:1: rule__FunctionsRule__Group__1 : rule__FunctionsRule__Group__1__Impl rule__FunctionsRule__Group__2 ; + public final void rule__FunctionsRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2620:1: ( rule__FunctionsRule__Group__1__Impl rule__FunctionsRule__Group__2 ) + // InternalGeneratorDSL.g:2621:2: rule__FunctionsRule__Group__1__Impl rule__FunctionsRule__Group__2 + { + pushFollow(FOLLOW_21); + rule__FunctionsRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionsRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionsRule__Group__1" + + + // $ANTLR start "rule__FunctionsRule__Group__1__Impl" + // InternalGeneratorDSL.g:2628:1: rule__FunctionsRule__Group__1__Impl : ( 'functions' ) ; + public final void rule__FunctionsRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2632:1: ( ( 'functions' ) ) + // InternalGeneratorDSL.g:2633:1: ( 'functions' ) + { + // InternalGeneratorDSL.g:2633:1: ( 'functions' ) + // InternalGeneratorDSL.g:2634:2: 'functions' + { + before(grammarAccess.getFunctionsRuleAccess().getFunctionsKeyword_1()); + match(input,36,FOLLOW_2); + after(grammarAccess.getFunctionsRuleAccess().getFunctionsKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionsRule__Group__1__Impl" + + + // $ANTLR start "rule__FunctionsRule__Group__2" + // InternalGeneratorDSL.g:2643:1: rule__FunctionsRule__Group__2 : rule__FunctionsRule__Group__2__Impl ; + public final void rule__FunctionsRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2647:1: ( rule__FunctionsRule__Group__2__Impl ) + // InternalGeneratorDSL.g:2648:2: rule__FunctionsRule__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__FunctionsRule__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionsRule__Group__2" + + + // $ANTLR start "rule__FunctionsRule__Group__2__Impl" + // InternalGeneratorDSL.g:2654:1: rule__FunctionsRule__Group__2__Impl : ( ( rule__FunctionsRule__FunctionReferencesAssignment_2 )? ) ; + public final void rule__FunctionsRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2658:1: ( ( ( rule__FunctionsRule__FunctionReferencesAssignment_2 )? ) ) + // InternalGeneratorDSL.g:2659:1: ( ( rule__FunctionsRule__FunctionReferencesAssignment_2 )? ) + { + // InternalGeneratorDSL.g:2659:1: ( ( rule__FunctionsRule__FunctionReferencesAssignment_2 )? ) + // InternalGeneratorDSL.g:2660:2: ( rule__FunctionsRule__FunctionReferencesAssignment_2 )? + { + before(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesAssignment_2()); + // InternalGeneratorDSL.g:2661:2: ( rule__FunctionsRule__FunctionReferencesAssignment_2 )? + int alt21=2; + int LA21_0 = input.LA(1); + + if ( (LA21_0==33) ) { + alt21=1; + } + switch (alt21) { + case 1 : + // InternalGeneratorDSL.g:2661:3: rule__FunctionsRule__FunctionReferencesAssignment_2 + { + pushFollow(FOLLOW_2); + rule__FunctionsRule__FunctionReferencesAssignment_2(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesAssignment_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionsRule__Group__2__Impl" + + + // $ANTLR start "rule__FunctionReferencesRule__Group__0" + // InternalGeneratorDSL.g:2670:1: rule__FunctionReferencesRule__Group__0 : rule__FunctionReferencesRule__Group__0__Impl rule__FunctionReferencesRule__Group__1 ; + public final void rule__FunctionReferencesRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2674:1: ( rule__FunctionReferencesRule__Group__0__Impl rule__FunctionReferencesRule__Group__1 ) + // InternalGeneratorDSL.g:2675:2: rule__FunctionReferencesRule__Group__0__Impl rule__FunctionReferencesRule__Group__1 + { + pushFollow(FOLLOW_22); + rule__FunctionReferencesRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group__0" + + + // $ANTLR start "rule__FunctionReferencesRule__Group__0__Impl" + // InternalGeneratorDSL.g:2682:1: rule__FunctionReferencesRule__Group__0__Impl : ( '[' ) ; + public final void rule__FunctionReferencesRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2686:1: ( ( '[' ) ) + // InternalGeneratorDSL.g:2687:1: ( '[' ) + { + // InternalGeneratorDSL.g:2687:1: ( '[' ) + // InternalGeneratorDSL.g:2688:2: '[' + { + before(grammarAccess.getFunctionReferencesRuleAccess().getLeftSquareBracketKeyword_0()); + match(input,33,FOLLOW_2); + after(grammarAccess.getFunctionReferencesRuleAccess().getLeftSquareBracketKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group__0__Impl" + + + // $ANTLR start "rule__FunctionReferencesRule__Group__1" + // InternalGeneratorDSL.g:2697:1: rule__FunctionReferencesRule__Group__1 : rule__FunctionReferencesRule__Group__1__Impl rule__FunctionReferencesRule__Group__2 ; + public final void rule__FunctionReferencesRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2701:1: ( rule__FunctionReferencesRule__Group__1__Impl rule__FunctionReferencesRule__Group__2 ) + // InternalGeneratorDSL.g:2702:2: rule__FunctionReferencesRule__Group__1__Impl rule__FunctionReferencesRule__Group__2 + { + pushFollow(FOLLOW_23); + rule__FunctionReferencesRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group__1" + + + // $ANTLR start "rule__FunctionReferencesRule__Group__1__Impl" + // InternalGeneratorDSL.g:2709:1: rule__FunctionReferencesRule__Group__1__Impl : ( ( rule__FunctionReferencesRule__FunctionsAssignment_1 ) ) ; + public final void rule__FunctionReferencesRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2713:1: ( ( ( rule__FunctionReferencesRule__FunctionsAssignment_1 ) ) ) + // InternalGeneratorDSL.g:2714:1: ( ( rule__FunctionReferencesRule__FunctionsAssignment_1 ) ) + { + // InternalGeneratorDSL.g:2714:1: ( ( rule__FunctionReferencesRule__FunctionsAssignment_1 ) ) + // InternalGeneratorDSL.g:2715:2: ( rule__FunctionReferencesRule__FunctionsAssignment_1 ) + { + before(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_1()); + // InternalGeneratorDSL.g:2716:2: ( rule__FunctionReferencesRule__FunctionsAssignment_1 ) + // InternalGeneratorDSL.g:2716:3: rule__FunctionReferencesRule__FunctionsAssignment_1 + { + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__FunctionsAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group__1__Impl" + + + // $ANTLR start "rule__FunctionReferencesRule__Group__2" + // InternalGeneratorDSL.g:2724:1: rule__FunctionReferencesRule__Group__2 : rule__FunctionReferencesRule__Group__2__Impl rule__FunctionReferencesRule__Group__3 ; + public final void rule__FunctionReferencesRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2728:1: ( rule__FunctionReferencesRule__Group__2__Impl rule__FunctionReferencesRule__Group__3 ) + // InternalGeneratorDSL.g:2729:2: rule__FunctionReferencesRule__Group__2__Impl rule__FunctionReferencesRule__Group__3 + { + pushFollow(FOLLOW_23); + rule__FunctionReferencesRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group__2" + + + // $ANTLR start "rule__FunctionReferencesRule__Group__2__Impl" + // InternalGeneratorDSL.g:2736:1: rule__FunctionReferencesRule__Group__2__Impl : ( ( rule__FunctionReferencesRule__Group_2__0 )* ) ; + public final void rule__FunctionReferencesRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2740:1: ( ( ( rule__FunctionReferencesRule__Group_2__0 )* ) ) + // InternalGeneratorDSL.g:2741:1: ( ( rule__FunctionReferencesRule__Group_2__0 )* ) + { + // InternalGeneratorDSL.g:2741:1: ( ( rule__FunctionReferencesRule__Group_2__0 )* ) + // InternalGeneratorDSL.g:2742:2: ( rule__FunctionReferencesRule__Group_2__0 )* + { + before(grammarAccess.getFunctionReferencesRuleAccess().getGroup_2()); + // InternalGeneratorDSL.g:2743:2: ( rule__FunctionReferencesRule__Group_2__0 )* + loop22: + do { + int alt22=2; + int LA22_0 = input.LA(1); + + if ( (LA22_0==37) ) { + alt22=1; + } + + + switch (alt22) { + case 1 : + // InternalGeneratorDSL.g:2743:3: rule__FunctionReferencesRule__Group_2__0 + { + pushFollow(FOLLOW_24); + rule__FunctionReferencesRule__Group_2__0(); + + state._fsp--; + + + } + break; + + default : + break loop22; + } + } while (true); + + after(grammarAccess.getFunctionReferencesRuleAccess().getGroup_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group__2__Impl" + + + // $ANTLR start "rule__FunctionReferencesRule__Group__3" + // InternalGeneratorDSL.g:2751:1: rule__FunctionReferencesRule__Group__3 : rule__FunctionReferencesRule__Group__3__Impl ; + public final void rule__FunctionReferencesRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2755:1: ( rule__FunctionReferencesRule__Group__3__Impl ) + // InternalGeneratorDSL.g:2756:2: rule__FunctionReferencesRule__Group__3__Impl + { + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__Group__3__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group__3" + + + // $ANTLR start "rule__FunctionReferencesRule__Group__3__Impl" + // InternalGeneratorDSL.g:2762:1: rule__FunctionReferencesRule__Group__3__Impl : ( ']' ) ; + public final void rule__FunctionReferencesRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2766:1: ( ( ']' ) ) + // InternalGeneratorDSL.g:2767:1: ( ']' ) + { + // InternalGeneratorDSL.g:2767:1: ( ']' ) + // InternalGeneratorDSL.g:2768:2: ']' + { + before(grammarAccess.getFunctionReferencesRuleAccess().getRightSquareBracketKeyword_3()); + match(input,35,FOLLOW_2); + after(grammarAccess.getFunctionReferencesRuleAccess().getRightSquareBracketKeyword_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group__3__Impl" + + + // $ANTLR start "rule__FunctionReferencesRule__Group_2__0" + // InternalGeneratorDSL.g:2778:1: rule__FunctionReferencesRule__Group_2__0 : rule__FunctionReferencesRule__Group_2__0__Impl rule__FunctionReferencesRule__Group_2__1 ; + public final void rule__FunctionReferencesRule__Group_2__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2782:1: ( rule__FunctionReferencesRule__Group_2__0__Impl rule__FunctionReferencesRule__Group_2__1 ) + // InternalGeneratorDSL.g:2783:2: rule__FunctionReferencesRule__Group_2__0__Impl rule__FunctionReferencesRule__Group_2__1 + { + pushFollow(FOLLOW_22); + rule__FunctionReferencesRule__Group_2__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__Group_2__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group_2__0" + + + // $ANTLR start "rule__FunctionReferencesRule__Group_2__0__Impl" + // InternalGeneratorDSL.g:2790:1: rule__FunctionReferencesRule__Group_2__0__Impl : ( ',' ) ; + public final void rule__FunctionReferencesRule__Group_2__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2794:1: ( ( ',' ) ) + // InternalGeneratorDSL.g:2795:1: ( ',' ) + { + // InternalGeneratorDSL.g:2795:1: ( ',' ) + // InternalGeneratorDSL.g:2796:2: ',' + { + before(grammarAccess.getFunctionReferencesRuleAccess().getCommaKeyword_2_0()); + match(input,37,FOLLOW_2); + after(grammarAccess.getFunctionReferencesRuleAccess().getCommaKeyword_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group_2__0__Impl" + + + // $ANTLR start "rule__FunctionReferencesRule__Group_2__1" + // InternalGeneratorDSL.g:2805:1: rule__FunctionReferencesRule__Group_2__1 : rule__FunctionReferencesRule__Group_2__1__Impl ; + public final void rule__FunctionReferencesRule__Group_2__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2809:1: ( rule__FunctionReferencesRule__Group_2__1__Impl ) + // InternalGeneratorDSL.g:2810:2: rule__FunctionReferencesRule__Group_2__1__Impl + { + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__Group_2__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group_2__1" + + + // $ANTLR start "rule__FunctionReferencesRule__Group_2__1__Impl" + // InternalGeneratorDSL.g:2816:1: rule__FunctionReferencesRule__Group_2__1__Impl : ( ( rule__FunctionReferencesRule__FunctionsAssignment_2_1 ) ) ; + public final void rule__FunctionReferencesRule__Group_2__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2820:1: ( ( ( rule__FunctionReferencesRule__FunctionsAssignment_2_1 ) ) ) + // InternalGeneratorDSL.g:2821:1: ( ( rule__FunctionReferencesRule__FunctionsAssignment_2_1 ) ) + { + // InternalGeneratorDSL.g:2821:1: ( ( rule__FunctionReferencesRule__FunctionsAssignment_2_1 ) ) + // InternalGeneratorDSL.g:2822:2: ( rule__FunctionReferencesRule__FunctionsAssignment_2_1 ) + { + before(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_2_1()); + // InternalGeneratorDSL.g:2823:2: ( rule__FunctionReferencesRule__FunctionsAssignment_2_1 ) + // InternalGeneratorDSL.g:2823:3: rule__FunctionReferencesRule__FunctionsAssignment_2_1 + { + pushFollow(FOLLOW_2); + rule__FunctionReferencesRule__FunctionsAssignment_2_1(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsAssignment_2_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__Group_2__1__Impl" + + + // $ANTLR start "rule__GeneratorsRule__Group__0" + // InternalGeneratorDSL.g:2832:1: rule__GeneratorsRule__Group__0 : rule__GeneratorsRule__Group__0__Impl rule__GeneratorsRule__Group__1 ; + public final void rule__GeneratorsRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2836:1: ( rule__GeneratorsRule__Group__0__Impl rule__GeneratorsRule__Group__1 ) + // InternalGeneratorDSL.g:2837:2: rule__GeneratorsRule__Group__0__Impl rule__GeneratorsRule__Group__1 + { + pushFollow(FOLLOW_25); + rule__GeneratorsRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorsRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorsRule__Group__0" + + + // $ANTLR start "rule__GeneratorsRule__Group__0__Impl" + // InternalGeneratorDSL.g:2844:1: rule__GeneratorsRule__Group__0__Impl : ( () ) ; + public final void rule__GeneratorsRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2848:1: ( ( () ) ) + // InternalGeneratorDSL.g:2849:1: ( () ) + { + // InternalGeneratorDSL.g:2849:1: ( () ) + // InternalGeneratorDSL.g:2850:2: () + { + before(grammarAccess.getGeneratorsRuleAccess().getGeneratorsAction_0()); + // InternalGeneratorDSL.g:2851:2: () + // InternalGeneratorDSL.g:2851:3: + { + } + + after(grammarAccess.getGeneratorsRuleAccess().getGeneratorsAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorsRule__Group__0__Impl" + + + // $ANTLR start "rule__GeneratorsRule__Group__1" + // InternalGeneratorDSL.g:2859:1: rule__GeneratorsRule__Group__1 : rule__GeneratorsRule__Group__1__Impl rule__GeneratorsRule__Group__2 ; + public final void rule__GeneratorsRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2863:1: ( rule__GeneratorsRule__Group__1__Impl rule__GeneratorsRule__Group__2 ) + // InternalGeneratorDSL.g:2864:2: rule__GeneratorsRule__Group__1__Impl rule__GeneratorsRule__Group__2 + { + pushFollow(FOLLOW_21); + rule__GeneratorsRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorsRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorsRule__Group__1" + + + // $ANTLR start "rule__GeneratorsRule__Group__1__Impl" + // InternalGeneratorDSL.g:2871:1: rule__GeneratorsRule__Group__1__Impl : ( 'generators' ) ; + public final void rule__GeneratorsRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2875:1: ( ( 'generators' ) ) + // InternalGeneratorDSL.g:2876:1: ( 'generators' ) + { + // InternalGeneratorDSL.g:2876:1: ( 'generators' ) + // InternalGeneratorDSL.g:2877:2: 'generators' + { + before(grammarAccess.getGeneratorsRuleAccess().getGeneratorsKeyword_1()); + match(input,38,FOLLOW_2); + after(grammarAccess.getGeneratorsRuleAccess().getGeneratorsKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorsRule__Group__1__Impl" + + + // $ANTLR start "rule__GeneratorsRule__Group__2" + // InternalGeneratorDSL.g:2886:1: rule__GeneratorsRule__Group__2 : rule__GeneratorsRule__Group__2__Impl ; + public final void rule__GeneratorsRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2890:1: ( rule__GeneratorsRule__Group__2__Impl ) + // InternalGeneratorDSL.g:2891:2: rule__GeneratorsRule__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__GeneratorsRule__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorsRule__Group__2" + + + // $ANTLR start "rule__GeneratorsRule__Group__2__Impl" + // InternalGeneratorDSL.g:2897:1: rule__GeneratorsRule__Group__2__Impl : ( ( rule__GeneratorsRule__GeneratorReferencesAssignment_2 )? ) ; + public final void rule__GeneratorsRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2901:1: ( ( ( rule__GeneratorsRule__GeneratorReferencesAssignment_2 )? ) ) + // InternalGeneratorDSL.g:2902:1: ( ( rule__GeneratorsRule__GeneratorReferencesAssignment_2 )? ) + { + // InternalGeneratorDSL.g:2902:1: ( ( rule__GeneratorsRule__GeneratorReferencesAssignment_2 )? ) + // InternalGeneratorDSL.g:2903:2: ( rule__GeneratorsRule__GeneratorReferencesAssignment_2 )? + { + before(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesAssignment_2()); + // InternalGeneratorDSL.g:2904:2: ( rule__GeneratorsRule__GeneratorReferencesAssignment_2 )? + int alt23=2; + int LA23_0 = input.LA(1); + + if ( (LA23_0==33) ) { + alt23=1; + } + switch (alt23) { + case 1 : + // InternalGeneratorDSL.g:2904:3: rule__GeneratorsRule__GeneratorReferencesAssignment_2 + { + pushFollow(FOLLOW_2); + rule__GeneratorsRule__GeneratorReferencesAssignment_2(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesAssignment_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorsRule__Group__2__Impl" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group__0" + // InternalGeneratorDSL.g:2913:1: rule__GeneratorReferencesRule__Group__0 : rule__GeneratorReferencesRule__Group__0__Impl rule__GeneratorReferencesRule__Group__1 ; + public final void rule__GeneratorReferencesRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2917:1: ( rule__GeneratorReferencesRule__Group__0__Impl rule__GeneratorReferencesRule__Group__1 ) + // InternalGeneratorDSL.g:2918:2: rule__GeneratorReferencesRule__Group__0__Impl rule__GeneratorReferencesRule__Group__1 + { + pushFollow(FOLLOW_10); + rule__GeneratorReferencesRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group__0" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group__0__Impl" + // InternalGeneratorDSL.g:2925:1: rule__GeneratorReferencesRule__Group__0__Impl : ( '[' ) ; + public final void rule__GeneratorReferencesRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2929:1: ( ( '[' ) ) + // InternalGeneratorDSL.g:2930:1: ( '[' ) + { + // InternalGeneratorDSL.g:2930:1: ( '[' ) + // InternalGeneratorDSL.g:2931:2: '[' + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getLeftSquareBracketKeyword_0()); + match(input,33,FOLLOW_2); + after(grammarAccess.getGeneratorReferencesRuleAccess().getLeftSquareBracketKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group__0__Impl" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group__1" + // InternalGeneratorDSL.g:2940:1: rule__GeneratorReferencesRule__Group__1 : rule__GeneratorReferencesRule__Group__1__Impl rule__GeneratorReferencesRule__Group__2 ; + public final void rule__GeneratorReferencesRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2944:1: ( rule__GeneratorReferencesRule__Group__1__Impl rule__GeneratorReferencesRule__Group__2 ) + // InternalGeneratorDSL.g:2945:2: rule__GeneratorReferencesRule__Group__1__Impl rule__GeneratorReferencesRule__Group__2 + { + pushFollow(FOLLOW_23); + rule__GeneratorReferencesRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group__1" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group__1__Impl" + // InternalGeneratorDSL.g:2952:1: rule__GeneratorReferencesRule__Group__1__Impl : ( ( rule__GeneratorReferencesRule__GeneratorsAssignment_1 ) ) ; + public final void rule__GeneratorReferencesRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2956:1: ( ( ( rule__GeneratorReferencesRule__GeneratorsAssignment_1 ) ) ) + // InternalGeneratorDSL.g:2957:1: ( ( rule__GeneratorReferencesRule__GeneratorsAssignment_1 ) ) + { + // InternalGeneratorDSL.g:2957:1: ( ( rule__GeneratorReferencesRule__GeneratorsAssignment_1 ) ) + // InternalGeneratorDSL.g:2958:2: ( rule__GeneratorReferencesRule__GeneratorsAssignment_1 ) + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_1()); + // InternalGeneratorDSL.g:2959:2: ( rule__GeneratorReferencesRule__GeneratorsAssignment_1 ) + // InternalGeneratorDSL.g:2959:3: rule__GeneratorReferencesRule__GeneratorsAssignment_1 + { + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__GeneratorsAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group__1__Impl" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group__2" + // InternalGeneratorDSL.g:2967:1: rule__GeneratorReferencesRule__Group__2 : rule__GeneratorReferencesRule__Group__2__Impl rule__GeneratorReferencesRule__Group__3 ; + public final void rule__GeneratorReferencesRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2971:1: ( rule__GeneratorReferencesRule__Group__2__Impl rule__GeneratorReferencesRule__Group__3 ) + // InternalGeneratorDSL.g:2972:2: rule__GeneratorReferencesRule__Group__2__Impl rule__GeneratorReferencesRule__Group__3 + { + pushFollow(FOLLOW_23); + rule__GeneratorReferencesRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group__2" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group__2__Impl" + // InternalGeneratorDSL.g:2979:1: rule__GeneratorReferencesRule__Group__2__Impl : ( ( rule__GeneratorReferencesRule__Group_2__0 )* ) ; + public final void rule__GeneratorReferencesRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2983:1: ( ( ( rule__GeneratorReferencesRule__Group_2__0 )* ) ) + // InternalGeneratorDSL.g:2984:1: ( ( rule__GeneratorReferencesRule__Group_2__0 )* ) + { + // InternalGeneratorDSL.g:2984:1: ( ( rule__GeneratorReferencesRule__Group_2__0 )* ) + // InternalGeneratorDSL.g:2985:2: ( rule__GeneratorReferencesRule__Group_2__0 )* + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getGroup_2()); + // InternalGeneratorDSL.g:2986:2: ( rule__GeneratorReferencesRule__Group_2__0 )* + loop24: + do { + int alt24=2; + int LA24_0 = input.LA(1); + + if ( (LA24_0==37) ) { + alt24=1; + } + + + switch (alt24) { + case 1 : + // InternalGeneratorDSL.g:2986:3: rule__GeneratorReferencesRule__Group_2__0 + { + pushFollow(FOLLOW_24); + rule__GeneratorReferencesRule__Group_2__0(); + + state._fsp--; + + + } + break; + + default : + break loop24; + } + } while (true); + + after(grammarAccess.getGeneratorReferencesRuleAccess().getGroup_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group__2__Impl" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group__3" + // InternalGeneratorDSL.g:2994:1: rule__GeneratorReferencesRule__Group__3 : rule__GeneratorReferencesRule__Group__3__Impl ; + public final void rule__GeneratorReferencesRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:2998:1: ( rule__GeneratorReferencesRule__Group__3__Impl ) + // InternalGeneratorDSL.g:2999:2: rule__GeneratorReferencesRule__Group__3__Impl + { + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__Group__3__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group__3" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group__3__Impl" + // InternalGeneratorDSL.g:3005:1: rule__GeneratorReferencesRule__Group__3__Impl : ( ']' ) ; + public final void rule__GeneratorReferencesRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3009:1: ( ( ']' ) ) + // InternalGeneratorDSL.g:3010:1: ( ']' ) + { + // InternalGeneratorDSL.g:3010:1: ( ']' ) + // InternalGeneratorDSL.g:3011:2: ']' + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getRightSquareBracketKeyword_3()); + match(input,35,FOLLOW_2); + after(grammarAccess.getGeneratorReferencesRuleAccess().getRightSquareBracketKeyword_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group__3__Impl" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group_2__0" + // InternalGeneratorDSL.g:3021:1: rule__GeneratorReferencesRule__Group_2__0 : rule__GeneratorReferencesRule__Group_2__0__Impl rule__GeneratorReferencesRule__Group_2__1 ; + public final void rule__GeneratorReferencesRule__Group_2__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3025:1: ( rule__GeneratorReferencesRule__Group_2__0__Impl rule__GeneratorReferencesRule__Group_2__1 ) + // InternalGeneratorDSL.g:3026:2: rule__GeneratorReferencesRule__Group_2__0__Impl rule__GeneratorReferencesRule__Group_2__1 + { + pushFollow(FOLLOW_10); + rule__GeneratorReferencesRule__Group_2__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__Group_2__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group_2__0" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group_2__0__Impl" + // InternalGeneratorDSL.g:3033:1: rule__GeneratorReferencesRule__Group_2__0__Impl : ( ',' ) ; + public final void rule__GeneratorReferencesRule__Group_2__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3037:1: ( ( ',' ) ) + // InternalGeneratorDSL.g:3038:1: ( ',' ) + { + // InternalGeneratorDSL.g:3038:1: ( ',' ) + // InternalGeneratorDSL.g:3039:2: ',' + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getCommaKeyword_2_0()); + match(input,37,FOLLOW_2); + after(grammarAccess.getGeneratorReferencesRuleAccess().getCommaKeyword_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group_2__0__Impl" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group_2__1" + // InternalGeneratorDSL.g:3048:1: rule__GeneratorReferencesRule__Group_2__1 : rule__GeneratorReferencesRule__Group_2__1__Impl ; + public final void rule__GeneratorReferencesRule__Group_2__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3052:1: ( rule__GeneratorReferencesRule__Group_2__1__Impl ) + // InternalGeneratorDSL.g:3053:2: rule__GeneratorReferencesRule__Group_2__1__Impl + { + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__Group_2__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group_2__1" + + + // $ANTLR start "rule__GeneratorReferencesRule__Group_2__1__Impl" + // InternalGeneratorDSL.g:3059:1: rule__GeneratorReferencesRule__Group_2__1__Impl : ( ( rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 ) ) ; + public final void rule__GeneratorReferencesRule__Group_2__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3063:1: ( ( ( rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 ) ) ) + // InternalGeneratorDSL.g:3064:1: ( ( rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 ) ) + { + // InternalGeneratorDSL.g:3064:1: ( ( rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 ) ) + // InternalGeneratorDSL.g:3065:2: ( rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 ) + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_2_1()); + // InternalGeneratorDSL.g:3066:2: ( rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 ) + // InternalGeneratorDSL.g:3066:3: rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 + { + pushFollow(FOLLOW_2); + rule__GeneratorReferencesRule__GeneratorsAssignment_2_1(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsAssignment_2_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__Group_2__1__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__0" + // InternalGeneratorDSL.g:3075:1: rule__ApplyStatementRule__Group__0 : rule__ApplyStatementRule__Group__0__Impl rule__ApplyStatementRule__Group__1 ; + public final void rule__ApplyStatementRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3079:1: ( rule__ApplyStatementRule__Group__0__Impl rule__ApplyStatementRule__Group__1 ) + // InternalGeneratorDSL.g:3080:2: rule__ApplyStatementRule__Group__0__Impl rule__ApplyStatementRule__Group__1 + { + pushFollow(FOLLOW_8); + rule__ApplyStatementRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__0" + + + // $ANTLR start "rule__ApplyStatementRule__Group__0__Impl" + // InternalGeneratorDSL.g:3087:1: rule__ApplyStatementRule__Group__0__Impl : ( 'write' ) ; + public final void rule__ApplyStatementRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3091:1: ( ( 'write' ) ) + // InternalGeneratorDSL.g:3092:1: ( 'write' ) + { + // InternalGeneratorDSL.g:3092:1: ( 'write' ) + // InternalGeneratorDSL.g:3093:2: 'write' + { + before(grammarAccess.getApplyStatementRuleAccess().getWriteKeyword_0()); + match(input,39,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getWriteKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__0__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__1" + // InternalGeneratorDSL.g:3102:1: rule__ApplyStatementRule__Group__1 : rule__ApplyStatementRule__Group__1__Impl rule__ApplyStatementRule__Group__2 ; + public final void rule__ApplyStatementRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3106:1: ( rule__ApplyStatementRule__Group__1__Impl rule__ApplyStatementRule__Group__2 ) + // InternalGeneratorDSL.g:3107:2: rule__ApplyStatementRule__Group__1__Impl rule__ApplyStatementRule__Group__2 + { + pushFollow(FOLLOW_26); + rule__ApplyStatementRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__1" + + + // $ANTLR start "rule__ApplyStatementRule__Group__1__Impl" + // InternalGeneratorDSL.g:3114:1: rule__ApplyStatementRule__Group__1__Impl : ( ( rule__ApplyStatementRule__FileAssignment_1 ) ) ; + public final void rule__ApplyStatementRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3118:1: ( ( ( rule__ApplyStatementRule__FileAssignment_1 ) ) ) + // InternalGeneratorDSL.g:3119:1: ( ( rule__ApplyStatementRule__FileAssignment_1 ) ) + { + // InternalGeneratorDSL.g:3119:1: ( ( rule__ApplyStatementRule__FileAssignment_1 ) ) + // InternalGeneratorDSL.g:3120:2: ( rule__ApplyStatementRule__FileAssignment_1 ) + { + before(grammarAccess.getApplyStatementRuleAccess().getFileAssignment_1()); + // InternalGeneratorDSL.g:3121:2: ( rule__ApplyStatementRule__FileAssignment_1 ) + // InternalGeneratorDSL.g:3121:3: rule__ApplyStatementRule__FileAssignment_1 + { + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__FileAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getApplyStatementRuleAccess().getFileAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__1__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__2" + // InternalGeneratorDSL.g:3129:1: rule__ApplyStatementRule__Group__2 : rule__ApplyStatementRule__Group__2__Impl rule__ApplyStatementRule__Group__3 ; + public final void rule__ApplyStatementRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3133:1: ( rule__ApplyStatementRule__Group__2__Impl rule__ApplyStatementRule__Group__3 ) + // InternalGeneratorDSL.g:3134:2: rule__ApplyStatementRule__Group__2__Impl rule__ApplyStatementRule__Group__3 + { + pushFollow(FOLLOW_17); + rule__ApplyStatementRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__2" + + + // $ANTLR start "rule__ApplyStatementRule__Group__2__Impl" + // InternalGeneratorDSL.g:3141:1: rule__ApplyStatementRule__Group__2__Impl : ( 'with' ) ; + public final void rule__ApplyStatementRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3145:1: ( ( 'with' ) ) + // InternalGeneratorDSL.g:3146:1: ( 'with' ) + { + // InternalGeneratorDSL.g:3146:1: ( 'with' ) + // InternalGeneratorDSL.g:3147:2: 'with' + { + before(grammarAccess.getApplyStatementRuleAccess().getWithKeyword_2()); + match(input,40,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getWithKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__2__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__3" + // InternalGeneratorDSL.g:3156:1: rule__ApplyStatementRule__Group__3 : rule__ApplyStatementRule__Group__3__Impl rule__ApplyStatementRule__Group__4 ; + public final void rule__ApplyStatementRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3160:1: ( rule__ApplyStatementRule__Group__3__Impl rule__ApplyStatementRule__Group__4 ) + // InternalGeneratorDSL.g:3161:2: rule__ApplyStatementRule__Group__3__Impl rule__ApplyStatementRule__Group__4 + { + pushFollow(FOLLOW_27); + rule__ApplyStatementRule__Group__3__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__4(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__3" + + + // $ANTLR start "rule__ApplyStatementRule__Group__3__Impl" + // InternalGeneratorDSL.g:3168:1: rule__ApplyStatementRule__Group__3__Impl : ( ( rule__ApplyStatementRule__CountAssignment_3 ) ) ; + public final void rule__ApplyStatementRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3172:1: ( ( ( rule__ApplyStatementRule__CountAssignment_3 ) ) ) + // InternalGeneratorDSL.g:3173:1: ( ( rule__ApplyStatementRule__CountAssignment_3 ) ) + { + // InternalGeneratorDSL.g:3173:1: ( ( rule__ApplyStatementRule__CountAssignment_3 ) ) + // InternalGeneratorDSL.g:3174:2: ( rule__ApplyStatementRule__CountAssignment_3 ) + { + before(grammarAccess.getApplyStatementRuleAccess().getCountAssignment_3()); + // InternalGeneratorDSL.g:3175:2: ( rule__ApplyStatementRule__CountAssignment_3 ) + // InternalGeneratorDSL.g:3175:3: rule__ApplyStatementRule__CountAssignment_3 + { + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__CountAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getApplyStatementRuleAccess().getCountAssignment_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__3__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__4" + // InternalGeneratorDSL.g:3183:1: rule__ApplyStatementRule__Group__4 : rule__ApplyStatementRule__Group__4__Impl rule__ApplyStatementRule__Group__5 ; + public final void rule__ApplyStatementRule__Group__4() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3187:1: ( rule__ApplyStatementRule__Group__4__Impl rule__ApplyStatementRule__Group__5 ) + // InternalGeneratorDSL.g:3188:2: rule__ApplyStatementRule__Group__4__Impl rule__ApplyStatementRule__Group__5 + { + pushFollow(FOLLOW_28); + rule__ApplyStatementRule__Group__4__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__5(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__4" + + + // $ANTLR start "rule__ApplyStatementRule__Group__4__Impl" + // InternalGeneratorDSL.g:3195:1: rule__ApplyStatementRule__Group__4__Impl : ( 'samples' ) ; + public final void rule__ApplyStatementRule__Group__4__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3199:1: ( ( 'samples' ) ) + // InternalGeneratorDSL.g:3200:1: ( 'samples' ) + { + // InternalGeneratorDSL.g:3200:1: ( 'samples' ) + // InternalGeneratorDSL.g:3201:2: 'samples' + { + before(grammarAccess.getApplyStatementRuleAccess().getSamplesKeyword_4()); + match(input,41,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getSamplesKeyword_4()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__4__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__5" + // InternalGeneratorDSL.g:3210:1: rule__ApplyStatementRule__Group__5 : rule__ApplyStatementRule__Group__5__Impl rule__ApplyStatementRule__Group__6 ; + public final void rule__ApplyStatementRule__Group__5() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3214:1: ( rule__ApplyStatementRule__Group__5__Impl rule__ApplyStatementRule__Group__6 ) + // InternalGeneratorDSL.g:3215:2: rule__ApplyStatementRule__Group__5__Impl rule__ApplyStatementRule__Group__6 + { + pushFollow(FOLLOW_29); + rule__ApplyStatementRule__Group__5__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__6(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__5" + + + // $ANTLR start "rule__ApplyStatementRule__Group__5__Impl" + // InternalGeneratorDSL.g:3222:1: rule__ApplyStatementRule__Group__5__Impl : ( 'from' ) ; + public final void rule__ApplyStatementRule__Group__5__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3226:1: ( ( 'from' ) ) + // InternalGeneratorDSL.g:3227:1: ( 'from' ) + { + // InternalGeneratorDSL.g:3227:1: ( 'from' ) + // InternalGeneratorDSL.g:3228:2: 'from' + { + before(grammarAccess.getApplyStatementRuleAccess().getFromKeyword_5()); + match(input,42,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getFromKeyword_5()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__5__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__6" + // InternalGeneratorDSL.g:3237:1: rule__ApplyStatementRule__Group__6 : rule__ApplyStatementRule__Group__6__Impl rule__ApplyStatementRule__Group__7 ; + public final void rule__ApplyStatementRule__Group__6() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3241:1: ( rule__ApplyStatementRule__Group__6__Impl rule__ApplyStatementRule__Group__7 ) + // InternalGeneratorDSL.g:3242:2: rule__ApplyStatementRule__Group__6__Impl rule__ApplyStatementRule__Group__7 + { + pushFollow(FOLLOW_30); + rule__ApplyStatementRule__Group__6__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__7(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__6" + + + // $ANTLR start "rule__ApplyStatementRule__Group__6__Impl" + // InternalGeneratorDSL.g:3249:1: rule__ApplyStatementRule__Group__6__Impl : ( 'applying' ) ; + public final void rule__ApplyStatementRule__Group__6__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3253:1: ( ( 'applying' ) ) + // InternalGeneratorDSL.g:3254:1: ( 'applying' ) + { + // InternalGeneratorDSL.g:3254:1: ( 'applying' ) + // InternalGeneratorDSL.g:3255:2: 'applying' + { + before(grammarAccess.getApplyStatementRuleAccess().getApplyingKeyword_6()); + match(input,43,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getApplyingKeyword_6()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__6__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__7" + // InternalGeneratorDSL.g:3264:1: rule__ApplyStatementRule__Group__7 : rule__ApplyStatementRule__Group__7__Impl rule__ApplyStatementRule__Group__8 ; + public final void rule__ApplyStatementRule__Group__7() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3268:1: ( rule__ApplyStatementRule__Group__7__Impl rule__ApplyStatementRule__Group__8 ) + // InternalGeneratorDSL.g:3269:2: rule__ApplyStatementRule__Group__7__Impl rule__ApplyStatementRule__Group__8 + { + pushFollow(FOLLOW_31); + rule__ApplyStatementRule__Group__7__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__8(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__7" + + + // $ANTLR start "rule__ApplyStatementRule__Group__7__Impl" + // InternalGeneratorDSL.g:3276:1: rule__ApplyStatementRule__Group__7__Impl : ( ( rule__ApplyStatementRule__FunctionAssignment_7 ) ) ; + public final void rule__ApplyStatementRule__Group__7__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3280:1: ( ( ( rule__ApplyStatementRule__FunctionAssignment_7 ) ) ) + // InternalGeneratorDSL.g:3281:1: ( ( rule__ApplyStatementRule__FunctionAssignment_7 ) ) + { + // InternalGeneratorDSL.g:3281:1: ( ( rule__ApplyStatementRule__FunctionAssignment_7 ) ) + // InternalGeneratorDSL.g:3282:2: ( rule__ApplyStatementRule__FunctionAssignment_7 ) + { + before(grammarAccess.getApplyStatementRuleAccess().getFunctionAssignment_7()); + // InternalGeneratorDSL.g:3283:2: ( rule__ApplyStatementRule__FunctionAssignment_7 ) + // InternalGeneratorDSL.g:3283:3: rule__ApplyStatementRule__FunctionAssignment_7 + { + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__FunctionAssignment_7(); + + state._fsp--; + + + } + + after(grammarAccess.getApplyStatementRuleAccess().getFunctionAssignment_7()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__7__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__8" + // InternalGeneratorDSL.g:3291:1: rule__ApplyStatementRule__Group__8 : rule__ApplyStatementRule__Group__8__Impl rule__ApplyStatementRule__Group__9 ; + public final void rule__ApplyStatementRule__Group__8() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3295:1: ( rule__ApplyStatementRule__Group__8__Impl rule__ApplyStatementRule__Group__9 ) + // InternalGeneratorDSL.g:3296:2: rule__ApplyStatementRule__Group__8__Impl rule__ApplyStatementRule__Group__9 + { + pushFollow(FOLLOW_32); + rule__ApplyStatementRule__Group__8__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__9(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__8" + + + // $ANTLR start "rule__ApplyStatementRule__Group__8__Impl" + // InternalGeneratorDSL.g:3303:1: rule__ApplyStatementRule__Group__8__Impl : ( 'on' ) ; + public final void rule__ApplyStatementRule__Group__8__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3307:1: ( ( 'on' ) ) + // InternalGeneratorDSL.g:3308:1: ( 'on' ) + { + // InternalGeneratorDSL.g:3308:1: ( 'on' ) + // InternalGeneratorDSL.g:3309:2: 'on' + { + before(grammarAccess.getApplyStatementRuleAccess().getOnKeyword_8()); + match(input,44,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getOnKeyword_8()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__8__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__9" + // InternalGeneratorDSL.g:3318:1: rule__ApplyStatementRule__Group__9 : rule__ApplyStatementRule__Group__9__Impl rule__ApplyStatementRule__Group__10 ; + public final void rule__ApplyStatementRule__Group__9() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3322:1: ( rule__ApplyStatementRule__Group__9__Impl rule__ApplyStatementRule__Group__10 ) + // InternalGeneratorDSL.g:3323:2: rule__ApplyStatementRule__Group__9__Impl rule__ApplyStatementRule__Group__10 + { + pushFollow(FOLLOW_9); + rule__ApplyStatementRule__Group__9__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__10(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__9" + + + // $ANTLR start "rule__ApplyStatementRule__Group__9__Impl" + // InternalGeneratorDSL.g:3330:1: rule__ApplyStatementRule__Group__9__Impl : ( ( rule__ApplyStatementRule__GeneratorAssignment_9 ) ) ; + public final void rule__ApplyStatementRule__Group__9__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3334:1: ( ( ( rule__ApplyStatementRule__GeneratorAssignment_9 ) ) ) + // InternalGeneratorDSL.g:3335:1: ( ( rule__ApplyStatementRule__GeneratorAssignment_9 ) ) + { + // InternalGeneratorDSL.g:3335:1: ( ( rule__ApplyStatementRule__GeneratorAssignment_9 ) ) + // InternalGeneratorDSL.g:3336:2: ( rule__ApplyStatementRule__GeneratorAssignment_9 ) + { + before(grammarAccess.getApplyStatementRuleAccess().getGeneratorAssignment_9()); + // InternalGeneratorDSL.g:3337:2: ( rule__ApplyStatementRule__GeneratorAssignment_9 ) + // InternalGeneratorDSL.g:3337:3: rule__ApplyStatementRule__GeneratorAssignment_9 + { + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__GeneratorAssignment_9(); + + state._fsp--; + + + } + + after(grammarAccess.getApplyStatementRuleAccess().getGeneratorAssignment_9()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__9__Impl" + + + // $ANTLR start "rule__ApplyStatementRule__Group__10" + // InternalGeneratorDSL.g:3345:1: rule__ApplyStatementRule__Group__10 : rule__ApplyStatementRule__Group__10__Impl ; + public final void rule__ApplyStatementRule__Group__10() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3349:1: ( rule__ApplyStatementRule__Group__10__Impl ) + // InternalGeneratorDSL.g:3350:2: rule__ApplyStatementRule__Group__10__Impl + { + pushFollow(FOLLOW_2); + rule__ApplyStatementRule__Group__10__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__10" + + + // $ANTLR start "rule__ApplyStatementRule__Group__10__Impl" + // InternalGeneratorDSL.g:3356:1: rule__ApplyStatementRule__Group__10__Impl : ( ';' ) ; + public final void rule__ApplyStatementRule__Group__10__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3360:1: ( ( ';' ) ) + // InternalGeneratorDSL.g:3361:1: ( ';' ) + { + // InternalGeneratorDSL.g:3361:1: ( ';' ) + // InternalGeneratorDSL.g:3362:2: ';' + { + before(grammarAccess.getApplyStatementRuleAccess().getSemicolonKeyword_10()); + match(input,25,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getSemicolonKeyword_10()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__Group__10__Impl" + + + // $ANTLR start "rule__GeneratorDefinitionReferenceRule__Group__0" + // InternalGeneratorDSL.g:3372:1: rule__GeneratorDefinitionReferenceRule__Group__0 : rule__GeneratorDefinitionReferenceRule__Group__0__Impl rule__GeneratorDefinitionReferenceRule__Group__1 ; + public final void rule__GeneratorDefinitionReferenceRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3376:1: ( rule__GeneratorDefinitionReferenceRule__Group__0__Impl rule__GeneratorDefinitionReferenceRule__Group__1 ) + // InternalGeneratorDSL.g:3377:2: rule__GeneratorDefinitionReferenceRule__Group__0__Impl rule__GeneratorDefinitionReferenceRule__Group__1 + { + pushFollow(FOLLOW_10); + rule__GeneratorDefinitionReferenceRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionReferenceRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionReferenceRule__Group__0" + + + // $ANTLR start "rule__GeneratorDefinitionReferenceRule__Group__0__Impl" + // InternalGeneratorDSL.g:3384:1: rule__GeneratorDefinitionReferenceRule__Group__0__Impl : ( 'generator' ) ; + public final void rule__GeneratorDefinitionReferenceRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3388:1: ( ( 'generator' ) ) + // InternalGeneratorDSL.g:3389:1: ( 'generator' ) + { + // InternalGeneratorDSL.g:3389:1: ( 'generator' ) + // InternalGeneratorDSL.g:3390:2: 'generator' + { + before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGeneratorKeyword_0()); + match(input,28,FOLLOW_2); + after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGeneratorKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionReferenceRule__Group__0__Impl" + + + // $ANTLR start "rule__GeneratorDefinitionReferenceRule__Group__1" + // InternalGeneratorDSL.g:3399:1: rule__GeneratorDefinitionReferenceRule__Group__1 : rule__GeneratorDefinitionReferenceRule__Group__1__Impl ; + public final void rule__GeneratorDefinitionReferenceRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3403:1: ( rule__GeneratorDefinitionReferenceRule__Group__1__Impl ) + // InternalGeneratorDSL.g:3404:2: rule__GeneratorDefinitionReferenceRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionReferenceRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionReferenceRule__Group__1" + + + // $ANTLR start "rule__GeneratorDefinitionReferenceRule__Group__1__Impl" + // InternalGeneratorDSL.g:3410:1: rule__GeneratorDefinitionReferenceRule__Group__1__Impl : ( ( rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 ) ) ; + public final void rule__GeneratorDefinitionReferenceRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3414:1: ( ( ( rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 ) ) ) + // InternalGeneratorDSL.g:3415:1: ( ( rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 ) ) + { + // InternalGeneratorDSL.g:3415:1: ( ( rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 ) ) + // InternalGeneratorDSL.g:3416:2: ( rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 ) + { + before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionAssignment_1()); + // InternalGeneratorDSL.g:3417:2: ( rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 ) + // InternalGeneratorDSL.g:3417:3: rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 + { + pushFollow(FOLLOW_2); + rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionReferenceRule__Group__1__Impl" + + + // $ANTLR start "rule__LoopVariableReference__Group__0" + // InternalGeneratorDSL.g:3426:1: rule__LoopVariableReference__Group__0 : rule__LoopVariableReference__Group__0__Impl rule__LoopVariableReference__Group__1 ; + public final void rule__LoopVariableReference__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3430:1: ( rule__LoopVariableReference__Group__0__Impl rule__LoopVariableReference__Group__1 ) + // InternalGeneratorDSL.g:3431:2: rule__LoopVariableReference__Group__0__Impl rule__LoopVariableReference__Group__1 + { + pushFollow(FOLLOW_30); + rule__LoopVariableReference__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__LoopVariableReference__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__LoopVariableReference__Group__0" + + + // $ANTLR start "rule__LoopVariableReference__Group__0__Impl" + // InternalGeneratorDSL.g:3438:1: rule__LoopVariableReference__Group__0__Impl : ( () ) ; + public final void rule__LoopVariableReference__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3442:1: ( ( () ) ) + // InternalGeneratorDSL.g:3443:1: ( () ) + { + // InternalGeneratorDSL.g:3443:1: ( () ) + // InternalGeneratorDSL.g:3444:2: () + { + before(grammarAccess.getLoopVariableReferenceAccess().getLoopVariableAction_0()); + // InternalGeneratorDSL.g:3445:2: () + // InternalGeneratorDSL.g:3445:3: + { + } + + after(grammarAccess.getLoopVariableReferenceAccess().getLoopVariableAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__LoopVariableReference__Group__0__Impl" + + + // $ANTLR start "rule__LoopVariableReference__Group__1" + // InternalGeneratorDSL.g:3453:1: rule__LoopVariableReference__Group__1 : rule__LoopVariableReference__Group__1__Impl ; + public final void rule__LoopVariableReference__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3457:1: ( rule__LoopVariableReference__Group__1__Impl ) + // InternalGeneratorDSL.g:3458:2: rule__LoopVariableReference__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__LoopVariableReference__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__LoopVariableReference__Group__1" + + + // $ANTLR start "rule__LoopVariableReference__Group__1__Impl" + // InternalGeneratorDSL.g:3464:1: rule__LoopVariableReference__Group__1__Impl : ( ( rule__LoopVariableReference__DefinitionAssignment_1 ) ) ; + public final void rule__LoopVariableReference__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3468:1: ( ( ( rule__LoopVariableReference__DefinitionAssignment_1 ) ) ) + // InternalGeneratorDSL.g:3469:1: ( ( rule__LoopVariableReference__DefinitionAssignment_1 ) ) + { + // InternalGeneratorDSL.g:3469:1: ( ( rule__LoopVariableReference__DefinitionAssignment_1 ) ) + // InternalGeneratorDSL.g:3470:2: ( rule__LoopVariableReference__DefinitionAssignment_1 ) + { + before(grammarAccess.getLoopVariableReferenceAccess().getDefinitionAssignment_1()); + // InternalGeneratorDSL.g:3471:2: ( rule__LoopVariableReference__DefinitionAssignment_1 ) + // InternalGeneratorDSL.g:3471:3: rule__LoopVariableReference__DefinitionAssignment_1 + { + pushFollow(FOLLOW_2); + rule__LoopVariableReference__DefinitionAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getLoopVariableReferenceAccess().getDefinitionAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__LoopVariableReference__Group__1__Impl" + + + // $ANTLR start "rule__FunctionDefinitionReferenceRule__Group__0" + // InternalGeneratorDSL.g:3480:1: rule__FunctionDefinitionReferenceRule__Group__0 : rule__FunctionDefinitionReferenceRule__Group__0__Impl rule__FunctionDefinitionReferenceRule__Group__1 ; + public final void rule__FunctionDefinitionReferenceRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3484:1: ( rule__FunctionDefinitionReferenceRule__Group__0__Impl rule__FunctionDefinitionReferenceRule__Group__1 ) + // InternalGeneratorDSL.g:3485:2: rule__FunctionDefinitionReferenceRule__Group__0__Impl rule__FunctionDefinitionReferenceRule__Group__1 + { + pushFollow(FOLLOW_33); + rule__FunctionDefinitionReferenceRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionDefinitionReferenceRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinitionReferenceRule__Group__0" + + + // $ANTLR start "rule__FunctionDefinitionReferenceRule__Group__0__Impl" + // InternalGeneratorDSL.g:3492:1: rule__FunctionDefinitionReferenceRule__Group__0__Impl : ( () ) ; + public final void rule__FunctionDefinitionReferenceRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3496:1: ( ( () ) ) + // InternalGeneratorDSL.g:3497:1: ( () ) + { + // InternalGeneratorDSL.g:3497:1: ( () ) + // InternalGeneratorDSL.g:3498:2: () + { + before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getFunctionDefinitionReferenceAction_0()); + // InternalGeneratorDSL.g:3499:2: () + // InternalGeneratorDSL.g:3499:3: + { + } + + after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getFunctionDefinitionReferenceAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinitionReferenceRule__Group__0__Impl" + + + // $ANTLR start "rule__FunctionDefinitionReferenceRule__Group__1" + // InternalGeneratorDSL.g:3507:1: rule__FunctionDefinitionReferenceRule__Group__1 : rule__FunctionDefinitionReferenceRule__Group__1__Impl rule__FunctionDefinitionReferenceRule__Group__2 ; + public final void rule__FunctionDefinitionReferenceRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3511:1: ( rule__FunctionDefinitionReferenceRule__Group__1__Impl rule__FunctionDefinitionReferenceRule__Group__2 ) + // InternalGeneratorDSL.g:3512:2: rule__FunctionDefinitionReferenceRule__Group__1__Impl rule__FunctionDefinitionReferenceRule__Group__2 + { + pushFollow(FOLLOW_10); + rule__FunctionDefinitionReferenceRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionDefinitionReferenceRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinitionReferenceRule__Group__1" + + + // $ANTLR start "rule__FunctionDefinitionReferenceRule__Group__1__Impl" + // InternalGeneratorDSL.g:3519:1: rule__FunctionDefinitionReferenceRule__Group__1__Impl : ( 'definition' ) ; + public final void rule__FunctionDefinitionReferenceRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3523:1: ( ( 'definition' ) ) + // InternalGeneratorDSL.g:3524:1: ( 'definition' ) + { + // InternalGeneratorDSL.g:3524:1: ( 'definition' ) + // InternalGeneratorDSL.g:3525:2: 'definition' + { + before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionKeyword_1()); + match(input,45,FOLLOW_2); + after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinitionReferenceRule__Group__1__Impl" + + + // $ANTLR start "rule__FunctionDefinitionReferenceRule__Group__2" + // InternalGeneratorDSL.g:3534:1: rule__FunctionDefinitionReferenceRule__Group__2 : rule__FunctionDefinitionReferenceRule__Group__2__Impl ; + public final void rule__FunctionDefinitionReferenceRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3538:1: ( rule__FunctionDefinitionReferenceRule__Group__2__Impl ) + // InternalGeneratorDSL.g:3539:2: rule__FunctionDefinitionReferenceRule__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__FunctionDefinitionReferenceRule__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinitionReferenceRule__Group__2" + + + // $ANTLR start "rule__FunctionDefinitionReferenceRule__Group__2__Impl" + // InternalGeneratorDSL.g:3545:1: rule__FunctionDefinitionReferenceRule__Group__2__Impl : ( ( rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 ) ) ; + public final void rule__FunctionDefinitionReferenceRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3549:1: ( ( ( rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 ) ) ) + // InternalGeneratorDSL.g:3550:1: ( ( rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 ) ) + { + // InternalGeneratorDSL.g:3550:1: ( ( rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 ) ) + // InternalGeneratorDSL.g:3551:2: ( rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 ) + { + before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2()); + // InternalGeneratorDSL.g:3552:2: ( rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 ) + // InternalGeneratorDSL.g:3552:3: rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 + { + pushFollow(FOLLOW_2); + rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinitionReferenceRule__Group__2__Impl" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionReferenceRule__Group__0" + // InternalGeneratorDSL.g:3561:1: rule__ParametrizedFunctionDefinitionReferenceRule__Group__0 : rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl rule__ParametrizedFunctionDefinitionReferenceRule__Group__1 ; + public final void rule__ParametrizedFunctionDefinitionReferenceRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3565:1: ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl rule__ParametrizedFunctionDefinitionReferenceRule__Group__1 ) + // InternalGeneratorDSL.g:3566:2: rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl rule__ParametrizedFunctionDefinitionReferenceRule__Group__1 + { + pushFollow(FOLLOW_22); + rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionReferenceRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionReferenceRule__Group__0" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl" + // InternalGeneratorDSL.g:3573:1: rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl : ( () ) ; + public final void rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3577:1: ( ( () ) ) + // InternalGeneratorDSL.g:3578:1: ( () ) + { + // InternalGeneratorDSL.g:3578:1: ( () ) + // InternalGeneratorDSL.g:3579:2: () + { + before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceAction_0()); + // InternalGeneratorDSL.g:3580:2: () + // InternalGeneratorDSL.g:3580:3: + { + } + + after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionReferenceRule__Group__0__Impl" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionReferenceRule__Group__1" + // InternalGeneratorDSL.g:3588:1: rule__ParametrizedFunctionDefinitionReferenceRule__Group__1 : rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl rule__ParametrizedFunctionDefinitionReferenceRule__Group__2 ; + public final void rule__ParametrizedFunctionDefinitionReferenceRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3592:1: ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl rule__ParametrizedFunctionDefinitionReferenceRule__Group__2 ) + // InternalGeneratorDSL.g:3593:2: rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl rule__ParametrizedFunctionDefinitionReferenceRule__Group__2 + { + pushFollow(FOLLOW_10); + rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionReferenceRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionReferenceRule__Group__1" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl" + // InternalGeneratorDSL.g:3600:1: rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl : ( 'function' ) ; + public final void rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3604:1: ( ( 'function' ) ) + // InternalGeneratorDSL.g:3605:1: ( 'function' ) + { + // InternalGeneratorDSL.g:3605:1: ( 'function' ) + // InternalGeneratorDSL.g:3606:2: 'function' + { + before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getFunctionKeyword_1()); + match(input,26,FOLLOW_2); + after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getFunctionKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionReferenceRule__Group__1__Impl" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionReferenceRule__Group__2" + // InternalGeneratorDSL.g:3615:1: rule__ParametrizedFunctionDefinitionReferenceRule__Group__2 : rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl ; + public final void rule__ParametrizedFunctionDefinitionReferenceRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3619:1: ( rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl ) + // InternalGeneratorDSL.g:3620:2: rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionReferenceRule__Group__2" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl" + // InternalGeneratorDSL.g:3626:1: rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl : ( ( rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 ) ) ; + public final void rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3630:1: ( ( ( rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 ) ) ) + // InternalGeneratorDSL.g:3631:1: ( ( rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 ) ) + { + // InternalGeneratorDSL.g:3631:1: ( ( rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 ) ) + // InternalGeneratorDSL.g:3632:2: ( rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 ) + { + before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2()); + // InternalGeneratorDSL.g:3633:2: ( rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 ) + // InternalGeneratorDSL.g:3633:3: rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 + { + pushFollow(FOLLOW_2); + rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2(); + + state._fsp--; + + + } + + after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionAssignment_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionReferenceRule__Group__2__Impl" + + + // $ANTLR start "rule__InstanceRule__Group__0" + // InternalGeneratorDSL.g:3642:1: rule__InstanceRule__Group__0 : rule__InstanceRule__Group__0__Impl rule__InstanceRule__Group__1 ; + public final void rule__InstanceRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3646:1: ( rule__InstanceRule__Group__0__Impl rule__InstanceRule__Group__1 ) + // InternalGeneratorDSL.g:3647:2: rule__InstanceRule__Group__0__Impl rule__InstanceRule__Group__1 + { + pushFollow(FOLLOW_34); + rule__InstanceRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__InstanceRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group__0" + + + // $ANTLR start "rule__InstanceRule__Group__0__Impl" + // InternalGeneratorDSL.g:3654:1: rule__InstanceRule__Group__0__Impl : ( ( rule__InstanceRule__NameAssignment_0 ) ) ; + public final void rule__InstanceRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3658:1: ( ( ( rule__InstanceRule__NameAssignment_0 ) ) ) + // InternalGeneratorDSL.g:3659:1: ( ( rule__InstanceRule__NameAssignment_0 ) ) + { + // InternalGeneratorDSL.g:3659:1: ( ( rule__InstanceRule__NameAssignment_0 ) ) + // InternalGeneratorDSL.g:3660:2: ( rule__InstanceRule__NameAssignment_0 ) + { + before(grammarAccess.getInstanceRuleAccess().getNameAssignment_0()); + // InternalGeneratorDSL.g:3661:2: ( rule__InstanceRule__NameAssignment_0 ) + // InternalGeneratorDSL.g:3661:3: rule__InstanceRule__NameAssignment_0 + { + pushFollow(FOLLOW_2); + rule__InstanceRule__NameAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getInstanceRuleAccess().getNameAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group__0__Impl" + + + // $ANTLR start "rule__InstanceRule__Group__1" + // InternalGeneratorDSL.g:3669:1: rule__InstanceRule__Group__1 : rule__InstanceRule__Group__1__Impl ; + public final void rule__InstanceRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3673:1: ( rule__InstanceRule__Group__1__Impl ) + // InternalGeneratorDSL.g:3674:2: rule__InstanceRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__InstanceRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group__1" + + + // $ANTLR start "rule__InstanceRule__Group__1__Impl" + // InternalGeneratorDSL.g:3680:1: rule__InstanceRule__Group__1__Impl : ( ( rule__InstanceRule__Group_1__0 )? ) ; + public final void rule__InstanceRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3684:1: ( ( ( rule__InstanceRule__Group_1__0 )? ) ) + // InternalGeneratorDSL.g:3685:1: ( ( rule__InstanceRule__Group_1__0 )? ) + { + // InternalGeneratorDSL.g:3685:1: ( ( rule__InstanceRule__Group_1__0 )? ) + // InternalGeneratorDSL.g:3686:2: ( rule__InstanceRule__Group_1__0 )? + { + before(grammarAccess.getInstanceRuleAccess().getGroup_1()); + // InternalGeneratorDSL.g:3687:2: ( rule__InstanceRule__Group_1__0 )? + int alt25=2; + int LA25_0 = input.LA(1); + + if ( (LA25_0==46) ) { + alt25=1; + } + switch (alt25) { + case 1 : + // InternalGeneratorDSL.g:3687:3: rule__InstanceRule__Group_1__0 + { + pushFollow(FOLLOW_2); + rule__InstanceRule__Group_1__0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getInstanceRuleAccess().getGroup_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group__1__Impl" + + + // $ANTLR start "rule__InstanceRule__Group_1__0" + // InternalGeneratorDSL.g:3696:1: rule__InstanceRule__Group_1__0 : rule__InstanceRule__Group_1__0__Impl rule__InstanceRule__Group_1__1 ; + public final void rule__InstanceRule__Group_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3700:1: ( rule__InstanceRule__Group_1__0__Impl rule__InstanceRule__Group_1__1 ) + // InternalGeneratorDSL.g:3701:2: rule__InstanceRule__Group_1__0__Impl rule__InstanceRule__Group_1__1 + { + pushFollow(FOLLOW_35); + rule__InstanceRule__Group_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__InstanceRule__Group_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group_1__0" + + + // $ANTLR start "rule__InstanceRule__Group_1__0__Impl" + // InternalGeneratorDSL.g:3708:1: rule__InstanceRule__Group_1__0__Impl : ( '{' ) ; + public final void rule__InstanceRule__Group_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3712:1: ( ( '{' ) ) + // InternalGeneratorDSL.g:3713:1: ( '{' ) + { + // InternalGeneratorDSL.g:3713:1: ( '{' ) + // InternalGeneratorDSL.g:3714:2: '{' + { + before(grammarAccess.getInstanceRuleAccess().getLeftCurlyBracketKeyword_1_0()); + match(input,46,FOLLOW_2); + after(grammarAccess.getInstanceRuleAccess().getLeftCurlyBracketKeyword_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group_1__0__Impl" + + + // $ANTLR start "rule__InstanceRule__Group_1__1" + // InternalGeneratorDSL.g:3723:1: rule__InstanceRule__Group_1__1 : rule__InstanceRule__Group_1__1__Impl rule__InstanceRule__Group_1__2 ; + public final void rule__InstanceRule__Group_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3727:1: ( rule__InstanceRule__Group_1__1__Impl rule__InstanceRule__Group_1__2 ) + // InternalGeneratorDSL.g:3728:2: rule__InstanceRule__Group_1__1__Impl rule__InstanceRule__Group_1__2 + { + pushFollow(FOLLOW_35); + rule__InstanceRule__Group_1__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__InstanceRule__Group_1__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group_1__1" + + + // $ANTLR start "rule__InstanceRule__Group_1__1__Impl" + // InternalGeneratorDSL.g:3735:1: rule__InstanceRule__Group_1__1__Impl : ( ( rule__InstanceRule__AttributesAssignment_1_1 )* ) ; + public final void rule__InstanceRule__Group_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3739:1: ( ( ( rule__InstanceRule__AttributesAssignment_1_1 )* ) ) + // InternalGeneratorDSL.g:3740:1: ( ( rule__InstanceRule__AttributesAssignment_1_1 )* ) + { + // InternalGeneratorDSL.g:3740:1: ( ( rule__InstanceRule__AttributesAssignment_1_1 )* ) + // InternalGeneratorDSL.g:3741:2: ( rule__InstanceRule__AttributesAssignment_1_1 )* + { + before(grammarAccess.getInstanceRuleAccess().getAttributesAssignment_1_1()); + // InternalGeneratorDSL.g:3742:2: ( rule__InstanceRule__AttributesAssignment_1_1 )* + loop26: + do { + int alt26=2; + int LA26_0 = input.LA(1); + + if ( ((LA26_0>=RULE_QUOTED_ID && LA26_0<=RULE_ID)||LA26_0==RULE_STRING) ) { + alt26=1; + } + + + switch (alt26) { + case 1 : + // InternalGeneratorDSL.g:3742:3: rule__InstanceRule__AttributesAssignment_1_1 + { + pushFollow(FOLLOW_36); + rule__InstanceRule__AttributesAssignment_1_1(); + + state._fsp--; + + + } + break; + + default : + break loop26; + } + } while (true); + + after(grammarAccess.getInstanceRuleAccess().getAttributesAssignment_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group_1__1__Impl" + + + // $ANTLR start "rule__InstanceRule__Group_1__2" + // InternalGeneratorDSL.g:3750:1: rule__InstanceRule__Group_1__2 : rule__InstanceRule__Group_1__2__Impl ; + public final void rule__InstanceRule__Group_1__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3754:1: ( rule__InstanceRule__Group_1__2__Impl ) + // InternalGeneratorDSL.g:3755:2: rule__InstanceRule__Group_1__2__Impl + { + pushFollow(FOLLOW_2); + rule__InstanceRule__Group_1__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group_1__2" + + + // $ANTLR start "rule__InstanceRule__Group_1__2__Impl" + // InternalGeneratorDSL.g:3761:1: rule__InstanceRule__Group_1__2__Impl : ( '}' ) ; + public final void rule__InstanceRule__Group_1__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3765:1: ( ( '}' ) ) + // InternalGeneratorDSL.g:3766:1: ( '}' ) + { + // InternalGeneratorDSL.g:3766:1: ( '}' ) + // InternalGeneratorDSL.g:3767:2: '}' + { + before(grammarAccess.getInstanceRuleAccess().getRightCurlyBracketKeyword_1_2()); + match(input,47,FOLLOW_2); + after(grammarAccess.getInstanceRuleAccess().getRightCurlyBracketKeyword_1_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__Group_1__2__Impl" + + + // $ANTLR start "rule__AttributeRule__Group__0" + // InternalGeneratorDSL.g:3777:1: rule__AttributeRule__Group__0 : rule__AttributeRule__Group__0__Impl rule__AttributeRule__Group__1 ; + public final void rule__AttributeRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3781:1: ( rule__AttributeRule__Group__0__Impl rule__AttributeRule__Group__1 ) + // InternalGeneratorDSL.g:3782:2: rule__AttributeRule__Group__0__Impl rule__AttributeRule__Group__1 + { + pushFollow(FOLLOW_37); + rule__AttributeRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AttributeRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__Group__0" + + + // $ANTLR start "rule__AttributeRule__Group__0__Impl" + // InternalGeneratorDSL.g:3789:1: rule__AttributeRule__Group__0__Impl : ( ( rule__AttributeRule__NameAssignment_0 ) ) ; + public final void rule__AttributeRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3793:1: ( ( ( rule__AttributeRule__NameAssignment_0 ) ) ) + // InternalGeneratorDSL.g:3794:1: ( ( rule__AttributeRule__NameAssignment_0 ) ) + { + // InternalGeneratorDSL.g:3794:1: ( ( rule__AttributeRule__NameAssignment_0 ) ) + // InternalGeneratorDSL.g:3795:2: ( rule__AttributeRule__NameAssignment_0 ) + { + before(grammarAccess.getAttributeRuleAccess().getNameAssignment_0()); + // InternalGeneratorDSL.g:3796:2: ( rule__AttributeRule__NameAssignment_0 ) + // InternalGeneratorDSL.g:3796:3: rule__AttributeRule__NameAssignment_0 + { + pushFollow(FOLLOW_2); + rule__AttributeRule__NameAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getAttributeRuleAccess().getNameAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__Group__0__Impl" + + + // $ANTLR start "rule__AttributeRule__Group__1" + // InternalGeneratorDSL.g:3804:1: rule__AttributeRule__Group__1 : rule__AttributeRule__Group__1__Impl rule__AttributeRule__Group__2 ; + public final void rule__AttributeRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3808:1: ( rule__AttributeRule__Group__1__Impl rule__AttributeRule__Group__2 ) + // InternalGeneratorDSL.g:3809:2: rule__AttributeRule__Group__1__Impl rule__AttributeRule__Group__2 + { + pushFollow(FOLLOW_38); + rule__AttributeRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AttributeRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__Group__1" + + + // $ANTLR start "rule__AttributeRule__Group__1__Impl" + // InternalGeneratorDSL.g:3816:1: rule__AttributeRule__Group__1__Impl : ( ':=' ) ; + public final void rule__AttributeRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3820:1: ( ( ':=' ) ) + // InternalGeneratorDSL.g:3821:1: ( ':=' ) + { + // InternalGeneratorDSL.g:3821:1: ( ':=' ) + // InternalGeneratorDSL.g:3822:2: ':=' + { + before(grammarAccess.getAttributeRuleAccess().getColonEqualsSignKeyword_1()); + match(input,48,FOLLOW_2); + after(grammarAccess.getAttributeRuleAccess().getColonEqualsSignKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__Group__1__Impl" + + + // $ANTLR start "rule__AttributeRule__Group__2" + // InternalGeneratorDSL.g:3831:1: rule__AttributeRule__Group__2 : rule__AttributeRule__Group__2__Impl rule__AttributeRule__Group__3 ; + public final void rule__AttributeRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3835:1: ( rule__AttributeRule__Group__2__Impl rule__AttributeRule__Group__3 ) + // InternalGeneratorDSL.g:3836:2: rule__AttributeRule__Group__2__Impl rule__AttributeRule__Group__3 + { + pushFollow(FOLLOW_9); + rule__AttributeRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AttributeRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__Group__2" + + + // $ANTLR start "rule__AttributeRule__Group__2__Impl" + // InternalGeneratorDSL.g:3843:1: rule__AttributeRule__Group__2__Impl : ( ( rule__AttributeRule__ValueAssignment_2 ) ) ; + public final void rule__AttributeRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3847:1: ( ( ( rule__AttributeRule__ValueAssignment_2 ) ) ) + // InternalGeneratorDSL.g:3848:1: ( ( rule__AttributeRule__ValueAssignment_2 ) ) + { + // InternalGeneratorDSL.g:3848:1: ( ( rule__AttributeRule__ValueAssignment_2 ) ) + // InternalGeneratorDSL.g:3849:2: ( rule__AttributeRule__ValueAssignment_2 ) + { + before(grammarAccess.getAttributeRuleAccess().getValueAssignment_2()); + // InternalGeneratorDSL.g:3850:2: ( rule__AttributeRule__ValueAssignment_2 ) + // InternalGeneratorDSL.g:3850:3: rule__AttributeRule__ValueAssignment_2 + { + pushFollow(FOLLOW_2); + rule__AttributeRule__ValueAssignment_2(); + + state._fsp--; + + + } + + after(grammarAccess.getAttributeRuleAccess().getValueAssignment_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__Group__2__Impl" + + + // $ANTLR start "rule__AttributeRule__Group__3" + // InternalGeneratorDSL.g:3858:1: rule__AttributeRule__Group__3 : rule__AttributeRule__Group__3__Impl ; + public final void rule__AttributeRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3862:1: ( rule__AttributeRule__Group__3__Impl ) + // InternalGeneratorDSL.g:3863:2: rule__AttributeRule__Group__3__Impl + { + pushFollow(FOLLOW_2); + rule__AttributeRule__Group__3__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__Group__3" + + + // $ANTLR start "rule__AttributeRule__Group__3__Impl" + // InternalGeneratorDSL.g:3869:1: rule__AttributeRule__Group__3__Impl : ( ';' ) ; + public final void rule__AttributeRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3873:1: ( ( ';' ) ) + // InternalGeneratorDSL.g:3874:1: ( ';' ) + { + // InternalGeneratorDSL.g:3874:1: ( ';' ) + // InternalGeneratorDSL.g:3875:2: ';' + { + before(grammarAccess.getAttributeRuleAccess().getSemicolonKeyword_3()); + match(input,25,FOLLOW_2); + after(grammarAccess.getAttributeRuleAccess().getSemicolonKeyword_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__Group__3__Impl" + + + // $ANTLR start "rule__ArrayRule__Group__0" + // InternalGeneratorDSL.g:3885:1: rule__ArrayRule__Group__0 : rule__ArrayRule__Group__0__Impl rule__ArrayRule__Group__1 ; + public final void rule__ArrayRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3889:1: ( rule__ArrayRule__Group__0__Impl rule__ArrayRule__Group__1 ) + // InternalGeneratorDSL.g:3890:2: rule__ArrayRule__Group__0__Impl rule__ArrayRule__Group__1 + { + pushFollow(FOLLOW_21); + rule__ArrayRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ArrayRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group__0" + + + // $ANTLR start "rule__ArrayRule__Group__0__Impl" + // InternalGeneratorDSL.g:3897:1: rule__ArrayRule__Group__0__Impl : ( () ) ; + public final void rule__ArrayRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3901:1: ( ( () ) ) + // InternalGeneratorDSL.g:3902:1: ( () ) + { + // InternalGeneratorDSL.g:3902:1: ( () ) + // InternalGeneratorDSL.g:3903:2: () + { + before(grammarAccess.getArrayRuleAccess().getArrayAction_0()); + // InternalGeneratorDSL.g:3904:2: () + // InternalGeneratorDSL.g:3904:3: + { + } + + after(grammarAccess.getArrayRuleAccess().getArrayAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group__0__Impl" + + + // $ANTLR start "rule__ArrayRule__Group__1" + // InternalGeneratorDSL.g:3912:1: rule__ArrayRule__Group__1 : rule__ArrayRule__Group__1__Impl rule__ArrayRule__Group__2 ; + public final void rule__ArrayRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3916:1: ( rule__ArrayRule__Group__1__Impl rule__ArrayRule__Group__2 ) + // InternalGeneratorDSL.g:3917:2: rule__ArrayRule__Group__1__Impl rule__ArrayRule__Group__2 + { + pushFollow(FOLLOW_39); + rule__ArrayRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ArrayRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group__1" + + + // $ANTLR start "rule__ArrayRule__Group__1__Impl" + // InternalGeneratorDSL.g:3924:1: rule__ArrayRule__Group__1__Impl : ( '[' ) ; + public final void rule__ArrayRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3928:1: ( ( '[' ) ) + // InternalGeneratorDSL.g:3929:1: ( '[' ) + { + // InternalGeneratorDSL.g:3929:1: ( '[' ) + // InternalGeneratorDSL.g:3930:2: '[' + { + before(grammarAccess.getArrayRuleAccess().getLeftSquareBracketKeyword_1()); + match(input,33,FOLLOW_2); + after(grammarAccess.getArrayRuleAccess().getLeftSquareBracketKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group__1__Impl" + + + // $ANTLR start "rule__ArrayRule__Group__2" + // InternalGeneratorDSL.g:3939:1: rule__ArrayRule__Group__2 : rule__ArrayRule__Group__2__Impl rule__ArrayRule__Group__3 ; + public final void rule__ArrayRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3943:1: ( rule__ArrayRule__Group__2__Impl rule__ArrayRule__Group__3 ) + // InternalGeneratorDSL.g:3944:2: rule__ArrayRule__Group__2__Impl rule__ArrayRule__Group__3 + { + pushFollow(FOLLOW_39); + rule__ArrayRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ArrayRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group__2" + + + // $ANTLR start "rule__ArrayRule__Group__2__Impl" + // InternalGeneratorDSL.g:3951:1: rule__ArrayRule__Group__2__Impl : ( ( rule__ArrayRule__Group_2__0 )? ) ; + public final void rule__ArrayRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3955:1: ( ( ( rule__ArrayRule__Group_2__0 )? ) ) + // InternalGeneratorDSL.g:3956:1: ( ( rule__ArrayRule__Group_2__0 )? ) + { + // InternalGeneratorDSL.g:3956:1: ( ( rule__ArrayRule__Group_2__0 )? ) + // InternalGeneratorDSL.g:3957:2: ( rule__ArrayRule__Group_2__0 )? + { + before(grammarAccess.getArrayRuleAccess().getGroup_2()); + // InternalGeneratorDSL.g:3958:2: ( rule__ArrayRule__Group_2__0 )? + int alt27=2; + int LA27_0 = input.LA(1); + + if ( ((LA27_0>=RULE_QUOTED_ID && LA27_0<=RULE_STRING)||LA27_0==12||LA27_0==33||LA27_0==49||LA27_0==60) ) { + alt27=1; + } + switch (alt27) { + case 1 : + // InternalGeneratorDSL.g:3958:3: rule__ArrayRule__Group_2__0 + { + pushFollow(FOLLOW_2); + rule__ArrayRule__Group_2__0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getArrayRuleAccess().getGroup_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group__2__Impl" + + + // $ANTLR start "rule__ArrayRule__Group__3" + // InternalGeneratorDSL.g:3966:1: rule__ArrayRule__Group__3 : rule__ArrayRule__Group__3__Impl ; + public final void rule__ArrayRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3970:1: ( rule__ArrayRule__Group__3__Impl ) + // InternalGeneratorDSL.g:3971:2: rule__ArrayRule__Group__3__Impl + { + pushFollow(FOLLOW_2); + rule__ArrayRule__Group__3__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group__3" + + + // $ANTLR start "rule__ArrayRule__Group__3__Impl" + // InternalGeneratorDSL.g:3977:1: rule__ArrayRule__Group__3__Impl : ( ']' ) ; + public final void rule__ArrayRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3981:1: ( ( ']' ) ) + // InternalGeneratorDSL.g:3982:1: ( ']' ) + { + // InternalGeneratorDSL.g:3982:1: ( ']' ) + // InternalGeneratorDSL.g:3983:2: ']' + { + before(grammarAccess.getArrayRuleAccess().getRightSquareBracketKeyword_3()); + match(input,35,FOLLOW_2); + after(grammarAccess.getArrayRuleAccess().getRightSquareBracketKeyword_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group__3__Impl" + + + // $ANTLR start "rule__ArrayRule__Group_2__0" + // InternalGeneratorDSL.g:3993:1: rule__ArrayRule__Group_2__0 : rule__ArrayRule__Group_2__0__Impl rule__ArrayRule__Group_2__1 ; + public final void rule__ArrayRule__Group_2__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:3997:1: ( rule__ArrayRule__Group_2__0__Impl rule__ArrayRule__Group_2__1 ) + // InternalGeneratorDSL.g:3998:2: rule__ArrayRule__Group_2__0__Impl rule__ArrayRule__Group_2__1 + { + pushFollow(FOLLOW_40); + rule__ArrayRule__Group_2__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ArrayRule__Group_2__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group_2__0" + + + // $ANTLR start "rule__ArrayRule__Group_2__0__Impl" + // InternalGeneratorDSL.g:4005:1: rule__ArrayRule__Group_2__0__Impl : ( ( rule__ArrayRule__ValuesAssignment_2_0 ) ) ; + public final void rule__ArrayRule__Group_2__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4009:1: ( ( ( rule__ArrayRule__ValuesAssignment_2_0 ) ) ) + // InternalGeneratorDSL.g:4010:1: ( ( rule__ArrayRule__ValuesAssignment_2_0 ) ) + { + // InternalGeneratorDSL.g:4010:1: ( ( rule__ArrayRule__ValuesAssignment_2_0 ) ) + // InternalGeneratorDSL.g:4011:2: ( rule__ArrayRule__ValuesAssignment_2_0 ) + { + before(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_0()); + // InternalGeneratorDSL.g:4012:2: ( rule__ArrayRule__ValuesAssignment_2_0 ) + // InternalGeneratorDSL.g:4012:3: rule__ArrayRule__ValuesAssignment_2_0 + { + pushFollow(FOLLOW_2); + rule__ArrayRule__ValuesAssignment_2_0(); + + state._fsp--; + + + } + + after(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group_2__0__Impl" + + + // $ANTLR start "rule__ArrayRule__Group_2__1" + // InternalGeneratorDSL.g:4020:1: rule__ArrayRule__Group_2__1 : rule__ArrayRule__Group_2__1__Impl ; + public final void rule__ArrayRule__Group_2__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4024:1: ( rule__ArrayRule__Group_2__1__Impl ) + // InternalGeneratorDSL.g:4025:2: rule__ArrayRule__Group_2__1__Impl + { + pushFollow(FOLLOW_2); + rule__ArrayRule__Group_2__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group_2__1" + + + // $ANTLR start "rule__ArrayRule__Group_2__1__Impl" + // InternalGeneratorDSL.g:4031:1: rule__ArrayRule__Group_2__1__Impl : ( ( rule__ArrayRule__Group_2_1__0 )* ) ; + public final void rule__ArrayRule__Group_2__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4035:1: ( ( ( rule__ArrayRule__Group_2_1__0 )* ) ) + // InternalGeneratorDSL.g:4036:1: ( ( rule__ArrayRule__Group_2_1__0 )* ) + { + // InternalGeneratorDSL.g:4036:1: ( ( rule__ArrayRule__Group_2_1__0 )* ) + // InternalGeneratorDSL.g:4037:2: ( rule__ArrayRule__Group_2_1__0 )* + { + before(grammarAccess.getArrayRuleAccess().getGroup_2_1()); + // InternalGeneratorDSL.g:4038:2: ( rule__ArrayRule__Group_2_1__0 )* + loop28: + do { + int alt28=2; + int LA28_0 = input.LA(1); + + if ( (LA28_0==37) ) { + alt28=1; + } + + + switch (alt28) { + case 1 : + // InternalGeneratorDSL.g:4038:3: rule__ArrayRule__Group_2_1__0 + { + pushFollow(FOLLOW_24); + rule__ArrayRule__Group_2_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop28; + } + } while (true); + + after(grammarAccess.getArrayRuleAccess().getGroup_2_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group_2__1__Impl" + + + // $ANTLR start "rule__ArrayRule__Group_2_1__0" + // InternalGeneratorDSL.g:4047:1: rule__ArrayRule__Group_2_1__0 : rule__ArrayRule__Group_2_1__0__Impl rule__ArrayRule__Group_2_1__1 ; + public final void rule__ArrayRule__Group_2_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4051:1: ( rule__ArrayRule__Group_2_1__0__Impl rule__ArrayRule__Group_2_1__1 ) + // InternalGeneratorDSL.g:4052:2: rule__ArrayRule__Group_2_1__0__Impl rule__ArrayRule__Group_2_1__1 + { + pushFollow(FOLLOW_38); + rule__ArrayRule__Group_2_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ArrayRule__Group_2_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group_2_1__0" + + + // $ANTLR start "rule__ArrayRule__Group_2_1__0__Impl" + // InternalGeneratorDSL.g:4059:1: rule__ArrayRule__Group_2_1__0__Impl : ( ',' ) ; + public final void rule__ArrayRule__Group_2_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4063:1: ( ( ',' ) ) + // InternalGeneratorDSL.g:4064:1: ( ',' ) + { + // InternalGeneratorDSL.g:4064:1: ( ',' ) + // InternalGeneratorDSL.g:4065:2: ',' + { + before(grammarAccess.getArrayRuleAccess().getCommaKeyword_2_1_0()); + match(input,37,FOLLOW_2); + after(grammarAccess.getArrayRuleAccess().getCommaKeyword_2_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group_2_1__0__Impl" + + + // $ANTLR start "rule__ArrayRule__Group_2_1__1" + // InternalGeneratorDSL.g:4074:1: rule__ArrayRule__Group_2_1__1 : rule__ArrayRule__Group_2_1__1__Impl ; + public final void rule__ArrayRule__Group_2_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4078:1: ( rule__ArrayRule__Group_2_1__1__Impl ) + // InternalGeneratorDSL.g:4079:2: rule__ArrayRule__Group_2_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__ArrayRule__Group_2_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group_2_1__1" + + + // $ANTLR start "rule__ArrayRule__Group_2_1__1__Impl" + // InternalGeneratorDSL.g:4085:1: rule__ArrayRule__Group_2_1__1__Impl : ( ( rule__ArrayRule__ValuesAssignment_2_1_1 ) ) ; + public final void rule__ArrayRule__Group_2_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4089:1: ( ( ( rule__ArrayRule__ValuesAssignment_2_1_1 ) ) ) + // InternalGeneratorDSL.g:4090:1: ( ( rule__ArrayRule__ValuesAssignment_2_1_1 ) ) + { + // InternalGeneratorDSL.g:4090:1: ( ( rule__ArrayRule__ValuesAssignment_2_1_1 ) ) + // InternalGeneratorDSL.g:4091:2: ( rule__ArrayRule__ValuesAssignment_2_1_1 ) + { + before(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_1_1()); + // InternalGeneratorDSL.g:4092:2: ( rule__ArrayRule__ValuesAssignment_2_1_1 ) + // InternalGeneratorDSL.g:4092:3: rule__ArrayRule__ValuesAssignment_2_1_1 + { + pushFollow(FOLLOW_2); + rule__ArrayRule__ValuesAssignment_2_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getArrayRuleAccess().getValuesAssignment_2_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__Group_2_1__1__Impl" + + + // $ANTLR start "rule__DataReferenceRule__Group__0" + // InternalGeneratorDSL.g:4101:1: rule__DataReferenceRule__Group__0 : rule__DataReferenceRule__Group__0__Impl rule__DataReferenceRule__Group__1 ; + public final void rule__DataReferenceRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4105:1: ( rule__DataReferenceRule__Group__0__Impl rule__DataReferenceRule__Group__1 ) + // InternalGeneratorDSL.g:4106:2: rule__DataReferenceRule__Group__0__Impl rule__DataReferenceRule__Group__1 + { + pushFollow(FOLLOW_41); + rule__DataReferenceRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__DataReferenceRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DataReferenceRule__Group__0" + + + // $ANTLR start "rule__DataReferenceRule__Group__0__Impl" + // InternalGeneratorDSL.g:4113:1: rule__DataReferenceRule__Group__0__Impl : ( () ) ; + public final void rule__DataReferenceRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4117:1: ( ( () ) ) + // InternalGeneratorDSL.g:4118:1: ( () ) + { + // InternalGeneratorDSL.g:4118:1: ( () ) + // InternalGeneratorDSL.g:4119:2: () + { + before(grammarAccess.getDataReferenceRuleAccess().getDataReferenceAction_0()); + // InternalGeneratorDSL.g:4120:2: () + // InternalGeneratorDSL.g:4120:3: + { + } + + after(grammarAccess.getDataReferenceRuleAccess().getDataReferenceAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DataReferenceRule__Group__0__Impl" + + + // $ANTLR start "rule__DataReferenceRule__Group__1" + // InternalGeneratorDSL.g:4128:1: rule__DataReferenceRule__Group__1 : rule__DataReferenceRule__Group__1__Impl rule__DataReferenceRule__Group__2 ; + public final void rule__DataReferenceRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4132:1: ( rule__DataReferenceRule__Group__1__Impl rule__DataReferenceRule__Group__2 ) + // InternalGeneratorDSL.g:4133:2: rule__DataReferenceRule__Group__1__Impl rule__DataReferenceRule__Group__2 + { + pushFollow(FOLLOW_10); + rule__DataReferenceRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__DataReferenceRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DataReferenceRule__Group__1" + + + // $ANTLR start "rule__DataReferenceRule__Group__1__Impl" + // InternalGeneratorDSL.g:4140:1: rule__DataReferenceRule__Group__1__Impl : ( 'data' ) ; + public final void rule__DataReferenceRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4144:1: ( ( 'data' ) ) + // InternalGeneratorDSL.g:4145:1: ( 'data' ) + { + // InternalGeneratorDSL.g:4145:1: ( 'data' ) + // InternalGeneratorDSL.g:4146:2: 'data' + { + before(grammarAccess.getDataReferenceRuleAccess().getDataKeyword_1()); + match(input,49,FOLLOW_2); + after(grammarAccess.getDataReferenceRuleAccess().getDataKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DataReferenceRule__Group__1__Impl" + + + // $ANTLR start "rule__DataReferenceRule__Group__2" + // InternalGeneratorDSL.g:4155:1: rule__DataReferenceRule__Group__2 : rule__DataReferenceRule__Group__2__Impl ; + public final void rule__DataReferenceRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4159:1: ( rule__DataReferenceRule__Group__2__Impl ) + // InternalGeneratorDSL.g:4160:2: rule__DataReferenceRule__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__DataReferenceRule__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DataReferenceRule__Group__2" + + + // $ANTLR start "rule__DataReferenceRule__Group__2__Impl" + // InternalGeneratorDSL.g:4166:1: rule__DataReferenceRule__Group__2__Impl : ( ( rule__DataReferenceRule__DefinitionAssignment_2 ) ) ; + public final void rule__DataReferenceRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4170:1: ( ( ( rule__DataReferenceRule__DefinitionAssignment_2 ) ) ) + // InternalGeneratorDSL.g:4171:1: ( ( rule__DataReferenceRule__DefinitionAssignment_2 ) ) + { + // InternalGeneratorDSL.g:4171:1: ( ( rule__DataReferenceRule__DefinitionAssignment_2 ) ) + // InternalGeneratorDSL.g:4172:2: ( rule__DataReferenceRule__DefinitionAssignment_2 ) + { + before(grammarAccess.getDataReferenceRuleAccess().getDefinitionAssignment_2()); + // InternalGeneratorDSL.g:4173:2: ( rule__DataReferenceRule__DefinitionAssignment_2 ) + // InternalGeneratorDSL.g:4173:3: rule__DataReferenceRule__DefinitionAssignment_2 + { + pushFollow(FOLLOW_2); + rule__DataReferenceRule__DefinitionAssignment_2(); + + state._fsp--; + + + } + + after(grammarAccess.getDataReferenceRuleAccess().getDefinitionAssignment_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DataReferenceRule__Group__2__Impl" + + + // $ANTLR start "rule__OrExpressionRule__Group__0" + // InternalGeneratorDSL.g:4182:1: rule__OrExpressionRule__Group__0 : rule__OrExpressionRule__Group__0__Impl rule__OrExpressionRule__Group__1 ; + public final void rule__OrExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4186:1: ( rule__OrExpressionRule__Group__0__Impl rule__OrExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4187:2: rule__OrExpressionRule__Group__0__Impl rule__OrExpressionRule__Group__1 + { + pushFollow(FOLLOW_42); + rule__OrExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__OrExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__Group__0" + + + // $ANTLR start "rule__OrExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4194:1: rule__OrExpressionRule__Group__0__Impl : ( ( rule__OrExpressionRule__SubExpressionsAssignment_0 ) ) ; + public final void rule__OrExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4198:1: ( ( ( rule__OrExpressionRule__SubExpressionsAssignment_0 ) ) ) + // InternalGeneratorDSL.g:4199:1: ( ( rule__OrExpressionRule__SubExpressionsAssignment_0 ) ) + { + // InternalGeneratorDSL.g:4199:1: ( ( rule__OrExpressionRule__SubExpressionsAssignment_0 ) ) + // InternalGeneratorDSL.g:4200:2: ( rule__OrExpressionRule__SubExpressionsAssignment_0 ) + { + before(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_0()); + // InternalGeneratorDSL.g:4201:2: ( rule__OrExpressionRule__SubExpressionsAssignment_0 ) + // InternalGeneratorDSL.g:4201:3: rule__OrExpressionRule__SubExpressionsAssignment_0 + { + pushFollow(FOLLOW_2); + rule__OrExpressionRule__SubExpressionsAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__OrExpressionRule__Group__1" + // InternalGeneratorDSL.g:4209:1: rule__OrExpressionRule__Group__1 : rule__OrExpressionRule__Group__1__Impl ; + public final void rule__OrExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4213:1: ( rule__OrExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4214:2: rule__OrExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__OrExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__Group__1" + + + // $ANTLR start "rule__OrExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4220:1: rule__OrExpressionRule__Group__1__Impl : ( ( rule__OrExpressionRule__Group_1__0 )* ) ; + public final void rule__OrExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4224:1: ( ( ( rule__OrExpressionRule__Group_1__0 )* ) ) + // InternalGeneratorDSL.g:4225:1: ( ( rule__OrExpressionRule__Group_1__0 )* ) + { + // InternalGeneratorDSL.g:4225:1: ( ( rule__OrExpressionRule__Group_1__0 )* ) + // InternalGeneratorDSL.g:4226:2: ( rule__OrExpressionRule__Group_1__0 )* + { + before(grammarAccess.getOrExpressionRuleAccess().getGroup_1()); + // InternalGeneratorDSL.g:4227:2: ( rule__OrExpressionRule__Group_1__0 )* + loop29: + do { + int alt29=2; + int LA29_0 = input.LA(1); + + if ( (LA29_0==50) ) { + alt29=1; + } + + + switch (alt29) { + case 1 : + // InternalGeneratorDSL.g:4227:3: rule__OrExpressionRule__Group_1__0 + { + pushFollow(FOLLOW_43); + rule__OrExpressionRule__Group_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop29; + } + } while (true); + + after(grammarAccess.getOrExpressionRuleAccess().getGroup_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__OrExpressionRule__Group_1__0" + // InternalGeneratorDSL.g:4236:1: rule__OrExpressionRule__Group_1__0 : rule__OrExpressionRule__Group_1__0__Impl rule__OrExpressionRule__Group_1__1 ; + public final void rule__OrExpressionRule__Group_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4240:1: ( rule__OrExpressionRule__Group_1__0__Impl rule__OrExpressionRule__Group_1__1 ) + // InternalGeneratorDSL.g:4241:2: rule__OrExpressionRule__Group_1__0__Impl rule__OrExpressionRule__Group_1__1 + { + pushFollow(FOLLOW_44); + rule__OrExpressionRule__Group_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__OrExpressionRule__Group_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__Group_1__0" + + + // $ANTLR start "rule__OrExpressionRule__Group_1__0__Impl" + // InternalGeneratorDSL.g:4248:1: rule__OrExpressionRule__Group_1__0__Impl : ( 'OR' ) ; + public final void rule__OrExpressionRule__Group_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4252:1: ( ( 'OR' ) ) + // InternalGeneratorDSL.g:4253:1: ( 'OR' ) + { + // InternalGeneratorDSL.g:4253:1: ( 'OR' ) + // InternalGeneratorDSL.g:4254:2: 'OR' + { + before(grammarAccess.getOrExpressionRuleAccess().getORKeyword_1_0()); + match(input,50,FOLLOW_2); + after(grammarAccess.getOrExpressionRuleAccess().getORKeyword_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__Group_1__0__Impl" + + + // $ANTLR start "rule__OrExpressionRule__Group_1__1" + // InternalGeneratorDSL.g:4263:1: rule__OrExpressionRule__Group_1__1 : rule__OrExpressionRule__Group_1__1__Impl ; + public final void rule__OrExpressionRule__Group_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4267:1: ( rule__OrExpressionRule__Group_1__1__Impl ) + // InternalGeneratorDSL.g:4268:2: rule__OrExpressionRule__Group_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__OrExpressionRule__Group_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__Group_1__1" + + + // $ANTLR start "rule__OrExpressionRule__Group_1__1__Impl" + // InternalGeneratorDSL.g:4274:1: rule__OrExpressionRule__Group_1__1__Impl : ( ( rule__OrExpressionRule__SubExpressionsAssignment_1_1 ) ) ; + public final void rule__OrExpressionRule__Group_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4278:1: ( ( ( rule__OrExpressionRule__SubExpressionsAssignment_1_1 ) ) ) + // InternalGeneratorDSL.g:4279:1: ( ( rule__OrExpressionRule__SubExpressionsAssignment_1_1 ) ) + { + // InternalGeneratorDSL.g:4279:1: ( ( rule__OrExpressionRule__SubExpressionsAssignment_1_1 ) ) + // InternalGeneratorDSL.g:4280:2: ( rule__OrExpressionRule__SubExpressionsAssignment_1_1 ) + { + before(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_1_1()); + // InternalGeneratorDSL.g:4281:2: ( rule__OrExpressionRule__SubExpressionsAssignment_1_1 ) + // InternalGeneratorDSL.g:4281:3: rule__OrExpressionRule__SubExpressionsAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__OrExpressionRule__SubExpressionsAssignment_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsAssignment_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__Group_1__1__Impl" + + + // $ANTLR start "rule__XorExpressionRule__Group__0" + // InternalGeneratorDSL.g:4290:1: rule__XorExpressionRule__Group__0 : rule__XorExpressionRule__Group__0__Impl rule__XorExpressionRule__Group__1 ; + public final void rule__XorExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4294:1: ( rule__XorExpressionRule__Group__0__Impl rule__XorExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4295:2: rule__XorExpressionRule__Group__0__Impl rule__XorExpressionRule__Group__1 + { + pushFollow(FOLLOW_45); + rule__XorExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__XorExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__Group__0" + + + // $ANTLR start "rule__XorExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4302:1: rule__XorExpressionRule__Group__0__Impl : ( ( rule__XorExpressionRule__SubExpressionsAssignment_0 ) ) ; + public final void rule__XorExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4306:1: ( ( ( rule__XorExpressionRule__SubExpressionsAssignment_0 ) ) ) + // InternalGeneratorDSL.g:4307:1: ( ( rule__XorExpressionRule__SubExpressionsAssignment_0 ) ) + { + // InternalGeneratorDSL.g:4307:1: ( ( rule__XorExpressionRule__SubExpressionsAssignment_0 ) ) + // InternalGeneratorDSL.g:4308:2: ( rule__XorExpressionRule__SubExpressionsAssignment_0 ) + { + before(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_0()); + // InternalGeneratorDSL.g:4309:2: ( rule__XorExpressionRule__SubExpressionsAssignment_0 ) + // InternalGeneratorDSL.g:4309:3: rule__XorExpressionRule__SubExpressionsAssignment_0 + { + pushFollow(FOLLOW_2); + rule__XorExpressionRule__SubExpressionsAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__XorExpressionRule__Group__1" + // InternalGeneratorDSL.g:4317:1: rule__XorExpressionRule__Group__1 : rule__XorExpressionRule__Group__1__Impl ; + public final void rule__XorExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4321:1: ( rule__XorExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4322:2: rule__XorExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__XorExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__Group__1" + + + // $ANTLR start "rule__XorExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4328:1: rule__XorExpressionRule__Group__1__Impl : ( ( rule__XorExpressionRule__Group_1__0 )* ) ; + public final void rule__XorExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4332:1: ( ( ( rule__XorExpressionRule__Group_1__0 )* ) ) + // InternalGeneratorDSL.g:4333:1: ( ( rule__XorExpressionRule__Group_1__0 )* ) + { + // InternalGeneratorDSL.g:4333:1: ( ( rule__XorExpressionRule__Group_1__0 )* ) + // InternalGeneratorDSL.g:4334:2: ( rule__XorExpressionRule__Group_1__0 )* + { + before(grammarAccess.getXorExpressionRuleAccess().getGroup_1()); + // InternalGeneratorDSL.g:4335:2: ( rule__XorExpressionRule__Group_1__0 )* + loop30: + do { + int alt30=2; + int LA30_0 = input.LA(1); + + if ( (LA30_0==51) ) { + alt30=1; + } + + + switch (alt30) { + case 1 : + // InternalGeneratorDSL.g:4335:3: rule__XorExpressionRule__Group_1__0 + { + pushFollow(FOLLOW_46); + rule__XorExpressionRule__Group_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop30; + } + } while (true); + + after(grammarAccess.getXorExpressionRuleAccess().getGroup_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__XorExpressionRule__Group_1__0" + // InternalGeneratorDSL.g:4344:1: rule__XorExpressionRule__Group_1__0 : rule__XorExpressionRule__Group_1__0__Impl rule__XorExpressionRule__Group_1__1 ; + public final void rule__XorExpressionRule__Group_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4348:1: ( rule__XorExpressionRule__Group_1__0__Impl rule__XorExpressionRule__Group_1__1 ) + // InternalGeneratorDSL.g:4349:2: rule__XorExpressionRule__Group_1__0__Impl rule__XorExpressionRule__Group_1__1 + { + pushFollow(FOLLOW_44); + rule__XorExpressionRule__Group_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__XorExpressionRule__Group_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__Group_1__0" + + + // $ANTLR start "rule__XorExpressionRule__Group_1__0__Impl" + // InternalGeneratorDSL.g:4356:1: rule__XorExpressionRule__Group_1__0__Impl : ( 'XOR' ) ; + public final void rule__XorExpressionRule__Group_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4360:1: ( ( 'XOR' ) ) + // InternalGeneratorDSL.g:4361:1: ( 'XOR' ) + { + // InternalGeneratorDSL.g:4361:1: ( 'XOR' ) + // InternalGeneratorDSL.g:4362:2: 'XOR' + { + before(grammarAccess.getXorExpressionRuleAccess().getXORKeyword_1_0()); + match(input,51,FOLLOW_2); + after(grammarAccess.getXorExpressionRuleAccess().getXORKeyword_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__Group_1__0__Impl" + + + // $ANTLR start "rule__XorExpressionRule__Group_1__1" + // InternalGeneratorDSL.g:4371:1: rule__XorExpressionRule__Group_1__1 : rule__XorExpressionRule__Group_1__1__Impl ; + public final void rule__XorExpressionRule__Group_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4375:1: ( rule__XorExpressionRule__Group_1__1__Impl ) + // InternalGeneratorDSL.g:4376:2: rule__XorExpressionRule__Group_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__XorExpressionRule__Group_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__Group_1__1" + + + // $ANTLR start "rule__XorExpressionRule__Group_1__1__Impl" + // InternalGeneratorDSL.g:4382:1: rule__XorExpressionRule__Group_1__1__Impl : ( ( rule__XorExpressionRule__SubExpressionsAssignment_1_1 ) ) ; + public final void rule__XorExpressionRule__Group_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4386:1: ( ( ( rule__XorExpressionRule__SubExpressionsAssignment_1_1 ) ) ) + // InternalGeneratorDSL.g:4387:1: ( ( rule__XorExpressionRule__SubExpressionsAssignment_1_1 ) ) + { + // InternalGeneratorDSL.g:4387:1: ( ( rule__XorExpressionRule__SubExpressionsAssignment_1_1 ) ) + // InternalGeneratorDSL.g:4388:2: ( rule__XorExpressionRule__SubExpressionsAssignment_1_1 ) + { + before(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_1_1()); + // InternalGeneratorDSL.g:4389:2: ( rule__XorExpressionRule__SubExpressionsAssignment_1_1 ) + // InternalGeneratorDSL.g:4389:3: rule__XorExpressionRule__SubExpressionsAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__XorExpressionRule__SubExpressionsAssignment_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAssignment_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__Group_1__1__Impl" + + + // $ANTLR start "rule__AndExpressionRule__Group__0" + // InternalGeneratorDSL.g:4398:1: rule__AndExpressionRule__Group__0 : rule__AndExpressionRule__Group__0__Impl rule__AndExpressionRule__Group__1 ; + public final void rule__AndExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4402:1: ( rule__AndExpressionRule__Group__0__Impl rule__AndExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4403:2: rule__AndExpressionRule__Group__0__Impl rule__AndExpressionRule__Group__1 + { + pushFollow(FOLLOW_47); + rule__AndExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AndExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__Group__0" + + + // $ANTLR start "rule__AndExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4410:1: rule__AndExpressionRule__Group__0__Impl : ( ( rule__AndExpressionRule__SubExpressionsAssignment_0 ) ) ; + public final void rule__AndExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4414:1: ( ( ( rule__AndExpressionRule__SubExpressionsAssignment_0 ) ) ) + // InternalGeneratorDSL.g:4415:1: ( ( rule__AndExpressionRule__SubExpressionsAssignment_0 ) ) + { + // InternalGeneratorDSL.g:4415:1: ( ( rule__AndExpressionRule__SubExpressionsAssignment_0 ) ) + // InternalGeneratorDSL.g:4416:2: ( rule__AndExpressionRule__SubExpressionsAssignment_0 ) + { + before(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_0()); + // InternalGeneratorDSL.g:4417:2: ( rule__AndExpressionRule__SubExpressionsAssignment_0 ) + // InternalGeneratorDSL.g:4417:3: rule__AndExpressionRule__SubExpressionsAssignment_0 + { + pushFollow(FOLLOW_2); + rule__AndExpressionRule__SubExpressionsAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__AndExpressionRule__Group__1" + // InternalGeneratorDSL.g:4425:1: rule__AndExpressionRule__Group__1 : rule__AndExpressionRule__Group__1__Impl ; + public final void rule__AndExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4429:1: ( rule__AndExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4430:2: rule__AndExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__AndExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__Group__1" + + + // $ANTLR start "rule__AndExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4436:1: rule__AndExpressionRule__Group__1__Impl : ( ( rule__AndExpressionRule__Group_1__0 )* ) ; + public final void rule__AndExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4440:1: ( ( ( rule__AndExpressionRule__Group_1__0 )* ) ) + // InternalGeneratorDSL.g:4441:1: ( ( rule__AndExpressionRule__Group_1__0 )* ) + { + // InternalGeneratorDSL.g:4441:1: ( ( rule__AndExpressionRule__Group_1__0 )* ) + // InternalGeneratorDSL.g:4442:2: ( rule__AndExpressionRule__Group_1__0 )* + { + before(grammarAccess.getAndExpressionRuleAccess().getGroup_1()); + // InternalGeneratorDSL.g:4443:2: ( rule__AndExpressionRule__Group_1__0 )* + loop31: + do { + int alt31=2; + int LA31_0 = input.LA(1); + + if ( (LA31_0==52) ) { + alt31=1; + } + + + switch (alt31) { + case 1 : + // InternalGeneratorDSL.g:4443:3: rule__AndExpressionRule__Group_1__0 + { + pushFollow(FOLLOW_48); + rule__AndExpressionRule__Group_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop31; + } + } while (true); + + after(grammarAccess.getAndExpressionRuleAccess().getGroup_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__AndExpressionRule__Group_1__0" + // InternalGeneratorDSL.g:4452:1: rule__AndExpressionRule__Group_1__0 : rule__AndExpressionRule__Group_1__0__Impl rule__AndExpressionRule__Group_1__1 ; + public final void rule__AndExpressionRule__Group_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4456:1: ( rule__AndExpressionRule__Group_1__0__Impl rule__AndExpressionRule__Group_1__1 ) + // InternalGeneratorDSL.g:4457:2: rule__AndExpressionRule__Group_1__0__Impl rule__AndExpressionRule__Group_1__1 + { + pushFollow(FOLLOW_44); + rule__AndExpressionRule__Group_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AndExpressionRule__Group_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__Group_1__0" + + + // $ANTLR start "rule__AndExpressionRule__Group_1__0__Impl" + // InternalGeneratorDSL.g:4464:1: rule__AndExpressionRule__Group_1__0__Impl : ( 'AND' ) ; + public final void rule__AndExpressionRule__Group_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4468:1: ( ( 'AND' ) ) + // InternalGeneratorDSL.g:4469:1: ( 'AND' ) + { + // InternalGeneratorDSL.g:4469:1: ( 'AND' ) + // InternalGeneratorDSL.g:4470:2: 'AND' + { + before(grammarAccess.getAndExpressionRuleAccess().getANDKeyword_1_0()); + match(input,52,FOLLOW_2); + after(grammarAccess.getAndExpressionRuleAccess().getANDKeyword_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__Group_1__0__Impl" + + + // $ANTLR start "rule__AndExpressionRule__Group_1__1" + // InternalGeneratorDSL.g:4479:1: rule__AndExpressionRule__Group_1__1 : rule__AndExpressionRule__Group_1__1__Impl ; + public final void rule__AndExpressionRule__Group_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4483:1: ( rule__AndExpressionRule__Group_1__1__Impl ) + // InternalGeneratorDSL.g:4484:2: rule__AndExpressionRule__Group_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__AndExpressionRule__Group_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__Group_1__1" + + + // $ANTLR start "rule__AndExpressionRule__Group_1__1__Impl" + // InternalGeneratorDSL.g:4490:1: rule__AndExpressionRule__Group_1__1__Impl : ( ( rule__AndExpressionRule__SubExpressionsAssignment_1_1 ) ) ; + public final void rule__AndExpressionRule__Group_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4494:1: ( ( ( rule__AndExpressionRule__SubExpressionsAssignment_1_1 ) ) ) + // InternalGeneratorDSL.g:4495:1: ( ( rule__AndExpressionRule__SubExpressionsAssignment_1_1 ) ) + { + // InternalGeneratorDSL.g:4495:1: ( ( rule__AndExpressionRule__SubExpressionsAssignment_1_1 ) ) + // InternalGeneratorDSL.g:4496:2: ( rule__AndExpressionRule__SubExpressionsAssignment_1_1 ) + { + before(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_1_1()); + // InternalGeneratorDSL.g:4497:2: ( rule__AndExpressionRule__SubExpressionsAssignment_1_1 ) + // InternalGeneratorDSL.g:4497:3: rule__AndExpressionRule__SubExpressionsAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__AndExpressionRule__SubExpressionsAssignment_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsAssignment_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__Group_1__1__Impl" + + + // $ANTLR start "rule__NotExpressionRule__Group__0" + // InternalGeneratorDSL.g:4506:1: rule__NotExpressionRule__Group__0 : rule__NotExpressionRule__Group__0__Impl rule__NotExpressionRule__Group__1 ; + public final void rule__NotExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4510:1: ( rule__NotExpressionRule__Group__0__Impl rule__NotExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4511:2: rule__NotExpressionRule__Group__0__Impl rule__NotExpressionRule__Group__1 + { + pushFollow(FOLLOW_44); + rule__NotExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__NotExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NotExpressionRule__Group__0" + + + // $ANTLR start "rule__NotExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4518:1: rule__NotExpressionRule__Group__0__Impl : ( ( rule__NotExpressionRule__NegatedAssignment_0 )? ) ; + public final void rule__NotExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4522:1: ( ( ( rule__NotExpressionRule__NegatedAssignment_0 )? ) ) + // InternalGeneratorDSL.g:4523:1: ( ( rule__NotExpressionRule__NegatedAssignment_0 )? ) + { + // InternalGeneratorDSL.g:4523:1: ( ( rule__NotExpressionRule__NegatedAssignment_0 )? ) + // InternalGeneratorDSL.g:4524:2: ( rule__NotExpressionRule__NegatedAssignment_0 )? + { + before(grammarAccess.getNotExpressionRuleAccess().getNegatedAssignment_0()); + // InternalGeneratorDSL.g:4525:2: ( rule__NotExpressionRule__NegatedAssignment_0 )? + int alt32=2; + int LA32_0 = input.LA(1); + + if ( (LA32_0==59) ) { + alt32=1; + } + switch (alt32) { + case 1 : + // InternalGeneratorDSL.g:4525:3: rule__NotExpressionRule__NegatedAssignment_0 + { + pushFollow(FOLLOW_2); + rule__NotExpressionRule__NegatedAssignment_0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getNotExpressionRuleAccess().getNegatedAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NotExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__NotExpressionRule__Group__1" + // InternalGeneratorDSL.g:4533:1: rule__NotExpressionRule__Group__1 : rule__NotExpressionRule__Group__1__Impl ; + public final void rule__NotExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4537:1: ( rule__NotExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4538:2: rule__NotExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__NotExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NotExpressionRule__Group__1" + + + // $ANTLR start "rule__NotExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4544:1: rule__NotExpressionRule__Group__1__Impl : ( ( rule__NotExpressionRule__OperandAssignment_1 ) ) ; + public final void rule__NotExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4548:1: ( ( ( rule__NotExpressionRule__OperandAssignment_1 ) ) ) + // InternalGeneratorDSL.g:4549:1: ( ( rule__NotExpressionRule__OperandAssignment_1 ) ) + { + // InternalGeneratorDSL.g:4549:1: ( ( rule__NotExpressionRule__OperandAssignment_1 ) ) + // InternalGeneratorDSL.g:4550:2: ( rule__NotExpressionRule__OperandAssignment_1 ) + { + before(grammarAccess.getNotExpressionRuleAccess().getOperandAssignment_1()); + // InternalGeneratorDSL.g:4551:2: ( rule__NotExpressionRule__OperandAssignment_1 ) + // InternalGeneratorDSL.g:4551:3: rule__NotExpressionRule__OperandAssignment_1 + { + pushFollow(FOLLOW_2); + rule__NotExpressionRule__OperandAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getNotExpressionRuleAccess().getOperandAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NotExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__ComparisonExpressionRule__Group__0" + // InternalGeneratorDSL.g:4560:1: rule__ComparisonExpressionRule__Group__0 : rule__ComparisonExpressionRule__Group__0__Impl rule__ComparisonExpressionRule__Group__1 ; + public final void rule__ComparisonExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4564:1: ( rule__ComparisonExpressionRule__Group__0__Impl rule__ComparisonExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4565:2: rule__ComparisonExpressionRule__Group__0__Impl rule__ComparisonExpressionRule__Group__1 + { + pushFollow(FOLLOW_49); + rule__ComparisonExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ComparisonExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ComparisonExpressionRule__Group__0" + + + // $ANTLR start "rule__ComparisonExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4572:1: rule__ComparisonExpressionRule__Group__0__Impl : ( ( rule__ComparisonExpressionRule__LeftOperandAssignment_0 ) ) ; + public final void rule__ComparisonExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4576:1: ( ( ( rule__ComparisonExpressionRule__LeftOperandAssignment_0 ) ) ) + // InternalGeneratorDSL.g:4577:1: ( ( rule__ComparisonExpressionRule__LeftOperandAssignment_0 ) ) + { + // InternalGeneratorDSL.g:4577:1: ( ( rule__ComparisonExpressionRule__LeftOperandAssignment_0 ) ) + // InternalGeneratorDSL.g:4578:2: ( rule__ComparisonExpressionRule__LeftOperandAssignment_0 ) + { + before(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAssignment_0()); + // InternalGeneratorDSL.g:4579:2: ( rule__ComparisonExpressionRule__LeftOperandAssignment_0 ) + // InternalGeneratorDSL.g:4579:3: rule__ComparisonExpressionRule__LeftOperandAssignment_0 + { + pushFollow(FOLLOW_2); + rule__ComparisonExpressionRule__LeftOperandAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ComparisonExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__ComparisonExpressionRule__Group__1" + // InternalGeneratorDSL.g:4587:1: rule__ComparisonExpressionRule__Group__1 : rule__ComparisonExpressionRule__Group__1__Impl ; + public final void rule__ComparisonExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4591:1: ( rule__ComparisonExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4592:2: rule__ComparisonExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__ComparisonExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ComparisonExpressionRule__Group__1" + + + // $ANTLR start "rule__ComparisonExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4598:1: rule__ComparisonExpressionRule__Group__1__Impl : ( ( rule__ComparisonExpressionRule__ComparisonAssignment_1 )* ) ; + public final void rule__ComparisonExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4602:1: ( ( ( rule__ComparisonExpressionRule__ComparisonAssignment_1 )* ) ) + // InternalGeneratorDSL.g:4603:1: ( ( rule__ComparisonExpressionRule__ComparisonAssignment_1 )* ) + { + // InternalGeneratorDSL.g:4603:1: ( ( rule__ComparisonExpressionRule__ComparisonAssignment_1 )* ) + // InternalGeneratorDSL.g:4604:2: ( rule__ComparisonExpressionRule__ComparisonAssignment_1 )* + { + before(grammarAccess.getComparisonExpressionRuleAccess().getComparisonAssignment_1()); + // InternalGeneratorDSL.g:4605:2: ( rule__ComparisonExpressionRule__ComparisonAssignment_1 )* + loop33: + do { + int alt33=2; + int LA33_0 = input.LA(1); + + if ( ((LA33_0>=13 && LA33_0<=18)) ) { + alt33=1; + } + + + switch (alt33) { + case 1 : + // InternalGeneratorDSL.g:4605:3: rule__ComparisonExpressionRule__ComparisonAssignment_1 + { + pushFollow(FOLLOW_50); + rule__ComparisonExpressionRule__ComparisonAssignment_1(); + + state._fsp--; + + + } + break; + + default : + break loop33; + } + } while (true); + + after(grammarAccess.getComparisonExpressionRuleAccess().getComparisonAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ComparisonExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__PartialComparisonExpressionRule__Group__0" + // InternalGeneratorDSL.g:4614:1: rule__PartialComparisonExpressionRule__Group__0 : rule__PartialComparisonExpressionRule__Group__0__Impl rule__PartialComparisonExpressionRule__Group__1 ; + public final void rule__PartialComparisonExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4618:1: ( rule__PartialComparisonExpressionRule__Group__0__Impl rule__PartialComparisonExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4619:2: rule__PartialComparisonExpressionRule__Group__0__Impl rule__PartialComparisonExpressionRule__Group__1 + { + pushFollow(FOLLOW_44); + rule__PartialComparisonExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PartialComparisonExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PartialComparisonExpressionRule__Group__0" + + + // $ANTLR start "rule__PartialComparisonExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4626:1: rule__PartialComparisonExpressionRule__Group__0__Impl : ( ( rule__PartialComparisonExpressionRule__OperatorAssignment_0 ) ) ; + public final void rule__PartialComparisonExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4630:1: ( ( ( rule__PartialComparisonExpressionRule__OperatorAssignment_0 ) ) ) + // InternalGeneratorDSL.g:4631:1: ( ( rule__PartialComparisonExpressionRule__OperatorAssignment_0 ) ) + { + // InternalGeneratorDSL.g:4631:1: ( ( rule__PartialComparisonExpressionRule__OperatorAssignment_0 ) ) + // InternalGeneratorDSL.g:4632:2: ( rule__PartialComparisonExpressionRule__OperatorAssignment_0 ) + { + before(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorAssignment_0()); + // InternalGeneratorDSL.g:4633:2: ( rule__PartialComparisonExpressionRule__OperatorAssignment_0 ) + // InternalGeneratorDSL.g:4633:3: rule__PartialComparisonExpressionRule__OperatorAssignment_0 + { + pushFollow(FOLLOW_2); + rule__PartialComparisonExpressionRule__OperatorAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PartialComparisonExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__PartialComparisonExpressionRule__Group__1" + // InternalGeneratorDSL.g:4641:1: rule__PartialComparisonExpressionRule__Group__1 : rule__PartialComparisonExpressionRule__Group__1__Impl ; + public final void rule__PartialComparisonExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4645:1: ( rule__PartialComparisonExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4646:2: rule__PartialComparisonExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__PartialComparisonExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PartialComparisonExpressionRule__Group__1" + + + // $ANTLR start "rule__PartialComparisonExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4652:1: rule__PartialComparisonExpressionRule__Group__1__Impl : ( ( rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 ) ) ; + public final void rule__PartialComparisonExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4656:1: ( ( ( rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 ) ) ) + // InternalGeneratorDSL.g:4657:1: ( ( rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 ) ) + { + // InternalGeneratorDSL.g:4657:1: ( ( rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 ) ) + // InternalGeneratorDSL.g:4658:2: ( rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 ) + { + before(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAssignment_1()); + // InternalGeneratorDSL.g:4659:2: ( rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 ) + // InternalGeneratorDSL.g:4659:3: rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 + { + pushFollow(FOLLOW_2); + rule__PartialComparisonExpressionRule__SubExpressionAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PartialComparisonExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__Group__0" + // InternalGeneratorDSL.g:4668:1: rule__AddOrSubtractExpressionRule__Group__0 : rule__AddOrSubtractExpressionRule__Group__0__Impl rule__AddOrSubtractExpressionRule__Group__1 ; + public final void rule__AddOrSubtractExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4672:1: ( rule__AddOrSubtractExpressionRule__Group__0__Impl rule__AddOrSubtractExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4673:2: rule__AddOrSubtractExpressionRule__Group__0__Impl rule__AddOrSubtractExpressionRule__Group__1 + { + pushFollow(FOLLOW_51); + rule__AddOrSubtractExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AddOrSubtractExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__Group__0" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4680:1: rule__AddOrSubtractExpressionRule__Group__0__Impl : ( ( rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 ) ) ; + public final void rule__AddOrSubtractExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4684:1: ( ( ( rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 ) ) ) + // InternalGeneratorDSL.g:4685:1: ( ( rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 ) ) + { + // InternalGeneratorDSL.g:4685:1: ( ( rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 ) ) + // InternalGeneratorDSL.g:4686:2: ( rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 ) + { + before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandAssignment_0()); + // InternalGeneratorDSL.g:4687:2: ( rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 ) + // InternalGeneratorDSL.g:4687:3: rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 + { + pushFollow(FOLLOW_2); + rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__Group__1" + // InternalGeneratorDSL.g:4695:1: rule__AddOrSubtractExpressionRule__Group__1 : rule__AddOrSubtractExpressionRule__Group__1__Impl ; + public final void rule__AddOrSubtractExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4699:1: ( rule__AddOrSubtractExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4700:2: rule__AddOrSubtractExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__AddOrSubtractExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__Group__1" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4706:1: rule__AddOrSubtractExpressionRule__Group__1__Impl : ( ( rule__AddOrSubtractExpressionRule__Group_1__0 )* ) ; + public final void rule__AddOrSubtractExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4710:1: ( ( ( rule__AddOrSubtractExpressionRule__Group_1__0 )* ) ) + // InternalGeneratorDSL.g:4711:1: ( ( rule__AddOrSubtractExpressionRule__Group_1__0 )* ) + { + // InternalGeneratorDSL.g:4711:1: ( ( rule__AddOrSubtractExpressionRule__Group_1__0 )* ) + // InternalGeneratorDSL.g:4712:2: ( rule__AddOrSubtractExpressionRule__Group_1__0 )* + { + before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup_1()); + // InternalGeneratorDSL.g:4713:2: ( rule__AddOrSubtractExpressionRule__Group_1__0 )* + loop34: + do { + int alt34=2; + int LA34_0 = input.LA(1); + + if ( ((LA34_0>=19 && LA34_0<=20)) ) { + alt34=1; + } + + + switch (alt34) { + case 1 : + // InternalGeneratorDSL.g:4713:3: rule__AddOrSubtractExpressionRule__Group_1__0 + { + pushFollow(FOLLOW_52); + rule__AddOrSubtractExpressionRule__Group_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop34; + } + } while (true); + + after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getGroup_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__Group_1__0" + // InternalGeneratorDSL.g:4722:1: rule__AddOrSubtractExpressionRule__Group_1__0 : rule__AddOrSubtractExpressionRule__Group_1__0__Impl rule__AddOrSubtractExpressionRule__Group_1__1 ; + public final void rule__AddOrSubtractExpressionRule__Group_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4726:1: ( rule__AddOrSubtractExpressionRule__Group_1__0__Impl rule__AddOrSubtractExpressionRule__Group_1__1 ) + // InternalGeneratorDSL.g:4727:2: rule__AddOrSubtractExpressionRule__Group_1__0__Impl rule__AddOrSubtractExpressionRule__Group_1__1 + { + pushFollow(FOLLOW_44); + rule__AddOrSubtractExpressionRule__Group_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AddOrSubtractExpressionRule__Group_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__Group_1__0" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__Group_1__0__Impl" + // InternalGeneratorDSL.g:4734:1: rule__AddOrSubtractExpressionRule__Group_1__0__Impl : ( ( rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 ) ) ; + public final void rule__AddOrSubtractExpressionRule__Group_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4738:1: ( ( ( rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 ) ) ) + // InternalGeneratorDSL.g:4739:1: ( ( rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 ) ) + { + // InternalGeneratorDSL.g:4739:1: ( ( rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 ) ) + // InternalGeneratorDSL.g:4740:2: ( rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 ) + { + before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_1_0()); + // InternalGeneratorDSL.g:4741:2: ( rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 ) + // InternalGeneratorDSL.g:4741:3: rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 + { + pushFollow(FOLLOW_2); + rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0(); + + state._fsp--; + + + } + + after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__Group_1__0__Impl" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__Group_1__1" + // InternalGeneratorDSL.g:4749:1: rule__AddOrSubtractExpressionRule__Group_1__1 : rule__AddOrSubtractExpressionRule__Group_1__1__Impl ; + public final void rule__AddOrSubtractExpressionRule__Group_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4753:1: ( rule__AddOrSubtractExpressionRule__Group_1__1__Impl ) + // InternalGeneratorDSL.g:4754:2: rule__AddOrSubtractExpressionRule__Group_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__AddOrSubtractExpressionRule__Group_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__Group_1__1" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__Group_1__1__Impl" + // InternalGeneratorDSL.g:4760:1: rule__AddOrSubtractExpressionRule__Group_1__1__Impl : ( ( rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 ) ) ; + public final void rule__AddOrSubtractExpressionRule__Group_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4764:1: ( ( ( rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 ) ) ) + // InternalGeneratorDSL.g:4765:1: ( ( rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 ) ) + { + // InternalGeneratorDSL.g:4765:1: ( ( rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 ) ) + // InternalGeneratorDSL.g:4766:2: ( rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 ) + { + before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsAssignment_1_1()); + // InternalGeneratorDSL.g:4767:2: ( rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 ) + // InternalGeneratorDSL.g:4767:3: rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsAssignment_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__Group_1__1__Impl" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__Group__0" + // InternalGeneratorDSL.g:4776:1: rule__MultiplyDivideModuloExpressionRule__Group__0 : rule__MultiplyDivideModuloExpressionRule__Group__0__Impl rule__MultiplyDivideModuloExpressionRule__Group__1 ; + public final void rule__MultiplyDivideModuloExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4780:1: ( rule__MultiplyDivideModuloExpressionRule__Group__0__Impl rule__MultiplyDivideModuloExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4781:2: rule__MultiplyDivideModuloExpressionRule__Group__0__Impl rule__MultiplyDivideModuloExpressionRule__Group__1 + { + pushFollow(FOLLOW_53); + rule__MultiplyDivideModuloExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__Group__0" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4788:1: rule__MultiplyDivideModuloExpressionRule__Group__0__Impl : ( ( rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 ) ) ; + public final void rule__MultiplyDivideModuloExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4792:1: ( ( ( rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 ) ) ) + // InternalGeneratorDSL.g:4793:1: ( ( rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 ) ) + { + // InternalGeneratorDSL.g:4793:1: ( ( rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 ) ) + // InternalGeneratorDSL.g:4794:2: ( rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 ) + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandAssignment_0()); + // InternalGeneratorDSL.g:4795:2: ( rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 ) + // InternalGeneratorDSL.g:4795:3: rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 + { + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__Group__1" + // InternalGeneratorDSL.g:4803:1: rule__MultiplyDivideModuloExpressionRule__Group__1 : rule__MultiplyDivideModuloExpressionRule__Group__1__Impl ; + public final void rule__MultiplyDivideModuloExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4807:1: ( rule__MultiplyDivideModuloExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4808:2: rule__MultiplyDivideModuloExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__Group__1" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4814:1: rule__MultiplyDivideModuloExpressionRule__Group__1__Impl : ( ( rule__MultiplyDivideModuloExpressionRule__Group_1__0 )* ) ; + public final void rule__MultiplyDivideModuloExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4818:1: ( ( ( rule__MultiplyDivideModuloExpressionRule__Group_1__0 )* ) ) + // InternalGeneratorDSL.g:4819:1: ( ( rule__MultiplyDivideModuloExpressionRule__Group_1__0 )* ) + { + // InternalGeneratorDSL.g:4819:1: ( ( rule__MultiplyDivideModuloExpressionRule__Group_1__0 )* ) + // InternalGeneratorDSL.g:4820:2: ( rule__MultiplyDivideModuloExpressionRule__Group_1__0 )* + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup_1()); + // InternalGeneratorDSL.g:4821:2: ( rule__MultiplyDivideModuloExpressionRule__Group_1__0 )* + loop35: + do { + int alt35=2; + int LA35_0 = input.LA(1); + + if ( ((LA35_0>=21 && LA35_0<=23)) ) { + alt35=1; + } + + + switch (alt35) { + case 1 : + // InternalGeneratorDSL.g:4821:3: rule__MultiplyDivideModuloExpressionRule__Group_1__0 + { + pushFollow(FOLLOW_54); + rule__MultiplyDivideModuloExpressionRule__Group_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop35; + } + } while (true); + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getGroup_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__Group_1__0" + // InternalGeneratorDSL.g:4830:1: rule__MultiplyDivideModuloExpressionRule__Group_1__0 : rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl rule__MultiplyDivideModuloExpressionRule__Group_1__1 ; + public final void rule__MultiplyDivideModuloExpressionRule__Group_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4834:1: ( rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl rule__MultiplyDivideModuloExpressionRule__Group_1__1 ) + // InternalGeneratorDSL.g:4835:2: rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl rule__MultiplyDivideModuloExpressionRule__Group_1__1 + { + pushFollow(FOLLOW_44); + rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloExpressionRule__Group_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__Group_1__0" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl" + // InternalGeneratorDSL.g:4842:1: rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl : ( ( rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 ) ) ; + public final void rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4846:1: ( ( ( rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 ) ) ) + // InternalGeneratorDSL.g:4847:1: ( ( rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 ) ) + { + // InternalGeneratorDSL.g:4847:1: ( ( rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 ) ) + // InternalGeneratorDSL.g:4848:2: ( rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 ) + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsAssignment_1_0()); + // InternalGeneratorDSL.g:4849:2: ( rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 ) + // InternalGeneratorDSL.g:4849:3: rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 + { + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0(); + + state._fsp--; + + + } + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsAssignment_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__Group_1__0__Impl" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__Group_1__1" + // InternalGeneratorDSL.g:4857:1: rule__MultiplyDivideModuloExpressionRule__Group_1__1 : rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl ; + public final void rule__MultiplyDivideModuloExpressionRule__Group_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4861:1: ( rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl ) + // InternalGeneratorDSL.g:4862:2: rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__Group_1__1" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl" + // InternalGeneratorDSL.g:4868:1: rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl : ( ( rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 ) ) ; + public final void rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4872:1: ( ( ( rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 ) ) ) + // InternalGeneratorDSL.g:4873:1: ( ( rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 ) ) + { + // InternalGeneratorDSL.g:4873:1: ( ( rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 ) ) + // InternalGeneratorDSL.g:4874:2: ( rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 ) + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsAssignment_1_1()); + // InternalGeneratorDSL.g:4875:2: ( rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 ) + // InternalGeneratorDSL.g:4875:3: rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsAssignment_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__Group_1__1__Impl" + + + // $ANTLR start "rule__PowerOfExpressionRule__Group__0" + // InternalGeneratorDSL.g:4884:1: rule__PowerOfExpressionRule__Group__0 : rule__PowerOfExpressionRule__Group__0__Impl rule__PowerOfExpressionRule__Group__1 ; + public final void rule__PowerOfExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4888:1: ( rule__PowerOfExpressionRule__Group__0__Impl rule__PowerOfExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4889:2: rule__PowerOfExpressionRule__Group__0__Impl rule__PowerOfExpressionRule__Group__1 + { + pushFollow(FOLLOW_55); + rule__PowerOfExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PowerOfExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__Group__0" + + + // $ANTLR start "rule__PowerOfExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:4896:1: rule__PowerOfExpressionRule__Group__0__Impl : ( ( rule__PowerOfExpressionRule__LeftOperandAssignment_0 ) ) ; + public final void rule__PowerOfExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4900:1: ( ( ( rule__PowerOfExpressionRule__LeftOperandAssignment_0 ) ) ) + // InternalGeneratorDSL.g:4901:1: ( ( rule__PowerOfExpressionRule__LeftOperandAssignment_0 ) ) + { + // InternalGeneratorDSL.g:4901:1: ( ( rule__PowerOfExpressionRule__LeftOperandAssignment_0 ) ) + // InternalGeneratorDSL.g:4902:2: ( rule__PowerOfExpressionRule__LeftOperandAssignment_0 ) + { + before(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandAssignment_0()); + // InternalGeneratorDSL.g:4903:2: ( rule__PowerOfExpressionRule__LeftOperandAssignment_0 ) + // InternalGeneratorDSL.g:4903:3: rule__PowerOfExpressionRule__LeftOperandAssignment_0 + { + pushFollow(FOLLOW_2); + rule__PowerOfExpressionRule__LeftOperandAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__PowerOfExpressionRule__Group__1" + // InternalGeneratorDSL.g:4911:1: rule__PowerOfExpressionRule__Group__1 : rule__PowerOfExpressionRule__Group__1__Impl ; + public final void rule__PowerOfExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4915:1: ( rule__PowerOfExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:4916:2: rule__PowerOfExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__PowerOfExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__Group__1" + + + // $ANTLR start "rule__PowerOfExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:4922:1: rule__PowerOfExpressionRule__Group__1__Impl : ( ( rule__PowerOfExpressionRule__Group_1__0 )? ) ; + public final void rule__PowerOfExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4926:1: ( ( ( rule__PowerOfExpressionRule__Group_1__0 )? ) ) + // InternalGeneratorDSL.g:4927:1: ( ( rule__PowerOfExpressionRule__Group_1__0 )? ) + { + // InternalGeneratorDSL.g:4927:1: ( ( rule__PowerOfExpressionRule__Group_1__0 )? ) + // InternalGeneratorDSL.g:4928:2: ( rule__PowerOfExpressionRule__Group_1__0 )? + { + before(grammarAccess.getPowerOfExpressionRuleAccess().getGroup_1()); + // InternalGeneratorDSL.g:4929:2: ( rule__PowerOfExpressionRule__Group_1__0 )? + int alt36=2; + int LA36_0 = input.LA(1); + + if ( (LA36_0==53) ) { + alt36=1; + } + switch (alt36) { + case 1 : + // InternalGeneratorDSL.g:4929:3: rule__PowerOfExpressionRule__Group_1__0 + { + pushFollow(FOLLOW_2); + rule__PowerOfExpressionRule__Group_1__0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getPowerOfExpressionRuleAccess().getGroup_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__PowerOfExpressionRule__Group_1__0" + // InternalGeneratorDSL.g:4938:1: rule__PowerOfExpressionRule__Group_1__0 : rule__PowerOfExpressionRule__Group_1__0__Impl rule__PowerOfExpressionRule__Group_1__1 ; + public final void rule__PowerOfExpressionRule__Group_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4942:1: ( rule__PowerOfExpressionRule__Group_1__0__Impl rule__PowerOfExpressionRule__Group_1__1 ) + // InternalGeneratorDSL.g:4943:2: rule__PowerOfExpressionRule__Group_1__0__Impl rule__PowerOfExpressionRule__Group_1__1 + { + pushFollow(FOLLOW_44); + rule__PowerOfExpressionRule__Group_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PowerOfExpressionRule__Group_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__Group_1__0" + + + // $ANTLR start "rule__PowerOfExpressionRule__Group_1__0__Impl" + // InternalGeneratorDSL.g:4950:1: rule__PowerOfExpressionRule__Group_1__0__Impl : ( '^' ) ; + public final void rule__PowerOfExpressionRule__Group_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4954:1: ( ( '^' ) ) + // InternalGeneratorDSL.g:4955:1: ( '^' ) + { + // InternalGeneratorDSL.g:4955:1: ( '^' ) + // InternalGeneratorDSL.g:4956:2: '^' + { + before(grammarAccess.getPowerOfExpressionRuleAccess().getCircumflexAccentKeyword_1_0()); + match(input,53,FOLLOW_2); + after(grammarAccess.getPowerOfExpressionRuleAccess().getCircumflexAccentKeyword_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__Group_1__0__Impl" + + + // $ANTLR start "rule__PowerOfExpressionRule__Group_1__1" + // InternalGeneratorDSL.g:4965:1: rule__PowerOfExpressionRule__Group_1__1 : rule__PowerOfExpressionRule__Group_1__1__Impl ; + public final void rule__PowerOfExpressionRule__Group_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4969:1: ( rule__PowerOfExpressionRule__Group_1__1__Impl ) + // InternalGeneratorDSL.g:4970:2: rule__PowerOfExpressionRule__Group_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__PowerOfExpressionRule__Group_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__Group_1__1" + + + // $ANTLR start "rule__PowerOfExpressionRule__Group_1__1__Impl" + // InternalGeneratorDSL.g:4976:1: rule__PowerOfExpressionRule__Group_1__1__Impl : ( ( rule__PowerOfExpressionRule__RightOperandAssignment_1_1 ) ) ; + public final void rule__PowerOfExpressionRule__Group_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4980:1: ( ( ( rule__PowerOfExpressionRule__RightOperandAssignment_1_1 ) ) ) + // InternalGeneratorDSL.g:4981:1: ( ( rule__PowerOfExpressionRule__RightOperandAssignment_1_1 ) ) + { + // InternalGeneratorDSL.g:4981:1: ( ( rule__PowerOfExpressionRule__RightOperandAssignment_1_1 ) ) + // InternalGeneratorDSL.g:4982:2: ( rule__PowerOfExpressionRule__RightOperandAssignment_1_1 ) + { + before(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandAssignment_1_1()); + // InternalGeneratorDSL.g:4983:2: ( rule__PowerOfExpressionRule__RightOperandAssignment_1_1 ) + // InternalGeneratorDSL.g:4983:3: rule__PowerOfExpressionRule__RightOperandAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__PowerOfExpressionRule__RightOperandAssignment_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandAssignment_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__Group_1__1__Impl" + + + // $ANTLR start "rule__UnaryAddOrSubtractExpressionRule__Group__0" + // InternalGeneratorDSL.g:4992:1: rule__UnaryAddOrSubtractExpressionRule__Group__0 : rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl rule__UnaryAddOrSubtractExpressionRule__Group__1 ; + public final void rule__UnaryAddOrSubtractExpressionRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:4996:1: ( rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl rule__UnaryAddOrSubtractExpressionRule__Group__1 ) + // InternalGeneratorDSL.g:4997:2: rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl rule__UnaryAddOrSubtractExpressionRule__Group__1 + { + pushFollow(FOLLOW_44); + rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UnaryAddOrSubtractExpressionRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnaryAddOrSubtractExpressionRule__Group__0" + + + // $ANTLR start "rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl" + // InternalGeneratorDSL.g:5004:1: rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl : ( ( rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 )* ) ; + public final void rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5008:1: ( ( ( rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 )* ) ) + // InternalGeneratorDSL.g:5009:1: ( ( rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 )* ) + { + // InternalGeneratorDSL.g:5009:1: ( ( rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 )* ) + // InternalGeneratorDSL.g:5010:2: ( rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 )* + { + before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_0()); + // InternalGeneratorDSL.g:5011:2: ( rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 )* + loop37: + do { + int alt37=2; + int LA37_0 = input.LA(1); + + if ( ((LA37_0>=19 && LA37_0<=20)) ) { + alt37=1; + } + + + switch (alt37) { + case 1 : + // InternalGeneratorDSL.g:5011:3: rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 + { + pushFollow(FOLLOW_52); + rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0(); + + state._fsp--; + + + } + break; + + default : + break loop37; + } + } while (true); + + after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnaryAddOrSubtractExpressionRule__Group__0__Impl" + + + // $ANTLR start "rule__UnaryAddOrSubtractExpressionRule__Group__1" + // InternalGeneratorDSL.g:5019:1: rule__UnaryAddOrSubtractExpressionRule__Group__1 : rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl ; + public final void rule__UnaryAddOrSubtractExpressionRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5023:1: ( rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl ) + // InternalGeneratorDSL.g:5024:2: rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnaryAddOrSubtractExpressionRule__Group__1" + + + // $ANTLR start "rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl" + // InternalGeneratorDSL.g:5030:1: rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl : ( ( rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 ) ) ; + public final void rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5034:1: ( ( ( rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 ) ) ) + // InternalGeneratorDSL.g:5035:1: ( ( rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 ) ) + { + // InternalGeneratorDSL.g:5035:1: ( ( rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 ) ) + // InternalGeneratorDSL.g:5036:2: ( rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 ) + { + before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionAssignment_1()); + // InternalGeneratorDSL.g:5037:2: ( rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 ) + // InternalGeneratorDSL.g:5037:3: rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 + { + pushFollow(FOLLOW_2); + rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnaryAddOrSubtractExpressionRule__Group__1__Impl" + + + // $ANTLR start "rule__ParanthesesRule__Group__0" + // InternalGeneratorDSL.g:5046:1: rule__ParanthesesRule__Group__0 : rule__ParanthesesRule__Group__0__Impl rule__ParanthesesRule__Group__1 ; + public final void rule__ParanthesesRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5050:1: ( rule__ParanthesesRule__Group__0__Impl rule__ParanthesesRule__Group__1 ) + // InternalGeneratorDSL.g:5051:2: rule__ParanthesesRule__Group__0__Impl rule__ParanthesesRule__Group__1 + { + pushFollow(FOLLOW_44); + rule__ParanthesesRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ParanthesesRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParanthesesRule__Group__0" + + + // $ANTLR start "rule__ParanthesesRule__Group__0__Impl" + // InternalGeneratorDSL.g:5058:1: rule__ParanthesesRule__Group__0__Impl : ( '(' ) ; + public final void rule__ParanthesesRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5062:1: ( ( '(' ) ) + // InternalGeneratorDSL.g:5063:1: ( '(' ) + { + // InternalGeneratorDSL.g:5063:1: ( '(' ) + // InternalGeneratorDSL.g:5064:2: '(' + { + before(grammarAccess.getParanthesesRuleAccess().getLeftParenthesisKeyword_0()); + match(input,54,FOLLOW_2); + after(grammarAccess.getParanthesesRuleAccess().getLeftParenthesisKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParanthesesRule__Group__0__Impl" + + + // $ANTLR start "rule__ParanthesesRule__Group__1" + // InternalGeneratorDSL.g:5073:1: rule__ParanthesesRule__Group__1 : rule__ParanthesesRule__Group__1__Impl rule__ParanthesesRule__Group__2 ; + public final void rule__ParanthesesRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5077:1: ( rule__ParanthesesRule__Group__1__Impl rule__ParanthesesRule__Group__2 ) + // InternalGeneratorDSL.g:5078:2: rule__ParanthesesRule__Group__1__Impl rule__ParanthesesRule__Group__2 + { + pushFollow(FOLLOW_56); + rule__ParanthesesRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ParanthesesRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParanthesesRule__Group__1" + + + // $ANTLR start "rule__ParanthesesRule__Group__1__Impl" + // InternalGeneratorDSL.g:5085:1: rule__ParanthesesRule__Group__1__Impl : ( ( rule__ParanthesesRule__SubExpressionAssignment_1 ) ) ; + public final void rule__ParanthesesRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5089:1: ( ( ( rule__ParanthesesRule__SubExpressionAssignment_1 ) ) ) + // InternalGeneratorDSL.g:5090:1: ( ( rule__ParanthesesRule__SubExpressionAssignment_1 ) ) + { + // InternalGeneratorDSL.g:5090:1: ( ( rule__ParanthesesRule__SubExpressionAssignment_1 ) ) + // InternalGeneratorDSL.g:5091:2: ( rule__ParanthesesRule__SubExpressionAssignment_1 ) + { + before(grammarAccess.getParanthesesRuleAccess().getSubExpressionAssignment_1()); + // InternalGeneratorDSL.g:5092:2: ( rule__ParanthesesRule__SubExpressionAssignment_1 ) + // InternalGeneratorDSL.g:5092:3: rule__ParanthesesRule__SubExpressionAssignment_1 + { + pushFollow(FOLLOW_2); + rule__ParanthesesRule__SubExpressionAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getParanthesesRuleAccess().getSubExpressionAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParanthesesRule__Group__1__Impl" + + + // $ANTLR start "rule__ParanthesesRule__Group__2" + // InternalGeneratorDSL.g:5100:1: rule__ParanthesesRule__Group__2 : rule__ParanthesesRule__Group__2__Impl ; + public final void rule__ParanthesesRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5104:1: ( rule__ParanthesesRule__Group__2__Impl ) + // InternalGeneratorDSL.g:5105:2: rule__ParanthesesRule__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__ParanthesesRule__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParanthesesRule__Group__2" + + + // $ANTLR start "rule__ParanthesesRule__Group__2__Impl" + // InternalGeneratorDSL.g:5111:1: rule__ParanthesesRule__Group__2__Impl : ( ')' ) ; + public final void rule__ParanthesesRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5115:1: ( ( ')' ) ) + // InternalGeneratorDSL.g:5116:1: ( ')' ) + { + // InternalGeneratorDSL.g:5116:1: ( ')' ) + // InternalGeneratorDSL.g:5117:2: ')' + { + before(grammarAccess.getParanthesesRuleAccess().getRightParenthesisKeyword_2()); + match(input,55,FOLLOW_2); + after(grammarAccess.getParanthesesRuleAccess().getRightParenthesisKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParanthesesRule__Group__2__Impl" + + + // $ANTLR start "rule__CallRule__Group__0" + // InternalGeneratorDSL.g:5127:1: rule__CallRule__Group__0 : rule__CallRule__Group__0__Impl rule__CallRule__Group__1 ; + public final void rule__CallRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5131:1: ( rule__CallRule__Group__0__Impl rule__CallRule__Group__1 ) + // InternalGeneratorDSL.g:5132:2: rule__CallRule__Group__0__Impl rule__CallRule__Group__1 + { + pushFollow(FOLLOW_57); + rule__CallRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CallRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group__0" + + + // $ANTLR start "rule__CallRule__Group__0__Impl" + // InternalGeneratorDSL.g:5139:1: rule__CallRule__Group__0__Impl : ( ( rule__CallRule__FunctionAssignment_0 ) ) ; + public final void rule__CallRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5143:1: ( ( ( rule__CallRule__FunctionAssignment_0 ) ) ) + // InternalGeneratorDSL.g:5144:1: ( ( rule__CallRule__FunctionAssignment_0 ) ) + { + // InternalGeneratorDSL.g:5144:1: ( ( rule__CallRule__FunctionAssignment_0 ) ) + // InternalGeneratorDSL.g:5145:2: ( rule__CallRule__FunctionAssignment_0 ) + { + before(grammarAccess.getCallRuleAccess().getFunctionAssignment_0()); + // InternalGeneratorDSL.g:5146:2: ( rule__CallRule__FunctionAssignment_0 ) + // InternalGeneratorDSL.g:5146:3: rule__CallRule__FunctionAssignment_0 + { + pushFollow(FOLLOW_2); + rule__CallRule__FunctionAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getCallRuleAccess().getFunctionAssignment_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group__0__Impl" + + + // $ANTLR start "rule__CallRule__Group__1" + // InternalGeneratorDSL.g:5154:1: rule__CallRule__Group__1 : rule__CallRule__Group__1__Impl rule__CallRule__Group__2 ; + public final void rule__CallRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5158:1: ( rule__CallRule__Group__1__Impl rule__CallRule__Group__2 ) + // InternalGeneratorDSL.g:5159:2: rule__CallRule__Group__1__Impl rule__CallRule__Group__2 + { + pushFollow(FOLLOW_58); + rule__CallRule__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CallRule__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group__1" + + + // $ANTLR start "rule__CallRule__Group__1__Impl" + // InternalGeneratorDSL.g:5166:1: rule__CallRule__Group__1__Impl : ( '(' ) ; + public final void rule__CallRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5170:1: ( ( '(' ) ) + // InternalGeneratorDSL.g:5171:1: ( '(' ) + { + // InternalGeneratorDSL.g:5171:1: ( '(' ) + // InternalGeneratorDSL.g:5172:2: '(' + { + before(grammarAccess.getCallRuleAccess().getLeftParenthesisKeyword_1()); + match(input,54,FOLLOW_2); + after(grammarAccess.getCallRuleAccess().getLeftParenthesisKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group__1__Impl" + + + // $ANTLR start "rule__CallRule__Group__2" + // InternalGeneratorDSL.g:5181:1: rule__CallRule__Group__2 : rule__CallRule__Group__2__Impl rule__CallRule__Group__3 ; + public final void rule__CallRule__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5185:1: ( rule__CallRule__Group__2__Impl rule__CallRule__Group__3 ) + // InternalGeneratorDSL.g:5186:2: rule__CallRule__Group__2__Impl rule__CallRule__Group__3 + { + pushFollow(FOLLOW_58); + rule__CallRule__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CallRule__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group__2" + + + // $ANTLR start "rule__CallRule__Group__2__Impl" + // InternalGeneratorDSL.g:5193:1: rule__CallRule__Group__2__Impl : ( ( rule__CallRule__Group_2__0 )? ) ; + public final void rule__CallRule__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5197:1: ( ( ( rule__CallRule__Group_2__0 )? ) ) + // InternalGeneratorDSL.g:5198:1: ( ( rule__CallRule__Group_2__0 )? ) + { + // InternalGeneratorDSL.g:5198:1: ( ( rule__CallRule__Group_2__0 )? ) + // InternalGeneratorDSL.g:5199:2: ( rule__CallRule__Group_2__0 )? + { + before(grammarAccess.getCallRuleAccess().getGroup_2()); + // InternalGeneratorDSL.g:5200:2: ( rule__CallRule__Group_2__0 )? + int alt38=2; + int LA38_0 = input.LA(1); + + if ( ((LA38_0>=RULE_INT && LA38_0<=RULE_STRING)||LA38_0==12||(LA38_0>=19 && LA38_0<=20)||LA38_0==54||(LA38_0>=56 && LA38_0<=57)||(LA38_0>=59 && LA38_0<=60)) ) { + alt38=1; + } + switch (alt38) { + case 1 : + // InternalGeneratorDSL.g:5200:3: rule__CallRule__Group_2__0 + { + pushFollow(FOLLOW_2); + rule__CallRule__Group_2__0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getCallRuleAccess().getGroup_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group__2__Impl" + + + // $ANTLR start "rule__CallRule__Group__3" + // InternalGeneratorDSL.g:5208:1: rule__CallRule__Group__3 : rule__CallRule__Group__3__Impl ; + public final void rule__CallRule__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5212:1: ( rule__CallRule__Group__3__Impl ) + // InternalGeneratorDSL.g:5213:2: rule__CallRule__Group__3__Impl + { + pushFollow(FOLLOW_2); + rule__CallRule__Group__3__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group__3" + + + // $ANTLR start "rule__CallRule__Group__3__Impl" + // InternalGeneratorDSL.g:5219:1: rule__CallRule__Group__3__Impl : ( ')' ) ; + public final void rule__CallRule__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5223:1: ( ( ')' ) ) + // InternalGeneratorDSL.g:5224:1: ( ')' ) + { + // InternalGeneratorDSL.g:5224:1: ( ')' ) + // InternalGeneratorDSL.g:5225:2: ')' + { + before(grammarAccess.getCallRuleAccess().getRightParenthesisKeyword_3()); + match(input,55,FOLLOW_2); + after(grammarAccess.getCallRuleAccess().getRightParenthesisKeyword_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group__3__Impl" + + + // $ANTLR start "rule__CallRule__Group_2__0" + // InternalGeneratorDSL.g:5235:1: rule__CallRule__Group_2__0 : rule__CallRule__Group_2__0__Impl rule__CallRule__Group_2__1 ; + public final void rule__CallRule__Group_2__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5239:1: ( rule__CallRule__Group_2__0__Impl rule__CallRule__Group_2__1 ) + // InternalGeneratorDSL.g:5240:2: rule__CallRule__Group_2__0__Impl rule__CallRule__Group_2__1 + { + pushFollow(FOLLOW_40); + rule__CallRule__Group_2__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CallRule__Group_2__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group_2__0" + + + // $ANTLR start "rule__CallRule__Group_2__0__Impl" + // InternalGeneratorDSL.g:5247:1: rule__CallRule__Group_2__0__Impl : ( ( rule__CallRule__ParametersAssignment_2_0 ) ) ; + public final void rule__CallRule__Group_2__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5251:1: ( ( ( rule__CallRule__ParametersAssignment_2_0 ) ) ) + // InternalGeneratorDSL.g:5252:1: ( ( rule__CallRule__ParametersAssignment_2_0 ) ) + { + // InternalGeneratorDSL.g:5252:1: ( ( rule__CallRule__ParametersAssignment_2_0 ) ) + // InternalGeneratorDSL.g:5253:2: ( rule__CallRule__ParametersAssignment_2_0 ) + { + before(grammarAccess.getCallRuleAccess().getParametersAssignment_2_0()); + // InternalGeneratorDSL.g:5254:2: ( rule__CallRule__ParametersAssignment_2_0 ) + // InternalGeneratorDSL.g:5254:3: rule__CallRule__ParametersAssignment_2_0 + { + pushFollow(FOLLOW_2); + rule__CallRule__ParametersAssignment_2_0(); + + state._fsp--; + + + } + + after(grammarAccess.getCallRuleAccess().getParametersAssignment_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group_2__0__Impl" + + + // $ANTLR start "rule__CallRule__Group_2__1" + // InternalGeneratorDSL.g:5262:1: rule__CallRule__Group_2__1 : rule__CallRule__Group_2__1__Impl ; + public final void rule__CallRule__Group_2__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5266:1: ( rule__CallRule__Group_2__1__Impl ) + // InternalGeneratorDSL.g:5267:2: rule__CallRule__Group_2__1__Impl + { + pushFollow(FOLLOW_2); + rule__CallRule__Group_2__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group_2__1" + + + // $ANTLR start "rule__CallRule__Group_2__1__Impl" + // InternalGeneratorDSL.g:5273:1: rule__CallRule__Group_2__1__Impl : ( ( rule__CallRule__Group_2_1__0 )* ) ; + public final void rule__CallRule__Group_2__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5277:1: ( ( ( rule__CallRule__Group_2_1__0 )* ) ) + // InternalGeneratorDSL.g:5278:1: ( ( rule__CallRule__Group_2_1__0 )* ) + { + // InternalGeneratorDSL.g:5278:1: ( ( rule__CallRule__Group_2_1__0 )* ) + // InternalGeneratorDSL.g:5279:2: ( rule__CallRule__Group_2_1__0 )* + { + before(grammarAccess.getCallRuleAccess().getGroup_2_1()); + // InternalGeneratorDSL.g:5280:2: ( rule__CallRule__Group_2_1__0 )* + loop39: + do { + int alt39=2; + int LA39_0 = input.LA(1); + + if ( (LA39_0==37) ) { + alt39=1; + } + + + switch (alt39) { + case 1 : + // InternalGeneratorDSL.g:5280:3: rule__CallRule__Group_2_1__0 + { + pushFollow(FOLLOW_24); + rule__CallRule__Group_2_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop39; + } + } while (true); + + after(grammarAccess.getCallRuleAccess().getGroup_2_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group_2__1__Impl" + + + // $ANTLR start "rule__CallRule__Group_2_1__0" + // InternalGeneratorDSL.g:5289:1: rule__CallRule__Group_2_1__0 : rule__CallRule__Group_2_1__0__Impl rule__CallRule__Group_2_1__1 ; + public final void rule__CallRule__Group_2_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5293:1: ( rule__CallRule__Group_2_1__0__Impl rule__CallRule__Group_2_1__1 ) + // InternalGeneratorDSL.g:5294:2: rule__CallRule__Group_2_1__0__Impl rule__CallRule__Group_2_1__1 + { + pushFollow(FOLLOW_44); + rule__CallRule__Group_2_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__CallRule__Group_2_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group_2_1__0" + + + // $ANTLR start "rule__CallRule__Group_2_1__0__Impl" + // InternalGeneratorDSL.g:5301:1: rule__CallRule__Group_2_1__0__Impl : ( ',' ) ; + public final void rule__CallRule__Group_2_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5305:1: ( ( ',' ) ) + // InternalGeneratorDSL.g:5306:1: ( ',' ) + { + // InternalGeneratorDSL.g:5306:1: ( ',' ) + // InternalGeneratorDSL.g:5307:2: ',' + { + before(grammarAccess.getCallRuleAccess().getCommaKeyword_2_1_0()); + match(input,37,FOLLOW_2); + after(grammarAccess.getCallRuleAccess().getCommaKeyword_2_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group_2_1__0__Impl" + + + // $ANTLR start "rule__CallRule__Group_2_1__1" + // InternalGeneratorDSL.g:5316:1: rule__CallRule__Group_2_1__1 : rule__CallRule__Group_2_1__1__Impl ; + public final void rule__CallRule__Group_2_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5320:1: ( rule__CallRule__Group_2_1__1__Impl ) + // InternalGeneratorDSL.g:5321:2: rule__CallRule__Group_2_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__CallRule__Group_2_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group_2_1__1" + + + // $ANTLR start "rule__CallRule__Group_2_1__1__Impl" + // InternalGeneratorDSL.g:5327:1: rule__CallRule__Group_2_1__1__Impl : ( ( rule__CallRule__ParametersAssignment_2_1_1 ) ) ; + public final void rule__CallRule__Group_2_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5331:1: ( ( ( rule__CallRule__ParametersAssignment_2_1_1 ) ) ) + // InternalGeneratorDSL.g:5332:1: ( ( rule__CallRule__ParametersAssignment_2_1_1 ) ) + { + // InternalGeneratorDSL.g:5332:1: ( ( rule__CallRule__ParametersAssignment_2_1_1 ) ) + // InternalGeneratorDSL.g:5333:2: ( rule__CallRule__ParametersAssignment_2_1_1 ) + { + before(grammarAccess.getCallRuleAccess().getParametersAssignment_2_1_1()); + // InternalGeneratorDSL.g:5334:2: ( rule__CallRule__ParametersAssignment_2_1_1 ) + // InternalGeneratorDSL.g:5334:3: rule__CallRule__ParametersAssignment_2_1_1 + { + pushFollow(FOLLOW_2); + rule__CallRule__ParametersAssignment_2_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getCallRuleAccess().getParametersAssignment_2_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__Group_2_1__1__Impl" + + + // $ANTLR start "rule__FunctionNameRule__Group__0" + // InternalGeneratorDSL.g:5343:1: rule__FunctionNameRule__Group__0 : rule__FunctionNameRule__Group__0__Impl rule__FunctionNameRule__Group__1 ; + public final void rule__FunctionNameRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5347:1: ( rule__FunctionNameRule__Group__0__Impl rule__FunctionNameRule__Group__1 ) + // InternalGeneratorDSL.g:5348:2: rule__FunctionNameRule__Group__0__Impl rule__FunctionNameRule__Group__1 + { + pushFollow(FOLLOW_59); + rule__FunctionNameRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__FunctionNameRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionNameRule__Group__0" + + + // $ANTLR start "rule__FunctionNameRule__Group__0__Impl" + // InternalGeneratorDSL.g:5355:1: rule__FunctionNameRule__Group__0__Impl : ( () ) ; + public final void rule__FunctionNameRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5359:1: ( ( () ) ) + // InternalGeneratorDSL.g:5360:1: ( () ) + { + // InternalGeneratorDSL.g:5360:1: ( () ) + // InternalGeneratorDSL.g:5361:2: () + { + before(grammarAccess.getFunctionNameRuleAccess().getFunctionNameAction_0()); + // InternalGeneratorDSL.g:5362:2: () + // InternalGeneratorDSL.g:5362:3: + { + } + + after(grammarAccess.getFunctionNameRuleAccess().getFunctionNameAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionNameRule__Group__0__Impl" + + + // $ANTLR start "rule__FunctionNameRule__Group__1" + // InternalGeneratorDSL.g:5370:1: rule__FunctionNameRule__Group__1 : rule__FunctionNameRule__Group__1__Impl ; + public final void rule__FunctionNameRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5374:1: ( rule__FunctionNameRule__Group__1__Impl ) + // InternalGeneratorDSL.g:5375:2: rule__FunctionNameRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__FunctionNameRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionNameRule__Group__1" + + + // $ANTLR start "rule__FunctionNameRule__Group__1__Impl" + // InternalGeneratorDSL.g:5381:1: rule__FunctionNameRule__Group__1__Impl : ( 'call' ) ; + public final void rule__FunctionNameRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5385:1: ( ( 'call' ) ) + // InternalGeneratorDSL.g:5386:1: ( 'call' ) + { + // InternalGeneratorDSL.g:5386:1: ( 'call' ) + // InternalGeneratorDSL.g:5387:2: 'call' + { + before(grammarAccess.getFunctionNameRuleAccess().getCallKeyword_1()); + match(input,56,FOLLOW_2); + after(grammarAccess.getFunctionNameRuleAccess().getCallKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionNameRule__Group__1__Impl" + + + // $ANTLR start "rule__ValueReferenceRule__Group__0" + // InternalGeneratorDSL.g:5397:1: rule__ValueReferenceRule__Group__0 : rule__ValueReferenceRule__Group__0__Impl rule__ValueReferenceRule__Group__1 ; + public final void rule__ValueReferenceRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5401:1: ( rule__ValueReferenceRule__Group__0__Impl rule__ValueReferenceRule__Group__1 ) + // InternalGeneratorDSL.g:5402:2: rule__ValueReferenceRule__Group__0__Impl rule__ValueReferenceRule__Group__1 + { + pushFollow(FOLLOW_44); + rule__ValueReferenceRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__ValueReferenceRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ValueReferenceRule__Group__0" + + + // $ANTLR start "rule__ValueReferenceRule__Group__0__Impl" + // InternalGeneratorDSL.g:5409:1: rule__ValueReferenceRule__Group__0__Impl : ( () ) ; + public final void rule__ValueReferenceRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5413:1: ( ( () ) ) + // InternalGeneratorDSL.g:5414:1: ( () ) + { + // InternalGeneratorDSL.g:5414:1: ( () ) + // InternalGeneratorDSL.g:5415:2: () + { + before(grammarAccess.getValueReferenceRuleAccess().getValueReferenceAction_0()); + // InternalGeneratorDSL.g:5416:2: () + // InternalGeneratorDSL.g:5416:3: + { + } + + after(grammarAccess.getValueReferenceRuleAccess().getValueReferenceAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ValueReferenceRule__Group__0__Impl" + + + // $ANTLR start "rule__ValueReferenceRule__Group__1" + // InternalGeneratorDSL.g:5424:1: rule__ValueReferenceRule__Group__1 : rule__ValueReferenceRule__Group__1__Impl ; + public final void rule__ValueReferenceRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5428:1: ( rule__ValueReferenceRule__Group__1__Impl ) + // InternalGeneratorDSL.g:5429:2: rule__ValueReferenceRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__ValueReferenceRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ValueReferenceRule__Group__1" + + + // $ANTLR start "rule__ValueReferenceRule__Group__1__Impl" + // InternalGeneratorDSL.g:5435:1: rule__ValueReferenceRule__Group__1__Impl : ( 'value' ) ; + public final void rule__ValueReferenceRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5439:1: ( ( 'value' ) ) + // InternalGeneratorDSL.g:5440:1: ( 'value' ) + { + // InternalGeneratorDSL.g:5440:1: ( 'value' ) + // InternalGeneratorDSL.g:5441:2: 'value' + { + before(grammarAccess.getValueReferenceRuleAccess().getValueKeyword_1()); + match(input,57,FOLLOW_2); + after(grammarAccess.getValueReferenceRuleAccess().getValueKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ValueReferenceRule__Group__1__Impl" + + + // $ANTLR start "rule__BooleanLiteralRule__Group__0" + // InternalGeneratorDSL.g:5451:1: rule__BooleanLiteralRule__Group__0 : rule__BooleanLiteralRule__Group__0__Impl rule__BooleanLiteralRule__Group__1 ; + public final void rule__BooleanLiteralRule__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5455:1: ( rule__BooleanLiteralRule__Group__0__Impl rule__BooleanLiteralRule__Group__1 ) + // InternalGeneratorDSL.g:5456:2: rule__BooleanLiteralRule__Group__0__Impl rule__BooleanLiteralRule__Group__1 + { + pushFollow(FOLLOW_38); + rule__BooleanLiteralRule__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__BooleanLiteralRule__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__BooleanLiteralRule__Group__0" + + + // $ANTLR start "rule__BooleanLiteralRule__Group__0__Impl" + // InternalGeneratorDSL.g:5463:1: rule__BooleanLiteralRule__Group__0__Impl : ( () ) ; + public final void rule__BooleanLiteralRule__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5467:1: ( ( () ) ) + // InternalGeneratorDSL.g:5468:1: ( () ) + { + // InternalGeneratorDSL.g:5468:1: ( () ) + // InternalGeneratorDSL.g:5469:2: () + { + before(grammarAccess.getBooleanLiteralRuleAccess().getBooleanLiteralAction_0()); + // InternalGeneratorDSL.g:5470:2: () + // InternalGeneratorDSL.g:5470:3: + { + } + + after(grammarAccess.getBooleanLiteralRuleAccess().getBooleanLiteralAction_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__BooleanLiteralRule__Group__0__Impl" + + + // $ANTLR start "rule__BooleanLiteralRule__Group__1" + // InternalGeneratorDSL.g:5478:1: rule__BooleanLiteralRule__Group__1 : rule__BooleanLiteralRule__Group__1__Impl ; + public final void rule__BooleanLiteralRule__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5482:1: ( rule__BooleanLiteralRule__Group__1__Impl ) + // InternalGeneratorDSL.g:5483:2: rule__BooleanLiteralRule__Group__1__Impl + { + pushFollow(FOLLOW_2); + rule__BooleanLiteralRule__Group__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__BooleanLiteralRule__Group__1" + + + // $ANTLR start "rule__BooleanLiteralRule__Group__1__Impl" + // InternalGeneratorDSL.g:5489:1: rule__BooleanLiteralRule__Group__1__Impl : ( ( rule__BooleanLiteralRule__Alternatives_1 ) ) ; + public final void rule__BooleanLiteralRule__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5493:1: ( ( ( rule__BooleanLiteralRule__Alternatives_1 ) ) ) + // InternalGeneratorDSL.g:5494:1: ( ( rule__BooleanLiteralRule__Alternatives_1 ) ) + { + // InternalGeneratorDSL.g:5494:1: ( ( rule__BooleanLiteralRule__Alternatives_1 ) ) + // InternalGeneratorDSL.g:5495:2: ( rule__BooleanLiteralRule__Alternatives_1 ) + { + before(grammarAccess.getBooleanLiteralRuleAccess().getAlternatives_1()); + // InternalGeneratorDSL.g:5496:2: ( rule__BooleanLiteralRule__Alternatives_1 ) + // InternalGeneratorDSL.g:5496:3: rule__BooleanLiteralRule__Alternatives_1 + { + pushFollow(FOLLOW_2); + rule__BooleanLiteralRule__Alternatives_1(); + + state._fsp--; + + + } + + after(grammarAccess.getBooleanLiteralRuleAccess().getAlternatives_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__BooleanLiteralRule__Group__1__Impl" + + + // $ANTLR start "rule__DOUBLE__Group__0" + // InternalGeneratorDSL.g:5505:1: rule__DOUBLE__Group__0 : rule__DOUBLE__Group__0__Impl rule__DOUBLE__Group__1 ; + public final void rule__DOUBLE__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5509:1: ( rule__DOUBLE__Group__0__Impl rule__DOUBLE__Group__1 ) + // InternalGeneratorDSL.g:5510:2: rule__DOUBLE__Group__0__Impl rule__DOUBLE__Group__1 + { + pushFollow(FOLLOW_60); + rule__DOUBLE__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__DOUBLE__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DOUBLE__Group__0" + + + // $ANTLR start "rule__DOUBLE__Group__0__Impl" + // InternalGeneratorDSL.g:5517:1: rule__DOUBLE__Group__0__Impl : ( RULE_INT ) ; + public final void rule__DOUBLE__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5521:1: ( ( RULE_INT ) ) + // InternalGeneratorDSL.g:5522:1: ( RULE_INT ) + { + // InternalGeneratorDSL.g:5522:1: ( RULE_INT ) + // InternalGeneratorDSL.g:5523:2: RULE_INT + { + before(grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_0()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DOUBLE__Group__0__Impl" + + + // $ANTLR start "rule__DOUBLE__Group__1" + // InternalGeneratorDSL.g:5532:1: rule__DOUBLE__Group__1 : rule__DOUBLE__Group__1__Impl rule__DOUBLE__Group__2 ; + public final void rule__DOUBLE__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5536:1: ( rule__DOUBLE__Group__1__Impl rule__DOUBLE__Group__2 ) + // InternalGeneratorDSL.g:5537:2: rule__DOUBLE__Group__1__Impl rule__DOUBLE__Group__2 + { + pushFollow(FOLLOW_17); + rule__DOUBLE__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__DOUBLE__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DOUBLE__Group__1" + + + // $ANTLR start "rule__DOUBLE__Group__1__Impl" + // InternalGeneratorDSL.g:5544:1: rule__DOUBLE__Group__1__Impl : ( '.' ) ; + public final void rule__DOUBLE__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5548:1: ( ( '.' ) ) + // InternalGeneratorDSL.g:5549:1: ( '.' ) + { + // InternalGeneratorDSL.g:5549:1: ( '.' ) + // InternalGeneratorDSL.g:5550:2: '.' + { + before(grammarAccess.getDOUBLEAccess().getFullStopKeyword_1()); + match(input,58,FOLLOW_2); + after(grammarAccess.getDOUBLEAccess().getFullStopKeyword_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DOUBLE__Group__1__Impl" + + + // $ANTLR start "rule__DOUBLE__Group__2" + // InternalGeneratorDSL.g:5559:1: rule__DOUBLE__Group__2 : rule__DOUBLE__Group__2__Impl ; + public final void rule__DOUBLE__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5563:1: ( rule__DOUBLE__Group__2__Impl ) + // InternalGeneratorDSL.g:5564:2: rule__DOUBLE__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__DOUBLE__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DOUBLE__Group__2" + + + // $ANTLR start "rule__DOUBLE__Group__2__Impl" + // InternalGeneratorDSL.g:5570:1: rule__DOUBLE__Group__2__Impl : ( RULE_INT ) ; + public final void rule__DOUBLE__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5574:1: ( ( RULE_INT ) ) + // InternalGeneratorDSL.g:5575:1: ( RULE_INT ) + { + // InternalGeneratorDSL.g:5575:1: ( RULE_INT ) + // InternalGeneratorDSL.g:5576:2: RULE_INT + { + before(grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_2()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DOUBLE__Group__2__Impl" + + + // $ANTLR start "rule__ConfigurationRule__UsesAssignment_0" + // InternalGeneratorDSL.g:5586:1: rule__ConfigurationRule__UsesAssignment_0 : ( ruleUseRule ) ; + public final void rule__ConfigurationRule__UsesAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5590:1: ( ( ruleUseRule ) ) + // InternalGeneratorDSL.g:5591:2: ( ruleUseRule ) + { + // InternalGeneratorDSL.g:5591:2: ( ruleUseRule ) + // InternalGeneratorDSL.g:5592:3: ruleUseRule + { + before(grammarAccess.getConfigurationRuleAccess().getUsesUseRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleUseRule(); + + state._fsp--; + + after(grammarAccess.getConfigurationRuleAccess().getUsesUseRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__UsesAssignment_0" + + + // $ANTLR start "rule__ConfigurationRule__GeneratorsAssignment_1" + // InternalGeneratorDSL.g:5601:1: rule__ConfigurationRule__GeneratorsAssignment_1 : ( ruleGeneratorDefinitionRule ) ; + public final void rule__ConfigurationRule__GeneratorsAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5605:1: ( ( ruleGeneratorDefinitionRule ) ) + // InternalGeneratorDSL.g:5606:2: ( ruleGeneratorDefinitionRule ) + { + // InternalGeneratorDSL.g:5606:2: ( ruleGeneratorDefinitionRule ) + // InternalGeneratorDSL.g:5607:3: ruleGeneratorDefinitionRule + { + before(grammarAccess.getConfigurationRuleAccess().getGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleGeneratorDefinitionRule(); + + state._fsp--; + + after(grammarAccess.getConfigurationRuleAccess().getGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__GeneratorsAssignment_1" + + + // $ANTLR start "rule__ConfigurationRule__FunctionsAssignment_2" + // InternalGeneratorDSL.g:5616:1: rule__ConfigurationRule__FunctionsAssignment_2 : ( ruleParametrizedFunctionDefinitionRule ) ; + public final void rule__ConfigurationRule__FunctionsAssignment_2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5620:1: ( ( ruleParametrizedFunctionDefinitionRule ) ) + // InternalGeneratorDSL.g:5621:2: ( ruleParametrizedFunctionDefinitionRule ) + { + // InternalGeneratorDSL.g:5621:2: ( ruleParametrizedFunctionDefinitionRule ) + // InternalGeneratorDSL.g:5622:3: ruleParametrizedFunctionDefinitionRule + { + before(grammarAccess.getConfigurationRuleAccess().getFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0()); + pushFollow(FOLLOW_2); + ruleParametrizedFunctionDefinitionRule(); + + state._fsp--; + + after(grammarAccess.getConfigurationRuleAccess().getFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__FunctionsAssignment_2" + + + // $ANTLR start "rule__ConfigurationRule__StatementsAssignment_3" + // InternalGeneratorDSL.g:5631:1: rule__ConfigurationRule__StatementsAssignment_3 : ( ruleStatementRule ) ; + public final void rule__ConfigurationRule__StatementsAssignment_3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5635:1: ( ( ruleStatementRule ) ) + // InternalGeneratorDSL.g:5636:2: ( ruleStatementRule ) + { + // InternalGeneratorDSL.g:5636:2: ( ruleStatementRule ) + // InternalGeneratorDSL.g:5637:3: ruleStatementRule + { + before(grammarAccess.getConfigurationRuleAccess().getStatementsStatementRuleParserRuleCall_3_0()); + pushFollow(FOLLOW_2); + ruleStatementRule(); + + state._fsp--; + + after(grammarAccess.getConfigurationRuleAccess().getStatementsStatementRuleParserRuleCall_3_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConfigurationRule__StatementsAssignment_3" + + + // $ANTLR start "rule__UseRule__ImportURIAssignment_1" + // InternalGeneratorDSL.g:5646:1: rule__UseRule__ImportURIAssignment_1 : ( RULE_STRING ) ; + public final void rule__UseRule__ImportURIAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5650:1: ( ( RULE_STRING ) ) + // InternalGeneratorDSL.g:5651:2: ( RULE_STRING ) + { + // InternalGeneratorDSL.g:5651:2: ( RULE_STRING ) + // InternalGeneratorDSL.g:5652:3: RULE_STRING + { + before(grammarAccess.getUseRuleAccess().getImportURISTRINGTerminalRuleCall_1_0()); + match(input,RULE_STRING,FOLLOW_2); + after(grammarAccess.getUseRuleAccess().getImportURISTRINGTerminalRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UseRule__ImportURIAssignment_1" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__NameAssignment_1" + // InternalGeneratorDSL.g:5661:1: rule__ParametrizedFunctionDefinitionRule__NameAssignment_1 : ( ruleStringOrId ) ; + public final void rule__ParametrizedFunctionDefinitionRule__NameAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5665:1: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:5666:2: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:5666:2: ( ruleStringOrId ) + // InternalGeneratorDSL.g:5667:3: ruleStringOrId + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__NameAssignment_1" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3" + // InternalGeneratorDSL.g:5676:1: rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3 : ( ruleInstanceRule ) ; + public final void rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5680:1: ( ( ruleInstanceRule ) ) + // InternalGeneratorDSL.g:5681:2: ( ruleInstanceRule ) + { + // InternalGeneratorDSL.g:5681:2: ( ruleInstanceRule ) + // InternalGeneratorDSL.g:5682:3: ruleInstanceRule + { + before(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); + pushFollow(FOLLOW_2); + ruleInstanceRule(); + + state._fsp--; + + after(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionRule__DefinitionAssignment_3" + + + // $ANTLR start "rule__GeneratorDefinitionRule__NameAssignment_1" + // InternalGeneratorDSL.g:5691:1: rule__GeneratorDefinitionRule__NameAssignment_1 : ( ruleStringOrId ) ; + public final void rule__GeneratorDefinitionRule__NameAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5695:1: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:5696:2: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:5696:2: ( ruleStringOrId ) + // InternalGeneratorDSL.g:5697:3: ruleStringOrId + { + before(grammarAccess.getGeneratorDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getGeneratorDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__NameAssignment_1" + + + // $ANTLR start "rule__GeneratorDefinitionRule__DefinitionAssignment_3" + // InternalGeneratorDSL.g:5706:1: rule__GeneratorDefinitionRule__DefinitionAssignment_3 : ( ruleInstanceRule ) ; + public final void rule__GeneratorDefinitionRule__DefinitionAssignment_3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5710:1: ( ( ruleInstanceRule ) ) + // InternalGeneratorDSL.g:5711:2: ( ruleInstanceRule ) + { + // InternalGeneratorDSL.g:5711:2: ( ruleInstanceRule ) + // InternalGeneratorDSL.g:5712:3: ruleInstanceRule + { + before(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); + pushFollow(FOLLOW_2); + ruleInstanceRule(); + + state._fsp--; + + after(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionRule__DefinitionAssignment_3" + + + // $ANTLR start "rule__ForStatementRule__NameAssignment_1" + // InternalGeneratorDSL.g:5721:1: rule__ForStatementRule__NameAssignment_1 : ( RULE_ID ) ; + public final void rule__ForStatementRule__NameAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5725:1: ( ( RULE_ID ) ) + // InternalGeneratorDSL.g:5726:2: ( RULE_ID ) + { + // InternalGeneratorDSL.g:5726:2: ( RULE_ID ) + // InternalGeneratorDSL.g:5727:3: RULE_ID + { + before(grammarAccess.getForStatementRuleAccess().getNameIDTerminalRuleCall_1_0()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getForStatementRuleAccess().getNameIDTerminalRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__NameAssignment_1" + + + // $ANTLR start "rule__ForStatementRule__RangeAssignment_3" + // InternalGeneratorDSL.g:5736:1: rule__ForStatementRule__RangeAssignment_3 : ( ruleRangeRule ) ; + public final void rule__ForStatementRule__RangeAssignment_3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5740:1: ( ( ruleRangeRule ) ) + // InternalGeneratorDSL.g:5741:2: ( ruleRangeRule ) + { + // InternalGeneratorDSL.g:5741:2: ( ruleRangeRule ) + // InternalGeneratorDSL.g:5742:3: ruleRangeRule + { + before(grammarAccess.getForStatementRuleAccess().getRangeRangeRuleParserRuleCall_3_0()); + pushFollow(FOLLOW_2); + ruleRangeRule(); + + state._fsp--; + + after(grammarAccess.getForStatementRuleAccess().getRangeRangeRuleParserRuleCall_3_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__RangeAssignment_3" + + + // $ANTLR start "rule__ForStatementRule__StatementsAssignment_5" + // InternalGeneratorDSL.g:5751:1: rule__ForStatementRule__StatementsAssignment_5 : ( ruleStatementRule ) ; + public final void rule__ForStatementRule__StatementsAssignment_5() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5755:1: ( ( ruleStatementRule ) ) + // InternalGeneratorDSL.g:5756:2: ( ruleStatementRule ) + { + // InternalGeneratorDSL.g:5756:2: ( ruleStatementRule ) + // InternalGeneratorDSL.g:5757:3: ruleStatementRule + { + before(grammarAccess.getForStatementRuleAccess().getStatementsStatementRuleParserRuleCall_5_0()); + pushFollow(FOLLOW_2); + ruleStatementRule(); + + state._fsp--; + + after(grammarAccess.getForStatementRuleAccess().getStatementsStatementRuleParserRuleCall_5_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ForStatementRule__StatementsAssignment_5" + + + // $ANTLR start "rule__CounterRangeRule__StartAssignment_1" + // InternalGeneratorDSL.g:5766:1: rule__CounterRangeRule__StartAssignment_1 : ( RULE_INT ) ; + public final void rule__CounterRangeRule__StartAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5770:1: ( ( RULE_INT ) ) + // InternalGeneratorDSL.g:5771:2: ( RULE_INT ) + { + // InternalGeneratorDSL.g:5771:2: ( RULE_INT ) + // InternalGeneratorDSL.g:5772:3: RULE_INT + { + before(grammarAccess.getCounterRangeRuleAccess().getStartINTTerminalRuleCall_1_0()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getCounterRangeRuleAccess().getStartINTTerminalRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__StartAssignment_1" + + + // $ANTLR start "rule__CounterRangeRule__EndAssignment_3" + // InternalGeneratorDSL.g:5781:1: rule__CounterRangeRule__EndAssignment_3 : ( RULE_INT ) ; + public final void rule__CounterRangeRule__EndAssignment_3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5785:1: ( ( RULE_INT ) ) + // InternalGeneratorDSL.g:5786:2: ( RULE_INT ) + { + // InternalGeneratorDSL.g:5786:2: ( RULE_INT ) + // InternalGeneratorDSL.g:5787:3: RULE_INT + { + before(grammarAccess.getCounterRangeRuleAccess().getEndINTTerminalRuleCall_3_0()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getCounterRangeRuleAccess().getEndINTTerminalRuleCall_3_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CounterRangeRule__EndAssignment_3" + + + // $ANTLR start "rule__FunctionsRule__FunctionReferencesAssignment_2" + // InternalGeneratorDSL.g:5796:1: rule__FunctionsRule__FunctionReferencesAssignment_2 : ( ruleFunctionReferencesRule ) ; + public final void rule__FunctionsRule__FunctionReferencesAssignment_2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5800:1: ( ( ruleFunctionReferencesRule ) ) + // InternalGeneratorDSL.g:5801:2: ( ruleFunctionReferencesRule ) + { + // InternalGeneratorDSL.g:5801:2: ( ruleFunctionReferencesRule ) + // InternalGeneratorDSL.g:5802:3: ruleFunctionReferencesRule + { + before(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0()); + pushFollow(FOLLOW_2); + ruleFunctionReferencesRule(); + + state._fsp--; + + after(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionsRule__FunctionReferencesAssignment_2" + + + // $ANTLR start "rule__FunctionReferencesRule__FunctionsAssignment_1" + // InternalGeneratorDSL.g:5811:1: rule__FunctionReferencesRule__FunctionsAssignment_1 : ( ruleFunctionDefReferenceRule ) ; + public final void rule__FunctionReferencesRule__FunctionsAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5815:1: ( ( ruleFunctionDefReferenceRule ) ) + // InternalGeneratorDSL.g:5816:2: ( ruleFunctionDefReferenceRule ) + { + // InternalGeneratorDSL.g:5816:2: ( ruleFunctionDefReferenceRule ) + // InternalGeneratorDSL.g:5817:3: ruleFunctionDefReferenceRule + { + before(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleFunctionDefReferenceRule(); + + state._fsp--; + + after(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__FunctionsAssignment_1" + + + // $ANTLR start "rule__FunctionReferencesRule__FunctionsAssignment_2_1" + // InternalGeneratorDSL.g:5826:1: rule__FunctionReferencesRule__FunctionsAssignment_2_1 : ( ruleFunctionDefReferenceRule ) ; + public final void rule__FunctionReferencesRule__FunctionsAssignment_2_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5830:1: ( ( ruleFunctionDefReferenceRule ) ) + // InternalGeneratorDSL.g:5831:2: ( ruleFunctionDefReferenceRule ) + { + // InternalGeneratorDSL.g:5831:2: ( ruleFunctionDefReferenceRule ) + // InternalGeneratorDSL.g:5832:3: ruleFunctionDefReferenceRule + { + before(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0()); + pushFollow(FOLLOW_2); + ruleFunctionDefReferenceRule(); + + state._fsp--; + + after(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionReferencesRule__FunctionsAssignment_2_1" + + + // $ANTLR start "rule__GeneratorsRule__GeneratorReferencesAssignment_2" + // InternalGeneratorDSL.g:5841:1: rule__GeneratorsRule__GeneratorReferencesAssignment_2 : ( ruleGeneratorReferencesRule ) ; + public final void rule__GeneratorsRule__GeneratorReferencesAssignment_2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5845:1: ( ( ruleGeneratorReferencesRule ) ) + // InternalGeneratorDSL.g:5846:2: ( ruleGeneratorReferencesRule ) + { + // InternalGeneratorDSL.g:5846:2: ( ruleGeneratorReferencesRule ) + // InternalGeneratorDSL.g:5847:3: ruleGeneratorReferencesRule + { + before(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0()); + pushFollow(FOLLOW_2); + ruleGeneratorReferencesRule(); + + state._fsp--; + + after(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorsRule__GeneratorReferencesAssignment_2" + + + // $ANTLR start "rule__GeneratorReferencesRule__GeneratorsAssignment_1" + // InternalGeneratorDSL.g:5856:1: rule__GeneratorReferencesRule__GeneratorsAssignment_1 : ( ( ruleStringOrId ) ) ; + public final void rule__GeneratorReferencesRule__GeneratorsAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5860:1: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:5861:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:5861:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:5862:3: ( ruleStringOrId ) + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_1_0()); + // InternalGeneratorDSL.g:5863:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:5864:4: ruleStringOrId + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_1_0_1()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_1_0_1()); + + } + + after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__GeneratorsAssignment_1" + + + // $ANTLR start "rule__GeneratorReferencesRule__GeneratorsAssignment_2_1" + // InternalGeneratorDSL.g:5875:1: rule__GeneratorReferencesRule__GeneratorsAssignment_2_1 : ( ( ruleStringOrId ) ) ; + public final void rule__GeneratorReferencesRule__GeneratorsAssignment_2_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5879:1: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:5880:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:5880:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:5881:3: ( ruleStringOrId ) + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_2_1_0()); + // InternalGeneratorDSL.g:5882:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:5883:4: ruleStringOrId + { + before(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_2_1_0_1()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_2_1_0_1()); + + } + + after(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_2_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorReferencesRule__GeneratorsAssignment_2_1" + + + // $ANTLR start "rule__ApplyStatementRule__FileAssignment_1" + // InternalGeneratorDSL.g:5894:1: rule__ApplyStatementRule__FileAssignment_1 : ( RULE_STRING ) ; + public final void rule__ApplyStatementRule__FileAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5898:1: ( ( RULE_STRING ) ) + // InternalGeneratorDSL.g:5899:2: ( RULE_STRING ) + { + // InternalGeneratorDSL.g:5899:2: ( RULE_STRING ) + // InternalGeneratorDSL.g:5900:3: RULE_STRING + { + before(grammarAccess.getApplyStatementRuleAccess().getFileSTRINGTerminalRuleCall_1_0()); + match(input,RULE_STRING,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getFileSTRINGTerminalRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__FileAssignment_1" + + + // $ANTLR start "rule__ApplyStatementRule__CountAssignment_3" + // InternalGeneratorDSL.g:5909:1: rule__ApplyStatementRule__CountAssignment_3 : ( RULE_INT ) ; + public final void rule__ApplyStatementRule__CountAssignment_3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5913:1: ( ( RULE_INT ) ) + // InternalGeneratorDSL.g:5914:2: ( RULE_INT ) + { + // InternalGeneratorDSL.g:5914:2: ( RULE_INT ) + // InternalGeneratorDSL.g:5915:3: RULE_INT + { + before(grammarAccess.getApplyStatementRuleAccess().getCountINTTerminalRuleCall_3_0()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getApplyStatementRuleAccess().getCountINTTerminalRuleCall_3_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__CountAssignment_3" + + + // $ANTLR start "rule__ApplyStatementRule__FunctionAssignment_7" + // InternalGeneratorDSL.g:5924:1: rule__ApplyStatementRule__FunctionAssignment_7 : ( ruleFunctionReferenceRule ) ; + public final void rule__ApplyStatementRule__FunctionAssignment_7() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5928:1: ( ( ruleFunctionReferenceRule ) ) + // InternalGeneratorDSL.g:5929:2: ( ruleFunctionReferenceRule ) + { + // InternalGeneratorDSL.g:5929:2: ( ruleFunctionReferenceRule ) + // InternalGeneratorDSL.g:5930:3: ruleFunctionReferenceRule + { + before(grammarAccess.getApplyStatementRuleAccess().getFunctionFunctionReferenceRuleParserRuleCall_7_0()); + pushFollow(FOLLOW_2); + ruleFunctionReferenceRule(); + + state._fsp--; + + after(grammarAccess.getApplyStatementRuleAccess().getFunctionFunctionReferenceRuleParserRuleCall_7_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__FunctionAssignment_7" + + + // $ANTLR start "rule__ApplyStatementRule__GeneratorAssignment_9" + // InternalGeneratorDSL.g:5939:1: rule__ApplyStatementRule__GeneratorAssignment_9 : ( ruleGeneratorReferenceRule ) ; + public final void rule__ApplyStatementRule__GeneratorAssignment_9() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5943:1: ( ( ruleGeneratorReferenceRule ) ) + // InternalGeneratorDSL.g:5944:2: ( ruleGeneratorReferenceRule ) + { + // InternalGeneratorDSL.g:5944:2: ( ruleGeneratorReferenceRule ) + // InternalGeneratorDSL.g:5945:3: ruleGeneratorReferenceRule + { + before(grammarAccess.getApplyStatementRuleAccess().getGeneratorGeneratorReferenceRuleParserRuleCall_9_0()); + pushFollow(FOLLOW_2); + ruleGeneratorReferenceRule(); + + state._fsp--; + + after(grammarAccess.getApplyStatementRuleAccess().getGeneratorGeneratorReferenceRuleParserRuleCall_9_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ApplyStatementRule__GeneratorAssignment_9" + + + // $ANTLR start "rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1" + // InternalGeneratorDSL.g:5954:1: rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1 : ( ( ruleStringOrId ) ) ; + public final void rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5958:1: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:5959:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:5959:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:5960:3: ( ruleStringOrId ) + { + before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionCrossReference_1_0()); + // InternalGeneratorDSL.g:5961:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:5962:4: ruleStringOrId + { + before(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionStringOrIdParserRuleCall_1_0_1()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionStringOrIdParserRuleCall_1_0_1()); + + } + + after(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionCrossReference_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__GeneratorDefinitionReferenceRule__DefinitionAssignment_1" + + + // $ANTLR start "rule__LoopVariableReference__DefinitionAssignment_1" + // InternalGeneratorDSL.g:5973:1: rule__LoopVariableReference__DefinitionAssignment_1 : ( ( RULE_ID ) ) ; + public final void rule__LoopVariableReference__DefinitionAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5977:1: ( ( ( RULE_ID ) ) ) + // InternalGeneratorDSL.g:5978:2: ( ( RULE_ID ) ) + { + // InternalGeneratorDSL.g:5978:2: ( ( RULE_ID ) ) + // InternalGeneratorDSL.g:5979:3: ( RULE_ID ) + { + before(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementCrossReference_1_0()); + // InternalGeneratorDSL.g:5980:3: ( RULE_ID ) + // InternalGeneratorDSL.g:5981:4: RULE_ID + { + before(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementIDTerminalRuleCall_1_0_1()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementIDTerminalRuleCall_1_0_1()); + + } + + after(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementCrossReference_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__LoopVariableReference__DefinitionAssignment_1" + + + // $ANTLR start "rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2" + // InternalGeneratorDSL.g:5992:1: rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2 : ( ( ruleStringOrId ) ) ; + public final void rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:5996:1: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:5997:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:5997:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:5998:3: ( ruleStringOrId ) + { + before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionCrossReference_2_0()); + // InternalGeneratorDSL.g:5999:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:6000:4: ruleStringOrId + { + before(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionStringOrIdParserRuleCall_2_0_1()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionStringOrIdParserRuleCall_2_0_1()); + + } + + after(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionCrossReference_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinitionReferenceRule__DefinitionAssignment_2" + + + // $ANTLR start "rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2" + // InternalGeneratorDSL.g:6011:1: rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2 : ( ( ruleStringOrId ) ) ; + public final void rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6015:1: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:6016:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:6016:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:6017:3: ( ruleStringOrId ) + { + before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceCrossReference_2_0()); + // InternalGeneratorDSL.g:6018:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:6019:4: ruleStringOrId + { + before(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceStringOrIdParserRuleCall_2_0_1()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceStringOrIdParserRuleCall_2_0_1()); + + } + + after(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceCrossReference_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParametrizedFunctionDefinitionReferenceRule__DefinitionAssignment_2" + + + // $ANTLR start "rule__InstanceRule__NameAssignment_0" + // InternalGeneratorDSL.g:6030:1: rule__InstanceRule__NameAssignment_0 : ( ( ruleStringOrId ) ) ; + public final void rule__InstanceRule__NameAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6034:1: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:6035:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:6035:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:6036:3: ( ruleStringOrId ) + { + before(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionCrossReference_0_0()); + // InternalGeneratorDSL.g:6037:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:6038:4: ruleStringOrId + { + before(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionStringOrIdParserRuleCall_0_0_1()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionStringOrIdParserRuleCall_0_0_1()); + + } + + after(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionCrossReference_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__NameAssignment_0" + + + // $ANTLR start "rule__InstanceRule__AttributesAssignment_1_1" + // InternalGeneratorDSL.g:6049:1: rule__InstanceRule__AttributesAssignment_1_1 : ( ruleAttributeRule ) ; + public final void rule__InstanceRule__AttributesAssignment_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6053:1: ( ( ruleAttributeRule ) ) + // InternalGeneratorDSL.g:6054:2: ( ruleAttributeRule ) + { + // InternalGeneratorDSL.g:6054:2: ( ruleAttributeRule ) + // InternalGeneratorDSL.g:6055:3: ruleAttributeRule + { + before(grammarAccess.getInstanceRuleAccess().getAttributesAttributeRuleParserRuleCall_1_1_0()); + pushFollow(FOLLOW_2); + ruleAttributeRule(); + + state._fsp--; + + after(grammarAccess.getInstanceRuleAccess().getAttributesAttributeRuleParserRuleCall_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__InstanceRule__AttributesAssignment_1_1" + + + // $ANTLR start "rule__AttributeRule__NameAssignment_0" + // InternalGeneratorDSL.g:6064:1: rule__AttributeRule__NameAssignment_0 : ( ruleNameOrMiscRule ) ; + public final void rule__AttributeRule__NameAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6068:1: ( ( ruleNameOrMiscRule ) ) + // InternalGeneratorDSL.g:6069:2: ( ruleNameOrMiscRule ) + { + // InternalGeneratorDSL.g:6069:2: ( ruleNameOrMiscRule ) + // InternalGeneratorDSL.g:6070:3: ruleNameOrMiscRule + { + before(grammarAccess.getAttributeRuleAccess().getNameNameOrMiscRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleNameOrMiscRule(); + + state._fsp--; + + after(grammarAccess.getAttributeRuleAccess().getNameNameOrMiscRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__NameAssignment_0" + + + // $ANTLR start "rule__AttributeRule__ValueAssignment_2" + // InternalGeneratorDSL.g:6079:1: rule__AttributeRule__ValueAssignment_2 : ( ruleValueRule ) ; + public final void rule__AttributeRule__ValueAssignment_2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6083:1: ( ( ruleValueRule ) ) + // InternalGeneratorDSL.g:6084:2: ( ruleValueRule ) + { + // InternalGeneratorDSL.g:6084:2: ( ruleValueRule ) + // InternalGeneratorDSL.g:6085:3: ruleValueRule + { + before(grammarAccess.getAttributeRuleAccess().getValueValueRuleParserRuleCall_2_0()); + pushFollow(FOLLOW_2); + ruleValueRule(); + + state._fsp--; + + after(grammarAccess.getAttributeRuleAccess().getValueValueRuleParserRuleCall_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AttributeRule__ValueAssignment_2" + + + // $ANTLR start "rule__NameRule__NameAssignment" + // InternalGeneratorDSL.g:6094:1: rule__NameRule__NameAssignment : ( ( ruleStringOrId ) ) ; + public final void rule__NameRule__NameAssignment() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6098:1: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:6099:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:6099:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:6100:3: ( ruleStringOrId ) + { + before(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionCrossReference_0()); + // InternalGeneratorDSL.g:6101:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:6102:4: ruleStringOrId + { + before(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionStringOrIdParserRuleCall_0_1()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionStringOrIdParserRuleCall_0_1()); + + } + + after(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionCrossReference_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NameRule__NameAssignment" + + + // $ANTLR start "rule__MiscRule__NameAssignment" + // InternalGeneratorDSL.g:6113:1: rule__MiscRule__NameAssignment : ( RULE_STRING ) ; + public final void rule__MiscRule__NameAssignment() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6117:1: ( ( RULE_STRING ) ) + // InternalGeneratorDSL.g:6118:2: ( RULE_STRING ) + { + // InternalGeneratorDSL.g:6118:2: ( RULE_STRING ) + // InternalGeneratorDSL.g:6119:3: RULE_STRING + { + before(grammarAccess.getMiscRuleAccess().getNameSTRINGTerminalRuleCall_0()); + match(input,RULE_STRING,FOLLOW_2); + after(grammarAccess.getMiscRuleAccess().getNameSTRINGTerminalRuleCall_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MiscRule__NameAssignment" + + + // $ANTLR start "rule__ArrayRule__ValuesAssignment_2_0" + // InternalGeneratorDSL.g:6128:1: rule__ArrayRule__ValuesAssignment_2_0 : ( ruleValueRule ) ; + public final void rule__ArrayRule__ValuesAssignment_2_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6132:1: ( ( ruleValueRule ) ) + // InternalGeneratorDSL.g:6133:2: ( ruleValueRule ) + { + // InternalGeneratorDSL.g:6133:2: ( ruleValueRule ) + // InternalGeneratorDSL.g:6134:3: ruleValueRule + { + before(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_0_0()); + pushFollow(FOLLOW_2); + ruleValueRule(); + + state._fsp--; + + after(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__ValuesAssignment_2_0" + + + // $ANTLR start "rule__ArrayRule__ValuesAssignment_2_1_1" + // InternalGeneratorDSL.g:6143:1: rule__ArrayRule__ValuesAssignment_2_1_1 : ( ruleValueRule ) ; + public final void rule__ArrayRule__ValuesAssignment_2_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6147:1: ( ( ruleValueRule ) ) + // InternalGeneratorDSL.g:6148:2: ( ruleValueRule ) + { + // InternalGeneratorDSL.g:6148:2: ( ruleValueRule ) + // InternalGeneratorDSL.g:6149:3: ruleValueRule + { + before(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_1_1_0()); + pushFollow(FOLLOW_2); + ruleValueRule(); + + state._fsp--; + + after(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArrayRule__ValuesAssignment_2_1_1" + + + // $ANTLR start "rule__LiteralValueRule__LiteralAssignment" + // InternalGeneratorDSL.g:6158:1: rule__LiteralValueRule__LiteralAssignment : ( ruleLiteralRule ) ; + public final void rule__LiteralValueRule__LiteralAssignment() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6162:1: ( ( ruleLiteralRule ) ) + // InternalGeneratorDSL.g:6163:2: ( ruleLiteralRule ) + { + // InternalGeneratorDSL.g:6163:2: ( ruleLiteralRule ) + // InternalGeneratorDSL.g:6164:3: ruleLiteralRule + { + before(grammarAccess.getLiteralValueRuleAccess().getLiteralLiteralRuleParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleLiteralRule(); + + state._fsp--; + + after(grammarAccess.getLiteralValueRuleAccess().getLiteralLiteralRuleParserRuleCall_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__LiteralValueRule__LiteralAssignment" + + + // $ANTLR start "rule__DataReferenceRule__DefinitionAssignment_2" + // InternalGeneratorDSL.g:6173:1: rule__DataReferenceRule__DefinitionAssignment_2 : ( ( ruleStringOrId ) ) ; + public final void rule__DataReferenceRule__DefinitionAssignment_2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6177:1: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:6178:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:6178:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:6179:3: ( ruleStringOrId ) + { + before(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionCrossReference_2_0()); + // InternalGeneratorDSL.g:6180:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:6181:4: ruleStringOrId + { + before(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionStringOrIdParserRuleCall_2_0_1()); + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + after(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionStringOrIdParserRuleCall_2_0_1()); + + } + + after(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionCrossReference_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DataReferenceRule__DefinitionAssignment_2" + + + // $ANTLR start "rule__OrExpressionRule__SubExpressionsAssignment_0" + // InternalGeneratorDSL.g:6192:1: rule__OrExpressionRule__SubExpressionsAssignment_0 : ( ruleXorExpressionRule ) ; + public final void rule__OrExpressionRule__SubExpressionsAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6196:1: ( ( ruleXorExpressionRule ) ) + // InternalGeneratorDSL.g:6197:2: ( ruleXorExpressionRule ) + { + // InternalGeneratorDSL.g:6197:2: ( ruleXorExpressionRule ) + // InternalGeneratorDSL.g:6198:3: ruleXorExpressionRule + { + before(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleXorExpressionRule(); + + state._fsp--; + + after(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__SubExpressionsAssignment_0" + + + // $ANTLR start "rule__OrExpressionRule__SubExpressionsAssignment_1_1" + // InternalGeneratorDSL.g:6207:1: rule__OrExpressionRule__SubExpressionsAssignment_1_1 : ( ruleXorExpressionRule ) ; + public final void rule__OrExpressionRule__SubExpressionsAssignment_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6211:1: ( ( ruleXorExpressionRule ) ) + // InternalGeneratorDSL.g:6212:2: ( ruleXorExpressionRule ) + { + // InternalGeneratorDSL.g:6212:2: ( ruleXorExpressionRule ) + // InternalGeneratorDSL.g:6213:3: ruleXorExpressionRule + { + before(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_1_1_0()); + pushFollow(FOLLOW_2); + ruleXorExpressionRule(); + + state._fsp--; + + after(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__OrExpressionRule__SubExpressionsAssignment_1_1" + + + // $ANTLR start "rule__XorExpressionRule__SubExpressionsAssignment_0" + // InternalGeneratorDSL.g:6222:1: rule__XorExpressionRule__SubExpressionsAssignment_0 : ( ruleAndExpressionRule ) ; + public final void rule__XorExpressionRule__SubExpressionsAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6226:1: ( ( ruleAndExpressionRule ) ) + // InternalGeneratorDSL.g:6227:2: ( ruleAndExpressionRule ) + { + // InternalGeneratorDSL.g:6227:2: ( ruleAndExpressionRule ) + // InternalGeneratorDSL.g:6228:3: ruleAndExpressionRule + { + before(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleAndExpressionRule(); + + state._fsp--; + + after(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__SubExpressionsAssignment_0" + + + // $ANTLR start "rule__XorExpressionRule__SubExpressionsAssignment_1_1" + // InternalGeneratorDSL.g:6237:1: rule__XorExpressionRule__SubExpressionsAssignment_1_1 : ( ruleAndExpressionRule ) ; + public final void rule__XorExpressionRule__SubExpressionsAssignment_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6241:1: ( ( ruleAndExpressionRule ) ) + // InternalGeneratorDSL.g:6242:2: ( ruleAndExpressionRule ) + { + // InternalGeneratorDSL.g:6242:2: ( ruleAndExpressionRule ) + // InternalGeneratorDSL.g:6243:3: ruleAndExpressionRule + { + before(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_1_1_0()); + pushFollow(FOLLOW_2); + ruleAndExpressionRule(); + + state._fsp--; + + after(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__XorExpressionRule__SubExpressionsAssignment_1_1" + + + // $ANTLR start "rule__AndExpressionRule__SubExpressionsAssignment_0" + // InternalGeneratorDSL.g:6252:1: rule__AndExpressionRule__SubExpressionsAssignment_0 : ( ruleNotExpressionRule ) ; + public final void rule__AndExpressionRule__SubExpressionsAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6256:1: ( ( ruleNotExpressionRule ) ) + // InternalGeneratorDSL.g:6257:2: ( ruleNotExpressionRule ) + { + // InternalGeneratorDSL.g:6257:2: ( ruleNotExpressionRule ) + // InternalGeneratorDSL.g:6258:3: ruleNotExpressionRule + { + before(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleNotExpressionRule(); + + state._fsp--; + + after(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__SubExpressionsAssignment_0" + + + // $ANTLR start "rule__AndExpressionRule__SubExpressionsAssignment_1_1" + // InternalGeneratorDSL.g:6267:1: rule__AndExpressionRule__SubExpressionsAssignment_1_1 : ( ruleNotExpressionRule ) ; + public final void rule__AndExpressionRule__SubExpressionsAssignment_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6271:1: ( ( ruleNotExpressionRule ) ) + // InternalGeneratorDSL.g:6272:2: ( ruleNotExpressionRule ) + { + // InternalGeneratorDSL.g:6272:2: ( ruleNotExpressionRule ) + // InternalGeneratorDSL.g:6273:3: ruleNotExpressionRule + { + before(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_1_1_0()); + pushFollow(FOLLOW_2); + ruleNotExpressionRule(); + + state._fsp--; + + after(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AndExpressionRule__SubExpressionsAssignment_1_1" + + + // $ANTLR start "rule__NotExpressionRule__NegatedAssignment_0" + // InternalGeneratorDSL.g:6282:1: rule__NotExpressionRule__NegatedAssignment_0 : ( ( '!' ) ) ; + public final void rule__NotExpressionRule__NegatedAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6286:1: ( ( ( '!' ) ) ) + // InternalGeneratorDSL.g:6287:2: ( ( '!' ) ) + { + // InternalGeneratorDSL.g:6287:2: ( ( '!' ) ) + // InternalGeneratorDSL.g:6288:3: ( '!' ) + { + before(grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); + // InternalGeneratorDSL.g:6289:3: ( '!' ) + // InternalGeneratorDSL.g:6290:4: '!' + { + before(grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); + match(input,59,FOLLOW_2); + after(grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); + + } + + after(grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NotExpressionRule__NegatedAssignment_0" + + + // $ANTLR start "rule__NotExpressionRule__OperandAssignment_1" + // InternalGeneratorDSL.g:6301:1: rule__NotExpressionRule__OperandAssignment_1 : ( ruleComparisonExpressionRule ) ; + public final void rule__NotExpressionRule__OperandAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6305:1: ( ( ruleComparisonExpressionRule ) ) + // InternalGeneratorDSL.g:6306:2: ( ruleComparisonExpressionRule ) + { + // InternalGeneratorDSL.g:6306:2: ( ruleComparisonExpressionRule ) + // InternalGeneratorDSL.g:6307:3: ruleComparisonExpressionRule + { + before(grammarAccess.getNotExpressionRuleAccess().getOperandComparisonExpressionRuleParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleComparisonExpressionRule(); + + state._fsp--; + + after(grammarAccess.getNotExpressionRuleAccess().getOperandComparisonExpressionRuleParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NotExpressionRule__OperandAssignment_1" + + + // $ANTLR start "rule__ComparisonExpressionRule__LeftOperandAssignment_0" + // InternalGeneratorDSL.g:6316:1: rule__ComparisonExpressionRule__LeftOperandAssignment_0 : ( ruleAddOrSubtractExpressionRule ) ; + public final void rule__ComparisonExpressionRule__LeftOperandAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6320:1: ( ( ruleAddOrSubtractExpressionRule ) ) + // InternalGeneratorDSL.g:6321:2: ( ruleAddOrSubtractExpressionRule ) + { + // InternalGeneratorDSL.g:6321:2: ( ruleAddOrSubtractExpressionRule ) + // InternalGeneratorDSL.g:6322:3: ruleAddOrSubtractExpressionRule + { + before(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAddOrSubtractExpressionRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleAddOrSubtractExpressionRule(); + + state._fsp--; + + after(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAddOrSubtractExpressionRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ComparisonExpressionRule__LeftOperandAssignment_0" + + + // $ANTLR start "rule__ComparisonExpressionRule__ComparisonAssignment_1" + // InternalGeneratorDSL.g:6331:1: rule__ComparisonExpressionRule__ComparisonAssignment_1 : ( rulePartialComparisonExpressionRule ) ; + public final void rule__ComparisonExpressionRule__ComparisonAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6335:1: ( ( rulePartialComparisonExpressionRule ) ) + // InternalGeneratorDSL.g:6336:2: ( rulePartialComparisonExpressionRule ) + { + // InternalGeneratorDSL.g:6336:2: ( rulePartialComparisonExpressionRule ) + // InternalGeneratorDSL.g:6337:3: rulePartialComparisonExpressionRule + { + before(grammarAccess.getComparisonExpressionRuleAccess().getComparisonPartialComparisonExpressionRuleParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + rulePartialComparisonExpressionRule(); + + state._fsp--; + + after(grammarAccess.getComparisonExpressionRuleAccess().getComparisonPartialComparisonExpressionRuleParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ComparisonExpressionRule__ComparisonAssignment_1" + + + // $ANTLR start "rule__PartialComparisonExpressionRule__OperatorAssignment_0" + // InternalGeneratorDSL.g:6346:1: rule__PartialComparisonExpressionRule__OperatorAssignment_0 : ( ruleComparisonOperatorRule ) ; + public final void rule__PartialComparisonExpressionRule__OperatorAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6350:1: ( ( ruleComparisonOperatorRule ) ) + // InternalGeneratorDSL.g:6351:2: ( ruleComparisonOperatorRule ) + { + // InternalGeneratorDSL.g:6351:2: ( ruleComparisonOperatorRule ) + // InternalGeneratorDSL.g:6352:3: ruleComparisonOperatorRule + { + before(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorComparisonOperatorRuleEnumRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleComparisonOperatorRule(); + + state._fsp--; + + after(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorComparisonOperatorRuleEnumRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PartialComparisonExpressionRule__OperatorAssignment_0" + + + // $ANTLR start "rule__PartialComparisonExpressionRule__SubExpressionAssignment_1" + // InternalGeneratorDSL.g:6361:1: rule__PartialComparisonExpressionRule__SubExpressionAssignment_1 : ( ruleAddOrSubtractExpressionRule ) ; + public final void rule__PartialComparisonExpressionRule__SubExpressionAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6365:1: ( ( ruleAddOrSubtractExpressionRule ) ) + // InternalGeneratorDSL.g:6366:2: ( ruleAddOrSubtractExpressionRule ) + { + // InternalGeneratorDSL.g:6366:2: ( ruleAddOrSubtractExpressionRule ) + // InternalGeneratorDSL.g:6367:3: ruleAddOrSubtractExpressionRule + { + before(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAddOrSubtractExpressionRuleParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleAddOrSubtractExpressionRule(); + + state._fsp--; + + after(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAddOrSubtractExpressionRuleParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PartialComparisonExpressionRule__SubExpressionAssignment_1" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0" + // InternalGeneratorDSL.g:6376:1: rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0 : ( ruleMultiplyDivideModuloExpressionRule ) ; + public final void rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6380:1: ( ( ruleMultiplyDivideModuloExpressionRule ) ) + // InternalGeneratorDSL.g:6381:2: ( ruleMultiplyDivideModuloExpressionRule ) + { + // InternalGeneratorDSL.g:6381:2: ( ruleMultiplyDivideModuloExpressionRule ) + // InternalGeneratorDSL.g:6382:3: ruleMultiplyDivideModuloExpressionRule + { + before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandMultiplyDivideModuloExpressionRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleMultiplyDivideModuloExpressionRule(); + + state._fsp--; + + after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandMultiplyDivideModuloExpressionRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__LeftOperandAssignment_0" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0" + // InternalGeneratorDSL.g:6391:1: rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0 : ( ruleAddOrSubtractOperatorRule ) ; + public final void rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6395:1: ( ( ruleAddOrSubtractOperatorRule ) ) + // InternalGeneratorDSL.g:6396:2: ( ruleAddOrSubtractOperatorRule ) + { + // InternalGeneratorDSL.g:6396:2: ( ruleAddOrSubtractOperatorRule ) + // InternalGeneratorDSL.g:6397:3: ruleAddOrSubtractOperatorRule + { + before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_1_0_0()); + pushFollow(FOLLOW_2); + ruleAddOrSubtractOperatorRule(); + + state._fsp--; + + after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_1_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__OperatorsAssignment_1_0" + + + // $ANTLR start "rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1" + // InternalGeneratorDSL.g:6406:1: rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1 : ( ruleMultiplyDivideModuloExpressionRule ) ; + public final void rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6410:1: ( ( ruleMultiplyDivideModuloExpressionRule ) ) + // InternalGeneratorDSL.g:6411:2: ( ruleMultiplyDivideModuloExpressionRule ) + { + // InternalGeneratorDSL.g:6411:2: ( ruleMultiplyDivideModuloExpressionRule ) + // InternalGeneratorDSL.g:6412:3: ruleMultiplyDivideModuloExpressionRule + { + before(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsMultiplyDivideModuloExpressionRuleParserRuleCall_1_1_0()); + pushFollow(FOLLOW_2); + ruleMultiplyDivideModuloExpressionRule(); + + state._fsp--; + + after(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsMultiplyDivideModuloExpressionRuleParserRuleCall_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AddOrSubtractExpressionRule__OperandsAssignment_1_1" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0" + // InternalGeneratorDSL.g:6421:1: rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0 : ( rulePowerOfExpressionRule ) ; + public final void rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6425:1: ( ( rulePowerOfExpressionRule ) ) + // InternalGeneratorDSL.g:6426:2: ( rulePowerOfExpressionRule ) + { + // InternalGeneratorDSL.g:6426:2: ( rulePowerOfExpressionRule ) + // InternalGeneratorDSL.g:6427:3: rulePowerOfExpressionRule + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandPowerOfExpressionRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + rulePowerOfExpressionRule(); + + state._fsp--; + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandPowerOfExpressionRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__LeftOperandAssignment_0" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0" + // InternalGeneratorDSL.g:6436:1: rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0 : ( ruleMultiplyDivideModuloOperatorRule ) ; + public final void rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6440:1: ( ( ruleMultiplyDivideModuloOperatorRule ) ) + // InternalGeneratorDSL.g:6441:2: ( ruleMultiplyDivideModuloOperatorRule ) + { + // InternalGeneratorDSL.g:6441:2: ( ruleMultiplyDivideModuloOperatorRule ) + // InternalGeneratorDSL.g:6442:3: ruleMultiplyDivideModuloOperatorRule + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsMultiplyDivideModuloOperatorRuleEnumRuleCall_1_0_0()); + pushFollow(FOLLOW_2); + ruleMultiplyDivideModuloOperatorRule(); + + state._fsp--; + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsMultiplyDivideModuloOperatorRuleEnumRuleCall_1_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__OperatorsAssignment_1_0" + + + // $ANTLR start "rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1" + // InternalGeneratorDSL.g:6451:1: rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1 : ( rulePowerOfExpressionRule ) ; + public final void rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6455:1: ( ( rulePowerOfExpressionRule ) ) + // InternalGeneratorDSL.g:6456:2: ( rulePowerOfExpressionRule ) + { + // InternalGeneratorDSL.g:6456:2: ( rulePowerOfExpressionRule ) + // InternalGeneratorDSL.g:6457:3: rulePowerOfExpressionRule + { + before(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsPowerOfExpressionRuleParserRuleCall_1_1_0()); + pushFollow(FOLLOW_2); + rulePowerOfExpressionRule(); + + state._fsp--; + + after(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsPowerOfExpressionRuleParserRuleCall_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__MultiplyDivideModuloExpressionRule__OperandsAssignment_1_1" + + + // $ANTLR start "rule__PowerOfExpressionRule__LeftOperandAssignment_0" + // InternalGeneratorDSL.g:6466:1: rule__PowerOfExpressionRule__LeftOperandAssignment_0 : ( ruleUnaryAddOrSubtractExpressionRule ) ; + public final void rule__PowerOfExpressionRule__LeftOperandAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6470:1: ( ( ruleUnaryAddOrSubtractExpressionRule ) ) + // InternalGeneratorDSL.g:6471:2: ( ruleUnaryAddOrSubtractExpressionRule ) + { + // InternalGeneratorDSL.g:6471:2: ( ruleUnaryAddOrSubtractExpressionRule ) + // InternalGeneratorDSL.g:6472:3: ruleUnaryAddOrSubtractExpressionRule + { + before(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandUnaryAddOrSubtractExpressionRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleUnaryAddOrSubtractExpressionRule(); + + state._fsp--; + + after(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandUnaryAddOrSubtractExpressionRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__LeftOperandAssignment_0" + + + // $ANTLR start "rule__PowerOfExpressionRule__RightOperandAssignment_1_1" + // InternalGeneratorDSL.g:6481:1: rule__PowerOfExpressionRule__RightOperandAssignment_1_1 : ( rulePowerOfExpressionRule ) ; + public final void rule__PowerOfExpressionRule__RightOperandAssignment_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6485:1: ( ( rulePowerOfExpressionRule ) ) + // InternalGeneratorDSL.g:6486:2: ( rulePowerOfExpressionRule ) + { + // InternalGeneratorDSL.g:6486:2: ( rulePowerOfExpressionRule ) + // InternalGeneratorDSL.g:6487:3: rulePowerOfExpressionRule + { + before(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandPowerOfExpressionRuleParserRuleCall_1_1_0()); + pushFollow(FOLLOW_2); + rulePowerOfExpressionRule(); + + state._fsp--; + + after(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandPowerOfExpressionRuleParserRuleCall_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PowerOfExpressionRule__RightOperandAssignment_1_1" + + + // $ANTLR start "rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0" + // InternalGeneratorDSL.g:6496:1: rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0 : ( ruleAddOrSubtractOperatorRule ) ; + public final void rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6500:1: ( ( ruleAddOrSubtractOperatorRule ) ) + // InternalGeneratorDSL.g:6501:2: ( ruleAddOrSubtractOperatorRule ) + { + // InternalGeneratorDSL.g:6501:2: ( ruleAddOrSubtractOperatorRule ) + // InternalGeneratorDSL.g:6502:3: ruleAddOrSubtractOperatorRule + { + before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleAddOrSubtractOperatorRule(); + + state._fsp--; + + after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnaryAddOrSubtractExpressionRule__OperatorsAssignment_0" + + + // $ANTLR start "rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1" + // InternalGeneratorDSL.g:6511:1: rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1 : ( ruleLiteralOrReferenceRule ) ; + public final void rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6515:1: ( ( ruleLiteralOrReferenceRule ) ) + // InternalGeneratorDSL.g:6516:2: ( ruleLiteralOrReferenceRule ) + { + // InternalGeneratorDSL.g:6516:2: ( ruleLiteralOrReferenceRule ) + // InternalGeneratorDSL.g:6517:3: ruleLiteralOrReferenceRule + { + before(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionLiteralOrReferenceRuleParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleLiteralOrReferenceRule(); + + state._fsp--; + + after(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionLiteralOrReferenceRuleParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnaryAddOrSubtractExpressionRule__SubExpressionAssignment_1" + + + // $ANTLR start "rule__ParanthesesRule__SubExpressionAssignment_1" + // InternalGeneratorDSL.g:6526:1: rule__ParanthesesRule__SubExpressionAssignment_1 : ( ruleExpressionRule ) ; + public final void rule__ParanthesesRule__SubExpressionAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6530:1: ( ( ruleExpressionRule ) ) + // InternalGeneratorDSL.g:6531:2: ( ruleExpressionRule ) + { + // InternalGeneratorDSL.g:6531:2: ( ruleExpressionRule ) + // InternalGeneratorDSL.g:6532:3: ruleExpressionRule + { + before(grammarAccess.getParanthesesRuleAccess().getSubExpressionExpressionRuleParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleExpressionRule(); + + state._fsp--; + + after(grammarAccess.getParanthesesRuleAccess().getSubExpressionExpressionRuleParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ParanthesesRule__SubExpressionAssignment_1" + + + // $ANTLR start "rule__CallRule__FunctionAssignment_0" + // InternalGeneratorDSL.g:6541:1: rule__CallRule__FunctionAssignment_0 : ( ruleFunctionNameRule ) ; + public final void rule__CallRule__FunctionAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6545:1: ( ( ruleFunctionNameRule ) ) + // InternalGeneratorDSL.g:6546:2: ( ruleFunctionNameRule ) + { + // InternalGeneratorDSL.g:6546:2: ( ruleFunctionNameRule ) + // InternalGeneratorDSL.g:6547:3: ruleFunctionNameRule + { + before(grammarAccess.getCallRuleAccess().getFunctionFunctionNameRuleParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleFunctionNameRule(); + + state._fsp--; + + after(grammarAccess.getCallRuleAccess().getFunctionFunctionNameRuleParserRuleCall_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__FunctionAssignment_0" + + + // $ANTLR start "rule__CallRule__ParametersAssignment_2_0" + // InternalGeneratorDSL.g:6556:1: rule__CallRule__ParametersAssignment_2_0 : ( ruleExpressionRule ) ; + public final void rule__CallRule__ParametersAssignment_2_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6560:1: ( ( ruleExpressionRule ) ) + // InternalGeneratorDSL.g:6561:2: ( ruleExpressionRule ) + { + // InternalGeneratorDSL.g:6561:2: ( ruleExpressionRule ) + // InternalGeneratorDSL.g:6562:3: ruleExpressionRule + { + before(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_0_0()); + pushFollow(FOLLOW_2); + ruleExpressionRule(); + + state._fsp--; + + after(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__ParametersAssignment_2_0" + + + // $ANTLR start "rule__CallRule__ParametersAssignment_2_1_1" + // InternalGeneratorDSL.g:6571:1: rule__CallRule__ParametersAssignment_2_1_1 : ( ruleExpressionRule ) ; + public final void rule__CallRule__ParametersAssignment_2_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6575:1: ( ( ruleExpressionRule ) ) + // InternalGeneratorDSL.g:6576:2: ( ruleExpressionRule ) + { + // InternalGeneratorDSL.g:6576:2: ( ruleExpressionRule ) + // InternalGeneratorDSL.g:6577:3: ruleExpressionRule + { + before(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_1_1_0()); + pushFollow(FOLLOW_2); + ruleExpressionRule(); + + state._fsp--; + + after(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__CallRule__ParametersAssignment_2_1_1" + + + // $ANTLR start "rule__DoubleLiteralRule__ValueAssignment" + // InternalGeneratorDSL.g:6586:1: rule__DoubleLiteralRule__ValueAssignment : ( ruleDOUBLE ) ; + public final void rule__DoubleLiteralRule__ValueAssignment() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6590:1: ( ( ruleDOUBLE ) ) + // InternalGeneratorDSL.g:6591:2: ( ruleDOUBLE ) + { + // InternalGeneratorDSL.g:6591:2: ( ruleDOUBLE ) + // InternalGeneratorDSL.g:6592:3: ruleDOUBLE + { + before(grammarAccess.getDoubleLiteralRuleAccess().getValueDOUBLEParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleDOUBLE(); + + state._fsp--; + + after(grammarAccess.getDoubleLiteralRuleAccess().getValueDOUBLEParserRuleCall_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__DoubleLiteralRule__ValueAssignment" + + + // $ANTLR start "rule__IntegerLiteralRule__ValueAssignment" + // InternalGeneratorDSL.g:6601:1: rule__IntegerLiteralRule__ValueAssignment : ( RULE_INT ) ; + public final void rule__IntegerLiteralRule__ValueAssignment() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6605:1: ( ( RULE_INT ) ) + // InternalGeneratorDSL.g:6606:2: ( RULE_INT ) + { + // InternalGeneratorDSL.g:6606:2: ( RULE_INT ) + // InternalGeneratorDSL.g:6607:3: RULE_INT + { + before(grammarAccess.getIntegerLiteralRuleAccess().getValueINTTerminalRuleCall_0()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getIntegerLiteralRuleAccess().getValueINTTerminalRuleCall_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__IntegerLiteralRule__ValueAssignment" + + + // $ANTLR start "rule__StringLiteralRule__ValueAssignment" + // InternalGeneratorDSL.g:6616:1: rule__StringLiteralRule__ValueAssignment : ( RULE_STRING ) ; + public final void rule__StringLiteralRule__ValueAssignment() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6620:1: ( ( RULE_STRING ) ) + // InternalGeneratorDSL.g:6621:2: ( RULE_STRING ) + { + // InternalGeneratorDSL.g:6621:2: ( RULE_STRING ) + // InternalGeneratorDSL.g:6622:3: RULE_STRING + { + before(grammarAccess.getStringLiteralRuleAccess().getValueSTRINGTerminalRuleCall_0()); + match(input,RULE_STRING,FOLLOW_2); + after(grammarAccess.getStringLiteralRuleAccess().getValueSTRINGTerminalRuleCall_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__StringLiteralRule__ValueAssignment" + + + // $ANTLR start "rule__BooleanLiteralRule__ValueAssignment_1_0" + // InternalGeneratorDSL.g:6631:1: rule__BooleanLiteralRule__ValueAssignment_1_0 : ( ( 'true' ) ) ; + public final void rule__BooleanLiteralRule__ValueAssignment_1_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalGeneratorDSL.g:6635:1: ( ( ( 'true' ) ) ) + // InternalGeneratorDSL.g:6636:2: ( ( 'true' ) ) + { + // InternalGeneratorDSL.g:6636:2: ( ( 'true' ) ) + // InternalGeneratorDSL.g:6637:3: ( 'true' ) + { + before(grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); + // InternalGeneratorDSL.g:6638:3: ( 'true' ) + // InternalGeneratorDSL.g:6639:4: 'true' + { + before(grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); + match(input,60,FOLLOW_2); + after(grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); + + } + + after(grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__BooleanLiteralRule__ValueAssignment_1_0" + + // Delegated rules + + + + + public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x0000008034000000L}); + public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000001000002L}); + public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000010000002L}); + public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000004000002L}); + public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000008020000002L}); + public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000080L}); + public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000002000000L}); + public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000000030L}); + public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000008000000L}); + public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000000020L}); + public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000040000000L}); + public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000005200000000L}); + public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000080000000L}); + public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000008120000000L}); + public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000400000000L}); + public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000800000000L}); + public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000001000000000L}); + public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000200000000L}); + public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000200004000000L}); + public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000002800000000L}); + public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000002000000002L}); + public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000004000000000L}); + public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000010000000000L}); + public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000020000000000L}); + public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000040000000000L}); + public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000080000000000L}); + public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000200004000020L}); + public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000100000000000L}); + public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000200014000020L}); + public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000200000000000L}); + public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000400000000000L}); + public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x00008000000000B0L}); + public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x00000000000000B2L}); + public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0001000000000000L}); + public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x10020002000010F0L}); + public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x1002000A000010F0L}); + public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x0000002000000000L}); + public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0002000000000000L}); + public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0004000000000000L}); + public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0004000000000002L}); + public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x1B420002001810F0L}); + public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0008000000000000L}); + public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0008000000000002L}); + public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0010000000000000L}); + public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0010000000000002L}); + public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x000000000007E000L}); + public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x000000000007E002L}); + public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0000000000180000L}); + public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x0000000000180002L}); + public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x0000000000E00000L}); + public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000000000E00002L}); + public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0020000000000000L}); + public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0080000000000000L}); + public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0040000000000000L}); + public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x1BC20002001810F0L}); + public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0100000000000000L}); + public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x0400000000000000L}); + +} \ No newline at end of file diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src/de/evoal/languages/model/generator/dsl/ide/GeneratorDSLIdeModule.java b/src/languages/de.evoal.languages.model.generator.dsl.ide/src/de/evoal/languages/model/generator/dsl/ide/GeneratorDSLIdeModule.java new file mode 100644 index 00000000..d0a5171e --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src/de/evoal/languages/model/generator/dsl/ide/GeneratorDSLIdeModule.java @@ -0,0 +1,11 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ide; + + +/** + * Use this class to register ide components. + */ +public class GeneratorDSLIdeModule extends AbstractGeneratorDSLIdeModule { +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ide/src/de/evoal/languages/model/generator/dsl/ide/GeneratorDSLIdeSetup.java b/src/languages/de.evoal.languages.model.generator.dsl.ide/src/de/evoal/languages/model/generator/dsl/ide/GeneratorDSLIdeSetup.java new file mode 100644 index 00000000..3bbf97fc --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ide/src/de/evoal/languages/model/generator/dsl/ide/GeneratorDSLIdeSetup.java @@ -0,0 +1,22 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ide; + +import com.google.inject.Guice; +import com.google.inject.Injector; +import de.evoal.languages.model.generator.dsl.GeneratorDSLRuntimeModule; +import de.evoal.languages.model.generator.dsl.GeneratorDSLStandaloneSetup; +import org.eclipse.xtext.util.Modules2; + +/** + * Initialization support for running Xtext languages as language servers. + */ +public class GeneratorDSLIdeSetup extends GeneratorDSLStandaloneSetup { + + @Override + public Injector createInjector() { + return Guice.createInjector(Modules2.mixin(new GeneratorDSLRuntimeModule(), new GeneratorDSLIdeModule())); + } + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/.classpath b/src/languages/de.evoal.languages.model.generator.dsl.ui/.classpath new file mode 100644 index 00000000..9891e069 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/.classpath @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src/"/> + <classpathentry kind="src" path="src-gen/"/> + <classpathentry kind="src" path="xtend-gen/"/> + <classpathentry kind="output" path="target/classes"/> +</classpath> diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/.project b/src/languages/de.evoal.languages.model.generator.dsl.ui/.project new file mode 100644 index 00000000..91726d0e --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/.project @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>de.evoal.languages.model.generator.dsl.ui</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/META-INF/MANIFEST.MF b/src/languages/de.evoal.languages.model.generator.dsl.ui/META-INF/MANIFEST.MF new file mode 100644 index 00000000..397f26d5 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/META-INF/MANIFEST.MF @@ -0,0 +1,25 @@ +Manifest-Version: 1.0 +Automatic-Module-Name: de.evoal.languages.model.generator.dsl.ui +Bundle-ManifestVersion: 2 +Bundle-Name: de.evoal.languages.model.generator.dsl.ui +Bundle-Vendor: EvoAl Project +Bundle-Version: 1.0.0.qualifier +Bundle-SymbolicName: de.evoal.languages.model.generator.dsl.ui; singleton:=true +Bundle-ActivationPolicy: lazy +Require-Bundle: de.evoal.languages.model.generator.dsl, + de.evoal.languages.model.generator.dsl.ide, + org.eclipse.xtext.ui, + org.eclipse.xtext.ui.shared, + org.eclipse.xtext.ui.codetemplates.ui, + org.eclipse.ui.editors;bundle-version="3.5.0", + org.eclipse.ui.ide;bundle-version="3.5.0", + org.eclipse.ui, + org.eclipse.compare, + org.eclipse.xtext.builder, + de.evoal.languages.model.instance.dsl.ui;bundle-version="1.0.0" +Import-Package: org.apache.log4j +Bundle-RequiredExecutionEnvironment: JavaSE-11 +Export-Package: de.evoal.languages.model.generator.dsl.ui.internal, + de.evoal.languages.model.generator.dsl.ui.quickfix, + de.evoal.languages.model.generator.dsl.ui.contentassist +Bundle-Activator: de.evoal.languages.model.generator.dsl.ui.internal.DslActivator diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/build.properties b/src/languages/de.evoal.languages.model.generator.dsl.ui/build.properties new file mode 100644 index 00000000..323f56c5 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/build.properties @@ -0,0 +1,7 @@ +source.. = src/,\ + src-gen/,\ + xtend-gen/ +bin.includes = .,\ + META-INF/,\ + plugin.xml +bin.excludes = **/*.xtend diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/plugin.xml b/src/languages/de.evoal.languages.model.generator.dsl.ui/plugin.xml new file mode 100644 index 00000000..f8b46816 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/plugin.xml @@ -0,0 +1,434 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> +<plugin> + <extension + point="org.eclipse.ui.editors"> + <editor + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor" + contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor" + default="true" + extensions="generator" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL" + name="GeneratorDSL Editor"> + </editor> + </extension> + <extension + point="org.eclipse.ui.handlers"> + <handler + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler" + commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration"> + <activeWhen> + <reference + definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + </reference> + </activeWhen> + </handler> + <handler + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler" + commandId="de.evoal.languages.model.generator.dsl.GeneratorDSL.validate"> + <activeWhen> + <reference + definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + </reference> + </activeWhen> + </handler> + <!-- copy qualified name --> + <handler + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler" + commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"> + <activeWhen> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened" /> + </activeWhen> + </handler> + <handler + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler" + commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"> + <activeWhen> + <and> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.XtextEditor.opened" /> + <iterate> + <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" /> + </iterate> + </and> + </activeWhen> + </handler> + </extension> + <extension point="org.eclipse.core.expressions.definitions"> + <definition id="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + <and> + <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/> + <with variable="activeEditor"> + <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" + value="de.evoal.languages.model.generator.dsl.GeneratorDSL" + forcePluginActivation="true"/> + </with> + </and> + </definition> + <definition id="de.evoal.languages.model.generator.dsl.GeneratorDSL.XtextEditor.opened"> + <and> + <reference definitionId="isXtextEditorActive"/> + <with variable="activeEditor"> + <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" + value="de.evoal.languages.model.generator.dsl.GeneratorDSL" + forcePluginActivation="true"/> + </with> + </and> + </definition> + </extension> + <extension + point="org.eclipse.ui.preferencePages"> + <page + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL" + name="GeneratorDSL"> + <keywordReference id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL"/> + </page> + <page + category="de.evoal.languages.model.generator.dsl.GeneratorDSL" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.coloring" + name="Syntax Coloring"> + <keywordReference id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL"/> + </page> + <page + category="de.evoal.languages.model.generator.dsl.GeneratorDSL" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.templates" + name="Templates"> + <keywordReference id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL"/> + </page> + </extension> + <extension + point="org.eclipse.ui.propertyPages"> + <page + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL" + name="GeneratorDSL"> + <keywordReference id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL"/> + <enabledWhen> + <adapt type="org.eclipse.core.resources.IProject"/> + </enabledWhen> + <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/> + </page> + </extension> + <extension + point="org.eclipse.ui.keywords"> + <keyword + id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL" + label="GeneratorDSL"/> + </extension> + <extension + point="org.eclipse.ui.commands"> + <command + description="Trigger expensive validation" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.validate" + name="Validate"> + </command> + <!-- copy qualified name --> + <command + id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" + categoryId="org.eclipse.ui.category.edit" + description="Copy the qualified name for the selected element" + name="Copy Qualified Name"> + </command> + <command + id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName" + categoryId="org.eclipse.ui.category.edit" + description="Copy the qualified name for the selected element" + name="Copy Qualified Name"> + </command> + </extension> + <extension point="org.eclipse.ui.menus"> + <menuContribution + locationURI="popup:#TextEditorContext?after=group.edit"> + <command + commandId="de.evoal.languages.model.generator.dsl.GeneratorDSL.validate" + style="push" + tooltip="Trigger expensive validation"> + <visibleWhen checkEnabled="false"> + <reference + definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + </reference> + </visibleWhen> + </command> + </menuContribution> + <!-- copy qualified name --> + <menuContribution locationURI="popup:#TextEditorContext?after=copy"> + <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" + style="push" tooltip="Copy Qualified Name"> + <visibleWhen checkEnabled="false"> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened" /> + </visibleWhen> + </command> + </menuContribution> + <menuContribution locationURI="menu:edit?after=copy"> + <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" + style="push" tooltip="Copy Qualified Name"> + <visibleWhen checkEnabled="false"> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened" /> + </visibleWhen> + </command> + </menuContribution> + <menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions"> + <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName" + style="push" tooltip="Copy Qualified Name"> + <visibleWhen checkEnabled="false"> + <and> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.XtextEditor.opened" /> + <iterate> + <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" /> + </iterate> + </and> + </visibleWhen> + </command> + </menuContribution> + </extension> + <extension point="org.eclipse.ui.menus"> + <menuContribution locationURI="popup:#TextEditorContext?endof=group.find"> + <command commandId="org.eclipse.xtext.ui.editor.FindReferences"> + <visibleWhen checkEnabled="false"> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + </reference> + </visibleWhen> + </command> + </menuContribution> + </extension> + <extension point="org.eclipse.ui.handlers"> + <handler + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler" + commandId="org.eclipse.xtext.ui.editor.FindReferences"> + <activeWhen> + <reference + definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + </reference> + </activeWhen> + </handler> + </extension> + <extension point="org.eclipse.core.contenttype.contentTypes"> + <content-type + base-type="org.eclipse.core.runtime.text" + file-extensions="generator" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.contenttype" + name="GeneratorDSL File" + priority="normal"> + </content-type> + </extension> + <!-- adding resource factories --> + <extension + point="org.eclipse.emf.ecore.extension_parser"> + <parser + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory" + type="generator"> + </parser> + </extension> + <extension point="org.eclipse.xtext.extension_resourceServiceProvider"> + <resourceServiceProvider + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider" + uriExtension="generator"> + </resourceServiceProvider> + </extension> + <!-- marker definitions for de.evoal.languages.model.generator.dsl.GeneratorDSL --> + <extension + id="generatordsl.check.fast" + name="GeneratorDSL Problem" + point="org.eclipse.core.resources.markers"> + <super type="org.eclipse.xtext.ui.check.fast"/> + <persistent value="true"/> + </extension> + <extension + id="generatordsl.check.normal" + name="GeneratorDSL Problem" + point="org.eclipse.core.resources.markers"> + <super type="org.eclipse.xtext.ui.check.normal"/> + <persistent value="true"/> + </extension> + <extension + id="generatordsl.check.expensive" + name="GeneratorDSL Problem" + point="org.eclipse.core.resources.markers"> + <super type="org.eclipse.xtext.ui.check.expensive"/> + <persistent value="true"/> + </extension> + <extension point="org.eclipse.ui.preferencePages"> + <page + category="de.evoal.languages.model.generator.dsl.GeneratorDSL" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.validation.ValidatorPreferencePage" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.validator.preferencePage" + name="Errors/Warnings"> + <keywordReference id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL"/> + </page> + </extension> + <extension point="org.eclipse.xtext.builder.participant"> + <participant + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant" + fileExtensions="generator"/> + </extension> + <extension point="org.eclipse.ui.preferencePages"> + <page + category="de.evoal.languages.model.generator.dsl.GeneratorDSL" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.compiler.preferencePage" + name="Compiler"> + <keywordReference id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL"/> + </page> + </extension> + <extension point="org.eclipse.ui.propertyPages"> + <page + category="de.evoal.languages.model.generator.dsl.GeneratorDSL" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.compiler.propertyPage" + name="Compiler"> + <keywordReference id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL"/> + <enabledWhen> + <adapt type="org.eclipse.core.resources.IProject"/> + </enabledWhen> + <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/> + </page> + </extension> + <extension point="org.eclipse.ui.menus"> + <menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration"> + <command + commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.OpenGeneratedCode" + style="push"> + <visibleWhen checkEnabled="false"> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened" /> + </visibleWhen> + </command> + </menuContribution> + </extension> + <extension point="org.eclipse.ui.handlers"> + <handler + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler" + commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"> + <activeWhen> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened" /> + </activeWhen> + </handler> + </extension> + <!-- Quick Outline --> + <extension + point="org.eclipse.ui.handlers"> + <handler + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler" + commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"> + <activeWhen> + <reference + definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + </reference> + </activeWhen> + </handler> + </extension> + <extension + point="org.eclipse.ui.commands"> + <command + description="Open the quick outline." + id="org.eclipse.xtext.ui.editor.outline.QuickOutline" + name="Quick Outline"> + </command> + </extension> + <extension point="org.eclipse.ui.menus"> + <menuContribution + locationURI="popup:#TextEditorContext?after=group.open"> + <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline" + style="push" + tooltip="Open Quick Outline"> + <visibleWhen checkEnabled="false"> + <reference definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"/> + </visibleWhen> + </command> + </menuContribution> + </extension> + <!-- quickfix marker resolution generator for de.evoal.languages.model.generator.dsl.GeneratorDSL --> + <extension + point="org.eclipse.ui.ide.markerResolution"> + <markerResolutionGenerator + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" + markerType="de.evoal.languages.model.generator.dsl.ui.generatordsl.check.fast"> + <attribute + name="FIXABLE_KEY" + value="true"> + </attribute> + </markerResolutionGenerator> + <markerResolutionGenerator + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" + markerType="de.evoal.languages.model.generator.dsl.ui.generatordsl.check.normal"> + <attribute + name="FIXABLE_KEY" + value="true"> + </attribute> + </markerResolutionGenerator> + <markerResolutionGenerator + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" + markerType="de.evoal.languages.model.generator.dsl.ui.generatordsl.check.expensive"> + <attribute + name="FIXABLE_KEY" + value="true"> + </attribute> + </markerResolutionGenerator> + </extension> + <!-- Rename Refactoring --> + <extension point="org.eclipse.ui.handlers"> + <handler + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler" + commandId="org.eclipse.xtext.ui.refactoring.RenameElement"> + <activeWhen> + <reference + definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + </reference> + </activeWhen> + </handler> + </extension> + <extension point="org.eclipse.ui.menus"> + <menuContribution + locationURI="popup:#TextEditorContext?after=group.edit"> + <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement" + style="push"> + <visibleWhen checkEnabled="false"> + <reference + definitionId="de.evoal.languages.model.generator.dsl.GeneratorDSL.Editor.opened"> + </reference> + </visibleWhen> + </command> + </menuContribution> + </extension> + <extension point="org.eclipse.ui.preferencePages"> + <page + category="de.evoal.languages.model.generator.dsl.GeneratorDSL" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage" + id="de.evoal.languages.model.generator.dsl.GeneratorDSL.refactoring" + name="Refactoring"> + <keywordReference id="de.evoal.languages.model.generator.dsl.ui.keyword_GeneratorDSL"/> + </page> + </extension> + <extension point="org.eclipse.compare.contentViewers"> + <viewer id="de.evoal.languages.model.generator.dsl.GeneratorDSL.compare.contentViewers" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator" + extensions="generator"> + </viewer> + <contentTypeBinding + contentTypeId="de.evoal.languages.model.generator.dsl.GeneratorDSL.contenttype" + contentViewerId="de.evoal.languages.model.generator.dsl.GeneratorDSL.compare.contentViewers" /> + </extension> + <extension point="org.eclipse.compare.contentMergeViewers"> + <viewer id="de.evoal.languages.model.generator.dsl.GeneratorDSL.compare.contentMergeViewers" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator" + extensions="generator" label="GeneratorDSL Compare"> + </viewer> + <contentTypeBinding + contentTypeId="de.evoal.languages.model.generator.dsl.GeneratorDSL.contenttype" + contentMergeViewerId="de.evoal.languages.model.generator.dsl.GeneratorDSL.compare.contentMergeViewers" /> + </extension> + <extension point="org.eclipse.ui.editors.documentProviders"> + <provider id="de.evoal.languages.model.generator.dsl.GeneratorDSL.editors.documentProviders" + class="de.evoal.languages.model.generator.dsl.ui.GeneratorDSLExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider" + extensions="generator"> + </provider> + </extension> + <extension point="org.eclipse.team.core.fileTypes"> + <fileTypes + extension="generator" + type="text"> + </fileTypes> + </extension> +</plugin> diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/pom.xml b/src/languages/de.evoal.languages.model.generator.dsl.ui/pom.xml new file mode 100644 index 00000000..cbd7ece2 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/pom.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>de.evoal.languages</groupId> + <artifactId>de.evoal.languages.releng.parent</artifactId> + <version>1.0.0-SNAPSHOT</version> + <relativePath>../de.evoal.languages.releng.parent</relativePath> + </parent> + + <artifactId>de.evoal.languages.model.generator.dsl.ui</artifactId> + <packaging>eclipse-plugin</packaging> +</project> diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/AbstractGeneratorDSLUiModule.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/AbstractGeneratorDSLUiModule.java new file mode 100644 index 00000000..69adef3a --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/AbstractGeneratorDSLUiModule.java @@ -0,0 +1,293 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui; + +import com.google.inject.Binder; +import com.google.inject.Provider; +import com.google.inject.name.Names; +import de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.GeneratorDSLParser; +import de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.PartialGeneratorDSLContentAssistParser; +import de.evoal.languages.model.generator.dsl.ide.contentassist.antlr.internal.InternalGeneratorDSLLexer; +import de.evoal.languages.model.generator.dsl.ui.contentassist.GeneratorDSLProposalProvider; +import de.evoal.languages.model.generator.dsl.ui.labeling.GeneratorDSLDescriptionLabelProvider; +import de.evoal.languages.model.generator.dsl.ui.labeling.GeneratorDSLLabelProvider; +import de.evoal.languages.model.generator.dsl.ui.outline.GeneratorDSLOutlineTreeProvider; +import de.evoal.languages.model.generator.dsl.ui.quickfix.GeneratorDSLQuickfixProvider; +import de.evoal.languages.model.generator.dsl.validation.GeneratorDSLValidatorConfigurationBlock; +import org.eclipse.compare.IViewerCreator; +import org.eclipse.core.resources.IWorkspaceRoot; +import org.eclipse.core.resources.ResourcesPlugin; +import org.eclipse.jface.viewers.ILabelProvider; +import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.eclipse.xtext.builder.BuilderParticipant; +import org.eclipse.xtext.builder.EclipseOutputConfigurationProvider; +import org.eclipse.xtext.builder.IXtextBuilderParticipant; +import org.eclipse.xtext.builder.builderState.IBuilderState; +import org.eclipse.xtext.builder.clustering.CurrentDescriptions; +import org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource; +import org.eclipse.xtext.builder.nature.NatureAddingEditorCallback; +import org.eclipse.xtext.builder.preferences.BuilderPreferenceAccess; +import org.eclipse.xtext.generator.IContextualOutputConfigurationProvider; +import org.eclipse.xtext.ide.LexerIdeBindings; +import org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser; +import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer; +import org.eclipse.xtext.ide.editor.partialEditing.IPartialEditingContentAssistParser; +import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider; +import org.eclipse.xtext.parser.antlr.ITokenDefProvider; +import org.eclipse.xtext.parser.antlr.LexerProvider; +import org.eclipse.xtext.resource.IResourceDescriptions; +import org.eclipse.xtext.resource.containers.IAllContainersState; +import org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider; +import org.eclipse.xtext.service.SingletonBinding; +import org.eclipse.xtext.ui.DefaultUiModule; +import org.eclipse.xtext.ui.UIBindings; +import org.eclipse.xtext.ui.codetemplates.ui.AccessibleCodetemplatesActivator; +import org.eclipse.xtext.ui.codetemplates.ui.partialEditing.IPartialEditingContentAssistContextFactory; +import org.eclipse.xtext.ui.codetemplates.ui.partialEditing.PartialEditingContentAssistContextFactory; +import org.eclipse.xtext.ui.codetemplates.ui.preferences.AdvancedTemplatesPreferencePage; +import org.eclipse.xtext.ui.codetemplates.ui.preferences.TemplatesLanguageConfiguration; +import org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistrar; +import org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistry; +import org.eclipse.xtext.ui.compare.DefaultViewerCreator; +import org.eclipse.xtext.ui.editor.DocumentBasedDirtyResource; +import org.eclipse.xtext.ui.editor.IXtextEditorCallback; +import org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext; +import org.eclipse.xtext.ui.editor.contentassist.FQNPrefixMatcher; +import org.eclipse.xtext.ui.editor.contentassist.IContentProposalProvider; +import org.eclipse.xtext.ui.editor.contentassist.IProposalConflictHelper; +import org.eclipse.xtext.ui.editor.contentassist.PrefixMatcher; +import org.eclipse.xtext.ui.editor.contentassist.antlr.AntlrProposalConflictHelper; +import org.eclipse.xtext.ui.editor.contentassist.antlr.DelegatingContentAssistContextFactory; +import org.eclipse.xtext.ui.editor.outline.IOutlineTreeProvider; +import org.eclipse.xtext.ui.editor.outline.impl.IOutlineTreeStructureProvider; +import org.eclipse.xtext.ui.editor.preferences.IPreferenceStoreInitializer; +import org.eclipse.xtext.ui.editor.quickfix.IssueResolutionProvider; +import org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage; +import org.eclipse.xtext.ui.refactoring.IDependentElementsCalculator; +import org.eclipse.xtext.ui.refactoring.IReferenceUpdater; +import org.eclipse.xtext.ui.refactoring.IRenameRefactoringProvider; +import org.eclipse.xtext.ui.refactoring.IRenameStrategy; +import org.eclipse.xtext.ui.refactoring.impl.DefaultDependentElementsCalculator; +import org.eclipse.xtext.ui.refactoring.impl.DefaultReferenceUpdater; +import org.eclipse.xtext.ui.refactoring.impl.DefaultRenameRefactoringProvider; +import org.eclipse.xtext.ui.refactoring.impl.DefaultRenameStrategy; +import org.eclipse.xtext.ui.refactoring.ui.DefaultRenameSupport; +import org.eclipse.xtext.ui.refactoring.ui.IRenameSupport; +import org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferences; +import org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider; +import org.eclipse.xtext.ui.shared.Access; +import org.eclipse.xtext.ui.validation.AbstractValidatorConfigurationBlock; + +/** + * Manual modifications go to {@link GeneratorDSLUiModule}. + */ +@SuppressWarnings("all") +public abstract class AbstractGeneratorDSLUiModule extends DefaultUiModule { + + public AbstractGeneratorDSLUiModule(AbstractUIPlugin plugin) { + super(plugin); + } + + // contributed by org.eclipse.xtext.xtext.generator.ImplicitFragment + public Provider<? extends IAllContainersState> provideIAllContainersState() { + return Access.getJavaProjectsState(); + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends IProposalConflictHelper> bindIProposalConflictHelper() { + return AntlrProposalConflictHelper.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public void configureContentAssistLexer(Binder binder) { + binder.bind(Lexer.class) + .annotatedWith(Names.named(LexerIdeBindings.CONTENT_ASSIST)) + .to(InternalGeneratorDSLLexer.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public void configureHighlightingLexer(Binder binder) { + binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class) + .annotatedWith(Names.named(LexerIdeBindings.HIGHLIGHTING)) + .to(de.evoal.languages.model.generator.dsl.parser.antlr.internal.InternalGeneratorDSLLexer.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public void configureHighlightingTokenDefProvider(Binder binder) { + binder.bind(ITokenDefProvider.class) + .annotatedWith(Names.named(LexerIdeBindings.HIGHLIGHTING)) + .to(AntlrTokenDefProvider.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends ContentAssistContext.Factory> bindContentAssistContext$Factory() { + return DelegatingContentAssistContextFactory.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends IContentAssistParser> bindIContentAssistParser() { + return GeneratorDSLParser.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public void configureContentAssistLexerProvider(Binder binder) { + binder.bind(InternalGeneratorDSLLexer.class).toProvider(LexerProvider.create(InternalGeneratorDSLLexer.class)); + } + + // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2 + public Class<? extends AbstractValidatorConfigurationBlock> bindAbstractValidatorConfigurationBlock() { + return GeneratorDSLValidatorConfigurationBlock.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2 + public Class<? extends PrefixMatcher> bindPrefixMatcher() { + return FQNPrefixMatcher.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2 + public Class<? extends IDependentElementsCalculator> bindIDependentElementsCalculator() { + return DefaultDependentElementsCalculator.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public void configureIResourceDescriptionsBuilderScope(Binder binder) { + binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(CurrentDescriptions.ResourceSetAware.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public Class<? extends IXtextEditorCallback> bindIXtextEditorCallback() { + return NatureAddingEditorCallback.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public Class<? extends IContextualOutputConfigurationProvider> bindIContextualOutputConfigurationProvider() { + return EclipseOutputConfigurationProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public void configureIResourceDescriptionsPersisted(Binder binder) { + binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(IBuilderState.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public Class<? extends DocumentBasedDirtyResource> bindDocumentBasedDirtyResource() { + return PersistentDataAwareDirtyResource.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2 + public Class<? extends IXtextBuilderParticipant> bindIXtextBuilderParticipant() { + return BuilderParticipant.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2 + public IWorkspaceRoot bindIWorkspaceRootToInstance() { + return ResourcesPlugin.getWorkspace().getRoot(); + } + + // contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2 + public void configureBuilderPreferenceStoreInitializer(Binder binder) { + binder.bind(IPreferenceStoreInitializer.class) + .annotatedWith(Names.named("builderPreferenceInitializer")) + .to(BuilderPreferenceAccess.Initializer.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.labeling.LabelProviderFragment2 + public Class<? extends ILabelProvider> bindILabelProvider() { + return GeneratorDSLLabelProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.labeling.LabelProviderFragment2 + public void configureResourceUIServiceLabelProvider(Binder binder) { + binder.bind(ILabelProvider.class).annotatedWith(ResourceServiceDescriptionLabelProvider.class).to(GeneratorDSLDescriptionLabelProvider.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.outline.OutlineTreeProviderFragment2 + public Class<? extends IOutlineTreeProvider> bindIOutlineTreeProvider() { + return GeneratorDSLOutlineTreeProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.outline.OutlineTreeProviderFragment2 + public Class<? extends IOutlineTreeStructureProvider> bindIOutlineTreeStructureProvider() { + return GeneratorDSLOutlineTreeProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.quickfix.QuickfixProviderFragment2 + public Class<? extends IssueResolutionProvider> bindIssueResolutionProvider() { + return GeneratorDSLQuickfixProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.contentAssist.ContentAssistFragment2 + public Class<? extends IContentProposalProvider> bindIContentProposalProvider() { + return GeneratorDSLProposalProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 + public void configureIPreferenceStoreInitializer(Binder binder) { + binder.bind(IPreferenceStoreInitializer.class) + .annotatedWith(Names.named("RefactoringPreferences")) + .to(RefactoringPreferences.Initializer.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 + public Class<? extends IRenameStrategy> bindIRenameStrategy() { + return DefaultRenameStrategy.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 + public Class<? extends IReferenceUpdater> bindIReferenceUpdater() { + return DefaultReferenceUpdater.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 + public Class<? extends IRenameRefactoringProvider> bindIRenameRefactoringProvider() { + return DefaultRenameRefactoringProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2 + public Class<? extends IRenameSupport.Factory> bindIRenameSupport$Factory() { + return DefaultRenameSupport.Factory.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2 + public Provider<? extends TemplatesLanguageConfiguration> provideTemplatesLanguageConfiguration() { + return AccessibleCodetemplatesActivator.getTemplatesLanguageConfigurationProvider(); + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2 + public Provider<? extends LanguageRegistry> provideLanguageRegistry() { + return AccessibleCodetemplatesActivator.getLanguageRegistry(); + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2 + @SingletonBinding(eager=true) + public Class<? extends LanguageRegistrar> bindLanguageRegistrar() { + return LanguageRegistrar.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2 + public Class<? extends XtextTemplatePreferencePage> bindXtextTemplatePreferencePage() { + return AdvancedTemplatesPreferencePage.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2 + public Class<? extends IPartialEditingContentAssistParser> bindIPartialEditingContentAssistParser() { + return PartialGeneratorDSLContentAssistParser.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2 + public Class<? extends IPartialEditingContentAssistContextFactory> bindIPartialEditingContentAssistContextFactory() { + return PartialEditingContentAssistContextFactory.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.compare.CompareFragment2 + public Class<? extends IViewerCreator> bindIViewerCreator() { + return DefaultViewerCreator.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.ui.compare.CompareFragment2 + public void configureCompareViewerTitle(Binder binder) { + binder.bind(String.class).annotatedWith(Names.named(UIBindings.COMPARE_VIEWER_TITLE)).toInstance("GeneratorDSL Compare"); + } + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/GeneratorDSLExecutableExtensionFactory.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/GeneratorDSLExecutableExtensionFactory.java new file mode 100644 index 00000000..0331db07 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/GeneratorDSLExecutableExtensionFactory.java @@ -0,0 +1,29 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui; + +import com.google.inject.Injector; +import de.evoal.languages.model.generator.dsl.ui.internal.DslActivator; +import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory; +import org.osgi.framework.Bundle; +import org.osgi.framework.FrameworkUtil; + +/** + * This class was generated. Customizations should only happen in a newly + * introduced subclass. + */ +public class GeneratorDSLExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory { + + @Override + protected Bundle getBundle() { + return FrameworkUtil.getBundle(DslActivator.class); + } + + @Override + protected Injector getInjector() { + DslActivator activator = DslActivator.getInstance(); + return activator != null ? activator.getInjector(DslActivator.DE_EVOAL_LANGUAGES_MODEL_GENERATOR_DSL_GENERATORDSL) : null; + } + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/contentassist/AbstractGeneratorDSLProposalProvider.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/contentassist/AbstractGeneratorDSLProposalProvider.java new file mode 100644 index 00000000..afbcafa1 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/contentassist/AbstractGeneratorDSLProposalProvider.java @@ -0,0 +1,160 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui.contentassist; + +import de.evoal.languages.model.instance.dsl.ui.contentassist.InstanceLanguageProposalProvider; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.Assignment; +import org.eclipse.xtext.CrossReference; +import org.eclipse.xtext.RuleCall; +import org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext; +import org.eclipse.xtext.ui.editor.contentassist.ICompletionProposalAcceptor; + +/** + * Represents a generated, default implementation of superclass {@link InstanceLanguageProposalProvider}. + * Methods are dynamically dispatched on the first parameter, i.e., you can override them + * with a more concrete subtype. + */ +public abstract class AbstractGeneratorDSLProposalProvider extends InstanceLanguageProposalProvider { + + public void completeConfigurationRule_Uses(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeConfigurationRule_Generators(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeConfigurationRule_Functions(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeConfigurationRule_Statements(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeUseRule_ImportURI(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeParametrizedFunctionDefinitionRule_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeParametrizedFunctionDefinitionRule_Definition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeGeneratorDefinitionRule_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeGeneratorDefinitionRule_Definition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeForStatementRule_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeForStatementRule_Range(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeForStatementRule_Statements(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeCounterRangeRule_Start(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeCounterRangeRule_End(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeFunctionsRule_FunctionReferences(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeFunctionReferencesRule_Functions(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeGeneratorsRule_GeneratorReferences(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeGeneratorReferencesRule_Generators(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + } + public void completeApplyStatementRule_File(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeApplyStatementRule_Count(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeApplyStatementRule_Function(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeApplyStatementRule_Generator(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeGeneratorDefinitionReferenceRule_Definition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + } + public void completeLoopVariableReference_Definition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + } + public void completeFunctionDefinitionReferenceRule_Definition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + } + public void completeParametrizedFunctionDefinitionReferenceRule_Definition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + } + + public void complete_ConfigurationRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_UseRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_ParametrizedFunctionDefinitionRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_GeneratorDefinitionRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_StatementRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_ForStatementRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_RangeRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_CounterRangeRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_FunctionsRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_FunctionReferencesRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_GeneratorsRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_GeneratorReferencesRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_ApplyStatementRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_GeneratorReferenceRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_GeneratorDefinitionReferenceRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_FunctionReferenceRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_FunctionDefReferenceRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_LoopVariableReference(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_FunctionDefinitionReferenceRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_ParametrizedFunctionDefinitionReferenceRule(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/internal/DslActivator.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/internal/DslActivator.java new file mode 100644 index 00000000..7aa799d9 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/ui/internal/DslActivator.java @@ -0,0 +1,94 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui.internal; + +import com.google.common.collect.Maps; +import com.google.inject.Guice; +import com.google.inject.Injector; +import de.evoal.languages.model.generator.dsl.GeneratorDSLRuntimeModule; +import de.evoal.languages.model.generator.dsl.ui.GeneratorDSLUiModule; +import java.util.Collections; +import java.util.Map; +import org.apache.log4j.Logger; +import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.eclipse.xtext.ui.shared.SharedStateModule; +import org.eclipse.xtext.util.Modules2; +import org.osgi.framework.BundleContext; + +/** + * This class was generated. Customizations should only happen in a newly + * introduced subclass. + */ +public class DslActivator extends AbstractUIPlugin { + + public static final String PLUGIN_ID = "de.evoal.languages.model.generator.dsl.ui"; + public static final String DE_EVOAL_LANGUAGES_MODEL_GENERATOR_DSL_GENERATORDSL = "de.evoal.languages.model.generator.dsl.GeneratorDSL"; + + private static final Logger logger = Logger.getLogger(DslActivator.class); + + private static DslActivator INSTANCE; + + private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1)); + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + INSTANCE = this; + } + + @Override + public void stop(BundleContext context) throws Exception { + injectors.clear(); + INSTANCE = null; + super.stop(context); + } + + public static DslActivator getInstance() { + return INSTANCE; + } + + public Injector getInjector(String language) { + synchronized (injectors) { + Injector injector = injectors.get(language); + if (injector == null) { + injectors.put(language, injector = createInjector(language)); + } + return injector; + } + } + + protected Injector createInjector(String language) { + try { + com.google.inject.Module runtimeModule = getRuntimeModule(language); + com.google.inject.Module sharedStateModule = getSharedStateModule(); + com.google.inject.Module uiModule = getUiModule(language); + com.google.inject.Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule); + return Guice.createInjector(mergedModule); + } catch (Exception e) { + logger.error("Failed to create injector for " + language); + logger.error(e.getMessage(), e); + throw new RuntimeException("Failed to create injector for " + language, e); + } + } + + protected com.google.inject.Module getRuntimeModule(String grammar) { + if (DE_EVOAL_LANGUAGES_MODEL_GENERATOR_DSL_GENERATORDSL.equals(grammar)) { + return new GeneratorDSLRuntimeModule(); + } + throw new IllegalArgumentException(grammar); + } + + protected com.google.inject.Module getUiModule(String grammar) { + if (DE_EVOAL_LANGUAGES_MODEL_GENERATOR_DSL_GENERATORDSL.equals(grammar)) { + return new GeneratorDSLUiModule(this); + } + throw new IllegalArgumentException(grammar); + } + + protected com.google.inject.Module getSharedStateModule() { + return new SharedStateModule(); + } + + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLValidatorConfigurationBlock.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLValidatorConfigurationBlock.java new file mode 100644 index 00000000..2f4c0444 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src-gen/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLValidatorConfigurationBlock.java @@ -0,0 +1,35 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.validation; + +import org.eclipse.jface.dialogs.IDialogSettings; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.xtext.ui.validation.AbstractValidatorConfigurationBlock; + +@SuppressWarnings("restriction") +public class GeneratorDSLValidatorConfigurationBlock extends AbstractValidatorConfigurationBlock { + + protected static final String SETTINGS_SECTION_NAME = "GeneratorDSL"; + + @Override + protected void fillSettingsPage(Composite composite, int nColumns, int defaultIndent) { + addComboBox(GeneratorDSLConfigurableIssueCodesProvider.DEPRECATED_MODEL_PART, "Deprecated Model Part", composite, defaultIndent); + } + + @Override + public void dispose() { + storeSectionExpansionStates(getDialogSettings()); + super.dispose(); + } + + @Override + protected IDialogSettings getDialogSettings() { + IDialogSettings dialogSettings = super.getDialogSettings(); + IDialogSettings section = dialogSettings.getSection(SETTINGS_SECTION_NAME); + if (section == null) { + return dialogSettings.addNewSection(SETTINGS_SECTION_NAME); + } + return section; + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/GeneratorDSLUiModule.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/GeneratorDSLUiModule.java new file mode 100644 index 00000000..92bce99a --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/GeneratorDSLUiModule.java @@ -0,0 +1,16 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui; + +import org.eclipse.ui.plugin.AbstractUIPlugin; + +/** + * Use this class to register components to be used within the Eclipse IDE. + */ +public class GeneratorDSLUiModule extends AbstractGeneratorDSLUiModule { + + public GeneratorDSLUiModule(AbstractUIPlugin plugin) { + super(plugin); + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/contentassist/GeneratorDSLProposalProvider.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/contentassist/GeneratorDSLProposalProvider.java new file mode 100644 index 00000000..ef7b1047 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/contentassist/GeneratorDSLProposalProvider.java @@ -0,0 +1,12 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui.contentassist; + + +/** + * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#content-assist + * on how to customize the content assistant. + */ +public class GeneratorDSLProposalProvider extends AbstractGeneratorDSLProposalProvider { +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/labeling/GeneratorDSLDescriptionLabelProvider.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/labeling/GeneratorDSLDescriptionLabelProvider.java new file mode 100644 index 00000000..1564b459 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/labeling/GeneratorDSLDescriptionLabelProvider.java @@ -0,0 +1,25 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui.labeling; + +import org.eclipse.xtext.ui.label.DefaultDescriptionLabelProvider; + +/** + * Provides labels for IEObjectDescriptions and IResourceDescriptions. + * + * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#label-provider + */ +public class GeneratorDSLDescriptionLabelProvider extends DefaultDescriptionLabelProvider { + + // Labels and icons can be computed like this: +// @Override +// public String text(IEObjectDescription ele) { +// return ele.getName().toString(); +// } +// +// @Override +// public String image(IEObjectDescription ele) { +// return ele.getEClass().getName() + ".gif"; +// } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/labeling/GeneratorDSLLabelProvider.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/labeling/GeneratorDSLLabelProvider.java new file mode 100644 index 00000000..601245eb --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/labeling/GeneratorDSLLabelProvider.java @@ -0,0 +1,31 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui.labeling; + +import com.google.inject.Inject; +import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider; +import org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider; + +/** + * Provides labels for EObjects. + * + * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#label-provider + */ +public class GeneratorDSLLabelProvider extends DefaultEObjectLabelProvider { + + @Inject + public GeneratorDSLLabelProvider(AdapterFactoryLabelProvider delegate) { + super(delegate); + } + + // Labels and icons can be computed like this: + +// String text(Greeting ele) { +// return "A greeting to " + ele.getName(); +// } +// +// String image(Greeting ele) { +// return "Greeting.gif"; +// } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/outline/GeneratorDSLOutlineTreeProvider.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/outline/GeneratorDSLOutlineTreeProvider.java new file mode 100644 index 00000000..2f80830e --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/outline/GeneratorDSLOutlineTreeProvider.java @@ -0,0 +1,15 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui.outline; + +import org.eclipse.xtext.ui.editor.outline.impl.DefaultOutlineTreeProvider; + +/** + * Customization of the default outline structure. + * + * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#outline + */ +public class GeneratorDSLOutlineTreeProvider extends DefaultOutlineTreeProvider { + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/quickfix/GeneratorDSLQuickfixProvider.java b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/quickfix/GeneratorDSLQuickfixProvider.java new file mode 100644 index 00000000..47330899 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl.ui/src/de/evoal/languages/model/generator/dsl/ui/quickfix/GeneratorDSLQuickfixProvider.java @@ -0,0 +1,26 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.ui.quickfix; + +import de.evoal.languages.model.instance.dsl.ui.quickfix.InstanceLanguageQuickfixProvider; + +/** + * Custom quickfixes. + * + * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#quick-fixes + */ +public class GeneratorDSLQuickfixProvider extends InstanceLanguageQuickfixProvider { + +// @Fix(GeneratorDSLValidator.INVALID_NAME) +// public void capitalizeName(final Issue issue, IssueResolutionAcceptor acceptor) { +// acceptor.accept(issue, "Capitalize name", "Capitalize the name.", "upcase.png", new IModification() { +// public void apply(IModificationContext context) throws BadLocationException { +// IXtextDocument xtextDocument = context.getXtextDocument(); +// String firstLetter = xtextDocument.get(issue.getOffset(), 1); +// xtextDocument.replace(issue.getOffset(), 1, firstLetter.toUpperCase()); +// } +// }); +// } + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/.antlr-generator-3.2.0-patch.jar b/src/languages/de.evoal.languages.model.generator.dsl/.antlr-generator-3.2.0-patch.jar new file mode 100644 index 0000000000000000000000000000000000000000..90516fd7ac76a3ec685e046f91eb762e68e20586 GIT binary patch literal 1484649 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%0AaAH?nu0NxCVyl& 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–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%0Dj-G_A(*zOw+ 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�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%0D%=Ac&(2+<WSLVtxd_u<i{q+LJq)s2Xzt90bc< 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	`oo3-5LX!%4=Slas^aaVB<dKo$W z*$KB!LvSSQ9I{*c3*AAJalhvr>y`ZpRiM;=xH-P=uI=2sG|YFfIi6My{w>w&9GP77 z>+h0A0Oj<u;h52rCX2*ZjGS5kRTDe0qRk(>WhU-wl>1VN@rX>J3d#l4Ou0#0xSHaM z=FHN0JNdF{wvg6kIiMu`g0K!8K~YNnL$lg@vpb@GWlAxljrC)^I{|-1N{MBQ^JB0^ zuE7e;T!0nE86yxexK<sr(uxyqy2Z611``#q!V)^8<5p0np?X@jj7qp_0}tQK^UtKF zwq9})70LQ3v`DA*_V0?+tK1|??+Pybj<tMfUQ20Ve#@^ao0|Wkitrk0S2$)KUrJ9w z<;@u>3lj;Qk3lk%9c2pKK(r^_wkvLWT#B$t^yQK7k}{&1YBOF{B$b+Vv(p-T(pr6} zgyR}#9YY4Gut1MiV4BFv)_ch|+D!v)++CkCt_dc5Qd`#9M2=(ULtH{{WbR`3im6s` z!Eptb=}8o#S0L4DXsvWS>RUGQ3s>L)^Y8s3I)dr7PtbCBVyY_Y_XuL-90do80b9Mu zp@AHKdghtV@ZgiWov3^c7{Y5LP@?RlqVS7HD|t95fJ$XLv6}WJoZjFfKDVT+APc-& zvX(hhjDdRJUF{$`jc~I=Cr?s;;tfGoyDSJRUm^*dgGnnli;4N8)5wQv=fj!vBSe+( zK&^pN?FM*|>dnk^DtPb&%}#ULc*y)Muycl4W5fXbAZ+%Bg?Qg70(-JnsAatlrMoz} zSQmKW_+S!u_tU6W4?jI}|86z`RKcQf5qA%5I0Hh74{lV{;-w~(dulqz!3UnJvis81 z1X8WEQC3^@&H<u37OLDIB+lFbr}&|W?AZ|X@H%Os=J9;nI3ZYjxTX2h0ePUDgjt+0 zr#;7J$#l>j&=<RoJ}?X@;;Aqhu?#d>E2a;-0yf=Nwt^{G)9#U7L59y#D#K}=?74jQ zMJm=I<+1qg=DF0|5B6$Z{l#`OjUA09MYUXztuCt4k~Fj+(4Xe%Om%YwcU|BZ<f5NS zrIjap5CQ%ROv5oJB1M!gT0r><B^p?LWXM+a^ryrRXIzgr1N@^^xs|cRrU1tKK;MR3 zg_PXyJ$s(;2e=aT9r|pSS#<BxV!ci<QqmdV7yU-gNB>;F?2a_PQi(%vu7l~D5*n<+ zdB4S_v|I&@(0YoyJLGhk*Ru_d|F`+4-1>`KZXhhGKiZ($68RhTG~m}AX;41ryA9z_ z6?@UdKT0ARj!}A4(taWnU%IL55?E*>-hg;YyMd>{c4{J#+Q>c%AaKQT=nlUR)jFCv zi@9MnTQy+xI!coBrwY-m<gb89`8~9Q_*YaGQ+-?4`x?@VW!Xm)Es|s{tt|G9J9UGM zL?!l!Py3?Z5C{`095(B+ZQVh-Gauy5R`82?)EN#Sev}&jV^Ep52)to`K<h3Zc_YHK z&G4aEmwc@+39H}7o&0`EkaCZ0&xnmAM3on^kFY`uq;80RFLf$mW&01t52h$^er=1> z?-yazmH;7b?jMYuNDRf1NC&F3bjCyjgwn^?LrA_YVPg4xW9BcHh(&^(KR#5kfSnjW za$FPQ%D_G%vOOk&78tNI@mFy7pXQHOxyEI&?4vj$@bPMY(td*D1En-}FAgWzQ=XlJ zxJ2JdkmLUzjww-!M9>?#e>|$?4L4Es$rpC}?zivxx9>4igjuNwK!H-?2MbF$hn#kO zb_+^C4jAJ-p6YJ+D%6>5X8p4I>&HBC#{bCYyCv=nV`t(>(E8}+Z%y&8LwofP+6RrI zk{Fhfr4d3>XcvfWSB5}GM1^FXh`v4J(&Do)N7t$tFARON=$r!Y)X<l0y&5mrWOGry z0q@Arm(yBJPT&_%_qNj=b$ekuNU`~4FW4Qf){3bA2B=MLMO1hWlq|1(X11yJ3--1; zQ6jqH>y+&ZB%Buzr){29DsV@^u+A&G0#dk&eW2>kGniI>5!eDb+hd>U0i}Ks(6)lR zd%!r)<Y)NY{I6J|c~HSxw9jaTI~o1{3pbSiYY)0&5UsHL%B@QO=9fA@<FGC$i*NOY zT`=rR^{vw^Ts=#%hU}rKDJolp@<s$o)`>%(wVe5R6Yxm%{Z&}HSgi0C<&ks{%Ug0e zwdi5qD&Z`syO2L)?!ocXbWjjn(VdI(mi5+l5D!?;g%@+6qW1PF2;CN@E;)h2c;qXn z@NaUA*j8>=?Gwi?@IaNgXoEw0WcbI{Q^h2ELpinTfQEU-A7<{&xJS{`rc}PefPUr| z%I|Hs$L<$+n<}96szF5lS&EE8;a6^T>Jhd4Xl#-zpm$jv_v>c$1_kT%CGze4YrpB8 z`p(?1x!r(>7O*(_*XQwWU)T?9(Ij*JI5%L|QjUEU1dLC~Y0CNxsxM#;Lvq=DUuB3} z$vNmm@ijfTFJ{@*e8syo*)Q!XJUC~HKFFhkB%y`rTaw4)H#$G7-U!Cvt52U|fy>|> z(U4%fF!ddBbm}4m)sFa*H`i9j0PWA%&lmcLprob>N=y33UG+<c6VFAZ68XZ&u9Z9# z{CC(7k01q>a6Ef#0Dpgq38goDPZe4%vSqY3*Gm()`-9!zuW@V8DrM}S5rT<Zmh@}S z(T0C!C(a_-Qis-Ti(usHu%b;&v9DAzzdZvN<)D0o`u%=h2&{wDme=dd**nDI{LJ5O zCX?9kQq=nt72vr#JoZog;e=5bH4SK7*UUA#jn>4l*{A-VAA{>{@nMR`{Su_{81+o3 zs!P(6i32kP>1%KMvs;D6YD`(!r$CnzAqk?+6(qEjx7~pkYe>(lQ7*RcGym~`19=Cp z7|%nS=i_zpTg=_HUhCDjaL8L&jmVC3M03wUl`-OC*~d9o7;}E#Rp|u1whDgWP5gWN zUJl2+y$*ueHxJ>zVNL;Ub=F!Z%TOIkH~2sM^Kg=bB3N0l1H7`vFp++&*j1U$O$@D< zRk`G0q^Q|E4eSDiZ!<r`wNf%@Ysi4zk!Y2-&)#-w=_NakSMp)E!K-WR*sJl>g<^TF z<LmZXQ~I5T9Wj|uW4?fXHYQFd@V}ioGPNGHFO&K%>%M!2YU!0HHQ@^o9^B;I$JTPH zsavUDjUs}fni*?lkVt_e-&h3<kkpGcVSqnrchNj`PVt`h%se_nELq8NN;XnD(IEE) zEzopFS{(q|-{OJOU#{ECvo#q(1O%%KDDEgHRKHw~$jp63Q#Mm(@4}v+UU#fs2}*`! z?vk-7P8u~8L1v~WxSP=^kFbO*ei>RNT;xdC7GovALFT^WXK1$#0c%gQ-co#z@O&$& zD=xn`PZt}dFkZ@Rq6L>_xDNlrB9rq6y(Z;B6-UZpjv%cz8FK^*K--+U6yypZcb+~J zRDGjAE?|iW`k^4q=LPvZnKMZkBDp+b)GGymrk+76<@X_6Jht2h^%4rqbCMN02v_!E zq|6%%V?5<h7vBi8KlzmheRD3!2}bIijVkeeadoN-26>-SDKmcAyOw=3WR~<r9G~43 zSw5<sa(^MvEX@|yyhm82eWUQy7zz=c<rOGCG0yEg$(~w%v5dTPYAw_m>HZ+4t^5Sh zUhEvmeL-&;{=h1(1`IReVq@W=M<9X{v5NUFDBVhiM>68_^qQ<eAaGDi&{*5+iC!~J zBo&N2nI$U+@tLcUPsYfYl_f|c;jovREEQ5j^EAgMh(APUothPa`Yl;WS>nZ<f)&B) zo3NEtMPs`5%qId^feRrL(B4a9B@TFAkI7D~UsI=2jCgG@!bM$5z*BlNY`@S>3B!U0 zW}#Cf1k_I4kT8Q0r9C9mbfzI}l4v#wI7RFiSlMW0ksxLrE!$|6R&3KS{SmIc`n!Bb zU^=xP3n8kTX=J*!9L5FC;t;-R=h{d*i8~7+nh#D~)K|><K9gyzXCJd>w$&6`88-aT z`bg3~m}x@$(ioNpj_mN@2+N(kY1nIRg9@L+e^K=;2I!1<wnKT*EkP3_okFF`*yX0x z$YywWVDd53K^!A1LXrn5{h}iqK{zA4LEIx<K~yoSLBk{3rB5yS^gS_Cd3v)bY<wmP zS$a=o1wW$8jB#b2x3vCC(+T|{Qf8FYz8ST>CmZd$doWSv36!g5Jgl_GY-4rnx`Gzp z;ypKY<-QuFh6gT;l@v6-n=ePJq0+p-`4Y3Tezl6x|5A|o$VBW2yE*{TaY9T2;hiH? zb8}qKZ8#?dWlkvXxOsy@2k_VyzK}0ChJ$hkc<Bzl(6-S;MoD+9+06bS50nx{a8fMd z$reyb+^XU!^5Ev_loKrU$)-@sc#9Hk=@sQ!Ui9bor3C{P)@)OB$my+-htHzo2Dv3G z%+)^D2foyiOcOeQRJI)E&S)5a=~C4YHPbPdf740l%7-OgFJy5zfCD0jNLiFqfvEPC zladG9=TUHPxtT-%r)0zzgy$GJsy5fyymzT-N4f)oilfNtaRYz&{X;6a!K1M|Gqh_S zm@tKFzR!z+eU}py#>uWSvR9Xrx92(j479$COL7J#T9MyPESp9eK?qGWW*InhW7SYz z7H+3@D?tVp`q&m01AZ19avXU52&~Y@8S=&@>-Ze$^n0>Rh<eN$gLM`Rm4NN=^UNM) z(+BsZiA(t8)>8X!VF-_3#)b$UC1hF$9b+}|Xlle+66|v$xlrfGa=#F1g&P0mdYH4p z2#<08@D2@`_c#v8m&<VdwTQQa54+8ln0cS9TO6g75y{kQ5|layp*BVezCZpo#(Wbl zeC(KR5*xUF%wNCUjrE*KhQk4r=*eI4`uppZ(4HyU{gt$^7d0qtNfFF}eA*{v3_cbw zIqQKRp=e)}C6|tY+_V}z<?SqxJKSv-wA?N>4ELC;+#xn%V;Yue&i9u@I+}6w+b{55 z0{fdIVD>&(oS`Bk0~hi*k|9Ah)q8!AXisrL6OWbae?6bW-}zlLIOmwq$OqC#B<I4Y z!1hCX2G8C@d#A}>`~WOm!<Kw068TSz%y;%Ci*I#}b#k_u6Kk;>a(u0SfT6AfW^Hku z@4H+BHC2ZvNi`y5%Odh-!bPV8zf>}u#ca)k&3seoRViD;6as(p<~y<iKUDIiDE5Vw z)iJ98va3SfipxSjbW?Dyk;p;Bv)vm<Ky$}hv?pj~BMvhx%k=MPScQ=5V^`09-(==K zoanddP^zi*`t5A+jj6Z#9bYhpEX9KSj5wQ&C}lsF-$`bZ^H;}ku4NslF-&=qrqft+ zVof0YHoc)1Sygj959ZCwdNJFatA#GdJdYh6pnkT1q18-dz1hu3m#M4vv<@^yCXYSI zsV&d&4(M6-mpxw>K?7^Te^patuYcZn7L$3z)?jUhj*G^OeyDNq#%Tc+$Lm9f_r+v0 z!c*1JECzPQnG(n%Vblxle`uP*TwQ?=EX;R2*>7wU5%1PZ6@!t>-Kl;J+sHz=hR3cv z{T`KT4oipAh?JsjiMn3SdF-+M)6ObW(Vs3O%dyZ1tUDo%#~(_=eBf@=O>=9XFu+Wr zCS%@FvlU1Vv%G)453E`i2BGZ76l(x~*t$mVh^e~0@;Ah8OM@WfX$Ksa$r3LEwP8er z6wr}PB(anjh^q0vUGhw$buV@J;S7&&<zcg9N%%qr&fFZbv&(N+Sjo%G!jXbv+fBC9 z)Jqo(zotpQ^;xTvku8{x=0V(J%3RR6P^CFV5$H9Og^~nuN8-Z-2;?`$TeNH%rwQe_ z^syd#u#q6JwGmDjZ^A!8*Lo2>w{Yg9je`GtES!+t7bat32xPe^F&{)S<0%1@{P6iM zcKeSpAgF#M3!YEd8It0{zVe2P3eM?_INsh=MF;JO3ach7meJ2t78aT@y3V?+0AcJb z#v4)0EJi^g@drr`L;qm!<GQ&yFl;N5bbDhhBjvF+2rX;rdf<XlNXekaWZ+gREHpj* zcD>3jeHFx~O$n)ueh9*aPO?pk*ip4gd80a}xekUhe-)~Y%~qg}c8aoO72LVKy7*VM zE8EtDkV~~3daF%-j)r{mYGurfw%fesiagh_&7Vn~7)R48Qh+u4C_%MGd(|@TODk}1 zK*NV`^E^;eyTdcsjWyTKZK$bQ_s*h<b{pU}=u>^|*|$tKqw-+^oL_7R_xjD^vURn) zGCxhl-`S$QaiCF9bLfun_V*ZH0S3NLM;kj5N&+n8LP$dpM%zQg#}@nJk-j<U<tzsQ zAHc#we~9fC>HZ*6ceEK@-nn<pohTsC(^U7-gHDAnuclwKO`my8n~ajf<Z;{S+c;dI zz1+o(@F*7k;opXU<ksD48511Hj*ET)T3>TF2h4<N(?TBbyY#4Lho#g`%IV!aA5ZN8 zSh%r~x`NDv;a@Z?@*(lJncb0|bcqXGc$o#My<mEe_4pNn<nC%_%s{=YwM*~Jo-v-~ z)d!P+ukG}Q=D(3AHqwV7xToF44&ZhycG*+ah7{JI-$Lv<5sPnh)8glu=f@wKY2g@u z;u%1d@a>NgU)M0Pxr~vImXvV__$^nRDl50Jyu}l~zzXu4zpj#o4U3`@G+XqSRy<Lc zuh_MZWP)>QxfE2gBjai*iqKwIb2!2qceP;0YRT?(KY{t$VD#_QU?te~L|1BGC}G+5 zu;wRtG5^cL;_Uh=&yb22MFnwh`BN|sf<ytimV;BrM6&_qRzo1y?Ov+i9f!rNv+tx7 zaqnIYDt>s)mnq)E<g}G-R#2i@PvKG7Zz^aWRl!E2_S|AT!!}m<8DvUiV#WjidA<eL zKOv`R9?d5g&igp)f@e4D+JByk1FgjYj#$kf{b&fe1%$3x@u#*W2*j%ii8m$)=2@{- zn&p9$ui-2Ral`knKk=(hVjA-vJrmQcL-X)j>{7NuW5`ksALUZhw|}n5UU>Uu6fb^v zh^y8Z`CCpXTPBi`inh)T3gUte?=X&Jm<M@PCr`M7*dp&rqRWSM-qpUtNZ-4HwEDz6 zblyX60zg96j%fUwGIESRELug@@d6h)S}lPd;@U42k<llxiByC2tOAsggct`WL$K&T zl1rCZJ7`G=ck2xw*<M-|oG;t1H5pe6PA4;7<oW<c0gYuV58b&>*AeNZQy#Wnd2Lit z+Lyqs`Y{;l&j7KNFrEyAYQAedxf)FAK+M1eF*+T%Td;Y7a6SGeVKq!hNQ#kJJqsUp zHC!CzqOm^{L{tb)eehPmZ><<*H)QWDPRb_!gH>T11fm47u~6v|aGYWt1&I*_o_rn5 z7$S^V325l<i!<|Xs}3`{%_itqbsKWcTlJ6=vrl*nVPY-h;DPse+^KMu0jNN0Mc`z} z6&A-1*F0k!gM;U*c-4{y3#KRlbm|rxri&Q~{G?!2LgPiwtIA+vSs0FW(9D-(`miG@ zU#GN8GHe_|b0cAKNY9^opIWE`2fD!hcWFbDuH0SZnt7^pyhE-wWfghp{ARRP9sU*1 z8d$QCEH#cDd`id_G5;E&bFkMOsV8eQ@-|!>1h43e5!NZeCEQmCzme1}2R7j)Y*C1x zvC1tHhsu|+wc{_cz3oSLWHe+Zx!W+ABy!e>yC5|k3&_oQ860@((K5M8G|-tdN`?j) zh(>QXb62;>+E^^>0TN<}h+y1qJeA-<9R8R<n*kqUT2IE!p<0*Vm!`W@G=ew|Lg;E# z^F6y-K5SEaH2z|&L13^cwgDjs8CPrzkaI%w#LK;qFW=&?{9%FKxztsnYrl(9oV1P9 zh6v$tMS|D-c@qKz`kPre?Ia1k9Od1equHx}Th4ft&;(49<mcdl`#VZ}u<9ClCY*Z6 z;`(6*==7Rf)~@N?Z!Y*wNXsTzXXvYwlKpW<ZpM8vt~X*B63Ppa^@h1F#BP^r-(OZp znzpi$v;{1hUS*-<YA+*!M@pnIs5il|Lv}JQ-T3TG>#};VHQn%x;#XgQ{thQTOVXkN zICHIt1uM|x$Evw`Z09hfpX29zngFF?>Fq(R1jSNVys>61{I2D66(;^xyIcINZUS`= zGz<(Ll#6Vi&x4=CNrWYpdAA5vhscj+5Nx?H>!lrc+W`BvWt;@y_(vwa1rvLoHM}#F zZbUzsHK{EN$HdIHk0Z(0z;JYPo-ssQsQkzYwpU%K%s^VclOy{f<f_o<uEi-9UGPV+ z?(W{MyVgi;9`bcq%z$4##eYOB=(zrpUA$ZMTk20-zQ2`F|DpJHt(O=)k)B`-gqni$ z3Ofd7=Yn^|lZigz=wbawVg6fw!7*-=Tzd(9j?akdmqEUwWaTVaz!B$i;h%6hP*8W4 z--ww5=$WE<(ap91h=%Q3J&KgGc3rOTM_$I&DVZwq9h+%2$eTL3Avu~i&GY+>H)%MZ zpFWVe##cl7m?=Mai<xHB{*^k$5CpQcLZsM*-I*gc+JQUU;bpG>j<+on(fq*0wkjKd z>0&b#20s;2jC^)3vhMGa%TpJb`3sWuC;K%=8ijv)SyV&37KR~ijk7*w@QD!orH<q{ ztXih_AD17VSGOef;$D9f_k1c+5;xM9Qy81vG0zdIF$<%-QKPqj<+fsIfk*_{Y5(z` zqJMliG_Jw9qkkT)6=$6_hXUTyYm{K3BQkEew0A!l$Q8N!#LWr>Su*^{%H1*Mt`Nef z<-(`W=f-D(d!OZ*#%httuI#WKID@6#k*1nm_MEzKrW&#aRo&sWtlENoyV&hoH-r+l zkXnIPd-Pr4-S#_Erxr@dB+oB;RJak{^m$15TmNLB>Q%A(e^@F1J;2?z2%9Bx!C8{8 z3PJBAP9B?Cc|fgSgQ;Hv=EkmP1h}{o?d5!v5b3H&*kHN4{tm>ms>%F$;A|c>FN;EI z?*yf_cU@VnPM$r0^cf~?^d!^SH{e6-`iXWie5_5igJMn=Nev%op;X&ixYy&z2-z5G z;$OS0RT9fJoo=F{&F0zKOjIrNlbE_mQjCPkAk<*V`4>2Ks5Sm*O2L=}ItbLmvG+Ub z>v*E5o<7N0q3xn5d%F0nDdVN#0?x+o?Hz?p|1xTU&wk<Qq&VrJ`_9$nC93Six(=R` z-&ZhjwH%SXROY6<(g@qjdR*h}))rV-vMGf8aWHmZ1=tj3%uXgyHR0e_5&Uu9N(5J4 zgy35~%<@7NgpF-I+#kY<4XOUynlY6WC@4&Uwx@;X#Uii;=*_q_1x~+WmC==y#k*w{ z5Z|SU++aA%-yc*wp)lpr_v?$sig0JKw*&?7huKB@(S+IU??kdhP4`Ot+p`j4P(gnq zj<A~S1DRjJ7PHFZ-QmFGBu3~oi8yCOc6c0LhI!G${v?PCannWDSXsaNZv+3`b6b)q z3iZ@9JWhbc&yYS>N=wk|-P*8jb1RA<0BlFW&`XoK{#cZU(LSV-pN^T^B694SX?=0p zYqo@kqjMO^R@iL#ktT_hne5{4T!ho6LA(ueu=BG~xy=q_%N5DoQZF8GV=zC09}H^k zWx(;nAKN}I*y-8IbBPfC;mS!)EIOj(8A8ik5XScE?``-Oldqj(F#NMxyPaYP(dF4~ z)E9N)C5}{+Wnnx&JbMF?B>klq^=xijCr~ke;}X&;{)@bG)!+~1TGSjHFVS=>R?+e^ zt5shQL{5EL(aV+PeA~0jTD|6O;<Jq2wm+d}qhUY$C79l*Kgw#G;Xm$Yn$1~*D5|xK zTUB=w{}F?@ye7_Ftg9H$oE})BR?Y)ica&ZehXKKLUD!rL5>OvJ=F2PcjcwsfAg{Ed z4_1cN4T<WN<~WNF<GRfa8P(<2q3j0;;u`c>%rlA3w1AvLqhXQ!C0TRW7tfVdpD^!6 zKoS3C(WCo^Ja9)qqHJUI4F3ayzJ8~W>N4rk?}Oia#@|rs3K?QUfIhi-7RK!=E_CFX zig=#4h#@wHz!*+%bjl)R&4?@`RpgmPAxGqy**Y-2TbqcHW}QVLXvRnwi}J3kak*cA z^CSW3jq!i-$OkzstP?;%K)S&|K*&KrK#T#dcFv4q<`%|ocCHfEcII-{0CNckXM1B; zS950uQ#)f97dK^HSukO2{-UbdG=PDwTMznBX2G1S(Sm3=u@s{?>SN<EHQoiyByi`9 zaVbhfI1ciw{1k5$ZUOT-JA>7w_ibis^yGmy5YAl`hKx{%6asl4ERjVexXqk8c#(w# z)C^n+=hJPFB^wQ@PNUN#9=C|la?J`4Q!o#qYqNK$t5gYU(>nID;98HX)ff?*t;Vlx z=R#ez4N6^;56~hrNh*43!q(v6wfHM#iFJFGs+7!PAG@t`@G8<#;@7}``K=Bqi_(3w zS1`_Fto1q&kmxwRlo-@7ZV^jhq6%&Ji?!b#5TX-X^(Mo0aig2(%=pzXt@xAnfBucn zoPNmc11DZ_?1x+EKB+~z(_Z<ENcr}7rqxU&E;sUm_~!$+1Lp*>L_@RIbnJ5e!4oxn zfz3W4Y-g(Zi)tibF5aW7EJ-qj<<%!W@#P!%OKK$)f|5|HxWjc6C4OII@~SOhF$~v` zaGkQy^L;<MN!5gW6T3A_Oc1(hN}#I`Ifg<g#EXD$v<u_%!&#Cl&YbeOU&8-SNv(B| z-`XHRKz_r4fN=b8No9=PjsFK~Udh=S;Hv3t{hzw>#sFi>|0i;cx~(dnIl4b47+z|c zEl5dVNlV%$F@0+*hRkG5@`SwbuNokQHgUS${&lGeqkWJ61LrIBXFe-swEGC-%xSdX z#GRLiC`<>J9OX&3&$f%-40qSh=f?*Th{Rn__(Qs?lcFg2v5q6s1Maw=mrnd)P&j8p zxry{}BNU=bV)bhS&6_Un_DE(pX0_~=2l;<rnW_`pDQ2>XFKpd$5&pi!Iez7PWPFKY zX=b`KLln}@|N3M3t}5456Vw{>l59U3J>fUFptClNwDPa*gzYEXtlPWoE{Y@gc#7 zFVtzRd9pMXn5(CYo7!60T4a`6J!cvb7P%L$^*2|EE*i{A_42$0sFI|A{}Q*n@O1_^ zch=a{T4-vW8f2g59#@M-HSj>s*^w=cHs`meK7Dpo>FmJMb-_0NkK2qU&3YzBV}%gT zfo(&X#8li>Y)yBvuo2!;>rh5*-GWG^S!qkBl`9JgRls9z<pS+Qc0tZsTC;BoxvI!h zAyb>1xBdg~@6Gwo-F1>gOWUU5em5AxXfCBzIhkceFOUMAf_|C_tpvJ3^zyQYObO_Y zXjxNDr9YsguIXLQs=DoVwgnjwG{bMZ&J5Y0Z7Mlik`4VxoW<gh9$vzWQ&k;Fv9;uZ zXsafH(jHue;EjLR3%Fsf6hbEhTXmErj{egRsi&5JDmAD!XXqh>@u+UXowKpdOc#XE z2$vaYEErS~EP@w1MMC8Wn+Ey9MfpoiY8NpYUQWsxPg9)_^Ht3P$VS5{zAFS2M0rKX zgZB+$gv{N~=y&m@xMjbte3jVM^`&A8vxd~{_EkiV4W2n*(P({%;nKyp@6Mj!b7T{M zr!4`sXi|(OuoULtDA{Ojv*nlUsaxZSMWT`tX4CRes=6)B*%|jlMH;`mq_vuz%i)yT zUJ5<`sL=@&s&`dR9*2ZkQnF~;uZX5M1gBG#VA-PKr8T`<w!&FYCOk1WbhId?gsBM~ z*JeT+8JLJ|^T__f<ZZLZ@_STKo19A<E8+G;8_0xI*If!U8N5)lmR}!3qn%K9^?0-3 zj@@30)|3@lCiS<PxqB$tRcCv67}h`FtP!pao$UC<a6;OdU3KORfbWpt1u&ms=M`EV z!k!`!iNN*=4X%*jKHPqZWCXA3eL<-R`dSqo;?_QB>maEvP&@ofC|40$oTZ4eST)5m zpnAIV9c<~+wl5R2U3=14+oAz}_4^RLX>cV<x^QJi@Z58Ly6zcT?9=NeV9llbT}Xiz zcEuD2K7;Wf&1XnzwvU(-ZtdOHolcMmVR9)P@=Zd%&xf+o1^l|g76Gx;erLjj{o-Mt zNIIM>gE<kWq}{Vg@P~#wtr)sP)i*3PE3B1vD3MO5M3DicWx5CHIgu1ggZial7AdXU zKqfWc_J1UG$lT_Ri@<ySmHUFH)OJC^{!NmMnwuuOM(@4wU1D`IIHLt>=}C;2j&Jjd zQZrAoQv?Q;W`>zi$iKlnR226EVC>TLA6%EP3&;59n|+EMDyuHgg0_YY+B2}DKQqqf z(<`O4`d2wvir<(-(doZwaF6n{AZ9g)BI)oN{8H<M-)Y`O9$;;Ic{I%@(w3X*8DGf% zvlN!C0tU6AKtLYgK|sj<cPUhJaIh11c6M-<G6tC0{r|eB;iZZ$iT;B~H#Okc-k6Cp z$9|`U89yXev^z`@><NJ`w#3!7(LZ*HFf~J(xsg7Yo<50hWx_@||7nfE@K;0SxK8be zm7Ivwka+xJ9R&iDR_VjL^CPFv|Hkd-Znnn|)UH1cj-yarEGw9=dBPK_i`yEjK~k86 zhurnviIGY_`!cD42$~#U?G~&PBlA&;tJnw;Y4TLu5G6K0?}p%L6FeIq%}H;-Ia}$L zRAFKc1q~%lIVcn?To_gqHJkz)RY4j%!6;IS<}j=zULs32#+jwGUpUg%E@f9nN)|iK zQD*>RC$B&K4=d?Rq^ERXwQlVhexto=An-{3{H<EKKT-9)eVe74_dma>qKm-=BGfmP zdvZv(eYzgOBO-8NtVpKP2NFW(5~3)EVbJ7baU9zP>5Mr^qgafG8#uU`92h<(gw>|u zaK57C7k7cZqGTFTSFtspB)w(L2V~x@b6tP_BQW(CYMFo8e61y4x{(}>BWgX!PiCZP zmRl`I!EmhAX&c>Su^1b7xU@b$(31M0vq2dx$==3TxURZt**-`xuDoaj%iyl$5#ge{ z3zbaBdo{EU2r*S&pMZL5K673I;*YvNpKAOEhJ}iajHLI}?!T|joOvrNG-1uvyu;^! z)#4x;K7QOKwp<U^ggA_|+o|1G?;aVy$nGZD&yM7DG6+<n-KWQJI3U2d*$)m(w4ah$ zS`Trn<^NYrK(jq4j&f7=3X&$~TfR@`TfL9wJ27sKk>`X~qD|GcXn|>rk#`XMhf&S< zuQZCLn%=Nx=rx@#C!QUvcA|D|WSx`z5GPITL3m&bWfs$ZCr+y!?Ev*0`H>b4PAu~a zo2kYc$)1{)kZ^ka{m5gvy|Mv+GMN?@%CdZ#Y-;G$fMaymSybwDgyJyAFSDKdSHON@ z<P8_pPSq=D8-!5*f){3^_tJlWXoBg7_-^MxX34hwK~{J1O-!W}NYe!L^n>M~wcnT? zXW5ofb_@>wLscDr(oDkMPpNYX0)b=y?kf%IlczB%kKs@QHUX2S?y@HoyxgqmCWrSl zeF*!l)+z|$_9f?tG^y_vgCz`eTp@#`2w=grIqV}B)me6|HUu%;B9rUInD0|PF&n8> zcp8=VZ06~or!f6Rq1ofrBpz#7?l9E3st>Nc2GW;{^nQOr3<MS*EHtIP9QSA{a7_Sp z1goajsvhM9)v;=fP;!jZcC}L8*zJL>!-M*A0+zc+3E7h@1nOx--g8oJ4Y0>-CHh@C z+T9wKs1E*QCFCXTgxdD|(i4kTpn`qcm~<+sW=ZD5BA|V|@!9+5NEzeas8dHjDnEy3 z6C`OFMQ9-C)q^7$NhStddft7x<cJsFn(FZ@q%0F3%}0O#vK^%16o?zrw`M4)Y*RO3 zNYj1Z-_FoxURX>zt$ICm-rsq^{&QV*C@y`V>k$s_-V6Crexbt6-@&vi*@AipM*8l9 zip*QX%zuns<Vk$%Llm-mC_6%TyRf4odYcT3g;0ybPW(N-OFgN2%W_A@b=Z_N4$wBi zH3`99qYEom8j#mp7|Kr$!Y3_EW;at>!h(}4RHsFd#w*K*iYiitF;iL~_L0R&RwxV( zoscS5Ok&k?MikG~(wG!yPpBL7YpahGuvA-;CwXN}g&WJyc34%*oke3~4pEAuJhrUA z>?YrQ_pswACO`)}O;HbRfiWgnSqz{jUHfa}N*W1R+NG`;Qi>zr^9q{lmeVpI`MwA( z5yEx17{tmX_6B}uA{thHAx=^;t9^h>vU-}Jj@pWb;aDL$+e;l56^^TF-GN~Icb)x! z3Y~d$ng9`X(T37@LyAmvy)#e}>*4>y);R@N7Ixh_9ouHdwrwXnwr$(CI=0zyI!=c> z$xg?%ZL`DE=X^Kk`|Gb-@5QQG*YBKjjq!}h0j-5LEBB(s6E|2<EgLEgUq9svRXCAY z4D6Q$-`GD^W91KsRT2;BA2n)>1k1eVj0wYBJP=XTpee#qFk{S@4*93}HYR>IQtFd| zUTmK6nEwmm2it|Lj;?Ljm>GOVru<}rBWTR;0v6?rI&!ke2Qad7!9AXlz78eNk`Q(@ z1M{+eCQjV<%Ih!Wk<IZc9-XeJfvl7$C4$HFc8qloCtS0Upw*0hz=jXyBm}=xoa$np z>S~A)5Hk9%J)$-}Vmc`9NnCUSqpj3ec?{VRS}@d)Ywk-Tom|r8GJ46u052`VetB4Y zDE!}*$x9#T1c?U**1!t}_Wl2_O#j9$X;%{m2NPE{9|uz>d$<40T${Q+{_2a5!p8u% zdo~}^(Qui_Non&@<j^8$NU;@g*&>SI6*@plrnxyAhUK@tB~AV6HtTa$(V7mB0UA12 zdA&=Wyk4f}M)hKsW>agNe9-a6^U)-bV(|L;?fvub=?MGvmfuw8ao}|4ae?1H`}QS2 z7??&$Kiu;k4NRhEXupb%GfJWfTgK=t@&YE|F(eGO+Z!&_$o(}W6-Ks#sVcB6O%^ZJ zl?n^F)*Wc0oerh7dthHROp7eA1SiRpPB8y+&hwcwWgZEU<OS5u8#~~kj>+pk%FB|( zug>SeuyWa!Rj}lDPQ;+v)rVQ)DaMqh<w**%%bu`Ggc7(Gql(Mxz&+3MqeEfXZ7A1~ zILqc}L`r~XGOIt_cp+Z@B{o3CRhrFcG-{q6TC<v$nqBL%LtA_ChWs9afxYu{!zTx0 zdG8e77t`Lvp$-sQl+b#ru$Jx4)5so|v1j2LiIK6-M@0nxig{s5+ZXzc+H>F6P)>Q^ zN2m!DIr2vT85i5?5XR%pay9@r(Tes4mifURn?Gu_6aG_qfW#uXi-g|0AT$?CpimEo z#+#J+hzu&IWM>%Ouw<tk{!@LRkhVi|U_9&86)I?|uTS{~{<9}#R0H0yZigAGJ2GLT zdWQ?DLF0xGDyV$t5q_&^#}mp){e}w4N%IC9W~+L~0se_ip`G3vCT??-Yx}VOH&(aw zfFD-3(!iS!9RIIqj+<o&1y45KkT*}-mE-<EC@=bs5jbwPV~q(PEH}dl{!Up1Kdg<) zoj_{)0U~7onGh7-8?ewhv<G(&pHR|p;48ZTfj}y`NrTg!sZtgDh0X0LJDMvn#G|Wk zVE@_uWa5}b64muw@UxMb$0vDKv>R_%q(7=C2V!!e#4y4<K+x)pLe)5NVY#7(m0xE9 z<Kp`y)Hb)mjn6w#YA#T;p)U-2^B#wxR!3*MyUk~H4k`hOGl4S>yH<N$d%h8DAYJZz zCD#s0giV14v5`cjXXTa6d>Ch)2{Y37gDC#TL($E7$#ZtTn2}#uOJh{cW3Y9&q~j!~ z)yv$Yt!6}_scYkKtgEc?_>-ar?R*!_-GNTtT)>AEZ&cM<1}OCM8rZlsk=&^j-w$82 zvKmPgu4eK-7p<Z_n?LHFBOi;Rf`z&$2Cl-THfd{_;>yio#2!&M!ngsfm_G|LL|D3M z&iwS?yyzHxqn3^K5mGlPQyj7`eqKJjuATLeo-zL*Lf~pW+eCaUG5$WMm?(eYaJHm} zc87kM+AP;wAu}EeYsTUkjfFd&{(gbxnpQ4!&~KD#<KW95GM0lcXy6+fSJpPD?>@F` zARyaT{71rL0+oxk-Qc-hHeCHR8iJ}YXSDHP_!+N==jXUsKEZg`B#)=^U~qXOMQibd zqshnxG>cp%b<1~L#2;ddBvm%HZQgg_fdM*=q^JvZ^&7!?)BDZ7cjCU@l#+gkhQRz1 zhOSKYPh?Mt+`%fH^;0-q(Hf*f3HB9*Y^;{=IZb;q5X(QN$WNh!dgPy@kQz~?q`X9< zRTS|V_*EZkyMxoEwR%_fo$g%>$IG{dU2GzK`5v52r-#%H<<k4%QzUq?5ckZ-q<J|! zhz<$uOl`SO@_0%F|1PBF-DKHC5GO)@%o4*q%fJ-g2#;ZSu<h|kpBixJ<?cq6g_jTg zQUN^7yR*5u`Tq**zBH8L%<a;gkF<G&T#wv(cfFe^0u;;Ik;{GSP++o(*m4YK7@4mY zsi~ygyNC2cjV(RXg%B!qBt%Z_G1%-Kz3<+o5@hJf7Y{|~5fa3wON|PpIwYPTM>_gU zpff4A*KL_(X!#xLVgTUl4>j?*_|BlP`<H_qC8eWGbHCO!t7G^_!_&)>OA`6QKDU0R z(um4;S`40C@MPnfDd(G?3~oi8zbXpqGlH4bhnuTez?hX$E32r~J4igMZopC@8pA4B zHB|^s&fs4rJHS+fQEG1Nyt4r5l&bsWH%0JCKr=dlsRKBwfSCrM;YuaYaitUpSdkow z^{HTUtgxXI3Qekh!4<0C!{8CgAP|5Hv00hU=xf+ZeMyT|+GnQ|iktrVLg2r}rk-QX zwvSNzEa@*hybUx%e$S8XiwdfFVH0ZDqkp0MyNGJ~P{PK%ZwD()$!}#?){}qBOmTsy z$qW;MZN1Dx!GZM^9Hf5hQE>G=m3yV1`<51_w|sB?1)1QL8f!ZON8LZ^2T+*ZhlE6u z#vr+D)`~&<{*_Z_IijVxy1IJmXN8WCv0{)3q|i_jDivj%+^2ddNweU(&s6S?=-R#o z#c|9FkS;K^u=)kB*W9Oqw?0Gtw&8_WEcp~=%hwmkGdzGpM+{^pdf~?UN-RuqoUg$b zD_uIfeS<Kmn{O6fmdP2z=<I7n&A-Z_F3YyG4w32LM_=OlGl1UgzxY0+!KZfb`9k|= zz1sSt#oaqe^d0`IcuyEFCg|I$5U8<{iA!>i?Q>H8D@WWNtgkqr+$nZdtb<gcNg<Zq ztzwA?v1O+1WY!ytfM3w0jv95AYtH^a)4OnN(iA4JX3y(|B=*}k^=l0~Db^YvbKsnS z(Ac?yV2(=i4M_1QOClf@`FK3>J_>%iznM+|rcVV5zStC+Q)QS?W93gPnYej1kcsW| zdt%0LjtZ8wL9(*8-E8ZRcr!-Sg>DD;Upaq&7sagvbajr>G`IM1{{#+*s^*x|w5rDb zknw6Ku6+!DfTmrrl#6%)qQ#%kIby??e|etGX(U5^xJQoe8QD?CL8rDInGo4`r5)!) z=V6^awVWyLaxvYOPU1(#gZSNrD>;NRMj`baxHTNfOF=O22Qx^-h3$#}Lp{SOI`BIH zdVEVHgugtE(uK^wh4-R#j=PKLpy?c`9aU@^Im^4O;A(GHm<!5_NCrC>^{OSVS+v#3 zUA_}t4m$6aHM16UrNu6~BukmJYT)QDU-gs|+dP`e={)y|keV8&12}(q0+&#{o5g1| ze{9nhZcZMDF?<w<(hshVpMFoWx{79QAMg&gi}BU88UV#oU5-E_#l-DEL-1_yKDqgf zH+T4NjAa<Q`CUuc)(Or?C%bss^6Va-Fpo%EA{6F|-71yY;@{R(4TYbhd{Vj8D*H5+ zb@@A;ZBoy;JfZ#hY*ta(d*!X5ovPwo5gnY?-Wh$f$dcwNY3V4-AzF%}dc$hBm2}0D zGgwGTMiz;0+wm<rxHrgCSv~6SVYpsP+vd=7!3T_|dH6s9v#xeX&5~-pr|M2LNEr-j zgoXQYW_C?r<%sA}?7$B1g}Uf_>aws49_C~T|1n|-@MY3?7WQ<FO6_)10c;bFXQ#9e zQgTD_mTlRFwyQETjbz1D#6&%Do7VApv-t7-&@0}Yq#DQs*D&mVS#ypxt(t|@m~-mM zgD}CVcG-F1UdTCFDQB#yxT9s=W3*f1ryEA6>~h>u43a!>C`!Xh)RDLqvHHoCvHm%L zj*gS;g0(G2opvN!mU6v8h0@;Ucp~AJ;!R7=DqK^0TaUB9gW>MJ<Z@93iRtQ&9OsjH zN7`}J#5N4yHEd)T)oX2amt3K-F5C(6-`OG+Jv(E4`0y?d-|FxL+$oDuoN7E=O37-= zm^_j%iq^H7dt(+*m}Pwg)%Hn-qH8{H<{~>Hn{u=}WggYX&bLiGD20vx+W4+6Zp_z> zw_|r5|0EUcWiOT3^0|Npb{AlF9T@25@C*CiRCY@hkSVn~GrrAu6Ewj**7rjTo-Wyf z6*}8-{(hm!@Whgkf8`2DzN#F;uoT8r29*(a5}2Z}=xqJ4(88W1iKupmtwINyRzOD8 zw)>s@cy1r93?=U{CxGJayN`fSv`kOlG|_*2pW{db-`|>yT!i*dX6nrtE_kTgnn~bJ zQ(q$9Qls9~z<pG`P&Mve_~FJ#b5XFQDLBL|Q0LBCV*ls5#XPZ6veJf#Kv1-=MH@~h z-^ZZf>PSSaJH4!v6BH#QEoN=e4t-)=rqHK;EeoGz4TgHqmUv?Do7Y4*o<_En)H}yT zT*o}ev{cTZSA>x37%kGo@DB4Gyj_T_W_Uu=DA*vUqlr-krfwK^!oIgy4O~wO?#BwF zy%^zlMNEM$MRiSTPv)I8)&>ezg`^YPf_TxucO(zW&7!}>*>>$$5u$e!0!s8maq@{Y zXNfn%Hkg#D1KctB$X~{aD}Q)fEhE#C_u_TZ`34p%@|fgf@y>BAGpI@Tkwv2Dhcz=K z`d2KgPt&PN<t9rkAJWTsHV0uxY%IAonCf8X=OnhjPjkD=?oVoCT>N-6jb?X<UH0Gi zp%nUO3j=t&hPgPSY{+|cynTmZdm)7k4kTd-@&YpbU5EMT|GJ12yz^qdAlHR_+Z9a- zi0*}&pzMWEMSe+__!JV`XZWHKpb8@44l4Z7$1dv$RzUHJ+1e&fl>nBf-$u}AFC5MJ zdteC$uW5Q>r7~ZL$j+Y0g4_Htq<JEJ6UG(~>3{_fMA2T`jdC|e_xioB_7{r2Jsxmg z!fHnMTg8mMv?x=ZDTP8foHF=)5h5TQJ_{*b89}2FH!%V_3!dKEoRd&`&YhgIt_Rn? zXy*EP%u{rLoW-ADA^ln0#Dl8cYe3~{qK8Fn=8nztBC3S*YGQMzzAZP*&x8Vq7`1MA zauTJY0{3Q!%lO^$Na7EfuK>?zl|U7h)?}!u%?4qpBhy3}zBV9|Y&%)8nd^tn>cj8G z&;*r|>hvBKseUdVu7Tj%4;Iga-0uQiYp0&rmXBfBSk6?dY}kYn1pUYfEZ{kC_34m1 zbiW)q8G<>79tFCM*BT*TRDv(8EFf5Nf?iEFz&cLo2kjrlZ_n5+!a`RFnNB~|NJ#(? zNPtRS0ggMeZu2vbaTfBctY`zkg49F%(t{&!PH0`&$@N@w9r>%DH}7UyU`a!Njf*|r z&y^*NfP|Kq;?{^=6jcZy$!Xv6ZV_qlVGAwKgdt04jXw@ys#XgT{zkT+aW|H|fVHo; zZfMlyg$c0*3I9f-m|tEJ(cH*}tJTwBcwHmQtKh9kmb!x%hTEuSmQs(;TX7nfVRoFm z1`AAtR{8EI-C2&pm*Q!ZnV-o}U=~GKKsDM$tr>pm{)XpT%>1UOmlVlFG-D84C((|5 z=x$UCPLKk>D|;I7FQzt5zkdg622c{yP#B7+O$3%Hs(I(wnO|Qr`_y)faalQXRSwUb zAY!`}4z>526Mj9~F+S?vH~XQp_`7e)xIaL#-~OcJQViy^1~-=!ng4NkW5Lw0>SBi} z`soVx%V%H&MMOgYm6`<=4^Cv}_y8VmD289A_D{afD#~KTo*V#{-9ZEbN9y;1di*^Y z<mQufk#)_2#UyLof)+9#RH^SAV$=i^UY@}p<7_4LqeB}-<`JDHasVBxu}o9|Dv|l? zs;sZ?Zv2WV&F37`cWeggE14{wRPxr8!L%EiiFkzhgBEY*G>o2Pu0M(gtGTqYTi}B` zT(PBwV~1V?xE;Bw^MWk-re%>+4Ib{ke@_n1D%9*C^0je(crjOWbVdTojb>%t=_yZ- zX(J7bf{cpI?~xBv`jksv;yo|9Z|E!s?W%yHgx{QYAiXi@cNp{Fo%Z#;VU7oXcfbn` zdA`6hhb7&*zF;;)P2YIF&~L#M?u$D|*9OuD%>Ct`ZJ%%cNIl^{UG1fMt$eWGMhoC( zBv8E_M45rs1N~gEgJ@jD`^^5J$TRbw^g$PUx1f3v%2G7SuJ8O%ZpMo3T;}AiciS3N z)|>9ZM82mb#;Ik+as|7Lj99`&$P!=BZ&_3RF6<@Y&@Wqo1i^E}LeQ~oei1dSXX5K0 zy`<u;E3Fz~7lT&!(U``6>Yt;wg!0I5$~BQZ{!{7Xhdk{z0+LLz#=5czpbZBfN`2)C z$Y%DXLBUiZR&OlKkcq&3+2pP%0Jfd#E@}Uzy~DAXx&B(r3&n<QivH}N4o8%j(V8%7 zHo!yVYGH=K_n8U6-+)wSjEcczqKomGm7AAzZ3MQ`os}$p33r=1a3A2~|M;S=wx<CR zRsr>Si0_Ssx{8PqtSQNN+!;avgmAge9QGhqXQ9L}yGC5c!P~~9yLmlra1vwM!xFX^ z$eJC!yx2}}!Y&s+z|ejZx>8XChRZk2eX+cRV`Ihw={lnw(~U^^Tdvv>q7Fooek#KL z^cT8%5Q+;@peRm}xOdK<p;j^&K~u!GSXFzB5tH9piB{2k4>4*@@_A94d+>-cdaPtu zgGhU#8x+KY#J3Cuw1y+iL!tu9n!&jalHMV8kj%dn2juOWZ&cUGHca&t{$lJ--vs8Y zAvAn{6@4A@;GFF%vs#yX7<{l_M*E-<Tt|`+226Wm%qq<_Z^}K)KLl?89-3P?>9-^w z8ctVVgkE_4(MBwlhTFnUNMG29)|pCz;xx@tCNp9am;&741Jf%CKmih8$%gCV5??k= zmlRY>o|=DCe;lgf`;lhai7b!Sr#|=RNUbG2$z_Xbs&`>#2PekJi|D&Q4${_N>%~;! z$f?DD_1AjpSAwi){K}J686XZ@kx9Z3{R#7Uz@&HCS&$1O*!+<*cJ5~qn1R`UG7EwR z`X-?!$fR%i;<QaVCmbp{)dk=@GhKyonx6I64k_V-Q0RIQeO}=6O&VtZEUS;==2+(B zNKx2~wQNqFcks*3imLwW%Y8BQU$_$dbA^1j$X^Y7+fbrEM@;Fds4ScB%Qx}%JzSXs zA+ujtamY>=1EuVvf#!PhaXWG696G1#^b_Z)^A5-7sUG6ljgvHZ2ZzIeOq{NkA<U$M z4p3hh(bu=m7iQO$<+Osnke@P8m}_%u6ji}{!iKr_7(Z<%56aWiwc=^Z=!e$I4&h<U z;Udi0>g)obHjQ8Kv!vP5uj0k%<~kRI1$Ee9T!&dwTJ+ZM7*h5fI@2Hu5~-C8Z#@I? z2N0Ql=~+{!nef($aVa&(7+14oEy-2D$I+f@h+v8&;vze;f>XhAD`1hEwBbU?56zlK zlMC_<4^<dz<|Hsvq2|uZWepz@gbAJ^4FnfsvPt6IT2&VIq^zj(*&(%|vm;t~+_4~1 z&*-M6D@E9|CX_|ao-&l%zr|<L-{vdOIk1Irpr!d11n@iPKyx;DqqMM}o<Ou}b(2ZQ zIf7{fra4xo1g{?K7)~+PPmQfuT(20q#4TK=cUcX&V^~Qtq&^Pd_3SCo_A;sHXYL8n z8d6hs9dK)r`M8rmKgas~;zvDi8@+NZ%{cX}Yl!bVjRXJ5Ds!=Joc4}9>O|fgse=R{ z)mg+!{=jm<OV!~~ab!Wa2sPcH#<EZIoM=_pgx+U(YZEQj->-P#)KzBjB6)b&d(EP> z!OZ6kFKPB|8tQ+GOta%z*B2MqxJiea()^P|cM<01yITacsOinh<?6^RKqnnYBh8cq zaRvGJqf}J%-31<%^lqE0lgsgSzcli3&?m+!-;RAW$G0RkhtBlv06<f^$%3KIiU2<> zt4wv&&%la<9i#gaq79pGidKsgw=33!S&x-4L!U7KXd*<8#=42O4$T~<dr_|)_(#}{ zM9(`H-|WE8ifLHV7cj2fuodsOmJoTxBKwQE@7b9W^^*GoX~FksW*I?okEXG(v8$$~ z+GJcY*e(?v>Us3_n8N5NF_U{XF1_9w`V75TnR7x@aT##lFqdY01Wlr1E`j<yM&C{F z=)(?ygIlIF*3$BAakb+J!f?`1fhl5OLK)yV@*%5I=+TxCd_{MYxp0!83&WRIbvIc$ zPAT0Ej-DLeo<`Z~zczH7m2#ZIskTQ1M^3AB^toco7U(c$w3(IYOA`bD(#Q8a+tTiE z&pEZi4)EBabQVSXFg_QemYB;KM#s?mp-Jb?4x}q|uYN}tY5~TpP_5w}XPJxO>mdjp z{R`lzDfd({f@BYmh~v1D9%QU^^kjO$rHd(j|E?t}L&^7@lwC7j$*D(I7tNcm(2`yt z{AXZCi9HglMc!19=SdWO3}>lWhPoDBLlpgH_MH+0-12ITnVf!K3&-P_eCM#cBH{cJ zPsQS!$qPQQ@zFoKP(tDOi|nH=w-)=~59j>c@h+n#M*TJYY4cfI-m{A^f|O6ky*6sX z!pOJ+@F;J5P@Gk<oPadUD*}sjH|+heyfSm3JpZ#rhweL?BTmC$z~1)@G^d%V0E|HL ztw^mQ{+j}C93k`|DrE#l<xKPi{Rn?qO+<Nc4?jBPsDB$<pkW?Cq#`}E$PM@V*^b1J z3$2i23Aa^Sb5;vsh!=H7e(0ipxp*r*7EOI-xWXXD?ckRuiD<JOrf`4oXL0ana`0yi z@MksfXE*R?1n_6nkT=SZH>{91&JEh$;<OjWZ*N41(O>-}_OREhkc7W1P#dMoA-TBW zR`^xF<&O6sAtPU8kOud-u^3<DgRd~&_HTUz!PF{#i(*6ot^X<>s{pF&F-<fb4*2T{ zEv)M|ZfU}5txEy(+f*9ox$u!!K>fiE4Bu+d8uwvW%wSj0Y@80-Vum!+3hL5U%x7cB zzy62KNlUGIf$g7VjZ5*rw0#>BD@P|ccN??+ayk7+MCs9m^ZtJ#N;idDsz4i@i4pV< zMhX)&Wgyu%a0!f1ir}5l)B{Sq?1`alI8xpA*d^OVU9Co@MLNxOI(U_qD@NVc*19*% z8V{#MTf3UNoG;$z9`1W8_TtO0x6d!;?dQ8ArsIM~uc@AA!Q00k6flua7lm(AgLQv- za0c(JpH0fZTrV=J1o-Z5&Ev6*2{9s8V%8644+k&jmJPtD3doZFrR@@U=XB>Y5m{mG zWP4`-oyNYJBY?;x1!}N^w;SMBpBX6AsRd5Q`+vPdfY&nn5qJA!KEJhhy$-)9#m@Zh zJb!i@WK170XGYX3dzW(<l{;GrT>)#b0*wNV$c5|EM?8eOd%-MsH6w(7d~yHTmx>Th zGvTJ~<|XmkXM_);_;UL93A|J4)I8>=_Q6XG!(X-CJ5QetQsL)6!TeZT<<1Q(%?)6F zH;xg{G#d>!hS{Elz(U$?qg@EL9ntKYAHXOqp^_Vw2w|-kga{Z+p^6(9yf1kYq1{1h zgdHA#x!s0?uZD=_N~}*QsxQsm>+m^ts22t*{}+9smYsWeBbt8kn}1~_1(=C&gXOQW zYgdxDP4928OM=;3e4`i<r2ditY{%*?y)lTmru7#l5$+cr-3!uuDSm&E*&TuZB5Nq5 zd2b2Me5nEU(Y`C}Zex9lFTD$p^z{ePy=MZM176aB4OmaE1R-SV60!0AV<wmP`+Sm} zf77Dc|Lkk}IL9#;Vj40g*&Plr{$-%SqM=har^7F@E-Dd?g{H?Z`O{D(GdlxLS78zx z*=)`sHY+1pdS}Cta67vKjz6*`wQueJPlv};{8JgjAv;TY7sN&%UqO>oZH-?OQ$bHh zyYqy{)}yYHUE(Uqjy0*up*Kq?88z0}IVY$z>n|Ba%cnmJE{PS3Ew@eP!=TwBF^d+P z5qpykTxR1!Wz3wyimkr8RnYxuonEpSTa86TizH23t)gCIt@y1#!6SBQj87V8hOb&{ z;k)n>fz`v)6MPR+EEgT0)GU=`E*6oV$jI!iJtm(hvEG48Ny&G;2>jLfg|aH0<nk&> zm6{SRNm5B_+O=vLhBkjWmER@NB~>NJlGOBj-a_GfvFKtoYO`FD2C;4QXPWM@C2Cj! zrNQO=ifHsNh<s}9J{d{9KTqr>`R`m{^Gi?k|9&w_9@D<ImE2<)e5d=NU4g*6a7u=Z z*QGt{g=J83;up)5zBKOd-dRGAY4G!;8hlOmH>N?|$=l!BSUdO=UDJ^c!&wx}O=TJG zITXouZrU!LSx1u1y;2g=e_7|r5{<NIwz>q(Id-)Unz;Y24rmT(@#H0ZySJ{XMy%tu zNm!pav1DaaxKLJySLpD(!&yrN6J<pj)4Ef8rxsJB0T4?&Zk;Bi$xus<F$G%UWUcw# ztc=ErZ97>^1e=@tFZ#Sj(_~|^mPuXgL@tNLp3)7&O?51rCjim8CzBHb$W}~15O+#W z_jMVHye^~Nt7CmURHsR!$=J`2rNR%sx{X_h2uOp#KS!jA({yIqI-3>syG+|ItjU`% z;ecaym9J*__nmipgAf|Vu%)XIh-emd(^isAn<RZJ9}uAZi``OZHO6%WWbAFnHzHd? zAijH4VO-059-CXI-O_-6w*s;koSq}rJ3|Ze2`8Q|z_MRXWc`twA-%p{>Ip-iN}wq< zxNEJ|ldg@I5VMz8Uu<Ymu{3#%S5s%)j3rKU^qgbuZr7MVU=N;CzMFlCtdi=tq`i)z z8wD%$Nqdl;=GFRo^#rnB@kAh2*(OTfx$#b#Pua5tLz(9w=;Ei)jjY70;lhP$(`^HN z)M=LdTk6GoPGPdz8|+-g-yP#&a_Ss2jo9iHZsoXRq*9>crs}NcY?+l0bSa8}McB|u zl%&U)eTvA2Xr3ZkMvLRpx$Pjztu1;*uA#+5TrX*c^q6O>)UeW~U<4AF4#;%#&7n{B zng{wdig!2WaCY(_Jbp!Hob6;n=4!q-tR2$ZxUIWC&Q58kwz5$?5jB%x+9yctBf5v` z*3`mAk=V8AN9SsXASmV~MP+;QFd5&kJ|rFpg`jCF`LPUaIn33$=gJCK6uz8PQf&gf zUaXU3z2*#r*6ikl&R9<!yP`fwCt0X2EBzF^k^(K~J|2RTh&fJ4eOJn)y>)!k0<TJq zvfP7xwR5U3iy_Bxt*=_ZW32mQhfA8gJ7tq*_o+Tou8dK}9vD&!cFJ!dH$s)m7O`Td zYU}02a%7d})P!EsW&5yi)er9?&$>9VzNHpm|LQB=&UxVX&6{l&LW`#apZ%vrVoiof zHF4hG#3Kf3wzME;<~$GzI?W-Ft;Ri|12+-|w8M28U^!YM_Oc<tH*jO5#&Q_1tdAAQ zKrBtfnQWR1&=`siAyk@N)a3NoH?!kZJ!BI{wLk5QrHs;BjWDEwl=>_LA3b6%@);RJ z;i@@Mk-2nthpBo1K`f_8z8E3*TO^X*y8)RoaATS`wocg(Z8PPr8TUj!^v<wQ*f6N@ zL{VttSr1G-HgkT!@i*Wi%ma1mrvgb%$G25(>GZTTNcTXvjz2h!`CWu2opl5s>@!&K zQ4j-($n>}f9J-A04IvV_Sk`ShKvA9es7A`J)dUC=#iaH9TliF=lB9qKoKzvSUGQJT zR<d}x9y(TkDumpJh!sUaxkvr#QhPr`zR#l`f!|I^`9Z4X+0Iq|f>*S-s)Wsd%zIpk zX3TrcCGtfc@RW}Y_J#ufisYhqgbGcR@Ql)G<Y|Y&Ak*uo9KKus)usBGF2r@}WZI5L zjK<HNsie2LJNFbTvNF}|k`0=Z<lrabb0eRyV)D_E6=vhwvXaXjzOb4y6J+=qAC1Hx zwkv{BDqFM|kt(9q!oD%#YB!Psb_ENQ+k&o5#AFd35pSrn<SqtJmDw#mj8(&dnzW|- zYm@RSUR-;@ih`ZArp@jc0Lui4o_7E~uw+bwu4KJ;wFdkca5uxi9F#19BSz2ESkuNR z4=KW(JhSYP^`e=>Oz@C!;A-JnoAZ^t6^=?twel83uAM$%g0AAQZ^1xb2Iy3i|DG=E zi-W)?jHdbs6UyxW1TUW0#|U7ogtEPO!krvaM9(#2CtOL)%EIitaQ!L^`g<Y|D(xK( zmNl|bwod9;43jldYZ$e-ZGy$nH+-eMWbfxt*2Z-bx8KaE{?+AS(duzt4L(0MK3+N9 zsFITHJzIpxksww3%euDKfTbjeBmI3q-`i$=W%3Ub!y2U>wzlqVUpS>+Ct%3;q5orb z*%f4e#?MO>&*nnqU=MF4_XZJZzmFE_oo2iq;T9St5mh;km%p^njyV6vWQW@|LEs7f zHVG_qkB~T-YKpvK7lRp(q6r<P6`q_BhXED9i9~4t(Mi9wM$74`Png5~n)i6mK}xJ8 zq=AX%M$456jn9w41q-XzHjBYz{%aTeu%Xq|VE~yZXO#7_*t>fW-5~?oULDKb;V^q5 zQIHo^?&d+~qv4nV3$bM_q&g-uS1Ls1gk51C_xoOaL&|HJ*hMyaCndH6N(VX-TWbTN zgJ|(Y92K8gJg+`WCUqSCbzA&nR{XcjwI4sH1Z36LLw5n=9MJIO5QI`2A%nd6oU)Il z%W~CuT6Ar8!R~)xU*bjM6<UcQJ>((GSeyvDiG<8xa}DWM)Aq{Jd^d0Svo&AGx*ja) z<!d#*n9Ue>i_f4pFq7h_UX2#<I%w&$A7*ls(R{NpRByR|_r08Zp^K+Y+&=wI=BXet z$#W*m=*cx3YXf99M?B(5R<NpTNpUSW*6V653ol`lPsop~sd@i?BMG^5-la<DN@x=@ z%d$b_mTGLa5d3q4N3Lj=#tP(+A~4ft*+N-MocVL^5eX#paJlVns$d21dwEbCXnq4{ z+dnm`Kr5Q|A;_#=CfAYkL>8uX0bcdepthrTP02;))mvjx5tB>4ltrr7K+@ub)?#{+ zp_t5P87puk$bv}q4=5L@z%VkA%;lpUrtdezDFI)aZdEaM;S0ZrZOirJPpZ`h6L<nS z(60a(5)y9SDarLYxHc<%p~0zd&YN3!fN;LKPV8&CTC>-tdgVNNJix(~O$2AcexPrP zBN+{;VNVJ*rbShvM-suU^?VkCCLV(beF1f&PN!vrJ%*~{#HuqIjbm#wiZ|y#8BBCb z6JR{QGH+YJCcGf+r!d!?i+6X7-K{n9@2<#2jdL!|Wi1yzxY`&;SXrV`GAIVG@ywJe zM(j&dNE%nMks55K-)wrDmj$fDJGGpXS&sOWzmDyOxd0vMcKEhS>E-Y<*jt9|$RNq{ z_)7e@&3F@hb_o@6RljSI7WUcM(ce!ZVMuu?37vCwhXxEzdwLLy`ht<@`Ed2F)SeOO z4k6^F4#^@&<E9>&(A8`Fp)qY&A^|Owv%``!BfUq|jUmaB;amx-I!(?d#!sPxIBApF zoOZ;=*x!)fCTJpnSRcjCGxeDmv&eePyCPkU-FVz%h)roQNpn@XAO*9G=`06)H;PW2 zB~2~{BLfYRs@k8d3F12GApNja{OmPqsyMj>53DX?H~HHKp%{!?<bNn4z{RbOg|=wL zvOI)EOoK-wGy?{FQGZ5SPaOPdv)d|q2yf(pDye2%#H@;QyuiS|U$Z?FvC#&sA={>9 z=;(B2FlSWh?t=X&7i0q3rP90stZD}%D3*dRlfUqp7CY3c&1=&fE|C2!LBT0D*oKn| z-F1{QC7Nftk~6h&Lp+!TFO{jtV7uXCVN`ca&xBw3*YH@y@QcU%z$&b74@Lj2IkTA! zuf4LC*v1a;&}_PE99468@C{tco;G|2b{Q)@R=zUvq35?l_`{`d?D+yNaY{{3=s2)- zN{UnZsBzBSM{U4qkn?waRerL%sCKp_s-LmejNYkDXO}%`{$*vI59okbwGrx4jI|76 z2-*pSlolx)(83PXok7r2w?jR?#BuU1)kl!~Tg*FS-L}a)2G8Mj2Bh!gG!wiD)TSS6 z?Ezs*^*ZFyXRB>lfodzlt>{nJ24*u|HEi+YDCw)msPJfhy2iLbLd@{}URr?KZ+UT_ z-Pr{UWEFIoo<g*4h_WU^Cj8#$e#ci5&+Ca9j0h7!wij2tFf5qUBq_eR(grADd#_f> zl;%|13YzET3#geO$`_7LO(sO7I~vfVD|%AMxg|_MaGU*98U1~%Xya<Pp4RFTiKNG> zbrUWh?bR@@VAiQlL?2Jbq<v9M<<s4<Rxo0%pDq=}n>STnelY00qdl)JOX8*y)D1Ye z*i}Tl*Z0S*DbuN}<lv&v#;$MF4b4wkRuwc2;_jp@?&O$R#7-#{wBn592|t_)WXi_e z_q7of($w3~Yz$W-!(93_FN8{$O{Yk9(n+BO|EX5;@H#rnYIOvy@3e=mZ;M}ZsyJVj zL0FcAkDrIdHbst_VatDd&&6xuVz9>L8~!(r)%;(lsBgECEEDY|K|cAqRy0RUXlsds z$`67(IEQK=96iVb31ZSNs^iyH7*`_m5#=KKyOx>#W^qcJlU?jMrWLE?T^mI+@N~6G zTb$&*k=duI4|ydXbR9lroPWbH;-Yw>jDG1>@Asrbu%G89e*F^@)u_}oP<Pj{h_*m& zFBFz)U3Xw4i>Hr<XBW>`*tEov$hAa@tB1pUWF@(y4#}5pcj7y5&9amWf;J;>mpPRV znP1^+LwI(h{~=IzHqTcy>POIj*mGRZy2`MOk$`Q-L7@iX5!bX12k<|{j+?lA^(cV8 z4RzF(ac+(l@VR-gY*nBj<8)PioK6bN{^G`erE}}DvQ777=xI0@9oFIJk>C{`b1>3K ziTyV#SteSJY5_|1XM7qg&+wH@2V*WAk1TgL{IYZEuCUVQ+m#&)>Ldy^r!O5dXkP)z z)Q?TFcS2lso4wVSN!ZI@KNqvpg>Y<qf4MeAoa1e-qo%vbvHLXPAT?t`{WKDYc&tGC zq2?{kLZ&yg$ADw-3S`;s>@|VH3Ew;Kh^*SbL^&6>^pG%%q39(`^B$#GZ#H;xka=}n zYvo5ki(S^ce3G=R?-jzhx*X@?qPHVmm(1;yMDa*M^MBRK+IC%8+;a`f5vV;a6;ISp z^jZp#JB4_?C`7r#>pv=cWV`;mO4Rwjb7vh#9%&lazAkof#!qmSYAXaR$*^P>kxC8l zqu9!g?h?tk+WuKH!YE6GIR07w?YwK&7KzvPk(J;ncXe!v-ip*N^zuSOToni8Dy>5) z4!xFPL=e};Hq#skBc&71*JJaGnXU4fS&4?vt*)_+75kTowTK$^ahy!a)T%qyGrOa4 zl$-uRj!*FOQw|KKZ{V5UeK_MRSYXZdMWd-M1GX&5<HA`gai*q84g}U8M4WBczfl{| zai%F_GsbF+Qz`+d{D*u|V*6i{!#?PzZ+QKu--iefbf~?~;<8)3Jy;a;nrPyVvf?V7 zIUI=&{Ll(`Io7F3YojGtK&I<PBnQ;3bA=(z8`;s!kva5_Kj}xvQ{&EQjCQX+T?sCe zh$GGQ*WFs4Y)r{lD68zM{40)olg_@z(+>=M{w+cu9c&QVu6cly)f)N8?czDd`S*te zgVVF+`KuhBz*q(v)YxV|m?5WJAoL88Me%9=bo&tP`8BZD&N^Q0b!II(U^D+VG}U;4 zO8sLxmtJew^0i4J@xtyBN&tiYa+;{Z%60PmW$((0PP{pwoD4$$1xH4=v~Lst$OUOS zN|O+k{@m8~j7#q5=adlWknC|5s(F)mV=4uUPj*0xVVmpCIWm24Z-tt2)a>*NHlK1U zH&oH}@l=>={8!j3hYP~;3tVSx?OAjb@Yh`bflvSx^)%O!2L2FU&6}c_PKImVPp*zd zxeOFZ#jZrfKrQnT_kit^z3uNBUn<uLdO!72zSX}(?JM|*_8cDKywL<30X54sAk%qV zq_7mnrQBeZtO3|qdlN9y#Vy4MsgF`5@MD`G)(oD*suw30zFO*WQ1Pf@4n>HZr*b~U zeW>H%fa;2(_&)|ha9_gucYYk#KR75Mf7duZt_n_8=WQBk>r&oJz@#<qS~n$-w~{hT z1|YBB%X-E=&VVo~Edw*k_5@}rj8+#v94h9z_Fz_{MiBpiBw5_7mwJR~P#(+Xbek3X z+~PE83_dmN119o=+=%N|FVTNv=!+VB3`Xf)f2c1b<lCPw>GTaGZPN>glqeNfk^}oL z0@r8JE#fOl{fTLlALG+t2RC{`@!=sXA%$X2vMF0eS%%18Uw~1=n@gxgh`*fdPvYNz z0Bs<11T0F3j^5ZNgs-u&jVuac%JbX@OIA?}Oymu75DMnyMS$woySQJGx7T$TSEq?W zecJ*lcm2QPuechB8`4<wyqWTg7`OBH^W&!e(4Pmq6^PPjYdEE-X5%#S(d3<DD>zIb zA})M63$i5;Gi$ida!?=(0l`>^A!_hn4ELa=Hn^fQWXquH3h0%ONRz!h{YFt63P+?h z;}cf;b-31P?~B~(B7&8l)QLN8pJW|kU#`Q%9|cl%?7@z6QS{rwps{r@TBB&H?%9ts zb4h%$UqiyhFjN`#YY3^XfDM>bIm?F|CO>9{Ed({~Vl_DIq*bWDl%F<i@%)wRX1PB0 zww<*0tik)=Q4)_20l}s`XjG!86=LLRqU;mj5U@q#EQ{w%Ov;`}Dt?fqR%+la4rcHU zc4aBywRI0oFA<KUOs&wqH?odPT)BQue_0X-H(h8puhdz-9Y6FJ&w;*tjq4E~rq4tE z{*0gsos;`xmXESS8CygkHAuS=NO$j((-y|kv|(bJJ2;ecfF89fPdN4Uj&Sh|@5O84 zTAW!Z`4k-SacB1SiM+JWTif8a`gAPH=&yI*2rlEz;<{QU5F0xTA2<A=e<z<+pH&N! zxYN#W^7A*qBF0L432pqT$rP!{FLB5MrFN!Pk>OVB^mxquxRJ<A1Em(w7Dt};QuAmn zIDdHdhok;onlfnV&$MnPgjY^bLg12xo^zeyjrDctxd8k5W3#C6^7%3J$3|7*$jNbq zdsj~K<fyUH8T4C|-57D?zUNb~(Gx16R`NbPJ6k18B2JsqPSpF#90c{+#r0Ls_PCbv z(rJiPW_v}v$FrCliuPzZb%%U=E$uo&-Devy?B!X2e9=+aW>15!%{pfLm>V<0b%-+@ z-x0fN{evGWPwx+dLo(>RI1@&Hl%>IPL=G)y<EsPX4Jhh?#hGv0R#APCM3=h6E=2lJ z+&Ak9Hyj&?(*us)P>vzoJJL7Q9az1=>odV5W<nc@VLQkSk%Bz<S3_{lIDm*AZRocf z<&#}VXYQzpKmquxVdxGNrQo;OP#9-=f#}SBa&Jz7SmEH2TPkmKr?5(%yP$~Yfq8GR zz%Zpjr(4PwqF$uwov0h|PYA=Ih8;?_9SyqRWoy*;f=J-GHsxrfi)k8iVmctWV0Q<v zRN`&mh9PCB*_x^#{e{1SwR{XcQYp9{k8;aI-7iz+Qc$Y(8E;W&hvtL5bS)|#n}k)@ zzcyRPLYi*U7#c6|HvTJD<`MFA^cC+7C5)p0uPo+^O@{xg=KJPR_Uhv`xXCX;Hb!(k z&!^9(aPcNdn8CR0fyT{dF|WdY89Y}U2>N~_UMivetQY=~Asj*sBOujD1Y@2ngTzWK zWd6mWl^L>rbf+^d-O4EO7i7*wKE#d>A#B61=f1G8T_+yMUMb-tV^-`P7Q*;J7tAk3 z(5!Z%SqBgP$Q5coU0$%=E$YUEAoU)m{eTTF=oEKQ^#a5ukS|^Nc5l00cq_SH$jT7A zx8Nd&k~d~srHFq;;3>yDoa+YQ-)XuyeF~l*O0=TDKxxlAom8+|EuFeZ&6YzE`9{6s zbhUTm99597JKHz7k9#aLk@l<3vq|R{k`Onqchcm+#9Yr!U61pYStBLy?s@^-F*WtY z(k}a7lMdrdPlYw8@+tF%+U;9~UKZZfj77YlS+jy$96wMH_prg75to}7bRI%jM@xQU z)F6XY8y}MxccTNJGo1ZC*%3p%a=lf{?`(_*M^JI$ugk!Q#Tz@RzT?J>WLqS%rDkr9 z9kGpQPH#lV;mNhJMPyq}K8xXZ^e;*P-m~DkOr|BR71L$AKkhIplsDOd2`aQHIi?xL zg!w^!l;^02d7s6E1=s1gpv451VP+SbJf7R(z&I}AAf|m3TYNv=MX;`b&b_m`rJz@O z4``~z*D<p$xTcwA=PYd5ZDkmK1sS4|AofNbH(@(C#v7jj$Zm{R@H4y0B`fQkg_W#x z=-DEMxC4|SAlWGb+FfNK^s<I;{kp~tstYuHCNX_~%*Oo+`$FG$dTC(!l$xF(`7AVk zS1iDC6ygEx`}~MI9z^U0TiTOsET~CT^u{xLKa9WCVgVVA;s#-vy#qim2JyGc|K7)O zzaT&_1i1T7=J8*oX77sex7_TYYs>h)bk<KU&<hDWaC=H75T^8r81(Xch3JVD^vnXf zwu<k|Wc?HZy}aS=lNiSbWwCyufnKEFjNkG9Q87FKZNt57#^f1@c5?}W_K#d^zxe!5 z7tdECpt^rb=@o5{l!2weLuuHeWINS)$@;HFN#Uv5xErtT8+I1lLW>R`WUAf!iGGBM zet8xcqoXRnh|(*KKgmgBgqCZYiqs=_O18Wf@9sE=dmVlGq_2r<n>|6h7SDviBC1ec zYji86JxmbgBOysfU;WrY5DNZrIzInm>8|^|{WCLz3NsBeH?Eo7+!<wenHn;l*JfNZ z<-blaKSKB*g5ZVT=@t5?MP@dNrTJG2LOWAtpB_b&rXF|3SCM%CnVhcyS}k7%h{M-P zry0+;0tbe&T2d$*?Kpu{F_S@kPfsxJ@C<af!dX&4ZMG$yC+HVfkamG)GCNz8hi<an z$mmMGamEXYY2_LtRX%m+FxHDnhPyqolOf<icn^N^@A0fVl||D1J!YoZ2Tqb`@w*jt z_RF`-7c&7BFA`(zTVbZ5Zu5>oJmcxNa{lWWbvK)suh9t~;q#EnZXp^3o8G|I!TwF7 z=dK?&=M(~s5I8<o0-G=dL8(VV(}MzmAMlaJ%!pRoSt77%F~(d@yhm!t4CMmaqCz|= zn6<}@f11=`C%ch&W1z)DV|N&~67!^oommrt$89Js%2b>o5+d}h1qh441SBzbd~*J* zXUg6n6M+X+j?T!>vt-J-fTf$DrSEI!#Hd+gXUy9R#2@XM>IQ45he*$g=_|$EK<dUj zv_O)#Ao?f@L}>10t4AEq$-N`jfv#0KuS&>oeX9rbeqvvL|CR}@f8Ft+>Zumf5sY!l zd%@keiPFbjv?Tgq<;nwAc)9=3Lj2zH4Ky!>T!J(@-~OC8-(8b3^^lh@|L(WzqlE7> z0I|Y+b}YZ;|L}|5W<UQX*1SlIoo&YM_3v9e;z8=?@*72wFa>o*nKpQscC48R0})K> z$v=36x?f=p{Qg9OCo<F-obwlB?n=g_y?mU*DmacZy}p=(Gi8MKS%U0BSHF-~NNLtL zGipRLtls27tkGQl;-aB1>B`ywyIb6^^=0wm(#2t3c~D}fO5s8et0zDbFq+l0*EJn` z{?wak+Cm7QJ?lwR0vlgO6JL_5bIF>ekgqIdz>?WENOoo^ePJpskZwhkI@H2X1k#Nk zHk8OZ7Y%O@uMA;Q`fW0VyXgyYaQ+p?$)B{^4RH21XQ&MGLOdC~Cs7s9YD@*oN0Q(- zM$Ly9Jkf`pX*b5thhabQKl%$^wbNVf&RSb?4V3DFY`gg_naLKRDC_n5M;7Mzw`Gu) z@b>)l^W%M3ni`86Ky>$OUhw8P=dH*hweQmLr7?r(rBqdFF-iU-XceaL4~^q1$0e#8 zPCV1?mxkI~ZeU<VVUQ9P|CjI_p*0aA)T+b5?4t49GcRF%2%0-%eChcPYF9GRsU=US z=b&pBl;(VrG14YH!3p(@m~aHkCNgUmMB6+uPyQ2dbpc|#;&=9)rNC0gruJmpeoA_x zyxd5A`Fr7Yr2ZGqPlGLCUJf}*sZR?lAhTL7K@Y#4!QPh~!d+|N(^xa?z-LrJ5xv-1 z=0bt`k0y+Oxv+_`j)fsYe(}IP9elUL+SqpEd$qy44kLWEfm#bX3n_mtVL7YjS<g2x z$3M$RQ16=kP6B^RAhse99Aa_GX)?-fGuRxK{_+m<{^o$1KP@x_!4H4K>LhnV>Brh& zWfAn4nx>y3$o`E3bE*x8eSGQ8b|A5-o3|VmMgk<o>cu1pv@GILs+=HWNP!U9HYBuN zrjXRmGgVrPTE)6c6iCdj5n#~>A8c(Qmv}c|2`7+RvBf(*vCSmrq$7G5^L1{Ck~_N; zZnB%pHH!RuVfWn3EetmN@SPBV()28ZsPO<xD47JDeQ=8$HgZlQHg*a?^qgVdCG$nE zFR9#NdPUk0pY9KPVCYtu9w2xS=$2;guY7>_7i}mJZ7}=R6Cr-$z)=3|!u5fdITw`& z5(47CVkT8gJ7WY){k%YEIVr>~58B0hpu8$-xbdH&=0_T$Mgrn=d~lM(Y;(HaVhlzV z62SW<_>Zwe&w-htB5^{`^O(UZvc0QYV$Pd@SooH3r<4N-iLbwpp;wL(P{xwYes^)- z$9<zdPk7z<fxBPSkBbr(4;Ifs#Zrgi9M>~2=z-i7IOFBSZ6=(Uj>`W4AoTiyWcW4s z>+&wvx%-3J_$&9{lXZlo;EFC*=QO&aN^mMaV(TO*(f<h+|6HKCF1=`$I<kO2R4C*2 zXY}K$oJ)lD+!B6*r2^<{#%IqZw+m^8%|Xy?Qo{;k3M!s)n22Cc@Nw>S;n6o`2(C$h z?-<pFZO4z>0s9IZs|r6(u(-)lfpWs5-wiO+SQ9#tK;+ZR-PgBEkb8Z=B+^m49<XVf zx{~Q5WwU*Jm$LdS7SOx<b8_&03Q)i_k@W;evOlA;_k?BPUt8cPz3$k5$t*`v*>I6s za$zgMTF)E&?ZDMBSZNywST!_9VW|5<ls}kFj@5>!5tTR_ty&=9)YRlm)t4|4P{eZ_ z#WJ^b=fjPmI?f)AcONh;MC<{PH>9kVM_u|cW$hJ@)IvT)i+2|raQNne-6WlHX_>aj z65HG=eF|7l?a-Q^wCM$~4|)Jrkx70}S*&WyUCoW$&WO)*RkGp^`o@Hs<RMm|MUhH@ zAK@A__Mb$`?PF?N<iSf5YzHTR@GcCkLM`&396;Qpws}bTAY`6J9vA?3FVr#a@c`34 z_==T2EDAnOlU@F3{iC4wQU|6X7n9j?7oiYKeYjG5jrZXXZ5X9jlK+ObQ{Q@9B>zF% z>g@joZ9AEXIXT(=FMgv|zW?htT0Gv!Hs4Y(M8}0imDxdSW6^=eR2D;rl?@ibrbvdZ zdSUaCg{ERRu>_vY>9)3M*0pLhc??3?Ibg-Qv^x%$w_edKc4^hgpU*9I&ADCqHCrlw zUB4laSY7cyZ@5hdPWO-`1$vAKf+^EN>)${g@$R}zSh0i-$iQ?N{IDpI=5=mCz?^U! z_|Wb*jt@1%V+Ra~L5<M!hz^iRVX|jc?NAt2^185PbU4EUCI@VI@&^!MGP;Zfrp$Lt zs@ZTd%pyY5-_JdE7(VmscF>q|1m<Ggoa_H>65OZx<jIk~$EtPR1FzL=j102F>-;f5 z26diwZhB<YU<~1AXWke-E04!u2Bd->&zEQom7aueqgffNS;N#Htupg=O-ERFsfOUs zQ%)M8>&RKWJ~-Xi?|@#W>i`Vw6M2J|0^Ij}1!8<o;5}JEmB#I%kr;l?Okt(@D{+g6 zw)ra~9YRYoqJ5zRm>X5b{ShCy?k2D>c^qp8{f!9Z6+cS=_(*&%?2aZ)ZFC)zk|gU` z8^t@L-P^SA1=Tw?41c}yUJL{TVfv!1ZjQ4B0y09kwQlT*KSc&e*eXS#rd4jF;R|YZ zeBcWjc9O8VMFt9Kyo*DHHEyin4a@!mcLSi9HExdK{|{T|7~N^JwfT;1+qP}nwrv|7 z+qP}9W7}58=_LQyJvnpEyze~k%!gX*{#vzn-K+Mlx~|`s@W51#>GBj>PjEoJ>Mb>x z2bE`Q@EWCOZSWdZht9wy+DB<HM+14k^Fi#34OqYs0mp_skLwvCj7M{@59)UHzQe!7 z*>uqGoww>eGh$DDxdV8x*Q&SlPrr6-w|y}0dBASeZu!A(G;V>!c`NpBGEGB+-(TN} zzzEcDk-!MlZV{lrm>>v-1RBu@EN(-B6{ufQf)&1><tXq?q4VwkIz{!(!*f;~5a5wI z#L#^q{t_EVNA=Yj&~Uz0^Ns!U+7;|T`Jw^QcmAs#aXZm&pyE3E&5veC+@ra11Cr1X zMcCeBoZ!liy{!%#787Z(Rt$6F2tlGK7N~d+Qan4@Er?QhR&ae?mSmJT#$om6g5bIg zBnj?v@z+e4Sl<t#?oEOR2^%EaQWg!8^-GZ*aAE&u0m~NnCl9Ox_+A=8%(bStw3E>S z1$hMqyWIkZ)m|XJ^-H_>FsTYKmhfWB6{eqs6^*2*_7`P%-m!#(9g7*?zBrVa$srv1 zirl)3BS8rc#W{Ec*{Kzyh8}l|hwG+(`S|uvOU`@=iEMNA#8|PvHyRtYm}`;ru~*;U z9~*L<*z6y%Kxip5yBWn-(OEYK=?Wc_T%B6gFAgNB<6oGcHmQp#yiTPWxt2_^NExD( zTtnEg2aJm16>{Z|`N{dQ*kh(;t%_6-Y-Lk9XIqvC&YsQ>u48!W*aiz-Sxl4T%^>3@ z_GP3JB~Tv=zrGX|>xie2jHM_MA?>U<icqO-$!x4$n~ssQe=kLqiqAv7`=J|+7?Dtj z6d*%TIBA-n?TBL*29C}Y&WrcPBbGrb|7;urtlCr0v|#HLFaCyve=`M&RBP(_v-Q?3 z48#%@QRJtS(9A`(PAe<SV7^@VPPO6UHN4H!2Ip85F9&dr#$Wb<TT(-T7$nL^ip<y$ zWo|>j<nPC4^e8X2!*Xu5%Ft4AZX&6HAdwr$Q#>hgf5u+udWw5%D3pLhiFP!V6(;Ch zOt2-^5BMwit2?Vt_+Yx`WK3OaK?4Ks(ZX4)taaAkFK{SbMn(>t>@Nc~6$ooYQZkog zw(&`%&z`HXk0s+3OWMoEQYakJo^jTRGnI%E1s+XiGxXe$5L#YHxvD32p3=b&UI}<s zE_w>!I>F!N{(RDfRo^;fj!jm*vXP&Be7x`Qebt9PFZ{x*uDt<<K~Vu?0g732d!nJK zQ_l}n&2c#jAny-?s$UP{WD5|~{t*NVNJ^E5V=oF2Uos;BM-=cM@lpAQ7VsasBMi4P zX#ImCs18*6ieQkcp@e)Pa_e}+GH4qwWRV*kD+FZcE!RRK(P6A4xbUGQsa4-ET#Qmw z2MO-jTSuzPsB;EGe^7tm@H<7|s#V;=O1V{0JBJoU@g~*}M&DuxTfs94qmhX52Un2h z*=HdaXIQpS7O>1PvpCd8F&WoTk2VHtr6%rv1yVz2I`?E0L=h|1L`B;E{o4SZ>?v$w zo~$(qSOM|YthZzIe%U8MYE_I!-|wnV)R}6f^Yb^zKZ&>OLdUwg1ACARp;A>E?50Xx z(eKm`oy&YhWm+LBBZ`rn^HGzvkkkDf&@5COfmNy+#JDXLnN|&jfKOU9b7eI{wiL`G zCS9mNozv`@D1g8#l0`eNQ4g&s$<oBTh2XG;jWP6)i-cxqR1<^3`x9sVEg;7myhLoq zHD(8k-~<+$YH>+Xrf%%5APvM1=Tt^>8P*NYD32<>B~injQPN8Q2)akSQuE3bGF0tz zg=-c>Su?4jvAxji<jZ&X|8+0s*^d`xQ?@dZlVU_=m9|z>qCrn0tM&@3w3Y)%MkKSL z@q;q=Z#D7Lm?AY^?3$JhTP9YxM2u8bV8FpIR78;(S5l`bi59@PNaiaaYDx17glU}H zkPo(8gzCJ5Y?_nc60t0&OxNY86^RvjH|QWFIMNzV2yb3gTui{(J>uD@vs>$>d~Qyf zU~q7(*pQ*=JLu^7sC2Jw%`X&awF>F@nI7BLw>PHxF&1gl@1xdJF$KpsOQqyTC8-84 zLt(b26;E79x2}mIm6oYp{#@u&%-|=td??p;_Y>;fBh(=sZQM|7iH{fJ%EnZ|N@`9V zSl6``wJXV4@bUft>Yr^C?BJadb@vEA4<Q=1L@|0;A`+{fF-Y1G^+5@-he;fymnbr} z{yjGQuz*F$Gq2k@jsdL<c2#u4{nggAd$!uuX0`H@c^qOWC@ZPY(zRgna;M2m#!Syf z;=XE9v13g~nPzN7UrI7@epu?vRGjZXQNRq~EdD$5kgN@RAir`E717$Tp*s7CT+M`p z`(uMxFVQjs+x1PAl@7g3-rP9WrL+#JDaYC&sX2G0kKZqFG9c;5WLJFzdf^I@uFCQ_ zDSJtIO{u@8QLoy@UR?}lq(PG^u2A~;(UWzf&Kdw+99sFIN<_QFo3*-Np=n0vmM4R= z$M6;dX%S<E!H1a8sbB+61)%BbBz0_F9IlaN@8MLgw31VzL%eu=x13>*mBlQ~NhV7| z7Q4KAMsD^*D06eNns0k4_JeHBNH0`zliM9at(w~Js)I<zP*H2P!e_{&sS6URQ5Ney zD-cPmerwbX))?xq7+wJC%fu~-lBbUx8%VFx9D14}p9A~g?>p11Q%dSl#beSzo0%h1 zsX0czsfa7hB~iZ|;dbIpjiIJ+t4?7($=bY_Ktt1x5rWDUCDRrQowjip?1f(fsQM@< zjzsEmtu+TyIANmujE5`NLuQMHad!Wz>4S{sejC@iqfA;^yi-(tW9D3+gKKEhLV(2< zMZQW){>~O>M?%!AG&`+asjHi^uB#h>iXRC=TlgCteG9#;k?}4!@o|z&`oWSEwhKot zcahhyNA_xYGSAOKR`u1;k>5*r#5y==+gX@9uECc@GHColMy$lW{YGo6mcH;xENrQN z1W&`a?;KAQ#p2K0BKXx_M!>cE8q2~AQ`>&xHvjYvkFA1?@K*yBi(owVb+;;?4>G}5 z%G_*yImil|c_j0&RE0{ai*sUq)(0Y4p9+%Gu;|LMxNqWaO7Cs4GUxNV1OahHB}oaW z-fG$a(Ct@Sf38haFDOn27t63bH|c@DPR?baY9&pf>`I;!5yK$2O)$#XddrE1z!A1% z#k_&+nt7KnOez4w7{eJ*XQ5-8;}9}Tvm~dnPbQ?61JTisa|%5+D8%39HZjeHPIsq4 z6JY?sWY+oUtbt357;_UFi!SwG^=Fjtn@Q9^Xoth3VoEI`K`$K3#O}48y@{XaycCg< z>XCT#hTJR^yQ*;rKr_E))K?jq5TeG7z8irmFq`29WcXZk4Dnefs09-RZ(JVFgo2XP zzVVEUy1tl4MKNXO3rOD67q1bpYH(BP&nTshtcroR692?3-&w7Zv9aYAuv6DhDSq4* zYFADc8mqI4Nj*?xc!mmrR0?Z>6NdmVK54Z+IZz3`Mx)Uxn{C*W?bqESOzkpU)+LBv zG;(#1nu_oePVn?Kcn*D&+ev+NBHigI{__(=Tys(e95P$MHo5OWTSo1}2C4$~wG!ME zCmY;NzB)y)@i1-3M-}`)3fh1Wm8d&r_90MoH}b+LY0KBwu?d{n2f<<tRwGgrZT#T} zT7Nsdk5AO|m(`rS)e3#t{=wzOxX}%J%18;+-qo=Rcs?ttPAN-vGJ8oVmsI}UIjOaH zT`t2FU>fV|L<&_%ij(|48cEDf89^Ao*(Ki;I#pE1f*)<TMB4wjsH4oJy3@-<PZ7a( zYxZy~&kzdB=e*%0f?MDZ)9Cb&`s*S$`FSb%`2<Vdo?{rQjm&0N_7->NGOL+BzsouZ zMCC@k!*Ojb4<gpOv@Huuv+r`pLcNb(SnI15<)EWO?fcKf(Vz%{Usrd)jT_+9Uar=g zSOb7X*6py>Y|XIR8c(YQ4s1Xd>m)^f(V>E~Ie$yJMzzEE?;#7>!^~;g2)M>;%|e7J zvyHAf3LEXVjWuQdHxj2oT4;R#@*)(9HbYe_@~7*AIbU<fY&2KbL#2eBMR~2?d(z@k zVjRw%E<!qZcjtOPf%tmhjGTS@htiqL-CSK9F&rH&IE^Vv4wn`;c2N!_T87kTM*RKF z-m|K#kP~JX6!kc39FE+rPrAxP>(e%~k2QN~io+*x1wNK7qxd8&yk$ctZaH~@ez?EA zlk$>DC=9XOJ!@S)f1iK)mwvn^#_#8!+kmZGf-+9H&=ich!$5+wBkTgZ&*dhxo~V!a zf#Lc@fF6Ja9}#8m!y0Qq%2NjO&Kshp42otzK?{Uw#UKO*(!TM1$}2`hHgBjOVF7E{ zDFNsqJ)^=1E%JJQ@f*LTCg_}~hZDBDaI_#7i4xz*ioy|@ON#bIQc{SvipDS^p+G9p zAd$$0RM-6C2fdzU0lnsbXl^3HbaT;t8et6Hr%k$t#DtR=1kC^;W5k#=!uP`iV{>F> z{pD*JO3jIm{>!@}41W;*m+-o<jeHQd_Pes~SVO6a9XOs03U^)lUF<C3-hk?>bOete z$^aUv0n5aiaEE%51KC7-FsY7M3d2~g2NBoYsQkmXnB9-j9CDOBeFy#s(OsAe4jSn? z6hL=Ox*T#xL`mFqNR-iWKX2gqJC7A~^IAmVI&9ngi++fRa)YF}5FA}eG*ehj7=C~a zbS+8oa(qFL5eybONIwJ4Z;>~eP_hhaz<He%%y$I2A>j*3odHQ;!}(`z(v@1YEw$Bv zX;k?%pBZEsd4(Qw05#`6Yv*CBgRyTLsm~6vO*3YC>YtxhJOk%W3IxGe_)~fzw7qcV zNe0`dg}TmQa^#p@RHHz%#l3Ukx*b1wZ&4;b;G(^HM|d+0uvkb`P8U0fL!HdJl+%B? zI-{_B(D<Q<T%~Nl+%|@<dv1`Sn>^DV3hy<C??ak<o5q~uDj=(o2Y0sr;*~!u=5?RF zAmZE{LeHCPc`vXQh<VTyv5Ej=Qrljs<XIgSuz7Vciuvnn+&TVRkpnbZXR`JzTi0I9 zz|Urc-_nr-ejrH(q4$6&n|8<VOiY`}0W!@gHSur*c~nbG2;33tc;(m>KtuUfAMCyk zHa5`e$h$2$;DG|VZ@v!SA8Mdv)EybMftP}WkN`zM0uNCM-YXrjSElKe4}3s!x0c=X zQ3!jUeozamw3b42u}d`9PovRe$2H!7`*8esP-t(LW2(Q_A?)2Ot5a;6hen&``sZ72 zxc;+hLUoBl-gC_cgv3U-7O6@Ok)`~T#-MC<Vc@>NxEeuHH9xV&XR_`il<S~{Be1X3 z;{gq(XvpO}ybmMH^)K5F3^Y$vy<5_gU(p#54#xaF;UotjxN!M~K)yjHi`$Rwo{enL zJILzMi`8b3+EQm}9a@{yEjFES>P>iYk>xF8C3y!<^-1%|Nhf!LL&W1_Qj9ok8S%+R zMDpR{IYiF^W19g~U_jv`q=&0{6=V-9M4v1%08D<I24GxGs7}skTt*!7L!_khZUYsO zIJqjK>i)K{{RKw6Q<<<EEm#~{s%T3mi>Q<_JoVvF(nDfoCni)wKG|R369B*HBV3tb zCnuzE!<n`57Sz#0=81zF_01gfGPsk!4ofFnWOJJi*}UXDnXnW9@xKBSDNKp-A&soI zVYIej2yH?%b;0hu=-dEKP9V2iBaR1^$BiIAM-p)(2K%sXM;zXetpliSAc$L3&(P@) zbbko`!5byy+#ujNA&M`^``hi7khk#Tbt?4=PTp%bDkY;g0P*-}^l>l(GwSqFIEHLb z%;A~y=9x$p*h$n($Z1Y3@mPKX!5!xhdCXuGF4WGUk_O#9Wq*PkS1MHH;mfN<dIheT zlp7F(scR7j@~7K*`aq2Z{O(_|Yl<m)Fk+r~vICb!;9tm-0PxAZos@o##i)3b8L$<s zY+J4RvYD>%UkwIBS_>kx4J)Wx9eNF&F`KRW{57i@8!D9Vl%vt~;R{rf0yYf@T_<LM zfz4D@a@RpS$vbZ$bh&cc9mxgC?0y!Nc_3uU+Lpr`LWrBtL{Ea1*mompe!&HRPe$~+ z5fDG{6hKKcGJeR~7kKp`*>HcU0VqF+k{@OZ@FOR3Zh))h378kM|ChiJy>C#*Uz9I1 zE(@g2sNCYr!ksy52#4?lIPIEktcGM2cCwO56K~(x>A&2vgB+Hh{gvC<+q-R(_heAD z(x%f4hCF)ERbzN%@jLrzKe4*C&Le8%L=fd@t6I@V?%WcXn|NEHkpbpdEUD;pLz6qM z;and@CAW2<zSw<YZJ#(BPk58Z2!_o5;%%SM=1@Q`p>XI>JhVt!^JKV)h|nRSDDDxu z9h$$BSN}%3?R%!V`Mpga?Gi_iszbF)b>te!mf%&oo&GKnc8Llpm-fsG*-O0bM$V%@ zcqZi)8Dt^jl^MK|@pQkF7hv?DzTSorkiA0A<{Qh}fe?^JKG21lOTP7m3ZOjzL;eyS zgdzK=3=v4aElSDQk=Fo0EGE>60arr})QJglGNx6HbTXY2ZaVd}L`N}9r3^k2Wy+x> z7jDl0#R&liF=n<!Cv$Ad04|TNbS%vP_lQ2f4a@+Fk5Km1oer@Gh0sSdyRD)OZx;pY zVW2)RIS5r4p}m_Z2Nb!$`<ZFA6K~05iX1pM=EnF>$UAy%^Jtk1>uIa}{(4PKFcI^P z?QQEgv!*mXJS3^Q$}2h)?kczA9um)da~GEK!a;U1Ov!)=HO7y@kQgFmA}EWru0U*M zl%Nf<ZiK|P?9rtyQ_CNz=klQ&@U~@Z+dT9<&r}glZ`!5yDa<V~&b%{b{uAaThTIL4 zbJs2&b)P_WX-eY|eO~qqgHtl`AuW7DEv<_<B@}^{z>sAWV+kbJB3x<tli3M&q9-b+ zB{-)AJ1t8740UY48ym-%&gq5Mf2U_x8gOI+aczdIPk(@htWR~Iwkl+sn|ZC*KCm+5 zA^eH$aa8Ll2V-{9dYtmOmfG#H2fW6DR_IR!Bh<Cb9jby6njAk^nLRiW7+C~S76q45 z_Sv8aTBsjln28yv-Uy{0tzwkBUww$N9FRrjT}H(wPrs#*enZr8pxki7#72mrtML4o z+f<@^^Mz)hTwy(;d@SA!(VchyxE5*8%>Id!haa51_&y_Aw_~eRLeAT`-JG8l-eUKp zsj<+@BwS^~!TgH&(MHxvIqG>GojzOw5+RG#I-Z;r-#fwfm`2(ecDPl#GccTK`qVsr zWg(LI0t7aNK*c!=($7gSi!Km$KLXYup$pj_6}?a22y>00F%*4>?WwZ;<0cB{Km>sE zqPrbJX)i8!RXG0_8s2Z{kKQ)?_+OrJ;%Y)-`npd1=UV1Edzng(J62>5rNC{uq+JmA zl9`&c<`L=E{xXm36q<IDc|(S6qJvy4pV^^gvn$@4q+5Hao5WiWsu_~TZj8baB^_P+ zGGDIJ55MQZ&z#416bOuRhq`wlVAj6{SoF-<1aeQuHwasjlWju0f?A)1xHL~g+5pJZ zjj@X9ugJ-(BUSVK0_Jzp)Q$3eS^#Yh4g7rK6Rs{<Uijs(kn<ssr)CeRLS*`Z7XZ75 zRzI9W^bTw@j=e?a3rnHj)>O&eC5zzP`=?e$uISh`dWQUSVu=gs!UprApR_A9_tN>| zbL)c9^k1pT$qzYF7J-W1`srpBllA~e{Hn<;!+v6_5dv}*m80i^_e4+XiP7Im*r?_^ zDuQrQM$XK+sF%NK?CzWF?s383i#EZ&SehCMvnzKd=%5xdEao}m=!oeYRd?Y75DDM& zBh}L%C9rUv7h$2ZQhopIXf)8qFFa$x`_D|1Dt*`s&CKU3H*vy>nIfmwBtcZ!fyT7N zhG?}dFwU`qTiclw4zR;(+l9^>(FDuuFu87!2ODLB0%e06ZJDlH(*)tQRXTRrVe8t` zg!Zx{Y@5;ie2;uG%EriRm<a}H+qjMT1L?WM4zb%jLv~-i7}WU}?4MUK!-p|ekRU&P ze0&2gu>adP*UipRNJUlM%Eijn;XjlTKNT4T6eCnV1D%XQJpE%b1UJQbWqdR=Fz7q+ z1#JQ{^5Km2!9bBR7C9cWL+x~Xxfq-yVPp?%Iwcegde#Ag!^wWayn3|=VEU76pSj*s z|L45U=EwUXiXVQGFW>rBG|RzA=p0c=v2+3>SBUwa`d$yOSkaP~DN+7l<)4rRDkE60 z{4@X{t6UW){XPga*h<VawxT4iB16>yFfbEfv$V$VSBl2+1-`>Aa?inm9LsJpzc`L* zv4B^Yme>zpT_?w9DOAvr^0Q@+CH2023Tft%qsZ*mCdJY5rkK(7mKt3WBZqxe(E$`W zzU~VdY-El0-1)PN&N9fkwtLpjbd`m0;cP7hY6Bf%P_lRadTVI1RvDu)!CG(_PEtcT zysnwPSQ;6o*;n04s}Y(~K4eLb&1JpJnFjjoO~Ck{ZDE*o))7ZpEp;f}#Wo#86T%pQ zVc8iA^KmA?kEKXo_KF4O?H{en)Zrwmle~m9jd?Dytlchm({>SPBxNX_v%9+PmZVEc z(2WSPLM)3UG^p<$RYhrV?~}BOoyHx_=Ip2PJ1n(iK_`l9Kn9`(QJqdlec6mE=$Fux zpeNrZU5iiKQ?-)j%waQ4eDAHT5Y*=cpL(8rCa7zXTPxUE?+R@f++-ocMX+fz2us5R zLHD<S3Als3gVLGM1Fw)>C{IhEuUm4_^>_HZwFl5R=@_PhtZ8iRH+YMbyckv=3GE?= zZ&T|{j$3d)uoOO2W0UtW`$)nGK|UF_`8o?0xfn+S>C$1$twgN7p5h(AE`#MCzj)^$ z2F2cDoQjfi$YGAQevIO|%{<{hfBd0BcdB63A$`SCd$#AMI27fYL6=HDk%B_yEC(im zt0FXHddM|p>H`T?H0#IfXqrG4YZwX+6j1&gfW@75%cu>K)dY?rw~5-8ccZOt5Z%D% zA9fU+;8T}7Z)+F1EjK3i#lc(eMMBQ8KpKJSeMtBu5H^MR^Zv5p9sGfBf~de4a*8=h zBMM0CQNSFsh%tdl?m6eYxh*)t_~-s%7yv^10rcaC{`bKBul*zDX=3K+YUN=64-|r4 zypY16AY$m=qOctuYLGVz0CHvir$lTd6E*@U0{eFRpJCcGIxFaf{Ntbu&s&I>;+SSc zgbcae>8;PFKeNwsrx<}u!U%Gp^tP_CxLjvkXE3m5Y{h1^(z!i!=i;X-orFP8q8D8i zhb6v5epK^GnMNI*%GxVyz!XD#rgJgoz)yCWE{cpwS!LB?(rUy@!5%&3&T3|^^)XO4 zUwHuu+zb`ibI00mj!d@;!AD0w;(h_>KLu##**tY6KXC=hTqdo7Y&f$HQY>um_TlPq zhjQ(bI-vFGc~?c;F=RD$f1ZI5b8i(O<vJMlItb;rj$wFga^wp`5aqYDFXS5hbLEy? z1|tl<R}KH0l=OWE{2x-%f32K~qnXLST_*gL<i3{;HRpIpn6Ai|hEQJ?5!ss^n*sbN z=nP2s(8-EJTenRP=xC1_Ns1NluT^sZVspN|bKjfJ_FDQgc6!MZh;B`eJWgR$U|3*D z++{2M)@EZkCzwe@|0*aMrW#%y3Hv86fMFR*<S>p#Bg%1FQAa6`q12H)uYR<R1G;3V zd=|mV^JrOR_jim@_t)4-#T+8fv)(|$wWqYMoCFBc(~BUovGZE5F1-<D0L)f=9OOeB zTI(%i_ZO?{aA>((W`3eQVa{rTfFlf*DlMrIv+7?s8zYpoQ0gbFCL5eqJilP}7BY?Y zr$<9c;xJ3Sa7h3m;-sAn6LQqNZ*Mcdw2_mbLQcVRJYgBg0$rI0JtFe}`U<Pt*aHT! z>j{oagSbnW<PqFLHkUEWaDGGqr78<)IZ+i@6Af`VG80b-gB|>Y=oTr?Tm*+f1AvAN zLo{<y6>@?e`FG!se@11}AO@-DI~up&1Mk10@-J|eh=Zfoe?{ltk>PoCSmOr=2j>IV zrw2C&r*{XpcL&E82WQWo?wLmB5eHX-%dZ)368+2>?s5IxPb!-3akZIY6bDB?{YX(2 z2lvmP?osVu+%8!zN*FG|Er8T;^tV!SuF@foAOSDRxrd?Fqe)VMk!HTXe-JDKFg7qY zFf&I`oTUCnJvXT^GDQU6%FL|4IY+=SQ#3RL=0*a=3_`R7PA~<zO9?!b70i;8@!<hE z5^vz;N%##MefMJp04&BCXiE+*|39W3_RiTP_nnOP-^uvTY5#wCU4Dr(^4|#=I!9L; zs!T^644H+<F#^W>V>mV}B;*X(<k0z7P|9-B^1$hxg-}r>!oCQW!<0e7{>kh%%U+HT z`TgfT0IVP^2@K?wHHk8VvnfGvS9D>RiHHv~JYJXz3pol8iBh1Zo!7v<N3acD0xo#r z0a!r~5!wDRuD~FUfOH_T;c~)6A*{XVwAmP;)Vh{d#{Q8&<=qO7zFTL*vaGq~x@sOK z40P>J%y4tXJ2B>}g>mstoqbe@YV*yUfuY-2asxv#QOL(=jkfESICdHw3f15_?Q$w^ zL}Wd?r?8QXwXl2Y?=p@gzfz4C6xc7+IHb;d`UxNWQMRESsCv}OQ<Zre*iGG7%@)k< zfooj4G3<hVA)i+fZdvZ}*@?-;2fWS6<>1lBAKcE|MhNfQr5y&QT+wqu(-g?hDrYw7 z7B04RT>5OdU%>xNKP6Tc_1JID)+*YMA1MEoe*ZD>|98@*YCw7Fs-b;3G*3_cHalmP z%AOb2rk+_uEKzK0DzVxGO=@E=EG^idnwDXnneMqgfg=S&6BSj|{S|91Bvc`jIzkQ> zr6@{CXtMz-YFbSQ+!RR|{nzWBJXzM@@|0sQ$K}TB+lMC4WsdK(*GHi5Rs9D<)n~9~ zv`v&FGCS03XMzFbYiWW3)CTUadbSU8NVv7h4{oA0m`<T_hfrH2W@=N}adjdN=uWBe z8R0fCM;XMWrRY!j@mip5^kM#W`s6LMhj&8t19+iNq48XxZM0$BE6Dw8!jnVn%x#q6 z-WQV}&rpZ{MBm<LKZWrZZygbN0FnvG5+I(m5kDPc!^T1d3J(+p^HahVA}h;7Ke!?+ zZZY8ItY50bPFZ>D55V9q*?KAt$l$tJMOi=OhNiIf7j8Y^>aAbG!`4`P>JH$vp7M>| zyEz>Ln0AMCgm>ZhbBVq0>%syeHEzHF4!o5IpFj8^_XVKE#0Mic_|ni+=6QCcny2Fq zi~U)QHp5Idpi_5?)oG0Bry?S$+`y-2X9v<kkZ`mdkTs8hsC3P703Ajac}RGYal<~f zn#xzTEVGPRD)OwW+xDaoxWydi$c2w(MU9d&9`V84T7|>6Dd`!#mHwfJmV*bIMiky* zm58!sVY1z9=A>3kDQ%c6$e%Miad>hMOF7q?Kh2Ax)!)oq(2n5EOGVMLheXo;)U*wX z*ViEBGs0+!$S+Gf1_AS+u}nPQ$Ar{sPQ!L1WLF~F=+9_zQ;M`%4WBDUzh~IX>S_?< zr13Fu9J&f$MvqQEI9AbIGavPq<to+UGA8YiKuP$**SE|_vf6SEt1J2&FScyiZZ&Pi zijs=Qqum{i-V&Ou4V-bprgT#Go;O8+HsoiZQCUzPQ_4nX_=!`Wn8Hbh02|TZbD;R@ zcTi?UaF0>aR&4P#p`e&Omp@i_B2A#yZDGk}OsO0y#p5#lan_qW)5^6FYg_+A9#&oH zWhEi0p9>jmH)O=(2My#qF7k&Xch&X>&BeuMTwhcLnLqs^B};Wid^+<T)S5V#1)eP3 z$xsv#!!5u4nny?b;Dn+1yOHy3SIEmXlo$1zl>^$vbJ5KXJ_BRSU<ZDzs)esRgQ5;G zT6%<&LXz%uOfR?4O?1%&*)@~s*?WRr=!|L8$hE@6!jiAr4%Jt=cAn`OMcR*0EVsT= zq4|-CNT#P97$u@2XX((vnl8RIBqeHTa|NT>U1U{wAzu1o;kgoH#@^X_><+9mO)Hid z@AlNDp)${b;d^)I0^0H;+nn-Z3?n=wqOt`3hf7TgQ$*GLEGRi%d$MgeRKoAtt%0%R z$TetFIEmS9SX_D>i&JH+Ax1o;2E#dRUw)LTr-y$<W$bi7Z^V$%*N0B2DJb4;IB^~T zwWAD;ab_Jgxun)dz27Mp5nTtZ7AVGmbMRoNZ@u9(gw>zfwdg1$h;~jL;oum+&s9@x ztXoB+mwNU>%U^z^nlmcRhN)QEMU8U4Ce}**Op8(e_V&Byq?E?#PtSl?D?oLz@(-KM zyO!k!qIE71iIR_^-A<->le)&SH8tGYWk;0%0kIQ(32;|d88DDqVYRecX+wWJ7j|S> zwcsY|mKJC3ir#3!hM)N|6v6}Sy1DbOD8LErbjCW%_?-Ld#bE`Bl@)nzujV7rtImwa z6>4)!!CVB{1V#<JF;#QhT$7ET^k)Z{QWe?gQdYi}pYmyLJ4MH}-Qwk3ESJw-w{zEC zYqt1sOSjkL!odV{8;^!MH5e(^u>C5r)ri^{*pB?L9VApI_@Ye`aJzOUKvy=2uhQhl zLSR;1HCBhB#!6L~8*TgjnKeOY{eb5nu6xgLex*6sav!uxu+X!dsj&ExFuR<_L)}s9 zr0!(J%66mihrT4;pLLP&noC4=V_3M%NJ*V(+2<W8GiJNZPz=fFqGm7qXZ~%7<Kp)2 z2yjcugCG57ANxRqKH_1EI~_yWERwucv|S|0KQ|MMC}!ZDL|K;T0isbu=zE4mk-wo% z#_@T1y_6+cj@##X`OGATXk;ZKU(dIgKW)O=-{qg(MBePH(PT!v$Oo=2VL)sqTW=jk zyJfhyMXDd{`mUI-diB!m+RXIQL$C$5CvK>ZnDUTgJ8t-94>QnCF1K2`rgZ{MD`-fo zXeCkvvKc;YUO!nuUKi0hC(|b{oY6JXn<+YS{3ef);<NEBhMc)>BBs{7?uFvVc>UO6 z(wl8MKU{A*{{TuTJb1gQ;+x|;eb=+&J$-w}=A0jC3f7bR1mDC2)d~X@0;h1=gxP+_ z8b>AY61~D%qk;)Thk|0a3F%~GP;W-<Q$~rEz))q9GN8>c6CK077H3cwCnQ)g*CK{a zhKVcX3Pe#?$s2T|v3!5ytvYthZQhNmPvef%gpu1HdS5FZ$dve1klP*Q*(eUr)hkaA zvrZp&E+?}CF0T>&Gw~+(gmEK>=HrGILP=h@+8}KlY3Hsu#XCdYwXvQ{V}3J_*5jQP z{Nw|8ejrj9l5lr!a&dCtk!Vj2q25)6(PgY~hWSlYPdp#>yUV#dlnw*Yysq>>r=HDf zyfDumHP?46XmI8~RCoMp=8n#Bpp3aiKU<5%p>hqik?IeF@hd>fb}1-N(*JGKO1fsv zK!qcai)4w>Y1@%EkKM)W!*k*~(+~6Z!E|My?*tarZbTpdTcuse@mFj{x*pf>6Is|h zW0e`(+!@>%Pp<U8(EvFI0hi8*Vfp+9$?LY&)6*lJ2f>oPQ4e3%>ZL5V&Mar)^nGQ8 z;?;XSlvt+a)1o<wPx`*oLJOa#=$>4*-{4Qii#P9s)t~$6w><&BK9J7M*7qxC0L##1 z=Qz!s$gZX7fG4OsiI+x#K2nVS#Fr_mjkCp_+j|#)0NIzcbloq7#g`snX=o_#wMXwh z(uSOGuC?M4CVUU91qbVRg;w1)y6jFwsHxhPBO=PdQsK|B2El#PLJ`SPN6R5hbY)k} zzv1x*kk5+_gTW*)<QI6a0*`kb9AR<J9*p%u;4?7y9EId|WG&+mzOLZDuJA9I1h<X! zo=PfboF0l-t3`4Z4$!Th!MqxbL#++#W5U((p*^}VURW?PzO*f$2Iy&Tnwlqv(5CBo zc<!d*V;12Qrs27nM!V*_&selU<p5_pLt|aJJ`e=savv))JNHIa;5BByIuR^;LT?xq z+msQvm}3_lw|13x^|bjdPcw&8v)-R+*Cn++mUa;A2lm^+K9L>q%@Dd<JOD)eks(j8 z_<c3rFppbK{y~(g9|~2<yd&rjG1kM)RZw%4p`QA9(HP6jJtgYK>D*BD6`cBN==v%{ zo_e{_9Lu4eDtf`~%iulLbt66(-aYm9qYxM9z7^NQ64np`E%?S{>l1S|<!X7}VS8HL zFIJCDi_6(nlD#wWBqP;MrF&=>lbym<uwYd=N!8!b=+2m;lz#e&>&hvcc4Mz{*D$7< zv#bCV^~pzvlYN$`0qxcvE0``3KHi^j`9167)ozEF>i5t!R<N~5ZRg1lnsV?nt5sZA z1d3>s>Zuu{`_rmRPCxd_5!6>W#a9aSq+<VKC8{_+1_1r@^jcC|ThaP`YTfxBIREqX zDr9eD>*f7_u!#Rx>GXf9CLn<T0gN@owQu&8z}!Bff`vG^xPmyi{^>{0VbX9<Qp0f0 zqUy=p-@kuZm?K_Z-hFtyJGi@syF0)`JcmJALm2-;OgVv_rlXUUcbT1(0Hbwbke!^6 zqjQ~*ov5mpqMw_QrICHtPrx%%RErYHpj|+uwfV^z>2){xDXCeygW#^9ASm;Nvam_8 z)3CIH_%s<~;J=$m09=8jBp?(SGhqLtW@6cPg?9aJ9VUMRAu;}+*}6K|{rkLbr)sBy zqlW5F54ADlTu79Lfn*t_elHwZR4d(JR}eZXt{7<va06+V-JGGP#}WVB|9i%88%=N_ zD`nw28t;EA!Nu>v0Wy=cvEg#<_f6E|J<V%=zX=HVf-{7g9E7zm0Z`jp1NzVjG+z*D zyww(rSB53f?GM^UX7FNFmo$gEg1XVgo#uwWpEqc4w_8@8-xJsXehK5{XRI?f+8wHZ z<YT?)8m>2HPa=)45^PbpZ#3=<-O2B_Zx2NUT0!V{7y3hkE(Se|cE;w%rvz3&k?O`* ztfOF7UbD9KfS_$CSJSnlZ6l8#U$)_J`g<+4Z`p0tKeWN&l`GR+L6fd|$?hxn9#_@M zcUOLd?YKr{gi}{Y^w6Ke{LH|5h=>TSW^^MqAY{6Kxw;blI#kN_h>>`cjK>=bWDWXL zTyWe8?DEQg;)jDb1KUH{7T9{^_TksMuqbBg9jf6KE|V2LeCa7-jITlJ+(F$Ks0G4< z4ECGsgpme-ZLS4TiD@b68>AP>TqoljSr5ybvOcs1oD3*h<&MXvG6?@GZdi4aw=RE4 zSdP1*Zl7>J$gNJ=H{yXj#l7~d{SlZH5}OoMHp~ydK7+f5*4Gam^US8OM#zX~q(-6G zX9H1-;>IvJK;(I@uIZgabSnJ0-k5u&snV7mzv8b*b#=}!UirZLfDre~lHk`<$a~mn z<HTJJQJxA^cp#tDhJ?hVnN;*o@qJ)aJwk<eM`qV&-R|0=g~jHH5ZziI`SO{=ntR_5 z-;^64Q&r4_Q)1<#bqbdcYm1iw1d_`488u}Nf#sZ7MHgP-Uc^HyNIveAwGJOaUMas) zP3;^XASKxxW65Yyr5s`{-7Di4)JlOf;#=}#Sml%@#)P0@&U`4@q+wn<U<aZ-7+wiF z*2Y5@%(>aPa$!Xr7!W-br?u)7u@vwQ_)mP7Uh&R|OTINQSU_Q|CU>Zlejr*A*sf;c z_@W^C1Sbq$3ooZDGyWT1m_GR(yGG()6k@208Ds|*8}~&2sK#6C?gsxMW|lbK@DG?` z1Or1_pUP-iDpvC@%(YSaCQ$tYpU&vW`;d(W503SS?2JPPFOcdM+WeIVnfNn%_olk{ zTZ9uIDNO2Oq^c{`6iFY_JmU+p_$$}B<p655!Z~AJ`{r?;X`NEt;$uBy5zm`|fBu%V zHq?5+zZ)B=-<$Qnd;I??s>N*0?9A+4|Fc(BbR3YsN#sNHv^87NbhW~N#C(v@Lxv#; zT9^t!rBHySqW$c^xrH{(IJ7VVQW3H=<$V8lpVFcYM`$seZ_n3a*5f35>g((N9wQL@ zg1w1zdSEay>=av?ebSLll~$Fm2T{|y=jNGytM=Ngea#LkLdALJ*I!I2fv$vIRjd{i z;HkeMGoxD7^&88+uTsTZt0hE+vBF%L<BEo*A{Y!c?Kcq|z-1gyse<O1o=e{s%7AqO z2?wxMX_(DBu$7s8X)7FbxANp5=y&J+#0@=F3M+vQC4b#4JSu}w=Av~<t3m9_3KWLf zobG8R2Xeg(eZ+0Z-!kRL!xbXJ{)%@|d=|y~ywGD`k~EXKHm_2veCP2O9<*prUW{<z z7dx8IZFvvNcgv!$N^+NYwuVy!A~jr^;eQAbwuEN}P;7bD2iR->ZYe6$HgN0IadfDQ zC?lLaSziP6n|YsMp~nZn%O6*M8TGNIGq4zBPH7ljxO1|*NjOc9Efkr9WDiSB$5qNP zo$L@G+8?7+ak#;V{Crgtfa4{%CzkUSkN0zT`n3Xo?v2WWhFp&Fc7~yx!==_wQagjm z^8Au|rcstZB~SBE>D(4kJ6w-g{W>$r%%ntdr;CyqmnGM|XXvY+&_{Z`{oMd8t&iwl zmnjh&RsBHl)tc{R2g|#oWbGy(cpUg2eOeoo^fIFF*4X^_`0qaLf3oM_OvV2skK&Z{ zkRl=<hnzBw3C{fw4Co8$*m>W;Lvh8BqUebCZ1xbHyTA<e4;nBr#{-BLrNeF3l9%<I zOdgln%*^-K$1fm5;JLu49U$+9cgHtJEL0|ohH{v`L!;4X)|d-v)N`tz{^Za~`793~ z0KT8zO0y_o3#zCSGtBYH7ja`)YP^5zwV_*BE9)n=AIJV~*dScCA*D`Pr|CkUn;EF_ z&UvBnoj7I6l}w8g=#aCX!NN0K)IbL$VAjOG+x1AAw|YxrRJk(Q(S@c|rX(XA1nNtm zVu{gtg80}+fENOV&L;&d&$sJ%3%YGEk@9hRg*Gj~TA}VIjFQz!sG;!GUKilp10Po= zpUFAJJFdra+Dn}EU#-#nSwdU173~DR#QEp0oc8$@hKl*)hYREX-Ex#vm6QGdDWA0d z<Fq_WdT)LwY)B|b7$gyxAj|GfMjB)*$Ot6~jO6H(*+UA_9FhqY-O-XpZ@tom@l90F zX+?tuTBf$|SZ>=Kv9_VPUM-DYwZ0Ud>%5sUHD^}*yZ3yP9?$cf>vR20syz0X>*f6% z@k0O>47GF{FnZaBLKwi<#w`XP2s#Ufl@dP?%!WaI*#`4jn3W3)&J-024~`0!2h)Q# zXA(Ll&!&iVG=`6JJ)m^8IIzSWlB)w5>mo!Lb7INsywl|bqM**0>j#6+8SYO;Th?Xe z9El9&R2#7RVEQg?IygiIj49FzBnFhf=uC{cIMATgo0c<a1JZ(<wKj3>Pnf;%Iqow7 zr1tXe$ZNpYYE&JH1J-$J#fEgr=zx7=jMc)ephx+NF>o*(uNyhup5ag#r_A6PXnK!* zDp~7qr}DPO7&PcQ)mv3C4XX9)VfdU$xkMC=;_z%{iaMiB?A`d_T<E;AeQmI{PDj4H z>p_-VS&GM5=lu=(WjPTyuF6w4;UC>vR6}CD_+UO>$NZ}+r^9d^Ofa9A`*VZ{A-L=H z`{ZClA81O9lfXUD@RS`|19Z^#Zb?pURGx9cTWGu*1NW%B1_LmtA5p;uYPZ5*{bl>` zVEwZ(dy2Q&(Ec(5(WpI|12URZ4&ArPJ+cE+uSYy>FmZT1qtd#C`>D|SrTZ(;`o;UL z(E6u?H;3{VT6f;|_WLK|U=GGxyVK^~p;Ya6r@&wiDvlTdd$Tim(EbVoJZRgs`_E_} zLBRskgWb3G?9+VPACd##fX(`UNu{Pl1dK@jxa|9bL2Qgdpz@xPiXn8~^7j}FK%jn9 z1|ygsh<IkqJT?T!Q@&Jy5V-6gL0*r4Kk|GQ_uEZ1D()Uxw|zlsz#{7A`3>{bhN+_g z_Yw=auu2qj0SF~oAn!+F3|=@f{ElzJ3IRL2N_-_GiuQxyGC>__FcSQQ(w_N{u|Y(F z)*qO+qE^VZ!z4Dyr!d9#poFDE7;HO`AbOJRLXX$TL+#at%|+CQ$%CT9G`KhO-o<(d zADXRVBV}u&2}fk8KWxE}-|R5#`8?r)^~0Xs;lqQ;m3NWdSZ7yZTh*kj;GIYn7~`LC ze%>7;5=(9Y+6%mWQOnH85@RFc6ItS(R+<Q)4-L3ZY<7>>pEZ<PoD8FF#FjOX?O}sZ zn<MS5$_NrkX2a!;#p+mmku(Z%v6<@9#a{j~#Uw2Yknk#g!gr2M4~>9<2BQ)TX^`Bm z0F$Osr@~zRfOZW8k8(YyTqO9?ETUvz+G2ZKYy;^yq~QfbXi#Axu4r0`5Hg~EftJ#p z2zsc{4e8bS4ACh#x+D>nG;AS~t9$L3<FVKr)<!Ah98#mqLJu6H5Z#OR5Mi80e&P)3 zal9BD`F3>`tCE>@>{Rmd`$&E*A>`Bwhxax?jd2HYB&QY!7-wJ#&}=cRO$?ZedB2ps zjct>2ysbB`_AxTAPBny!-mr6Ok9wq9n;T0=9PedDj|fJJ(QC49Z00%Q)IP!ferGtp z(82S27a`j;G-$U4MZ(<A#Ths72miQI^G!oJY(dG%*SH4!7*+@$;d3*&3xx0<aZ+RE z<c+O&xO#=>Y;ZE08p&qC`v%F^e%i_h6$)wjlV5gm6H)(`F%e#|rM;{#nP357;hW)J zm@Yx1R}UuNra&VMkx=tO$5%Rn<`Ldx9;Tsy3?clXERdj*SK|$4<z-hZd<)9M$M-|d zR|Z&pU<r#S;-48*9J0K)Og0wDfe=BhiK$r3Y6;@`BnnUmco!#~V^Dt~=c@s@K2kvf zY7ZT5+u?onNA?b2;C+=w_KpZteWCtJ2BrOWLi-!SQ0<xW6j;As4eu*AvIamXF<w$P zNMT*-f`FyNUW{?%M2%CecmeN=WYo6*g;8azj}$J0wl~<0BpAxEF9-3ZHR7?)#9cD0 z0nqbR8F{|-L(2o>vzOh>i*vc}5ZioA|)_zFp5e2l+^tWtbZ7>52OLD_-@3f?tNc z@+=zsgW7*OCx5?R^@GE|>d?aWz1<Tc|Na*S?G>gCSJ}eZ!BK3=k}zLZexW{zEB#X2 z!)uRU7DLgwwrRoC<r)dni6Yo7w`SoW52-={BD|3ZW@gq=RYUV#oggDPbk#UwCUp<Y z4OfT=8Z@t%vosW8lG|Cj1sD|*_XJ#;>I)6;F`~R$hb02BOht<MO4lj|ySFv;#Jlrf zl?lsGSL3Z}nn&&MarX!$_(TyQLUCkO3I>c)P&{oFRmGq9;h3e+?U;WMO;i(Qlt@OM zr%%fGZ19Y8pyO2xqXD-e)OR6@BcM^rOiI6#hh1{1aYHp!l?chXhE3HhjiW?RtBk8M z%A(G%GQX)ZR5^=3*`x}rv#{ktHG<>}f*UHlrH`V*;#z64S$FH(oZb9nTz;x+>T7Lq zl@~TOH5Mx!nJ%BGPv?|Q@TTLeex|0%+1X}ITjO)^$hpNXPgGu8URzpKwO+~P(Hlch zucVUa7Ibti9?sO%87y?9aUZWJ)%jD3dd_}(CJWcnpq7!8lsT#wp0Is<`S*5b7qyf* z=A9>6u78}D<pWmu3Jq1GUuK!Cp=B&EM%T)I)YtuP+`OPasgLjOV8H%UUsbdHEg}-r z(~+2}ic;)oZ%}vN*f{Pr*T>vB`SO9xXvuS=6ePA=`6RWL3P)lO))y(xBGoM`MZqoj z8Io8&hy#tf+O~*cWKh3~8zbts5L7V$vp_UdH4)m%CeAr{P!fe@+f);}Sp!DFK$*|y za>6V9Eu!kw`a14S5GtJ^wK}dU(^f-`Mh?HNC`vIRt8T3;Hquh*R$p5zieipJP@<=% zq@dx$ms>T~<}GbuJk~)QWS%Lu!t)DD{WWovGpx(-jAeUfzl7Vh$55Pq0;_nI?%|?* zE44jcB+JChrCew=qclTs@#tkW%RVDBR>pvwYKRDpt({(<9x`I0etB51()Lp12g#z9 zR)`WuT4zMPV#erxJ}^AdB9nbmS&|ZW^NWaDjY(y?NF*ddX4-r@6Qo{+aq+w*6Sp?1 zGY0g2pHFSt;@#{C!S&To9|a@WJ5X2#jlu~&pB7z_SWStYNMlz!Hs-hVQxL2@O&QlT z7YA;UG#ZSTF<ZUjP#xWE0!oQ7(ymJTYOCDlJSbww2%ev*U1XMj(|3nd={#m%FmQ^+ zuKAjPF@kKJ4x+cvaXsQ8Jb0%`zLF)=ZwHjF51$|uy|aK1wV`Cbhw*izCX&QVSvvh- zMGD7-EqC_vmGpn>hy;QQQI*uW>?Y6Q6B}ck`FUcmq1Be7#HuuDFCgbt5DcxDVuf1p zjj*?Z2o>qQcwH)rgjl&nld01pN?H9(<ltJ>Hr?+A-Dil>DvPveHAbk4LMhE)`!~G+ zlZKj1NCHU86&t(5Z$XOO2kIykE@t~2!M(U?u8GCf#^egsBqkft*)rH?IyW~Q!6`sy z1{c@nt0XY5=qrxFN@UnknGUi}Z_L$Ggc7fw6t8I~cOlG4@O_X@@|<6kk>_ksNbG^S z=7bmb8uUvfe#rLdqtZ#H%yO*LCbGN7(#U1(6P_!t+XWMyRuE_FXG<i$J62ILME8re zJkcua#AVlhVr$^kol<Ax5lC_X^N-mK(e#lrWDt)@yNQ2kh<XKM4M5J!h0w<4G31E; zWOdM!c*o<H>Xf`DX3viKMnmI#o8_|VHxhXwa~(Y#=@yO>-1Nz*Lxok$@XDaClwkg$ zo);o7`bny%8Y36LQl9I9)!SFVwIl?veqyF=q-U-`!y@H8zBb+|Hy+}mD!zlqu-lie zk2OrTFa3rFhl%upD*oO;BAQG<16lYAs?Y+Y;|i!%-04klyM_6gznS?!K%NFGx%l%+ zhXXdK=t;=?lD&OXOH9_cyPef@B+~~h-v#@T(%zDQ22Xy@{r>AbK>{g21Y(pB&q%nm z&RXE2O$HW)){eVdyhN#>?fF><xnU;T)ed(juZobod(yi;!IQAz!^=}v84#{WxU(gR z%M;EQJ#4d<f{}>Y5^Z<;;>m8UnJTR%%X8pU*OPR|B+{s+yO`8KC^s$rlG6TGfz|2W zCo{@o@dAVE1WHz%rAV1za-}<+VM8HX#lleCID)dLMd^EPX>GNkDPeZo=At>Z-c5jH zvgTtG)8V3gJ!{_8I&s?D2!(MOBGLZB9tKmApxsndY9>ZOBJJ{aPBv7x-ZB%|mzp-) z)U+zgGiKhr|2wewB8u|*(dy)+Bq2h0MMw1+j707eDL)@9=5|aR2WsQYv4tgQsK~1W zu2v(HRYuEbp~`{v@RnthX3yX-Uf6uSy*zj^Kx+MnVsySbEYc^o5n26T@}bPGHJU=2 zC0c%}KfZ~aCg5NQ0<-f2$k~itoVlLQx8dY0VR8kyEDy9J@Ydy~06Vf`(&TK;D6IC? zkRI=~!2D|&NR`7&Jc7oYRj8SP+^K=w6VluaS%nF0ABB*7r#P6nM}GfPE+Eb<*p^ev z3VPhtcBd89rarF<QW^Szrkb~ui6Pgxd?#zxi9C}<zS99zPe^!>z}zqVFbUHeB~RHe ze)~`SAc`{&Y{Gt4rFT}pTwwMKAlWC}0+?Pq0Z4mW{A~pHxzB{gryr)*5M%hpLN8dY zD1<7|jYFD_!uT<Pz?g7LM#!i^gZ0d5`=>&J;Gg=Q0+gh~8^+ZD*x+jRenX5GzSo}# zY<qb&1X`{%rs-WPLgUxlaCV}UDIrMYg<+5^q(oz+DM*Fd$l_Tck)jo;Axh)}YFRb} zpdP32LEZ6sD%_C8H?f!c-wiQ33O*Vm*y)f+Mi^)#_LKqKw`>?TMg(jl{+0o$25kAT zW<#I{L9_=EHrqn3Z+AkeH?eI`jYNR0t>_#-W;22_1Qb9TVSqE_+mt95Ajv;rLsuND zK#3C)IV_IDu<msgzwM%c9Wv1!&)1IAr1R2^3Sl&fe;$ji37b{w3TCRbCHe<h*_#Th z3$ARik`ZK6>J$EuFSlb&2(Kpm*fC7?Ha#ua>p|i6Df}ay3gaxzc23)N$r59_%u{+N z^e3ZR#Mbx4%P%0D<CxR0?EMPU_tcTLL1bO+E`+i_pygwHeuz=L>XL{~qe7JA{hcxu zL>deG34$CWn7_U?1@7bITR!`~R3B?;x8O1_G5?FKvx<r<>b7(eEVx^tMd9u)!HUA& zCAhmg32ueEySqEVogjq-4VK^pf@`OH^u0a)+wbS)j6L>}z2;mWybn16Sm}FNpl;I7 zE12S0!IzgVynB*I+OMk&%}75bF=Z=^({+M3Q>nxHtS|<d2?T{`-Q(!KGLa2!ys*dP z+V+jj>hgS~^I09F<GK*lafS!`)YNfHY1%WLhfOePjfvUaH}lfInd5Yhr!;tD9qUci z9A>Lo{&NHAKl~pzki_E6n9*Gd=3vt1m{Ae&UqllIt4@vYyyiKYc;@d2RnLtS2>L^V z&p1(9rgpeHl0G=lxeq{pMr4n(wGSG?^N7)Ucg7bSsD4P#$8G3={J2CRzHvYqyki&? zEy#GN4W&o{zMx8k@2IvjE5cslgx`X5E`_GV!w(9+zY$_QUiI0$HuVvoryu>o;kaOS zVhSQU_9FM2QCF%<>hl?B_N16@_iC0a6AZ!my!#5^Tm+1l-qN@(<&SH!C082(wR<sg z{}Aka6PiQ47<~7Pa30z}MD98q@CR7?fSq||<~m8o{a4)^S2X1AC+a;3m4EC9QAz#i zZli_`k3Iy?YH$4%BbJakIl1=HnT51}or5Jon{$wbaIXk$<@lbcW*dzx0~;oxy97p+ zO3077P|#02QuOj&qROe5G*)>AN`5KY<Q7fI4vEia3)(~Q@dwQx>At|xN$?UR+|UhB z=P-x8zQTJiBz~c*R*t0OCyQ=?pgf1rG|Vq>=F`^8E;Rk^U`$JlJ}5Dz*{32?;g^^5 zpGe|gQFHM(7!l_`gBP4Bt;nXMd7hUmM4iSP%z1M_3Fws4d$Pctz@x+6vo|_?qibBC zUCLyS>q4c3BMe5WE<`637h0C2;~gMgMKlt||ImTbwrATx;;|ZI<o(X?C-P~SRU>BJ z7`ijw%O3*7pKzz;p=+TZ+KX`8cRmW!(R99=3wT!HGh)R18LDYy1U>`IcQFKZ4!D1I z2J(CFj^N3p&q>H2<4zN2N6kLyOUH@5e2o41jz0iv_NU6eZT#TX^m0?gPR$80K5n-8 zM`>4iEO_!(T>IqQ%n74*r%>}9TQLtS5}%PcYX{ENC1XbP$~Uwgg2_LE8DZK(A2wvU zjG%-7KL{Kv1-d>uU6>bEm)Ag-8e=q?X!&eS)9-CG+#2jBvILNb=7GzdigR-RKLxgb z!ZC8;CptZ+U@JE+Yn|o5cJxYpX-&qTn<-j%->jdp_f>zW#rhR~2>Rf5NvW{|)Cs*4 z=Mt5D4Mb5ID&JAqy%@EE4BEk0mOaKy6xd75pnVf<%e=s{ZxFA>-yu0O7krzW1Z7YJ zDS{u-6-Kugp7}nymU2r_;i^!OtvNAWT>4fNQaoX242xk(8q>w@Y?*x2iER%Svdo|) z4zDu)!LT;t-YjX1n`F%O@kR2=uGXdzenW~OO^p`YO$Sk2+CEC6b9f(DK`wHIhCRBA z?GwRk9`6fI=A8xSg{t+pl>&q}wCc+Mo%o=L=1aKMNQyz)XC#B@x6qS6W*x|4UxgmT zOfFG5Vfu}n*-7&~#XW~EGSmPm3!!fg3Y9aop8FReEH!J(@TaS^>u%=VhHbwmZ+nIx ze$z?LBS`)=BmFF^2c&(jZt7)EytE@Q`)#y3(A1ar?G^n;pnBVO(wQ_2BeNcQu0{!O zjzUr~h~b#{-c6cT0~v{#0EHP_$r_tgho*^=QKLh`e8|HTeuLWeX9E$k%rLz-xMN4# zl)Hy=G?{oi4({EMc({jt<5_6q{!z?X=x+KceEQgn!*U2DeR;o|tsB3o#=EX@g<yXh z!)Mxny?gR}f^EF`DK#hps&;w?964Z--XF47edl9}qksiaAW%2%%0N6Qisa>htCHs6 zRtxI<Ggl)vrfO1OsuN#3s-=%L7S>sc5Q?gKD=cI)A_$E<Y9Sf@Eq~1FJh=_1oW(7x zQ?EH?E+APw;DyXTSfemU{xH7~NC5pB)ZxJ7=AelF$75t9NSM_$zZWpS*VADn5HHt3 zvr^s0x}o05z32J!q(zlaF7(_7T4yr%E48mrI$K&Uw9fr}Zig}0%5o?9qUW{uzN0QR z>A2e>r9o(FW91@(BqIjGH%Y3r)Rie=E)X`(fJeo`ZqzbJJ&(9J%$Px^HAK~j2#}&< z#w{1m)<LzC!mJ_erQR{Dx}B~8IN1a=Tz@poLfR=i8R#3^c;ETc(nn&h-p5@10<o+2 zA{6Jm(`n}f9*-JNj*l8nLYUa`V9f^0QNH#A%|z9QBQx#lFkZ=T=Y6>x`Dk+#a79A9 z((fb#Y!~3i0pd;I$ldyUX6$ejY~Y)8p``uS$W@f}5#IYMe!@OrAHp^P;Xv!IX@{ym zk|VD6prZ@^2B<C^ZWj<edRJ*1C*J2X`|IyuFb}T#ZeYBULGq`p$P}jP4s3&6S|S?9 z@Tgq^z=NHzni7?6ta-7>xsZj_Y1-LcGW$2YrWjIxA%`Q3wS~LLD?Y~E8JxN$xpY3Y zYQE?@3Q83#wr7<#uhQC`xbJCgN!|KwcjLD*O)oBL9N^t^X=@J{K}x2LKG>%FH~Z<q zv<RoWqce(ScaQ`+^n&ZXs^$J-RM?N#Jp#+CHc%iW(}%Ez;O?8C3tJAut$6z?CJB64 z6#u*Ie=%2^lnPVqU3zpr4!0;|E8ycfUc?UeW1yO_(wui_!6k#Yt}uFiOg;_1ImI0M z#5D~5(V`!f)K@f#jdWLF;w~OuR9{cDk1qiJP2qq^@xU)t>n+34Owym&=3%Sw_VXVn zCO^J;=CIK%?O*Gat^m?dI89>Qv-VFW!Z#R6m6c6vzeVxHHY^OCDLk$?$)`(wDV@BR zFKwK%^KG&(#yzlBSpS@j4{s>^@}$#(A2!Pa?FqC+@~o)3d^{(loQjv#61o0@h9O{$ zhya!Aygk>~NzY%n!$9hXl`hg7Rj2!HVB&bt6AdOP(>`F??}8>1;~9R4e$Cuf&tMac z(7Qw+;~Fb~o^F~ni<i$}7`CA?3UUoNxqVtK`=*tR+qT~HQz9E><%g?ry#t=GvD*-6 z_^HH!S=f#Q>HGTVkg7g;k4^SJROFS-f$~B1iq+fy&>pB;Kukmt-o1POPdy9z?`gcO zgR_&XyOxugiK&K@orR;KiKB_te`yfHw2qu`wXxoMhc6w|N`V;ZKoz=Ar>oRo$>*}F zfz;f_q!5YV#k8iz{F&h1le(3J6gA(4r-Jgy6|Lw570nV;`Bse^H!)3#7q7M1b)L9J zXcaw|)9?G4)9D`Fw}<ae{cuF1cPO`}MY!G01_^{T3XFe#hEmdnQJ4M1+ue1M8?-?{ znH|p{@CT39{Im)i$&qOLi!&<=p+6i5{y<@r^rtBp8r)xG%r%R8RYge%KTpjp2bqLS z{QQ@9YeHLMV<AUH@P>cnIa!&;sptk&*duXq6cDfzjp2O~f7%7>47O1Yq^X!EEc&LA z=*4l}o2IugtwFT7I6+)(r6iefXlkPit^zZrhtW3Sxvk*1?hgw-n8)Fc6qft|+c_Rk zYeENWb6KVcJO9{EVlH)q(0O!nwqFFDJk>0gvI~jRS%{Z6g#&^ql_T=PHZja<!nLR` zqblfEoP3sPZZVqXYTVNKcqr0r3T`Ys7Ut>1Ymy<TXm;p*=0fk9r+m&KbQ8{_%zCn- zg)#oVbZ$P2O~0p0+75N{7SLFRYE7`EMgk2~FPU#Ey#e3ZE0nA^NwH@o{4_^!z?#f^ z9>^;iJzq~Go@oz$WE{+!3eK<;_6{@zDEy;2Va!dHeR#A*c|Sk!No7ReJNxVW4%yfH zx{uf7TR|V?i94KyX|^)eWdd$0J0-AB$|xxk^7Uut@9pigwvs1F_v8ni)RT8xEb$F~ zV`}<`#%uah4F*MjCu&=giORkW)#X;(lb6kF_gFMu-7Ql5TasDmLZzF_$?m9IhChxg zx>P)3rydbJ{|SA>q1VBMWhGW(LBkFYAIUjE%|o1g@iTtJr=i(L8vnXoRR4*eUSu1N zBktMyddp<O;pb&08ZM}xEAIi@754<&mHg2h;WL_OlZ;a*dmPs_7{eJIaOVMsb{w<N zbQ?)j65!nxO|LN_ksuk8i84s<LUE|?QHm>R=T>8WmhjB1OPX-DC5^<%)Il3wpJtg8 zy-Smdm?i%=INHRk+CE$A{9cXp2d^RWS$L1-p=>x0f@8grg|fByPcLng>gL~4=ent# zxNpvq+%xgT2_IKjq_is<N2z{EIr#Z5%(@;1S>I*=U4>V8`T+R7#&&6j87pTo@kit= zbW0OuZP~&=tC$G^hl#`m`-QrsT0OGW4<A}C?}B$2TIMMns2@{&hJC5dOW$6+<66GM z)x=`B<6wqIJm+!h@Vint>}=l68-1n2e#JjC$3FYxmGZL}I$x#2DDLTz%d^P}tp6mN z(l}b4)}Td%^;bl^B(x4^IZTAcUHhlJ#$58h?;HDK(N&!gNN@w4h_j3K`vrE=C;!M; z^q(TG?UH`9VIq?|G#t38xO+3JH9l8uraPJbAoaY3^LRWR5}$Qp9p#I8Hs^xm)i|?* zd04EF(^{C10w`T5+o3y-2(49_k8!+CoWVddraMA9yhTbZQf`jJHW(t`C;@L4fj7%| zUm(z~kfG2%OfmK3*P_30wu{^Q4{Q#Fyn5Q?q^5BE67$wRor=^<^OnZ)9kIDV#@ftO zoaN*wTVQnPvxFX>7zO$Vc0}T_28_LHCbMAfmc1&S7fog-eznnWy;=FY5aorAVbUj% z=2Nu>Hd5jUsLvR=kYY}Az&N;P=n}sIUuxLL%fF&MwD1qs*Kj`(Li)y?{5jcje8}#O zXt;LBjk@nQ8x$WzJ9eldzdV<SvU&i933Wvzs`<kQaJ8&GXg1OdYhip75W9k%M<*xL zKG6~@0xgp*8jEZ<c^3Q6X)gCo9&zG7eTCqEh@oU1oju$oJS;8$E95$;tGeN8;=MY0 zCMzzMva~3MX)rJ*IhHaMsg)wg>$Px?Q=+Mi&X*l2{>ZW)w1hhh+2emj{_Opyluh{C zKSh-JD8<j_paJ5bu>0Ii2gbtWOt;%Szge%oznjToZ!a&H?-q3?jEN|&cRtQWKd4O0 z5QxrFM!C6WwEmGrw3(3IRY%TG-^<B(K*ME??4&2mkJ4>$o{&%lo*A+{ZQJyh7Np^y z`g(V1)wa2RD_*JFw#Oqesy1Bt_w?_uSte${=qEnIhIf(ra)KjRpOEDy!q-t?yie!E zkTEif$b}?dSKe>GveFvV++$=$t!V>0VQs9PB(Kr+u;b}^Zql$!BiD52a`v$^N&Kxy zmO@a1FA%p+C$E2ibRbcC>OkNK-*@8B^zhDYP=I&0r)52Q7MS0S615-!`^uHgY3@A` zrQR2K=sPX{D45gPf77dd6qnOEZ~cTH@B{x`a>}Tg%)nN=dM%#-z#9j&GJ`MXZ89BY zpDgr)CD!2bZhcb?vuAtyI5V1*@;TgW&&}V&jF`?r0ir7|s1VZ`Oxha%?QJZy=T^MF z*69ePoWJY)*8um<EzMLepOe?5vGXjso1?5cJ2o9-)v679+j**Vw!S(y7}T~r1dLax z(^tnwu0r0ApF!7QI<%pk{LkkfXkjKs;1~VLNixc{WluPjNc$RhmNmspSVkfiIO=Xh z*=c)Dbwj$$^^3ko)(?$g?M|2Pt7uQi`<}7ca+e$lhMpy9Q3R0GxtEq#0z2QwUd$x% z;9JrcX3!WWE9VSP(;-V%aXw$FFxH+^L^8vbiZ>yhS%y$3$Dx%GWp7tZUs5xiSzylc zn)ok1^YVSSo{(3J)AfF8*zHt*xgh^_%R1AP7^BMmXYa%=7Hl7E^$qM1o4YQ5d@q;V zE-98+xXU+zk8dcK+V`$Bat#t2)jc9%{;_NUQn8Zo^3Nz!8{sy>M-nB2QztFS&h*ff z93T+e1~%crPDvfA;yANGnNBAnw?!4PUQf?I;sy21hf<iX9vQRy4)Ew=6rByBh3*9n zT{%7UjvgNUQH3|=wdBP4uy0<Du^IxZLEyEyaLF`aT_A8O>wa=hB$6<z@!}ECMUwpP zdu>0*E3g@WHfU8N{ZoSQ^u)W2SSvdo=#=6e3*507cOT{D#Qw8m{W89^5%{2eaV{1b zCPR9UMD+%F2{et*&*T{DhM#>#`p;Wze!@Cq_D|<R_)jfG_1{I5oQbE2guRoQ9oWXv z#?9Ks(Ms0Q(&_(-UJ}0l^MYZG_J@5?i>4g!{}9brgDm`I6dp=VRD={8u_dQlpwn*7 z@Mu6D8HGggErN5FSIVsAN8sXY;NR>CfB(K-xWj@%P?#D(HYHUfMI#la#;#t$bvR{= zUuST{A{jpDydx}NxQ*R>PM?yOk;}PnY2bVm>d)zWE8#W!%|86ptBnp(JzQj9>33?% z*PiR#n`kcT@4`D_ztJvl|LJ5ri52LxNqmF1YbeGHwgk-bIhSs?``R3;0Reb5rBhFN zS4;I19y>_qlKJ1N1s)Jh0qz=&Uk&%sPAMHe$&7x|iu#HsIfPxv*8N7vwIAfW9Y?r< zK3{}TY8?dVg%9<OB$hTKX;zK>TG?0P^LV0)P^{BzG{D>@KHao?i|8Vl*7o&QBE5xi zffFauwn8O@F}fl#3%jmi<OaFkz%o=wwIiI0hYzAtx-FaxMg$Do;aq&7j~KSczKJ9q zv4*{{{pS&p2zCZy{R^~-|7zX;=hXY(M<i)&;tF<hbue*v|F3Wh)lgK%6(<S|Pdjg5 zZems$Mv%s$FP*FULSg(ht)A*LBKJI&$Jf%7lrR{}maq>G$Cj|SiUPlPWx53Q<^Dv_ z&w>7(iO36g2IHdv$1SU^OrP7#JF~X!H~$Be0+KuP!#{5BuJHU_{9OXUq`<gp(iLih zbYRR2Imhkf;Sl=H=6=VBOLp;RFghaj26pl1PdeWUVo`~3*qMP;Kt_|$0j`7w9M6n_ zgA?y>KjR$hGSE`hk*9KGotQH#5zH85nVKH#f2?vA+kvA8PGUrkGxYe{pvDUgy8}K# zsSUd?XwgHizt9}|noEi<Qt5EpGC7mt{A<~?QZ!wL|6xP_W*@<t1k$kH`_dgDT)wVa z+72~Dt+G(#aqm(|P8896BS^q$pfAY%ifl)K`@w0aF!B1hO7?kS#GM{bjXjzJc@Kpa z3zuCM0ar*v1P}_*8!%Mhs0fooDdQ+MCU8SxE!GuBtz(A~r{yXjd=Gt%|8~02)v1uE zEwulkXl!+jvlc)6TM+*GL}awCM-y(dJr`?BM{j05OKXQWuC2dxdZ_~_lh;aH`mRWt zIIqNJ<g9f=F=pO9^NOgfWdn9bpLJ+-Y;0YiT#ypm1#XrXh!>>Rdhs*PpD>X^6z-JH zOqe`U`9W%M{jUE;8LOX8fLsMkFx&VwunDEfq{*_$r^&O)rAfL8yOz4RlQT=GIMouc z6>OJhm|~l>=eCn>;of>AGU<LZBGcn~BxJq3G)cxy`YEs@!c}piNJ4ulAO}PjGZ|Zj zQz>0PxWka9H(q7xY@J$eqZ!un9In+-*#ASu<5!0Sc15TWS^;^8#>U4~*OX&!aeV!P zr#rk_ND=yXhPRc&Z$kHp((ktC!ty`v5c)!*&W}_<<U@*>b6#HnC<UHt_>QO3gHP{k zWq=6uSV2~11RizFvqGwh{qFyy$P{0bJ9;`1BL)~4(Iv0r`5<)C*6pc9F0;qQ$#T{` z8OmBX3tj7pGc!`72<;}(4KMs#MqQ{9#T@kmZaWsLY}DQ^QBR?w0QtGg|KVMiaw~b$ zvVHgN`}+TPm7L5iWGoylTuuIa{lk8*m%ql+GJDVM4-Z;gO62zvZihDTjRmxb(piP@ zC6T6IftjI@tjy3N(~+%i<N8KJCU|VW0i*gAUzU}vZX;Cft=3xsH%r>gf;*qByZnp2 zyQ!_;r(L&e)fWNb<!>E#@88kS_ai;@JwxB+Pi~j&v&g;5PONA3<H8>-_sUQBr98|3 zy$ea$Aqc`6-j|dUo%~7hSJ}Eo`RIs?@hK;-ub_$T=!VJnF)OdHu-xhBNXYjwFZ>bs zvHBrC<yop;4C$f&fi3(^?!igp%I}NQ!5c90b^PZ#yvksUbA!?!%6(MvsA()YYf?QT zU-UV3EWc<p771c@Eps(lOgUfMc~lufUGYQ~SL=+e_lZo8*7JNHOP|p}k0z{F^hZv^ z?<SEDM<`z{-U*?VnIp*!a<5_?i*bKZ$KW#MXE~E+BrY5or&MTP#VM{Z34B);^8tiX zSu!4JYWu{1AIDoX9LWJbwI0?1d2*Usfjl`(wLzoAjU*mhxk(}wRyGL^coy8-c`duH zRYc18eyY+Kz2^?Y@Ss~{!6B(kY}`s$oZfvE&P+W8<mk%#XxU7HCpFO@ktm=tgg-7_ z*j)7aHd3Y7%^$FEn_E}oJrB{3YoHmDhuJaR%)jOj|5kbjfe7HSw~<s_3$Rh4{Ns@! zQ2yaaNvMwbuqlWN%*;^~?OCxFS%J+1h5;I3k%FLq|CNb-1Lh{0x0XuAo&l38$vYqq z&QO7sYr!q5eK`$xz1U2L7NywL38KT;dZaePs^X1$qz=OzuzfpFT<MQEu3c}CQo*ua zBtVI}Lz#2e9Hhjts{v9fu3EIoBL&T}?<#<1Id}gR;vBmMRoM>1KHwauVFa*&^{_P9 zz<!tpTtfq23j%b)BBu@yTtRgO0(G$6D#{+}y0Ub;mX77fli)wm9b1tk^iJhUd;phZ zY`#UbcC6^Pxm_)mSIc1saqsl3EyrQ9&}|`TM+~?-+h|$6>Fe^GIF}<@Q_Q`xh9{=O zWLZH+dRk+qEA`i>*bcET@t8!H1=yIxmkrqQM3?l~b7tIs_cXf0lIZAtIO+3nl>eHw zIjma_b8(+GgN3bz|AKprhhxA!=EGCq=gmm%56mGIdlcXvIk;ZS;S(?=Qm@UhKKOYt zvK{I@7U>1`{vH`beA$OhL3CM&O+kFwh@DS#S&5xbeA$Wpndq_<`!n%ZzgsBwHlp*( z_Wb^~`V}1Ta*Xn%AnXP2+q2c$N)T>ZAjhsYD6sf$yK+Q}>iZkfWd!zmLp?kTacVm8 zk&2Qqr9d1IL5a%ZOD-rikzVAL1)4}Lbl(m}tkexp1cJDrrzYmgwsTYC%vIyOIK+(1 zlk~v8<lZBjro>M1A4oAA6UfG#xk;JeTb`!R2@XR5g@z%F4xCKFZ_n>RPiCx0@IQv& z_dkJ<=FKo@_<tJP_TYcs#{h>zNlo`vKoP_O22<GJIBp!8X$;Q%q~I^iDbnI?;_x5r zLzsD8TM}u&aU8BPpfN;UIP~>TD%^9cLd2b1@B8Id&gI@gi+h;AOu#|NUHN?1BqnfE zgl+cE!RIFCHdy5h#htg@O*v&#^R7K<^kK7!ek1~4OXjrz-V`Oa0;*H8km3c?!01GE zhV67Y#@HP2gFDEINFbS<37TWEZ@-VxnV;wun`5^x4Ejyd*`J6SEBtL74r*Y%FaG|v zL^vZ!l3oBd{%?^YMgx>nBD+g!ijk$dHP%*Fvb43OtaO~ODbAR+xP0hingw{7<VS%8 zsIW6CItwbC^Ua2X)6%>;%|ZN@+7_vkbcNO>TWijk32I=mkNy5KML5ZqOgi-;Wi?ml zA45gl6LaU8yfIZSPMp8yIAKi9mGrB#ut=`)J^-Z5eMKF7ZEov_G80slSdQI5kX=sV z6P{=V@JUOwBJsg!6<itr8!Mb&#a6H{0b=94G6k`5xH^Oz(6N;+OvUzWj58fx%7N-R zuWWsLM#t@J{!Hi@$y}_E_`n^UrEFO5D}uKa+}%-+?R=^egNk2zSty;-y{vt#zD*=} z5&Q5RoIp2>%_9;?Do;efjuMH?7d)<92Y19iLGL<|WM9N5DX6r3SI1>y{bA!{vHk{A zEU-&txjfhv11P_2%<4l2MQe(%-M$-GRQc)ehsLuQaG&}96!>*>Ts!tTBC#Iukd;_Z z@&H!pW7w9Mr+oXD1X6m;_PgnU`+oH72mSOu+vAwA&vWDPvCpgH%CXNW0RQmd*f;zA z-{3%#{d91k#r_I7(2ROA^uqe(Aq5W$+{br?1PUq{c{bnwE}qEr=CIEOezo0q0>3)$ zYk}U(_9?)QTqv=oU;(g8F?`(D=du#jNqVx-49*TCe0D}_jc`?9F(>rcL_@jQmpIiz zqfK?SuwAutRr`jcs$TUac9N^AUllGEU=5=zMkHy4tJ4m{KC}HOt_MzX?^Knvkt?F& znXcG@c-g`;;_=`JNJBXp^W{)t8M&(>qobh!MIYqUc=3`7GAO_frUX8-hp~dsY+?KW zW4>ZfK3mLUIVdBSt#a`s6yO9i8V;s2qZ$OCIl$nHZwuekQEgYqf)#mfqgB<RYbzBf z#bxtVv8s#6gT&w&?y7|fUGNOAtr%mr8O)&g7ctLv#S2vLlQY>DH3Kqhm_#uK=dp1y z2FI~VF#&PwYDJ`~d~6kGmEf0+yDzG$#kR3kJhqjp9$+#{7-#XZ%_(9r0BXxw^`l}4 zYRkcBsZp)!00#cjD!5W*g6c_6i40bN7{nMWw5p2}`(YelvKTg;ZVD^d<vslxRB)hz z2b>#;qMK_Dn*isU!YaYJmawDu-qN|^i+MIMU2v`gOaPo~2lD~vDocL;G!d3!U=AAr z8=AuO@FHw;RfngJIg44#b2@YlWxYElE2^PgqZM}0uGxwcXxBi6=ZAA}@C$A5kuRs9 zbBH7FF~PpLhn>oc;wE@+OR3&#&fg0ltrgytjcDiuLo61IU8`6UdEcfeD$m_2TkRL( zU$Lez5s<Q>JOP&?44IJB6H#~o>516F%=APYVFdfkH}EvdfSVLmWs;j%)$f3t9M$h6 zH^HiGfSV*$wqk^`SEVx}j$;aNuPw|D-0O%(yl|{oyM=NUWgc-JgF7hyj9&X%xwMWJ zoZ3t<lf&-kDSe=USQ9M%Yq)Gw$F8K&;|&s^pW?LM#uG1oKCGMimyz+evJto0;D*m7 zhK3JH$my@NuF+)#7LVHbw9Ld&h(k-5_&geEQJ=+h%lOs!aM|%8%-XDlW?>D+*)6}v ziAcOOp9RqmIEn2VrN<!BUs?rJ+SXQQZQ|7CVH=XyS{2w9L;3kWbS8X_l1`KPEv?;V zy7xGqWF64r>l)AkTw4`%(&U1&@3H52DFl=>dQNX><unq|O(;4<h4?_#r<edI&Z~Kv zis<Ny&}8klHYwT`*eH=XP3m-9ixj{#u$ov=Gx6~S#G+$*tUsnVZDQeWq1n>eT36|^ zwUAbZ4~<;c@~yC6>t}5$A=fw8Xl-rznc}u~$TB5K+<T_Jt<j2Ra(>YI$@sUFStO9O zt(68aGI2`81)Aw#_iA;h^|&#+g$}2+siAwG8<N#l#Z#g*diB5s6Gaa@yXiBo1JdS{ z5E!jAXX|TLonFoL%%}-+^}VF<fN`T~yi3|{?!NKBP#F?yu7)QJ@(fMIo11w?JtKPs zLrJ%njF-#WC{Oh>-3Wft?_Yisp8i9{y@EDcI?qe~_8jOBW*U!u)7<yk<UZb_Q}jX5 zv|jHe@0NQC#bvu9pQh?(C915;JNd9ZLkhVjo=^3t#pg-Z*UQ2Jk;+2F`~95?S-+5b z=p-QCYu-Rcp^3{~2U~Hf4sYJIELj^mxf>oTJ+8Y8kSVm?U`W7PVPzmjFtK9Y8A*LE zwjr@YX0+5QmQ5qiz=VtG5X)o?U-lAF?h<EnB@MD*kS=7X5ytWCDD~B?h-ZT90;}Gw zF%9wR>m|Y8tTbto?k`(nt%4rcqJcCEo{!><rs5@mx{SlG1*pfz)zwriOEy*pL=HB` zv4~7ck-2gUrxrhM+xQ|y?keq|()!qoLsxI1B+R9V8?0`{wd*H4ZO(qz1?1cZc;=<6 zYKYzYbjYw0z(!2;XjWO1qc^pXD28k+fB8)`A(grmfSC!voE6za;Z~k!J(A@xWE}5U z8DKJS`&A+-x^+p{g}byeY&5^8i5NkCI(VLr>=&v^mlYK}GB9_TOBP+dBX|w>L@BmK zi)AFUM=nL+GAjTCUAmz@^S`=#uyAy1nZ!sYaT2b#(7dA5t^4(l>|!%4y_0eFCB-OK z@xI=-gd*h7dfU1ri$FsDZwEUs8$gmD$%}D-hcdo>S^Ah|sxw<SS!LMxFkjUKMcbE| zuduapU@V2qIuK2~*i@VF?m|zAtJ{`0G&OZ~8V<ZyU48dR8<X2v4M^i&N@r<-W%DdK zsLywh^3=rmn2LSQv!XSsp>0X625e4#_-x)u!#Yzo#%!|q;aA#-!E7T<$4zR*x6}K~ zO9?$SW@LALqIN6cQP6H~B<V811IeP{Z@z3yu)F6J`B58ihI8SDEK_Nx)GktgMX<Qi zM%SESflyVMvpjB6jK0omS5c*>goIX%Ou5`?t^056-y#-t>O;oYSnfqA_}<e)31=hV zFB68Gm;j2v$~UN!qGRA=c<=EZrPeSlA9s75+}bsar|9SL5nmi;_Kz>cOEMyDQW%br z+{uj9pB|Z&oB0@M$9mErX45DOEd@8%qtV%(^zXCuv#Ojg9liF0k{rh0Sk-~OvvOAQ z9vnh%B$ST@<o0&A^ov;|ss@ag%5+sw)VSq3jCUdP4-;AY-(SKubRJ#guHIryYS5$L zX6$SSbB{8OEmFiZtZr+n?$Cbx+$d{Ht2#^(9CXcR4N1o`mFUUi3%w8Y*NgmKXwI5X zxcgUtu_1^1)+bW?@)#>#O>L+gs7oUr*G6$}Bw2z#fL`eZ>jrL3>q|UKzb0v2gu(h@ zPa3Y?kbqBaqYX*{5DO0Gy;@jHYTnvmB{VN>anaRRFqRFqG9EStyoq|`E)iAFx4V&s z1XT77mMVgUi1>I7HVM$%dBciJFwAIxH#{>p&_}K63yEXDP~De;K-h74!lP~gzS^5s zKV@zCsTbs>DiF1Dduci0G5%4q+5w3E9EKG{jyv=5R5Qam0>otQm0ARxaWUT-;0tg0 zNwNp2u>+`cOs#AJSy~tLB3cGo58vgNd$5;qxqn<)$ke;DsjmF@ghaEm;28+9IwnuK zmg;Y!Eb%*Hu5FeSL~2*M`-LhYnC^LnA(eMt{1omkwl+(4Y&-a{(>405ZMn0SeoNkV z9kR>4oR)q;#QKqfc)_Qou+!!T{V<_hNvhR@8*nq9?b98-0r@QECETGvHRaAlY6~|{ zYg*X#yDZLbb%9&)$V6P%B*v<=B7A$h50aB4>&GWUAeo{O^<V|Q(mI-D!NlXgs6Ac1 z4Q{`yoEbc~fHvchn=6Q!CQR$Qoy2F_{&#d1)!6pKrlO+c#Jhx7#S+gS<kGMv5szyU z$V0R1kxs}Yo=pQ~BiRN~0?EZF3|W*f7IpGAqhN9Iq(IC|N$XH{M_Q-fd^RG(<xul@ zq_atBy!RE>HF0&!PSV9iC8BFO>s>I3^!ZP;k(!7d1Cq$~HT)$J^C6Pxh^yq|4_q5c zQH>~A+e66PA#K&=*fRJ~t=pAuW}G??>GzFFBJTkUpaipPhzMiJUk~xf&tt0X;t;~C zRG{H79|(`%SY6&OW4xuLuCipXl#X)(d$iD~HmsQ1G0Qkt`DxYK+Y6ec1D_2&ultc> zt*Oo;$M5QtyoM=jqrAT8acr{LBAe@DELV-3`qy$=w(fip8Nsc_L4O&UkD5<DX%CRe zP#o^wI4cniVQ3k5CnguVmakm5(zI*IX4H%LoVtkbV3GUVg{;)u@VLw)WHUGgd})le zhO<w#^E}}oQ__;FOW0gOR(rm|THj4J+9hsy_a))T?hh=t#h%xTK^n^F|9%A_iMsD! zYe#>nz?B4@IGf`gi|DF?uK|ka?WIA1#El@AlIV+Fou}oEwvxU&#u6{8)`T!}ZRTIT z!qx*TFyO^$jh8rq@&e)brey0DPs!NP<{x5&jHb;&V6PB1m@;;Q+@U7UM3G)$POm)X z_-?KgXb3Jil})xHh)7mR7kn`&iSA0J{}k;)6k+b)$y!L162_-+tAqnr?D|RM%hN(v z3v1doks-DcmZ9i!BHrY**F>+~Iz0a9x^GB#*iIKs+YooZ<eFkL536f+vHY5?Jgusp zU4UCqjX&wsEc>%EVzH+MFIq~SAZam7B9++AZq#M-gDdmk4gua>sx{H*ApI`kgA=y_ z|0x2&rf-c>ARTQ9fwjrwH+}5w@1qRG&_+SdzC9&21}u?04X-lrSy~tw9c{a$Ljxc3 z-TRv;j26?+ZTrd3`2~Se&Hc@nSPM^wQ9uz{<<VR@Tx2&z`;^?vMtLkgg8W>5jIS9I z=9&7Wv?+vm`dE<Mg87hC^@)TD*i(^23lW>6W2HX142PPYBAE@DR}Hl}x%)>}#LA{% zHp!Aw9aEP%Uys`++27$2R05bRqvjsEk=t^5jH`1*UW<~xS$X8UL3{20=7Q$6GoSWU zzr#|2fdpbgC03V+wN_jS6>rfh5mVBd(At<e{sQ5WI}jJ7U<dj<Fy+NujCe>@2%3>= zEb5A)B(M1$dTqend@a1z^>E$NZ&Yye9vDDLTnYkY1MKF%R~q5ZvN13)(4#C8S(rrs z2(MPHV@6*A^8J0ff2mL#jYXzgTc@q%6{M=24<{As^JiX@zBfl1luyu2-!a2vl)Ab> z4Yt@>+OZB`mZP4Di5}n7BQyGHsluJJy|!Q}D@3PAnJV7lw^;C_4ecmQD$K^bt=>1> zvmBHZ_B!sE5<*tx$2EY!2aTkF)kez5H^fv8H!)yyhHE8?EqB^_mc%V{*gomOktkW) zM9qEtVRH95$$!-FQ&1bepH%e(^NjK!wjkZPn@h&HT_(Orud0^L&Ym`F^Dm=ShqIWB z;cWeN*>A&s>e~Z5f0B6Zo_xhAqK^`^GKg*3k}8-<<A(pW1m0KFU$dUqtgE*@jMU|< zn8p_BCRod~S0^Ke_2`N6O7aYZxO^UTFAutTJkMUbYG$?6G#yvw4c?zCp2h`V=j7*^ zCYcAu-%q!FbT|u9QTTJSzvn<%>C*5BgLZt+48fVrx{o-P2KHvG>L-3ei66v|rxJCv zrz!(85Y}QGeLVU_LycX{y#|M-k4}#NZ?Rw38NdZ|DABog%2(@q=)LAM=XU0~tL-Nu zAPPNOdBfH-G1s79SS_DMbQMUhVHwN4^|0uu)ExJk9N!2~_+yYIax87snd#gdvZCue ziG5Vu6HWA?DThi97%22vQbvUzuG7=H7Oz9mfR|Br4z)|$o%grkXXN^7{?qn$041x6 z+|c}JRT;0ZWE?*?Y2^T2x9#Z{_|VpmdiY|bUM2pCLg98<;r9oj_$1^vEm-|2a#sYc zdj1I@$iR<I59?VSn(7-9$7$X`qYzYL`+VHwFgvU)TWaxif0d4fEJBu|Vtyg!szr;g zKEIN^j3Q&~A5b$xxR?@iYI~85(XwM}Z)q~QJ5@>l$v-1-sxl$I6vWPcWSFgF*!mx7 z)ueR!)#71s(E|?A>n9V8@Pc21_R&N6el$AT8d-D(=xFoxG`~62CfA7y)V5E@BfAUM znKo1}DTPwSWCS;eFtja{2o0PABxIk`Psc&KBp&JzzLTL=Fcf#OB5s{~HYNRCoNpQP zdPnj6EA-GPX8z&tA%0r5^V5~cUaKE+w%I_vz3oiCu-#-))RR(%WCGIj0#;CpSlNy1 zN-X^}U9z#XcI)R1t+V6+RY`?1gC(*BrX_7)uN=kKq-uQWtHe4Z@#X@=^c_}9hFru> zlkFC|){0Z15h=+>2<KY(taCj|L5IGC|8JawDr=?*u?2TX+A~U^1%#qh+lxZlxwkYy zG)uzs_a8TheO_p)c0AFip}P0wV&P&03u8&7Gbr98ONq-Li32)*?S1SB%w>%9wnqkd zMNo>9)+>MFMyOaONKMX-N}9|Re}DO|kS_mU=0XQfG&yhPQU7FTW29Oi_pA|upBhHv zj#p8K7tVz6l*ox#(OaOO>rISaeR4&09?L=G*35klP7qB*>rbW^$Ycf`0E~bEC=<Kt z3<A*UwZKiX0w6`XPzTtK{bit(LPJiJ80BaYIhgA@6WAvfR*g}zZ<~}fnd*11a(?Ne zm5!U4Ac~rb-_}1WQr=u%37N7waT_<Gj!jw&e)x8lo7p9!D*L-WvLcX!FP5V0z1)z@ zZ$DT>hLCoC#O+a$7Hn~n6K~dAH0$@{hX51E=Mpwcc1Oo&Ud0aL6+LZ>iCCD2Vt~H7 z{`3`sG@B|^3MUffNZ$Iz%2{emuaC84MUDCz`IShwZrsI1SM!tFRPxF2GDk{}rhIMX zj03YfStnY$?Z)s_q`%A<9|+)RTVY4D&Pr}ywug@iHYI2>ka(st#Z2#X@!m7UV=V3F zlP}hsvTs;Jf#b`FELKNrE~sm3oalmdl>AAu)+|AHi4QhIV0451<CbD05iBJ1<@BT^ zwU8BAr)y&K($3>aPBzYp0;y*cuCRh~oPhm%?+uuC;eib)b`->p8}`>+w#Rx!m+a%G z{I7J$rC)qJ0-Hke%81omCQb#C=`<B`v{eOKbxxQh9_9K3hP9nhz<78+r~g%RAA4iA zq4BloGyDEKo}u?#Qc<?ptZAzPd}jx!MJsmmpIr2H*Dx;q?t4@0!5(*n3aKzH^h67D zs_){P84HXh^;EolS>T!M4IRyGDZJlntke><Ko07X`uP>x07J-U<>#&PMcH1jNQwo% z)j4_1VH`b3`{D^D)#NpYPj#WfV7_{tEBX=1jUpa;n;und@W-R<8+YyyVf|U@gg)u* z=r%l0BF6wf(nBZSHU-{&hnDGen@lQUU*U)BTW9M-=i$X7ElzS5(ksYIvM-6Zb2WsG zyeC(ST2$m|CcHuQ$j>Avcvo7!$a<Tw9DYcqJ51*YbG!dZUl<t3)z2{Ow8QsM)OJEc zgBYfn2wvlC`7orZ6E766RY9R9E_Ze6B84OtoKLXeh2_c57^Lwb?VbEMR)*Kl(+OYz z9r2x)YKTkTt+PcfMez8YeW8x4{VW~w$sPPDMjH<w&u)kHKhO*Sy8)J%&&y6$7rn&O znKyO#iPFTT6tm#>`ZA4&VyGzHmk`V&PVcL^^KU|4T+UYws%zgeA!Uhc6(^VkV?0&p zaI~gV50%zT7?@<X4)hfAdfQ|RCpU<Kp~Au?LgUFlDlS~uCK64s7qYK=fxVd;8v&u` zeXMz^ShJV^=unOzcclvGzqaomd84|ZX8NXnleNwxy}_my^;o?Y)kgZ@71vTjp=r)E zxeqUT=m55(&<uiP@jw_=o74zTo)Y`ZU`tPRXictzLy~4}%f~48+_%DPAfb&p0uYew zb`P#Y1r-6IM=}P0g+cwzVp$5KRq7~#ki+6L>Mpo&?2pu-b)yblN3#cik-B~k#er)8 zA@K6urJqxL;2yMR1dWENb;41A;1}p`Xl)S&=EzOrGDWm)&+MZ;zfKD^fkWJ?<UvAU zLU^u{tHWsMb0fmRLElS`!r6|w@^@B$U2d{@oj$Dh&tt|NOeocJR1S6p4OT=H^Br{3 zrw*d6=i;?+nx1<b#XS1PjSF8wakjzsf*TID4^*22GOHFb;%&O`E~6Axo&I${Y&7Z| zYTDb&IMO@^%k5GV8Exr}SGB9h_<ue{!6~FMzYJAAjaCb?yklXlm%hTe^%SY4&Up~k zUIA`E=_tI;ucLoBenCXuqPyKUiOgh}Hp{J#I6QsyjV{BGv%&qlMh)-k6u+nb?2$9H z=(s*`K<-H+X)DyI^&Wxq&E5*hzMRd`P2OGF(9Gkt2r=gHJ}{!ay_Z#Cq@`6p8*-_w zzrL`!supjNkZ6Zfqf{hhQC`dnrMYnR)czy+XcA3wb1FeSupd{v7`^S@(48CM{c$@_ zg$-G!MKcj<#WtZWoozdK<Pm$ue#BOh{(LQ0^@aAPB@Sa)k#H|Juh``W>cj#xS=T)2 z@-i}zyMzK%wU~E@zYu@IGX8NY`?yM#j6!O80=L99pPI~gw~A*Nv-D1M#6}Z8q-fU} z&{N_>wxB$(Q)(^N9vdflI3pPsn|hM?_*jOolNaCTCT`F+%JT^#rdT&N0DsE0k5x1r zr6J7(_!~jRgCT7fo-kO8f``6bceo<^HXKG?$<@zTl23D2TE2w$nkgpGZ(gEY_9Y@h zU$v)rsa`f*z0HYMYs{>Y{$`xr9s1ipIyWUkM7e?zTYGq?>Dk*z!VV)wCQogb!{|PP zks1FYW!9&;4uy)XcMsgyekjKmo-;^w>pA51_>d4N-fx}RQ)T0m!Wcba(j>Zx^}SrE zX}yCIB|f%+Ft2GGm4+=&$$Nv{3KPc~FUSM#Yox+w-H3a1sbY&d>bfRvYQwXz*Cac` zl(CC??<P-3XLr38+IlNG+Px=4VvnZHE?nCXXXRzRId>@Ul2pk~WYIZ5kU`hW*;G;4 zKbh-m?6Onql=qFH4b39XkI62r_|f3B3ai#u98FX~b%}l5Fu*Qq)b(d7UI2GtY1@nl zrnqV{;H0#`=e(l9Dt=F52!dsvhAH_)CJdxGoXG1*7KJ%T8DyDz6LZKu*<C~EC>M8B zM0cLaDq=wO=N6k#=x@-)v|h7wu!m)$O4Nt&{dKpWp*g3nHeax~xydPG^8IP^al0e( z&#@&Ryh-c7CzX{w(r4*$@O|T2L@!vd_;S@S!g0j2Vmh1);U)BQKQ|r6AKC;mLiRqd zHH)uIDZkoIuoCO5LFVF^YM&|N59xR3EVYZ_{S~tVujh+pud%WOLwJNYHcK2jF6M2W z^u)8^TJ^nZ%L{^UvwrCWo(ji1|ET3RwEw<|Ivl9>ZABzJP?wLx*f0EgTXwhU68I9` z_xU6!^t#%;<S#(CZ6s<@q&lz7Z4Qiu*HR_|k#`IKZmjXx_L}Mc+>vXlfj7ubb6bVv zL6*^H*ZKP?9#&s0e3zgq!&r>inNgR9#Z$N@?mfD|el3?}Jm2##U$SL!*ezcpKPlz0 zBUgKs4VlNsinI$TM5N#Phd|P1e+`|}sJ<ZD4ALPRl8zv&>4}$H%Lnprs{?N7Q!#cJ zw33xMW~Jn{$JORqSIO^-zh9OGGL`%rbTvOZkoI}gFFX5TB&g4|GWn*tZxo?G==at` zo`J*qeHKu5jJvo%zF~@A@uAm#c*<Nf=&Fyfm@;7$hAjp*nIDTcNxX9Pz9<#zf3rr* zM(0^Hl+F3_TB4lekEOkp)wbV?DDR&h;jS+AaBq2op%`kApm9R$7gb15jacCvubx1D zV)v5(!kB=qjREUt;@wti?FdC{9W`ycy?lnEc$f|h-D6HfZVgKrV5_|HG_YOblq&Iv z+Lgw=S{v!z80Z%<-1}<dG((AUlMZ}I^%W~Ql3)o614;T9_oE+OT;B!S)8;|}3u1>9 zF9b)>7K7^FL+;-!_A)$o)!w?~0B{(Wk#<d1fWN1Wzmy+e6JB-SNH~<P<65}Q$bIu5 zxkq128|)-(%ezYwocstQ&UWysmLMU7zY~^EMs>ktJs`%$Ef<$udo=b{5o{fLRJt*8 z155Wk3@sV2PB_Nev1wxyy>~*}EmPm=yix4)mFCv8A6@7Da#l6Am**hW1)I+_B|%I5 zK#z5hvfup=InJ;Jlb~RdmFP2(eivP{MHDgXUwLeQb^Uom$Tp$b`{6xrgQ>SL`TYrp zmnp_vIj-uY`mDwB5@gfM7zW#`^!g=`;t1rdaN54jGk&~%`wD&@bUlT*M(b94c5GBj zhxfFUd5@(i2$g@ZcUw*xQn6Vjd8E?vl7a<V>V5686?bR*8<BKzwa8cSN+MTQnyB+E z`Q87~7Nmn~1BLlXTgtlInEQ~4VC3xVQGAu}RKS;)Qd?X~%Kt?$e46<Q*4%q_g_<O~ zl)DkhoB1S8oQqao`$_TZ&xP`s<QG*=`r~x|he@`>Xwn>fuj0TZ>=ufbz3ua99RjiX ztK;#uPtA?$HVa5zHeFa-em|UzP=F8HOQk8@pL0C<2#Q2Gx=+^C+UW!6bFXRMu?pxA z7EdKL15UJoG-GTus~}ry<7)QZoiCxzj0$C0!vPi76kiUgKQG@UR*U?S;a1M-`TkrP zLpz(r?K2OXNKO8&kiloCbSyHU*|<!f<<e7GyYxoe{SN_Zf&Io?=PFB5o8NzJkro81 z;U`0N-`;599T5|kqrrMxb5a7_Cqx~azK(f_Yln2?-$wbyAR3Zv*XHGlUJTHHN<Del zC)%T!qjZCsNAtd~#Sj9ytLNf#SN8h=65K~X?r-|(;6yDPsU%%RqksE*l6JqXzdZUD zK3S}Uwk?-cUS424QB&(($xL);RSRw$*lgh5RhC~g71}K;=rd%4pxjR3y|Vahn+ykj zg|pj&rRRN2lv9w6uGv8Ugbl|vU{rh8U7X0@0jhqha<wNB(-Q;1$yQ57*1jK4MJrAT z&jF^H@^j~cA&n)0SszMRNBBm>sD8IzcV3N)6$*X+X--4IJR`#a{yF@o)<;fW-RwjZ zThKE<?L4`?|LW3C5CtPqkoJD!;@gUO=2!Fl^C<<w_l{3nQJ4a<n`3O=-RXT+dV5Q6 zHo+|`&?p>2#|R`Yb>Gf>`mVI>C7i{7`y<@70~j_boR{{c(*2VG^X=(JbBXpyU7x4d z*12l04Nd4D7J%<Fe@%fYAU5@lbGb1?>!(=@$9ntKu{7s=7k|yDNqn(ZpZGMT(^{5f z^t2p)YXhIz;3Rl%^CWYwdr3$t`&GWAX^fPdJqHd*pxjGqv4XU>jnE}(76K^Wgw*^5 z<7*Vda6yLyrXh9Pb&q#`&s0z9<n&#~0JG$5Gmo2=lTpEvWgyC<=!cg;M2UpZZOSap z{gu@(o?nO-);ojGP7R`aRV)wc>>wKJY$g71FtT|bL6_#Dy2K>MeQpZRu6_~YAY`*V z{DHDM-(dW1ei#nn_T^!&%#p8jN$GqQv`>~gjgc?R&x4h2MtfrTDtDL-xt3ZSs)BYY zc6<6tC*@muONDqO>ArC@r2qL!0fO-r#Y_Fk>kRAdSDpbW)5qRy?A$<VQ$I0^#<{JM zST<bZ&9_3r$1PqHsq)w1FWrr9J*ZDo#aqgxEuIgLtAtgVt%nlRc2(9jRZhj*DnOr$ z*V|AbaN5b02KTJBZH?g^Orrn$0$1Im)si=jwc-r;lBBi``-7j=MS%@9QJI4byEzY4 zkm8>}?ZQ0Ap^p51eN=QNM%#^Qx$`Fjzw~fNd%h7pGfny%*%27c%c0bF*ykTWghgv7 zW8d^lS}@?Q5c8#&<(A*;r)Qu$Ro%fR=3hh3#acz#>T1dm1fT5FvS`QJFm6|I*f8Ye zrpUP<#`-$=l=kg`jaFms_wXeJMPzk;$~Jk!Hi_S|CI*6&LCb?!o1~>GO7%FSc6jA6 z{e+Mp=$!h<6=zv7iG(nEw2Erxb?i)c{vMhQ|8Ov8xO-fIu0So<tb(YitVHwsY@%_N zIxo3wwaei47sgR$qzq;+ZhxHAeBY=o<`?>xJ~e#CCS4wv1>&SDCe$P7dtAb8h_+V$ zX&yNKMOqyU!tN5IOxVfnK9AVW<jI(+v9phvH(_|td1d=-%|>KF2+9BXWNJg}*nF|O z-*JilX2ot$%F+I}{3?iwyn8!tKR=FYdvb*V@w0H}vQWRg*;5GrxoR%YJHa6O{nvA- zpR3T~Yew?j?qL3{c4~sGTUD_Qgn8%{@e?i}|Jn>iq*gqu<1o~<Z+TD=7!S*L1X2v> zODY9+;ZIdPR*W>sNVWix87GzR){%~auEje|Q%zA=S}$M4@6Z;D4+(-q&IM*kS7K2L zxMO?_WJIM)N3`;(jgtd0QRuQb?M7pDQOC7wA=|XI3DK(*)F6ul`(T@=hk+WvnlDQI zFac~H(3Ip&=a{9U{l5TBK(fF3v4-ZQEfFi&y*PASVC<Ue+;nG;ckx?fz3ap2IyzY; zP{^#MAJ{^py0s!+h^oAsU)zYsN+z^K=eT~o%s<HfwnmO?f7%}kNyy6#4{(xyuGNsV z&Q4ZCs<qrBeq+u3ur%%vTX-hMueFiM6q^xsg{sJ(NPrB$tb4WDudSKfD#Yqc`^z8I z3Bt~3ZJHmi#I0|MHZ+l`GN=2W0qOFS9I3&T?tZ6ZfBFj34P4BsaTOZ*t_hn`H%yo~ zuVPjut!bh6b5kzjTp38ehLM7`GV8wkXUR!F2bT6DXKQyZjl^bokr=XJ<Ih9>%%3T< zo7T+_AjJ{`4ecIpo}O3;L-<s_F97s|JYK=40prv0&EYffeP+^oCH~Fgv+eVKSPmfQ zH#}@Um(R2Le47K^4Y&CLUVfmLFZA+*y!>D<Kg7!q_3}ktzL-aBzQlX4;?*{fdU=hV ze;^%KV4la9Cc#^We~0m9_`DyM)$;~S8}V&5aA25EDBK9FFl%ex25<`b2H=zkN@U?? zPzP=Vy#Y+(F;FNrKoH+E@IABvGVjDe7;nO~5Q3P_0|A2}1H#Y?hCwcjg#IudM!-ba z5vIVdFdz1Y{Sisc{BRGHkqC-|d9bjka6LF3&?7Ns(AFFX0a$4Jw0M2Wv7CNzFt4x! zdJfzKy&Nbk+6Y<nx(TuwB!<XFfB+80p$>tba47EZBCLsZKYdQ;>6hU2Rklxj`h&db z#|*q2f&;U*o^lmrdXV&XA<0eDgwg=j9~7oh#8VC8s21OsB97{y1P;S>wssF(pU%KF zAaISg&tCw}LsQ?s0$ei!cQ^vqg6}Z|t`&i6!-?9u2d-ad;8r4Vt8AaY4qV<}0q#fy z?kEIqHNGE>z#W6Y9g7n!?;g1Roq;<6fm>ty{B__4{1xC%Lf}qD;7-B!QxUk+5V+HE zq7{6lH&F>rL?C1%XakEnU=ZaUFj!RI+6l<>!N3JrvdZV&U9g-uw>S3Lp##Ee5fXgL z9?}6r6Oi<<3%LYGSqnLEDV84LkMM7-Bc3=N`wd$U!#iNajG|32l409j@L?2#hai7u zF;*9JKw&X1lyF#3ya|dC4aFN_ba4liVDXstZBMy_?1+QREcON&RqPEiwsQ0)*onb9 z#N+4=*qM@D+<vdNL*@(uyohzcxI68VR^uM->MdXn^v3iWMCG;kbREi+8*oqCp$Klo zHa9~l+=6oDHkb@|!ECr2WyE@9(hX1#n~-cb!*aME$9n`vd<c$%hj9}gwMaP9MS>$h z(q^$%qK@)H+=Sgo1g?kO*TRsyV2{mEiW06Yd(RFi$I9{9d*MR|?A-wqiq^wEYjN)| zpNM~xI$&};8;D(}tcR(H?!xSSJD{TQ!1XXqEZzXqHp6rrYDT5o0Vl$yGZ7P&rDF7Y zn6(883ccCr6{pFbjR`i|kDlkm=dCEr6CE%Y+ss=F=ft~Y&&T?Bzx@+!<JAk2st-td zKG1E7k{=~r0@luuEKEPTZC_38vk#*8_}cp<*BtB(J`fR$yIm^nQ=WYAP9$N;BCHPa zU&oeF?(KRb48Zg$+?!`06P|^g;5pa>o`-$mC8UU#;Q;tMisRQ&O1^=+`wsH&2S^K_ zz#Z@zY=kf1Rrrbt_?q>AZ`dyIEgKKtu}SbFtAwA}0q`@6z;CPue#aSqV=>rjDdH%P zEuH|P34mj|62T!|iJ&n1P;Yryv51nz*e@~@AC_!^3@TW%0U|DDs*tOy9T;C&ggY25 z6}XdFQG;!2H^R~cri!sgf``W;3V=B<f^jIpW$nx)?9L37vj9wDL72fZVIk`YOIR;x zX4$Zc<-*adk6qMiZ&CYrVsK>FMb&j(R3{P12IJg2*zu0`#=8s0Bgt}f*YOTZ!zmrG zYzvHz6BWG@A=SI&-H=37Sk*`vSP!zikkYl#6U&;!RiH&X3Qsafu%MY}NG9MMit-WI z2!wMK6tjHTpB2GDtQcZ!G^}JLu$qmr@E_yC&qyxPCg0_={ozQHn6+$y9kGnBOK>BV zb_1?Q^AAIeXx@UGfz4Z09Nh7P)}pPH-ImOX%Lzg2VFit|(tTb<&qw%Ux}A=sPI0CY zF4G8?Y2Zo}fq;KE+1$lJDN1`_yCO^N2AOPk7{K;`39Jkjv%R32?G1;qiEtsC3~SjG zxRO=Cb!-~6V}2)_ZgF!g+K7l7{V)o|5P&?>#f@teB9KR|g&w$w)wqbGH^4wb+A-eh z*Llk4*bX?ZkQ5@lQQamuo})BA!8IoZ?H(tg&;e^`dxvG8*a0Vzz>UA0OpA7>#AR1{ zkE0(f%sz!`vQM??X*NCGrf1mnOq-r%)3a@QPBPBVb@y&c2b|Yw`?Als=>;~u(54sJ z^kSP{V$-!YU1!rvZF-qaFSqFxHocNkm(Q>2fUEJ1Rl2X&Y(d1iPnGR3C=S!LDKH^8 zUi0gyx%b!s*Js~QD%`jB>>E4arib9>Qkf^WK>s|6^JL$Weak&?YpKdpTR`V2Z0t=y zYN9;*Z}Fwx<|E^Ff8sl+#hoPEySBQ^YqcKk-URCz;OkwmfjV@g5I@1S(SyqZQIe;U z;L>?|3k>i_y$Ac|>BMZ=n=IPgf$qhA{?lesk7yKBCQ8um^#{5ybrJV>Qc6~dWk1kK zNgbR_6P-qQFzpBr{TCxVoNfdQ{3B$YWj~5F?ZnxS{TG8io))YvKJszs+`{Z9ED1ho z)2EV0d)gH+&vd}E>CA%X-0J74`iLZ^c)=eZH~&Qjw2husS5HsYtb3`{<Qd)pFZUXH zC8+jo?|MD*%qIA|1Eqnyz{Bv$+HFtd1s;M|N`wBa{~#g=cEGE&z}LK&*E`^i>^FTF z+P9t41x4`%FDcA^%YXl82fSTs__zQ~YauMBCkx>_rNO-5!|?9fZ6EoQzh~!r2;S|0 zf6@H!CrycB<^vkI13v6-@G<`2@6zBnNcKk^@bNm7d3iye8(0%Sn*GEzZlCiZ)>!Z< zQTb<7^bo|>!{;6FMF)IYNK&uDTcC9%zGC2u{R~&^XQ0>@=(Mhc<5AEbk3I|KQXU~O zm&eOBl)GxcanRNUHVf6jeh^}FA&1R_!EApR#umV6w0_31Ltr{v1hd&<n9r7==@5lO z(Gpt54ntL0567?uI3Dve*x_&<Yk^D9Lb`&rqPl2<o7r->gROuLwi51RtKboK1boPj zgwNSgXl1QN%j#&@%8p?UJC+%C9P7c3XT8}8tUp`B!t6vglAXkg*~x4tb{gB8oyqoL zXR#UVY_@=%#|~!~u_M{V*y2*Gy$sXK*;VWcb{o5r-HlHh*>&s%c0K!v-QWym?at2Z zMrU_+lQV_g>`Z63I92R6r;gp}T)^&iI@o6CA$Fg$h28JG$R2QBWsf<(u*bQ>ws6Cq z;Mwd+-j6-aOW8Ag5_^tUvgi2%_98!oy~JzT%e;ZT#?NN2^R?_vekFUG-^AYGx3hQo z2KFA`%s%FCvQPN0>`T6leI+v4*P<``Mhs)$iW2sn7|VVT6WEWUg8d|Bv!BJW>{oFb z+bYgs+r&Bt#8r+XZgsf0-4SAwBgNy663;nW{NMz{uTD?#A17M|oE#Z)ddoget{m$0 zm1CTKvdrl(_i+Zx8O{!Jwlh>lo#AqsGeREj<jW(RLV1i+B#+1Z45yeMM*%4GrFON7 z{dm{t;bXBZ11aPX-{|=|t*`UVpP9M%_w5!K9B==f+x}a(btxJ?1L9TRyYl4+<ZWB! zbK#G~g;qiR<ny09EE!PWqMqy@Z~Ak}7?r+jLY@DeB(r`=m635%yi|JQQpvX|w)n3O zj8lA^c1wO6XK<R|*FiC6TfMStVKBb^he~$pfIrY272`C$jWg}g$8Fz}-m|w|1q$nO z^;(FzI1MLonq&1RwR2ZND5Y_8O$TG8fx;Z-c=+`@@HmEY7^Qgu`zSqS9T(<VTTijO z!pWfs6y^oe^;ce}9Hw36QbQvg?3>(QllPHqHRLdp&dJMRfrPBelZ4B-pbENzD(Kp$ z&NOEZ651SR9_5~WdKVO9*-luy3uHRG!cNZaQ0D9bdpo5t)hUA|&UiS&*&8l)CcqWW zK5&CG8SZzc!Yj_c@TOA%A38JOGiMfj<IIMio&DesXCBLR7PDSXgykXompe6VZ>N@3 zpcpvNS;h`_npwm-oGo=)*ojUXJJ(ssE_GJ1mz<;68_sH{w{wCs+F9f5=A7t^cTRF9 zIj17rr#rKpGZ6CAor9e-E&H6{*~PDUcJY;|b}<WfXBV>!3V5I;oWnxh8pf8+Sf&?k z{hwIIIjlz))A+2vX#8H3WYStwH;46fvt9|KHiu;;?A-Mr*1`xZ%T8F?IV{J`db?Tf z|F=xx9M-2hTloL38Qi^nqxm@FTVUnB1@?|>V|BG}0^7H5{tJ8CHBWp@^i4rn4(pdd zLJrGwv;N6z>62od=CA?rN|w16van#FTRtcuSyHC#WDn=C!CkD_9JYhMKfjR`nQX~+ z9kJ^o!pVym@)s5{^nbgEVQCgI{J&X5mk~##8F6H{BPOly&z8^)5$@fU2w{Y!JJbbv zXc@0(qdH*lIxi5CYu1>AVSHa<2g~<oN8^|k_{K5u7%L<m`?8by{MRkz#c%|yL6x%x zPPDm{XUGdMyFgw<xo0UWKs(7f7ZuX^5OOYp9Oq&f?5u@h&N>+FTnf86SHTSD8d%_5 z2M6OMi=CUH!MO#M)ZgGZ=Qdb_`B~1LaG`S-T<Y8nS34*KoDJ}l(*Z9y8{r?$J@A&Z z3Ep?^Ma8ul71w>JxbBCo&I61)53(TIsJ)zrSzqT7HrRQTjc}e|J3CLaU7csxUe2>@ zn)5uXc3xtQ&dY2S+OVsg*VtLk>+F2z4R*EjCfdPoq3!!Fd&GH<ed_$n$#On$hB_ZQ zqnwYNU7e4eQs)y?WS=<)IA1wSoUfgw&bLmh^PRK8`QACs`N28U`O&%1`N`Sr{M&ih z`Q7=FGv|Bm@IIXLL0s_RT=Noc_%1xaOL>q_;2}PpXYx6`2S1Sa;){3|kMbOT3h&Kt z;ko=y?75NW@wa$?{yrbTKjS;_A9$Gm%7^f6e5g=-xah@4h`xNJ7|ip<a9)5)uSm?~ z#iE&y7Rz~wIEwEmuH<9IBYY?E6yI6=o$n&v<hzQ0@!iBHe0T8`FB8A=J;hdDE)^dy zv-w`KKi^vp;S=PZe4?Dlr^>0kLhi?>$@#oe*75yhjL(rP_<XsV?=Mf_2g)<}LGoOF zu)F~CEBGOutmQSHwfvrYGT>~DTg$A-x0Z({TXw~1%w;58v<yafuo7g5%F$aOh|goz z!Jef5{hm8on~=Gt*;u!?<!QDPO^1Iwcd%V7Vc$6#IjnR4U6cEd+kXGTqK#}f*DS#W z?2dJNY=N<EsIxE;>STM^!AiFu>+I*pI$4>z%8zh%usso+@-1-a==E&;dbZaSFs}Or z@7)c+6MSfJEZcG)4+1u^9rp7>j#FLW_x9%6vc0(`bvqZLW%72`b)>s&oabHtbYqk+ zxq^hSC+zv1u#sw3=0~c>iCiq>e%qZ~loxfu^^^|(lqZKxO-8nGH>&IwI^Q2l2l*ts z>;a?uJRAk~zBa1V%e6BrI@q*!cT&5c5$>deyG%OWpT~s~(J&+32@Rcv9P4~%k24># z`4*HYn4=u|!M-OM_q+-uk3uG|ft`6R?8BGBOnw*~%eTNuyaCR{mJi|c79N9V_zL)d zAHjnBXf})=!wUEbY&2iPcHt+n@%&_VI6sx0&Cg^v^Rv+ZKA*kMFJiy*iyg)<bqv4E z*@Iu}jORBxv-r)<3Vy3|H2<4(8Nb81mfz{z!0&eM;Om{c`DW)aexLI$f6)1mKjwVK zw>V$(C!Fsv|D8W+x&1`%K;u2{K;x=33_i0fgCia*x4<qgWh5PJu*#0^4mQ{<>!@vH zvpbz`u>I1XZurdF19y3jH$dXZqlA2U{ydE2FTpPSWjK_-3RV0KSjyi-jK2*h@^|4h z{ytp5KY%OwM|QO*d8=*rj)PWMsenVzO}m)6-7jXIznIix4MyjX-mwOw=5ebdsn3kW zA_jxTMSOu|^Cjf)ub`ZNhh+039L|4&<@{$0^vOwEL_lAbW{Vc2m%)|?JQwT$a>2ai z9+-By2X?>Qh5mBw_E>J|ygdt3wr3~u75P@&p8vp({0}G<0DB1sW(p1~godL;0FDzu zI7wu}Iid$#Dtg(~p5h%$FGt2h+^{Xa`Z<WykH6xBT@)XJhFuOjG!a8t&lYvC#am$4 zBq>TImg^(QqGpM=I$K|bz`IY?DENlED2pcK<w5vYgUW>3hz?fkwUvI`rCr)ih_@}I z2bb<WQJ7dpUGg#xOEyrKxmmrpsE1j@TIh`hjR}C;DX2qlxFtEP30v~<gK+X@G(4|? zqM|_^?C?^NC)TqT*H6qwKas`q<a*XxD%-bxvxc+wZ7=$84NJh)mVhfw+&qUZPhXFe z(2;a%r(8j*yrb^B*=F3)&Fp^4JvuoHhN1P515)HdrsxYLqCe~|2Ebur2WS&vI7<wL zi^OoaT8w~u#VB}06v5M?7+w)2@RQgPwu-Tgi(Of!7{>;SJ=jRGCmSvHVx?klHbG2a z`-*+oOfiwo5tG=#SiVH;%j(5+c7~{Aw~E>9ZZU`5Bj&Qrm_IJ&SsFamjd+M-&;ZIr zDjt;_@kokq?C!@mR{TGVZ~WCTMm!{ONg@K0E}G$nG5)W{Dv}(f|DQ!H{?`Y0Ic#O8 zNaJER(zq(!8Cg1yH2XyKKht@o-q8<wrF7bZ4q{$LUdEq$rRn_8<k`D;o*|dXL)KcV zgr(4eY~2Den@jYK1|ka$<bx@9nVyY=3S_SXkm(mfNE{4V;t&`h4uuh-3Kc~ZCW{(e zcpX%VdN@clz*5l!O`;iEFh5Gf;0n<S*NHZ`MJ$Iq#R}LcR>A{f6+AAEfM>*!@RB$R zUKgw3U2!aYB~E~E#2WZjoXCVY1%<?EY`8d+m58(09^yP!F3x9_;sQ2TT*xBgB32_V zW`~JO+415scB8nQy(F$+?~5zhC*mshlen7wCa!U^#q~}<aicR)+~(AX+nr`{hqFT5 z=^Q8Sa!wX^J7<axXRX-iTqf>ut`eJ^o5j6OhuG{qAntP>7xz2wi3goe#G}p^VvDm4 z{X8k2<{9ES-dnuD^TdmMAm$^*OPxHk)4a<YRaizB*S_&p;}Q1q20Jp{<qdXZH)@?W z(=*3hMV?98#ah$LedA$zI^W=^B%ddTtxoog_DpRx+VvpXQA_%)c{G6{HnL-qtfTl4 z1V%7bi)2*Vhtb~6k9Xi>T>8iGiOrKP$%)sHoZdhk@)nZPKVgD+52lFsVYc`H7K)Fc zT6_$v#iwwB_#93XU%<8EE4WpB2hWM0;5G3xyd!>v55#ZqG3H;3-z~yV_iT~l5#2$Y z>=7T~$EJ6Mk4s~QWglu0ZI6xE@%DU&9pCkQhn?_0J>L=DxCGbn$>%$4jRWH(AE&$+ z7#-ZO6Ycp9JE<_~e21M(CI0!2qPKC{p6^imp7idW@2Ffw@!78DJEyp-I4Svjhn<|O z>3qk~`A&-Ya4Jbt(~<5($70JK=a|Ag<M%kNQ#0BGI=1QVbVekf&IDW$74Ynk+u26k z&5djm<sJ=P0i#e_F_4l&rWCNVl(2_XFkTv%ECVo8hM-#ZfFos3I8OG0(`62vBm2Nb zvM*dN`@!{c0IZjzV57{3hh!mqC`ZF5vIM@BJK~@_F)nvuM()ab%5kh%?!k7Kd$PS` zIjfa>vnDx#ohK)<%j6_>t(?qmlKZmT<utZlPG=i2e^|~yVSNTa(-Q#qARo|uFJg8v zzR>lQdmu(mU+X(kq;};v;kj9zD#^DprO8*@akI`Kb(h1=#K)Enc2>%LNGc;G`7k?s z9a@o!tVl&xq-x*xr8|F1@x$yK6d1)1v2#kbA1vU$Mn_UOx3j|^zt-s;<Hb9TY=>dR z_6FfV*S<Q>v#znQwzz|x?^@SqkY}IfrX^KvWET_;A~fXMTUT^iXA<7Yau|fWJr8$# zJ`9u#V5mF*cl#jNOCAi<<RaKlE`~)i0(G()nq(AK$Qn3G*1}2hFgQ~#g9~H>tdos! zoos;@WDNc(SHcJKNZ2Zm!JR&iWy<4OA9(^BEKg#?<jJf+p326^(-8S*@v}XDF5=z6 z8;gq71>9QiWV(mRbieQ+b`e?c13TEoNY8^dvP-PJ{!S<N5w|xW*FlcF6b8x5VVJxE z3h{kM^i3T4&k{T#wg*lYz>YVO5E~yiW_|uzOPhjIt?OizAmLm}p`2dk8W@>qewmeY z>~h+}5B$dM@I#^r+L`6K!a6orCJ%R2DaoW<l_wv#1|H3mxoS+{f^`sBqi}Iw<SMZk zYp#SGTSJLhJm!M6FfK9j)ikoQBVR*;gc^3RYjfCj{ycWDE2u9WN!zLVVmoaI9Al@` z*y5AKpw}k`y@4LJsJ1WdDKp%dh#To~Nc?5UF*hZ|jz8MXDd@b#rnjb){jHPw8|29< zW1sSjC#x=ESKy{yL03UiuLsM&A@$x4A$cd1$n~%b5_lQP(nICFuv%`06Xbnxmb@P> zkq^S9@*%iFJ_7g1$KWIRID8?WhVSGvOv`7HQeR|K<;$#6zQ*Ru*V#exO?Hudk6kMN z#je2oM)^LH(RuuQk80mRs-@fgM-UmId>P~(0^hb4reb#cItXHR$6DBf-dvmF&JOS1 z*P*EztT>H{i@omJ;<~kWQ8jTdqNN84EBokOn^q8oMvIANo4a_~2YMl1z5pe^f(-dJ zgypv|N`41p<&UtN{23<5f5Q~{3(S_k!v1nA93uY%QC!S2#h?-MRmwpQy}-W;Jpt#T zh|3U!=5CTj1lHYjT{&*z({sv~I`)GD6$Gs^AgnTRxC`UMIki|vV*7<6l9cS}B9xRf zi`TRDTi650`t(HH&+eorR{(6V?vpc4(xrEHmc0V|FzZ+c11R6PmI3AGtb<=Dzh@nM z>($riiHF$6^=#8xYY-IJSI<h@#O~$jEBMq}xSnl}ds{TkeF=k+-QP6=ZbJn>Sb!dA zhtK_@fLoM^y(YNf!K9IM*h5`yzU%%6u(U(t|7Hba2~!WRg<*u6hdbCKTcDqPELFG= zQgM%Tut(edW#vkb61Dr7rynG7{Kqt+$DJ8Ygj;(*dyw*EEu;D%G4zFy>IXS04~e2b zj8+3+XEg}+RKww5RRkxio#9@!3p}QFh3C{B@R}-zx7A+oiQ1b5)IKanO=cBp23pj! z*-2_YwpPt$SE+gIHno7QR|m6u)gkPD%%4<w?0FSIqPr+A_Sr!w_UVJPzq?|8V0y## zv9uxH$6e>$?xse2P>697O+Yb@{LWmHCs3*`Mj1<A0g-cfTe~&hw{)<HiM@Y<wjodC zni9|CkK43tVy?<XC6#UaUXP>V*zHyi@NpU)Qxf2M9SIJq_XT9Y6_B1Whpz6ExV$If zX`8!<uYo*7d@V>-2SIfh?5G-GoN9upsu`xK!(pasfdf<w4ppsCt5zWMuY&W{k+4o3 z1y`xnaIHETZc@j=t?GEV9oueDC*lU31P`fG;c;~uJc;?sirj;X`6Vu*1E->}=mVg$ zTtt&(Krs0@!L1FxnLT;nM)s7oj5=fg>9o;XG0r5JcF%M+?E*=rT~ehivP}OBF?~@g z!*6t_4&l@}>{)k`0)c+Qa~w*8?iU+rF8?q26aO*$#L^6(kxdSJ9$)>Xy+9n9L7fZf zNc_bP_L8drx99og>C%w9$)P)NbuZH=VOK#Ey#n_4QhT)i$`&YeEyI7r<E~VR6&>u= z#N%sdCk|W-Mbzc>Ezrxt@H%1$eU!=gf`h+_lV!M*W!%BX1^Kv)+zfBhYhYkeZU#*n z$_w4Y-dYQ4O^~h0AR{a{h_dCMS2Iqo?AxUo$Qmi@cqhdicsGuQ9QK~SZayxQ8$w|I zWv9BSC^tk?W#(n#RO<j);hen8_3VAIQ)!R99u{{Wtb;LmJ<v~EXAj|U`5$`Ar<P>3 zd-+GW@OGG8X#2(MI@rgkgZ;OZ@16282^R?WC&`~erI^)gLb&ezu*s*XYCQRzfm}*^ z_=iZO)m_RDafxnlGQEFB_EpID6#2N!+{`#0_{gH%Ou|EtG#x*uj+uVPTqOU&c|GjT z^s&vI_bqXMftBsft9)E9AG+fS6<?0a%FQBAHWYV>@m*YvrXg0opPS{nz=1Vc+uFB% zmYbCux)OGF$2~0>jIRicENdNpow}5ECxSS~I`$3D?LK{5+Or*o;EOkByv~2c23E;u z+3jla^n4Gy_3pO!I_5f<<1KVru2`2GPNCbUc|D1vHYHReyC%`#`?L*?%k4!v5NCP) z2{aEdf8_}nLSu(qL(P@tcUpGj8`y2_tkSmL0ylYI@|9*=fGt0fL6nzGAM@oDCg1&Y zkw2?2ev@Ug57rNHuyWXsRz9qU%)FdU>?a30*w1vXKu$<rj&0%T48mklx)FX!(==CH z0sGs9(YIH)6#I<wp%dj(DGtMaC7%K6{seKbuQy~?QqOkSX*<lHZifnUvpjR6xBHma z`@uDWrNCu5vXgzhCX=;qePvB(Tl?1QQ1FHX@lLL~)<5{q3w0#!ww8vd{kHcCbB%R{ z1E?Q}X~rjp&C}^RZeVxiX|aLbk*5ibo^oNgx5Ey3Ixl3adDm)`rJ1fQ&Ag*D*L}); z5R@oYBUA~h<Px<b<>=Q;(R8|3$?mrKX0?rSt#yEM?}E}eI1~G<Lp6RGWU9-dm%0LN zs4Jn5x(aqsSHom=9ZXl(!xEI0OVy2VjJgF?`0a4Bx&t<<yHHi%4PU5@@U7YeKdO7- z57fe3J;=tYM_8G9l<lJ)M>w8lmFg*Wpn94uR?o7f>N$3{dWD^@{=qI)udy4|8|-%V zCc^nNLiq`MKz+)dQ=hSasL$Ek>I?QBzJIK~W#6dp+0W_+_N)5I;p%56sD5z@)UVF& z>NjU^^&e+n^@lTEgELPvr&c@8=~_FNY2)0i1I~IKbT;b@=W!i!UeKA&>)7ud-OKq% zXF1>KAzbO9yr&+<$LisHZ#{zVt4H#~bP->ni}`7KEI(84%rDlv@hkN1{CZu=Z_|77 zNA!69q~3?WpeOQI^(4McPZa^Zujr$vixGN;*hSA0rFuUxMb8t9_5LEN7l@PeLeZ`d z5%=k8@vx4Hr}a|tl0Hnlshh?7x>bCk+a&1Ka<D#DF4k-0Df(1-ranzxs85&I=`-YQ z`b@b=pCupE=gRl=h4NE<k^EU-sz6_+w7x=((ATLVeZ4Bdd=K5O_S843Df%WgQ{Su> z=v&kwdbq06Lsgx=O*QD-)e3!wIurBr^?J2dZ&X+6d)0M%v${>+r=HOFtLO9s>RtV) z`dB}vzSNJa-}RG7M^8hL{sTVGhnwboCyortzC<emZ6cC*!wao=wW_pVVT!1|)}!ad zH|UB+&@Z4hcPYQj9aoHV!zsMPj|rdUn%1rqSnc^4>mY_z_dNkMWIa{-GT}GZo(fte z^1H{ag4i-h>>n&F%0s(iYr?^C!)2a>LvrpvY2v2tO()O8aZa$doO6_GMD}svAlv2- z<RS0-Oz$m(F6p+lAjNn;2A45tt$&k;x^97N%II?fOp)X0!}x|$nQlq67?oHIj<k1? zb+$^1$idPS3q*e_8&|39bB6=%bagyW*_F~;kEFM_h*Eatadc^Hp$SQGr01ta7aiK= zI4lvkp$k9miVkt1+A%3c8Mk!_&^+1UIGvr&f;5e(Ax~}SV*7$Y^o_d3)Bn4v{PmAa zY44H<owIgojO(wWeYe-D4o-8es?672j)-G0$zD%B&2ePf2Hd?>HPDY~4UEUMDCT)O zABMA>%Lh=-hw%~i-Q~4+U^nEo*FowxAydB%L-hNQuRnm%`XiX3KZgDFr*Me=98Nb; zI9GoI*XVEI0sT8Xr~iN#41*7ifiFw|zB57i&15n#Jz1W~V#7=>8)f>k64Q_EV)EFY zrazl*2D1arFjj2}*pa4~9dAanGt3xvr`efxm{NAXDPxbBJ=u3=FQ>1W<P0^FoqRLJ z8Dpk82b*cm@n)uThMDEuZss~2W}fqk+28rzEO34@2l5=VkoPf*_y7~-VN=70VLsZ_ zq71n_E<@lpF9KZS5{tOAXuYFm`c_j0z24(!TT&dqOZkL%=fE)?a2(zJqs|>pfI`Jv zU{H#|P~_S9Bug&n^hLdC0Am^<(=<U}(+oS97AP_?7-L#t53?Mmm=!SHtc3Yy6)ZAG zK-3(CuwTKi^x_J)pj0HyJ&czRL^y*sa@CKX22$k8$*A-KgrnCxXjyDd4mLZPB)ir- zJ?w>pgiquaZBDh%;_|3>VUE)?#q)@pp|a4M<Z5p&Ym6dcR(8N#zyF-%qavqQst@Bs zmPI^f;c&7$F;3^h_|ETss8V^MO7-9xhqeFl0mUhHV1{KOy0Taf<;igha~y8M@sMXu zz)d(23eCxg^ivS&r$U`M4VumAaD+J<PB7=dmF6P2$y^L~n@iwcvlbpRm%^v!D)`=9 z4ZoP{m}9PI#<a5@=0=u<`9O0V8)|OGjl0Sxy6Zini~Qdsx_*ezoTAP?Wv9Df<~F3a z+i|IPAidp*OT8QEZ9UT42Bf!*NN@Kby={X1&AqVL+=puCY9Hj(AF<i5gFV{m7aGii z5HJtfKG%4CMuD&w8Z!#%s_T8ls6{$=dK7}@G27`{uhU}hCt-HSX#zzZPVcpdpOgbx z(kR7Nq2wlu)BsN6^jVOYp%3BMJP8@*DF~ToVYGPxb~7*HY}ffeK(pMQ?E@@KkRN@S zahKE2PLN0Q-Qp@$x>K~ndZ&MfGaz1?;|xq{5Wi014C+YwL6goaegzIRuOl^F@53<M zGmi{z;b2@#=N@l?HvhyPH>B;cLz*7%VvqN5o$dTauSZ^7#Uz?qi^_apo89C!doX?} zv*=+byw?60kVleeT{%PAVKL=H+u;CgFl?>$%u^feRhV=E+8ORe)oiSB8oJ=FjT3L2 zU1YD+Wsv%9=x|1K7LOm}IzE9c^C@!X7cj(p4f*C9*vWhgrRE1X!2FCH`fsQ;ze1z= z4VIg&xR{&ci(z4p%kJ>a!zvUB*(X-|%39~J=PT3QuBcABU4hIvaxDaM*wO8vY&7k* z!qIkbNz{(Yaq>IhV|&Wt6xi$GbaLX1q5v%E<LkFG{`P)e<8qV|Bq`c$?qa19au6%q zKnCbPGUw1MAfSIh!r(vvb_)cdJdg?d1$w}Nfh?#A<Un(v53CIIgQEle;o`smxI8cz zt_kb_*JFNrAdJ|$#ozj~JZv4Bed5d%1kGe|leyShN*zw28%0j}nzk#Jyl-n0cW<jw zxWS&A28II<jKH;wgseaz<OGVKBv1l}1n8$yZjIBsz680HK6|7Kp3a`$xhXH_<Nr@- zPaYpdk@c&p?wQolO<;&HhJb*e%wzxsq68A|n}7%s!pb41pvd8YfQSf+s4So&22n0C zi;EB-nGm7^Dv2kEAcDfW3m&L=fxEh*vQ^bRS2FDS{l0&ux~r?JUsb)U>K&62b;N48 z-a$rrqs=z(iQ<c4)T$8D{6+~5)_GnpQ;LzJ&bO5jcVB~5lI|UkDj&{tijY&Zbc$9^ z(b_4la*C@HD%(^KR!Wa-09<f<xb05dPR`*c1$90v!&w?Ge2w1-h4Hn1!-w0KVtq=i zs<U0sk&w>PlVzf8?Kz^N^>K$n?c3<wbd(PgK#y}=!#PfUuEIVa?o|D;<0gu`xO!`( z^D0@_Rh>0?Dz*IX=~qH1jJvJUNw<2I;O<ev?xEIKZv}AAh%KS7>$K#&rlpp%&1m(< zJ80+k#@6b}|MF6==t~mn-p+vfI7MHl=vRH%{SzvPGD^!O$kVtpB$OscIzVNUh-^v= zp}o49u?K}!bXf@s?ZgAKSpt7k*|Agt1_{t07a)ASwrW4`!-IF?A##HhavW)V_=fCA zWV8;Xb~i<?c9Tuxm*NG#rz-01>4aV5{7Azh*pl!>9S}x(8y34Ph)ve;SnZ!;mp8^P zN5n2i#x6(2E=R{MZ;HXuye1rh#K>+H51!(ua-PR1Poa2JR%piLvW#_>Yn)Szk0E6k zPf%fZWq6{jzu9>_DVf&i!;@<qhetlMSk0v3&9~@H(QJ8jYjwn!5{Ea@rM)e2`XbKN zc&bxObBgIsF(bwVeE9YxFv<zI!_l7|k3D=><aig){3D9358v$+vz%gf0uP!~lQAXl zCb=_fdNh79JrcjDWWfe=gyhqk%o|i`jxa~*`?$D8nk6OCwIFB*uxUprg>oeK&V_EY z6ZD{+p|`9XK)b>9v^xx=Jzx~=DWy^`m_mEQ9kdV3p?%?g+7A}f{;-VZNeMMTN~nRb zfu4s=bO=<?p-@Tl;cYq$4$=ZRMu)>mdL#TmN5PMDG(z+yWYKZRN5`W}=>&8+orr?; zW^^^3gxb@|s2jZn^`*C>L39clNpC~r=~OhCPDiuo4785kiMG?b&@MU?ousqScXT$c zOXuQrdM|E5=i?T10d7qf;%vGIccBmAe)JJMoIZ-j&?R^(U5aPXWq1KyjyKBsztSi1 z4!ROo(5LVoT8NL+RrpK#H2#*ZCMk3cSw=UL9drxXO}CMQbUQgpcal$NIr*IKBIjrY z`HAi(ztcU2NnbN+(btVMy3c4pD~;x~%4kF1Fs`L<8eQo-Mj!gFF_`W*hSLMaP4qqE zK6=ntMBg|5Ob;0==wV|u{lHjHj~JWihsF+i)F`JP8++(+ql%s|4$^-ZN9if!B>mJl zO}{YC($mJz^h@Ic{mS&vuT6`dG3(NA%yjy#*@S*)wxHjet>`(kJ^j(_M1L~-(4WnL z^xx(U^t?Ho{%Vep<wW|M#D*8i7Dr0622!QuQd&Q!l5F*LOh?V)Y&Q5FM;p{3;R!}= zDIl68@YT7omJXBOCe@C6;~g>Z7`2;KE{1u^&ifC?>5_)=JZ-l1xMtg0s_A|4c3WMc zZM1m4<K=?qD>)g{V}hFK?~eeuMFnqks)Sb2lPz7LVNgE{!gyh1TM~&7RCN77oC)3? zi(@Zw8c6{0gQ`>oUQ`IRm74NUrP2%Umi6vkE7$TKXOvJ6su6Q1ZTP3^BF^rQ7i)%$ zAC7(0u?soc>LVJ|x>5a90sW}^<t3GIR>fusYx8HV+Lhp?abi0f+~@e{s}5q{R3?|W z0l3o{eMR3_+viK5mqi>!@N#u<5Yb4lh>h;C7?Sw#<H?W4652eGcwDE3)<Zq?;T2I8 z{z=_K+*ek*J;;@Qsv49&To?gT+0}+dXEzQ2WoOS&C(QWiI0%DL02(K2x;g<+*|}@T z({rJO$TKy~ziM)_lO4WBhyQH2X5^J?X^uGLTr2x_@@?R?andkpcX69<rRk5-zoQ+I z;x}Z0sZ#%{fGa9-q#s(60JuVwb&hAjFuy^f3fNJlaA{uwr4{9s;PqkXp&lHrbYs2n zhKSKU#W5(lrSdjV8i&;UKXRv8YSVthQKwS^>ML%R8l|adB9@9tJea=fQc?w>h=4lg zexe9Ib6cHAJV|q@%!gy{kALX=Ojc}+9UnUZ#R_5-F@~Qn$3;YLbpru4I@fPQ!XEvy z@`Tj7SHi)sqT@|b-07uotj4jM55I76Eg^ypacKP4_?6$BNJp;46~Cw#K8&{%Lb_t3 zKD<?v6_YAlagnRZ#dwMjZ*w5o?i4%Xb*K{Emu3{PNIk5AhiY=)aJa@%d^M8!G+_eD zk}S@}$am)-C*PeHBj1ZMu<}2^z!KU#Q4P8Nr)HPt(KhFZ+Z=P<=A0BsqrFSz&RXuS zy{lB|YIZ|mg_Px~V6r;UlKG$=s|$l!8Vq567|zmRG|PZVtRYNgjbJ8g0{60Ju#h!} z)vN_<WSOv;g`k981qWDL_>g5G!m<%#xu_ZIf<mk->cqOC9;_G2V|~zI))$Rn{m=x~ zA5CL<XcilU=CK>lDmD~7$MVq@R)BW0;b=D-fvVU@bdZfg=hzr*vkAB^n}{2-$+$VY z1$SY$;XZ5{9?YiW5o`vY&+f$Q*(|)7-Gj^7T>KiFhreL=;cwZ)_-FPA!R%4elr144 z_Gi+MEhnScV`Kt*oJ?aY$!u0gwy~#41$&0P%GQ!M*?RIl+erS!o+rPuA_KD*49;FO z>a#6IBevCO!FCw!SgDc2!bW#iX7ph@jiIdE7|C`S^VnYFVYbg$#j1=A><wc(d&k(# z_8V`q1I7V%$T-Xn8z<Ni<1=>D^sr-QD*M>HlpQx4vlC{JePUkC{%&?;C(Y~FDRUJ2 z)Vz<KHW#t4%;oHB^J(^txt@J%Zerh=TiIE&oSidwv!Bd2+0W)z>{s(g_M3U0BM;%& zlgf#w9`|_CIrlW<!js7@PaAG~vUx2}XP)Zm#p`+o@-)xAyuRl#?)R+bmwGnvbkB>t zp{I;D^6cf8c~0`io-@3Om+{NJb$K&yL*CrmmACMY<st7B-qL$Jzsft8U+rDM+jtlA zEbmg@!MlQY^gboa4Lk=h*&4}ffk(Q5#k&Ftc`d>^6g}u<u8)NdhpKB%k!<HtDs=N2 zDEYlBs()2D%GFC!xzZld_~oc>70~t3$AyrZ__!n?b%yh-IAZEBl*;%r(FP7fdE1zh zBf*eWN`UAb+MN^BrB}kS91wW7BZBjsFpT7>GE{tUH=R%dKU4+N0vAgtf%jabi!Mcw z?Y{3g6UKnq8+$)_DvH>NWrVB08h=JvEtt3nZI!FI6>U?cd#-msTn4~9gUP#s#k<3$ zya%-7Jt3F(f!@3y4CMWxfDeSxd=O0M*TYPn5A*miSjG$BNj?HL@{zEakA_ly6IAjs zaD<OVK0X2Y`6SeoPeuiN8XC)|qh<UK^dz5&*7Cbi5ubxL^Lx-%S(fv;QqwPvX43yi z;+i_wd_I=@Tm`h~tmi6#-U@1er$~&f6a<};cuz$=p73jq42tuQ3dZec`o}o8>(3i= zhiVX?TMzFGN8AV^Y`sCk`KV4O&F4c3zaQ%Ig>V^vNY3G6n7|)_2l%6Mo|edQZj0Ik z?skvv)tF>YC;H2^t8~=6NJjl=jumaOaMJ55m)Dc=x?s_TLxDP{s@pE~-wE)?B{WY! z9liq6`IFF<uY`X5DG9}Pvct_-Gut^u#xDe14_tI4skbw(3fJ_vjXr!sqbYt<OVhWK zY8%!3yVOoc+l1nLJCi8LG2!bbFL1sQm%JcB_`V$v$2+l(qYd7TZ?HdpXAsL?D>15J z5{y!`^_~kQQBV?DaWD~Vx#@lXVo7?d>79p?4LdoUZ-p<aMbz+Oh-4YiuO>J~#1a+Y z!*NaG6MW$hTxOytp?{J|xHi_wk+@De#dq?dQyg`QW6>!ar>5+plk-vhh(C_?ml3tL zWW-rp@JhT!V(l8dPL(dsZ-Jo1`KKi(dq#4yXQ2&W2SfOCFp_VC@q803;4i=u{vxd8 zTcCn(gX6pue&b<e@N(3ISD+UB71W0BM%jE1>dyC~KKxZQn7=ML*giCySE7Zy3T@<X zO0M-5D&_B@-F!bf$q!=84`a$d#8>cRxEKEj58xl;8~Aa2BmV?X;D5){_$hoB{~WL6 zr}1k3C0--TP5dhfbxDL9pnD}9Dkr{w#am3G27}{CG~gZO_ymGH6$GPC#8+oJc9et4 zUQq>2qBHw9rRVO%pJ=pmsZF(!Oa=dA6|`3-jlb#3mTu2#`=ydG>#PHQ<vnw<5^C!* z66tR^zNbbxK7}Pu+M<Cl#;u8pWPJ*v%{F7=7yVTH`K8A>zjUP&oPw|A415jW=rYdQ z&;Kdc^d}Jf7s<=cgP;EjO$9(}fgoF8=q?EK5eD2WJTO;yVTnkARf57_gn%+(!CqlQ zl}LqmW&1;-E}Rf)a7xsJ)1p3nEz5rjzdCD*uEia4EvWqVr%Bi1(?qL84#|yQk8BmX zkY*}DA=hN4-$*mvRnh4ZMn`7Y<IJ#5n9$Gf4dc%$p_`np2FjP%hd-AeF>+$m@r84o zk56mz_|m=mOfTtIQDRvrCH#d4GFE9`^>sCVkudWq&dj?3b8rxj$?+b8k98RrFee&; zDH?+iO`wiw3VzXC&iob7Ok4?9hyb(`LFg(nVSot1V9^rBidHa9w1(ToRWMVufqO+; zxKCt3v1}I>9buQqk*m=O-WHwVpy&!mL^n7l%TuDeT!AntbCQVQ&mBiWTqh8pL?n_c zB%*27NK#Rb&qV(@;Qx^|#D~9e#BD+b`|>0VJE+%ufSm1b9pv~<7G4$l8PdKz%|dC0 zyZnllP%Xcysjd(X1^uQ*0hQ(4qih~mCMbR?F|u|;^Wh&NAD&+X`~990e6}*?66YjE zR+VAb+f9d$CUE{jsiKzQa}Kh#O?=aPvDcK7VJSXa1b>Q6%a0MDVsAvg(avv1xJV%J z3+BbXu+Tt7zaOn35u&*=!q6(2Gn@gPpa8~73>^#ObZMdsSn^Kn#S}*!p<z8-De<?r z#NWOWe+NL8xDGmq!O%$zh5jNR3Pb^n7Q-dZ7QhrS5>|*&utto5=f!w<QA~gmaWm`@ zlO(QAhWErR@R67TUx?e_jF^gQi|NQOW}u$pPBcK=g$9ee(QGjrEfjOn3t~Ph75Ag# z;%0PGJcQ1O#ptYf6rC4K&;_v+8)6yu%Cfdto{+0zCn<L|!!kEl#k`<SJL0MHK(RZc zd6@~0{E@>!{7*+YYp8XjX#Rto{Ah4=F#00asS}i_NKoc-@-?qMl&P!oB{%O}9G%MM ziWtR8@QSB^iB*ynJPlpMv(QhhkyH1qB=>bNTddcE*yRr57WWUa`UNYYdr-Ts<|F{G z>LQA`5C0U=2l3CbXFmLI2fpG!W*CzgKssVn{1v!(5qgO2`ok42_kPad-Y7FzrKYaG zb~})Y*`oDui5xe)pPIQAJPR?>13ulrTn{ILsj~lHa&>V&%Lrzh4W0!aBpG4+YqlBT z*$%-vj6C1(k^DE?Tjzo76v?wweE7HQ6h&XTiJ=zW#38Evg_FZUkJGi#Mn@^v(}#c8 zhj1Cu1&h2FS*+q@I8f~y|Fx|TU#Q+JQQnF@V2HhPxnBb+UI(Ap2N|LgE|b^I#aj>* zZ^PB%9VvU?g&eV8qQU_wf8UoBbqGd^!!TYPfl1;+i5kaXhWJ=Yg5$7VoP^!tl;rlG zAya%Qx&2Gz<v4s-bbE^eHg#MXfdNLA5prP8H<UbWut6eGnyLKFvpp){hKGCvX%v^s zB_C+}za3KN39_;XQbPeLg*{<{HEt`x_)^Hh?NGvi^*`W<ZzNuS3zqmE(!>wYP@I+G z?Hpu^AEB-I7hEIG%R&As*~SGq$RA*og<*na=s~>V4q}o^v}(J4CO1O`OmPQse#w;x z;`I?yZ82oSladZm(sj`LH%owNS-`DS@L4{nXI%p6meN&rlRYlB*K&20t%3A1bYeiJ z4nXxAJBgv(w9=&>Ld;@WdrD;wP+;I)#c7^E3Gu9hkfbVfFe?(w5>Sapbeug=Xc<a^ zMk)(|N)4cbShH1ts#gW5W~Zcip9LW$08yx&?>9qE;Um<!&?uj;{VZNr0wHdo+C|E0 z4j!uo2rB?}tspe8T0;}-D!9VB8iH0kXlrFb2kRObX?1{!R!5j&<-%O63p`?Vg~zOJ z@U+z(Hpu!-R!`aMUh--+7pV!Eay}w?#|V>>G?TQ<&CGno7}qk(NL&>)jd~7r0A_~c zIprfF;hEmarA6}b)L1<2$Y>1&uXP>NwyuXXYcOP3L!@%^8hPD??SSNu3hC!W_f{$h z)=DoYHio<+80T^wSy2mv@+Pep5vx*#$w_x)Z*eG0QnQVa`p*<-8B)rGR5Ze*w!@{U z-y^&7D_>@OE-$kR>~y&ikX0VPk(U_*SSJCnMgp@&L49isG`Ge=z#0d+)<o!T-3<M# zTVaqj1%_F-!3b+AjJ0OKWb1ag&AJ2bvSz_7>mG@f`$%Q<Yy<0r2c44;gQ3);j1AB% z&5%^xNKrwW4kXc#qf>=olFdptxbU&DIZ*^z^CdmpFX>@{q=yG2iaZD{twoS!Jp|Xv z`&{c0ImK1cDemq5RpOO#?s23}lnRN@oyVFBsO5{bRL;jTu&u{ruWv-;3oLj2T?-U8 zm5{o5h9h2#aqHn4Ens$%G?f5I%bHPZq<RwhWTqo};r%eVM1C*N@oIDWsaFUonPE~t zep#GBuZ9%s8A%t<LJMoHq=)s;Ro?fuo`dVHjgW5@$<}X@x7?%JRt_^o%HEb&1!l0A z<ObcCbTtLJfk==|iji9ct&~k>k>@#RF1LZiA10SN730=IUB5xx8zlw}BUf*2w1Lmb zx}aU=)Qz*rL8S`o!ssQn`;j87NroJg-zb9mQOj{SE*7O&b7kdur_6sUr<|iD!wSE- zouognGYv;IVxl~EoeoGwxZ0^~81+TPeluDpKmLDwS%Mn*0}@B=CVuB>5lEPd^`GuV z`|cIr+Ud1nq;>MKW_vO#!IC>On(6nH!a%=Ab{Sjf+0alf^md?DiNx+wiF08|hh-AO zcS<H$As75*Nq?`vVC!`lZ|##bR|yNODp)V?|6=Wjuyp_`toPtG>wWmn`T%~gK15)B zgfgw;sHOD@%CkO0H(H;grPdedaqBc%X?=;FvCg2i*7p*(-;O$f?{RT^T5vCER0yeo z;2zSb1dYlpL%(iA103)7%N?I!JGcj3C?S^(aNL5!%29R?3YVae%3ZCFu~VcN*rXC9 z=}Xc$Uth?jRc_x!njNQvG828kbD@@;iGNGh`HQ6S^AhbZz$KC+X4nKSw@qkedm+oF zkZW7e)wUtePKBX%Z5VIYg{gKu$%Wn_@4B*am=kURN2LnNg4(PgX;I<7ri-ZA)C#6H zmFgc}>)HvGUAM8zmLrE>%FMVtn0mQtw+0qfkR}Dekm9SPsY2QYVRE^~KXpDICe8G9 zqcCaiH>Cu=Lb2p4!?3P@5%iZdq7{=suvq(w#*oxa3hr+9{^#Rhv0SY=@GvYPEp+)5 z3F@+pgxuL23Tcv=H3rLW26gS`awc2A^>!;5ZMTC7b{5RAuYoysHq5s>z{7T5SYmgA zrFLg{((VFJ+1+53-5pBp9#CfYf^xez9Jc$w5xc*{nf>HIG)Iz0;S8D*)RQzt?t*_W zg+W0dX&EN13MIPetJZmv0_tbRl0_;kNeP5x(|`}{E=3gqAGxX&y&S0XKq-Dn|30XH zm&pfLm#U6Qn^OF+EZUaBgd+GosKsWEtZ3)Fo)vrDN3K!t`^dFU2kjF&$krXa9Ml|f zvkS2<P(>8*7IA=QR0G^{01w65uY!8&ssdgpNcG5`%1DPW>6jlGl#k>%VCBY!l~gw; zt}se~x3h-V)nB^E)sGR(E@&y2_&V^~gTS`0hx+zlxXd0RiRA`pZ4ZUEc0RPX{{)@w z8=;pyLK4hK7;KM%0(-PXgPUNYJqD)R<KS+4Jj}Bvz=QTgc+|cb9=9jS<(~}e>|5Y3 z_N}npzD=UQRM=xrgDQJE9JFV^G5dBnVc!8?+IPY?_FZt+o(VtMa}cucL235AsDV8X zHMQ?U0ee1bZQqXu*$dDxdm$QQFG9E4i{%L3BL`j9bB+72;`O9%+O<mkI}YhqT)k6} zXic!K+qP}nwr$(Ct<|<|+qP}nwy{<lw<FFy_wIkkjQKF@VLnt;R904w{Dy*9XIf%y zWof2OYuW@LeHhoXapUtJr}3NO2<ivkfP9}it>h5ei9IzxbDwk{g{D847m7VSC_B$u z5`^M~Y+0q9tN?ZXK}hYn+!9_buQ2DtcYG=X*vIF70RQ!NL%pjGrT(?wg9ictp#P8k zp78%Pq*8FQv~y8+vi!Aq`;VV-jKY-M5Ceiv+M)oy0Oj_p|KCLkiEJkk1=JEKC4_9* zP7w79Tu$uaHphM7SBl}&1)+ra`++OWxoWrPqo*5O05XTm{sv%Tz#g26@xj2xK#=UN zfaPSZyV>+*`(0&fb!y8m$NFUYMdi`17OABm)!<e1`5vzrMq*Q!+x`gus2j2r$`q~# zA|w4r^E_X<#YG)6%qo!PosCz$e$5dvnG%eQ!BGr~7;IJae@4J=+lvc+N?Ip#S295$ z6>N=k=nO7dfKW;mV>*}xXgXCWpzZ9R-j-+_qA_ZT4g9Cs(zM9UNsU4Nj<|pE!2reg zq9E|oFrF-m{t=lSn1$g20%<AWmCYpN&v>LMYI36<eHuL*<N=mhSi!%m;yUc8;q?;| z=Z4&&!SwyFdB3bx<xs*005}%-wLbj+=3Pd{TF}nW#?$Nny6M$uLH=5Rt?-}qrggI? zi4z0>B!Pk<jKcwm!A1p>Vg%Qd2mm6IO+drQm<>*YK-lH0fI3z{$E(l+VXdLrLQq%* zP_=Ga>GJVw+ggA8X<e;cS#5EBo9(!pNt`BG{O0>|-23yA<2~D9{<i0Qcid5j?*|1S zH8Ldk3N`26pQbT8V`5k8z^poCDJRj=tGnNSp;2%E1J2=C8rp=zflbYtebf)#AT`t> zhv9#A<$=h5=E$r+X5~xga44j6+&`jmG_0jFxSjfV#RS_|bl`-m&f!R^cU@edx~+3K zywV=(jYn2xJn>HsX|10(X$-4Fv+9ToZGXkFCy2vle!k2&Db|-f0^)qV`bdmC*+^jw zfq#gr^}Icz3%Y%yTIX$seUD*@maFx$J*6w{(gSm@FI!Y+U?yeT#yMVTYw4b<dozOj zzKct5NM+5*IVYAoryaU(%@Kj0m+SWQjLMGAQ9*fP29|4gd@ifKBQT4)LvwV74cC74 z!F&1!4c30;;rC<B5kAX^UV7)OpUr0N{zJ~9pF7)we7EEX-ov3U*8Rx}?q0el7TlGm z_=pz{t21qkd%g3;(xVSK@YO%4l)wB)n2WFa2>$IOPUGAV7ylsbDdSwx&bQjQELI$6 zJtW2E6O;>Y<slte?ZB9eZ}vKl+YsJv^&Zlfui`*?`hc7(*I{3>difzamftjqujYu^ zW@w4#LKFOYFz+E64%TmW?yTK2m-jV_<&(6xzmER$l^R#yNr0>M>XnKArKwKe5Us8; z`)Bc<)lACidkZixF`|OA=IDy&4`9-l*4Q40<vlE(XVTfH+Sp!$s9)WYHr#9WnNO_W z{+!?O?$7yaA6M_qF#iEI*SF@FJI->=aVW-*=$O0fXI1Q7L&4tK190oWp37&v?canT zn`d|2pM&Bw)$MVH?{w5RkuiDKPnof~j7R9z<2<f!=`s3_kCa$_?)|)1*bFs*7pjgh zxyzn`x-wTn9EWf<Dim;^0WCj56+0ykOlr+NFmMbW`#6b}kW%O!Ku?~5f$!Zp*&e#= zPKl)uL8=Jf&R-V)_cqLa0*sUYIEi~iKqf|U1dS}r>M(*V4Cx(o8d)Q2LQ#ZH@L$a) zbDE5%&caTk-AB|WbmDy|kfL5v43@70%wB;nu;79xp6_~kj@m(Vwjf{m^{$CzeKO+m z1A%^VWSdAWuOdZT+xeyCV@RUEZT!;>VCUL?c^xC#cMqzsyuGXO?7{POzB%L?m=J89 zgTwfQQ@PB{zUgMAau4r42bRM`{CYYAN=n9N`2!}FdVQKZiz?<|*1WEKSeVxjA!)(W z^GtPh1-r;L>85O6T0VyF@p<j#6QIq{zOZDlED7Zb>)LVgNx}14yvkif`slASpaX9K z2HS1d<87#B4D(M%^L9p+nVEm|nhXobyWtE~Omd6$PGRes_~&*HVVNUL;<Y*qcDq5R z5TKr_Y~Dv``J7w(es7;`h|Xl`>ch@Jfv|b5WaNRh{c12vLqx(5q`Y+XRaKebD&zDJ zpbC|!FNb#h`{)Zs7&k$%$q4Bq6QwilH5DzBGmlJj(?C3Y%u8YAHLf4(SU-sHu}RyE z+lg>2q@*yNMdl17gm^l$*1XEDZg)n^jP*NX<B-;ZgY<qjnd`-TZKSIF4CigmbyE^4 zENu;fE`Hc))UjDUilaSw63fiRa^f{4%f}G@dCif{ao}HAZ;^5q&_6PH8%Mb#6UvJ^ zJ2TXm4DKmx97YXQ4ZKk!m#RBTor2Dk_LDiA<yUOLBw?_Xshf$%V3tNG6IH0;-@nPc z5wgrmcktSUvdfSpAvgV+g8_8}@@=St0m~v@Ig*fEu5-UondKp|2$K;OCC=H)UCu@1 zdzksYpu}IoK(#D`Qj(c_eKJo|{g5$Zut_@E{SqbvZI7!Vn?bH-r09#D{5_x8B)aTa zgG#PRfO9wo{Ov8o1wmDTl^Iq9V%$hEj2v^MRd(3GfL&cIh~^N6h8=>VgTtAFwWITO zNiF>?jfx4y9)_!n<BKAiU>LQc3F}^93NdM8V!Cxp+=U-~griX#DG6$zVH7DMSrl!; zkrXQ<978eaXIF<ogk?~YU_?+tIl|J|DKMQxS}qaKAxxQNlm>3#U)L6;u(fso`|4J9 zjyDWKw+WZ<nRa3V^11t(o162;Zywk+c7$Y;F%NYVO~Rifx;gY^7DYM;$)YGj)2T`^ z4}lnW5KxUm12&9G3C$j^Z0x8;T%7cHM{>i^?@m!?3w9Q7G_M}sg$>zln^`;vlm6Wy zda@|>%~tRAKVeOu-gB`BrZcVd7n~QiTf2D+vjmRVR8wKCj{}FMQ_~SOd4HMg#HY~O z$#YB!w1l5VyoHvdL0kB<5-8rf=EiRw!L_{a%p?<rYEYn!z-Gy=GL#zo2`da3hyTK! zJ2Z(>t&D!T)x@dRMj?c1kx>(@JGeBqnfCht(+my>W~8JP(`&<2!aBb_O)^YbnL{-; z`4W8Vv5(+3`kr5{e%p#=m_{+_f@t<6<q$TltCxmHr5kYM%~qxRQKA6w7#hJN$?Cku zDGq#M8e@baRLz|gNYF|5?*OXa{|uq>L(wKDp>YoUx6W)ILwS)3w*$ny{$=InZxJId zNN1RL7CBtZ+W!Tk1Y%3hmc25}pK_j$G}`+LsOJ{ZdYyLY*H@T)P%{trTF8f7LWrR# zBt+hUhHXfFGRq<CHsVE1R%;OUY!OuG;OzHuU29wYkYTr!ZYPvN1Y7l{nBPur8>G z4WTLl%78&}J~0_4YZyoHMPv|ZT9>Fc3bfYBx&-1A1`!=cFkBEa5PHxPw<~Fnaax+( zi2-RDrW@+Xuwwp*LNN@NHEIe7a)j_CJKjKHUqI02IMNzXgL3HWAni`fty-_kY)>wy zu0mT|ZY;U6k5#=rb(nwrFg<iqT3#HnspqU^8Ad&vq@ZKkr+s>5OBcj0f^CqsAwO?* zUf4!@IiboH2pEQIjAVyets(~It9)lacJ@tR3SA#qKR4htLBT%kik>+mI2dQ8;j5d& zok3WOyn<;^wqYNpbL=5=!#)IS9f~<51A<4x0MtREjGU;n1Wnpu5;$2Li_C(IWLQJk zLuM|jilA2=XPPFfeVuBHLy-plm&-K)CLLdBtYb63B#~^_k>};pJ%5^?_BjTD1g$N+ zJy^LbHL2{eBNhS<{jmI`l1Cb;F^^~PeuZhT4Pi!k3rQf{OdGMqNwh@VIbju1Xb`tP zWxZh@&eo77<lmPx*sg?pV-ld+Yz+hL?3ohX64zrPPesIkza)iunt<pXletV_{SK@) zEW<kd;#uW5iv0@bW|WM$l2&|_lTGB#cwrD&4%U<~rwh|(Lb3Z`xe0GEM$m_XB>Bq= zo=A@0ldzqY;NtN7aw39X@MIc>IS(QsVjq)b9QIB1XiJx`bTLmPG~BX*L)Gq|!}Rel zVoy@NRXa&M1kacublc=T)RR&z&ETTVgU?xxQmt8pU)lg&+Gt58`+~YoC#a?(@2KD@ zVAzXQWRq<vn=lE|nhn1e!YsB5hfBW3r4B)KX$vM)N}*v%)L54=m|+wFr}oHepXqO^ zSVw$$8h!Hjh@TDa$uTZ;^=}D2C-k3dlayy-)Hv6ySZZi~K@KFuLrN-SRnc)=wUyRX zXv<aNt)xp3l@n9Ej1ESM2N<COZS<xWjv&K;KsXDKl+#i4j6k-;D>8feQ^$(JmQ|h! z+g$%vP3+IkU`JTPC1cIbJI$2B#<H~6A2w(b7JN*)cZ_$O%KJ{VHWV<<$3wxN5K93@ zwh#x@p0VfSt0lnnl`8hN*R)z1A4$z_A&$4ZHDOHI1FA8$>%UDzfE?DXE$hjZk3_pd zMM}}y#rdn6VxDg4$!iR`3z%lmpO}Xe>d64qmqxA`!R+cLOq|Kh*Vif~m_R}nuRPW? z^>>Xy)HDd`o{!K|AJ)Ina4ksdkEWK+NC&}-2qS)$S^S9odmhRV^^}%+-XI@{>JvA- zz4k<_sEYrsp2ed*PVSsk!?2;NKDVUS7|wVIZ5-V6i0mTYiZycgPm+95Q3hIbi-MMS z0~G){T^3EyY%$$*jaJ+Io!T@;OYj7;gVDO?f?NVJ>+w&<$qs_JKTHM|pAnWB0|tbi z#2FHPk?65+0<n?XcG|?k>+M?zk$*@McyThCeY%mO*POCd9r!{e3AhKQ`bC53Y?`|x zlxOTASstJAC(PA{9-UVYTABy(BXlq8KOCK~xn|*{k0-BS9m1T`ISzKPja0*$!)oR- z^sB#K6Y0xRN&<~rVoXXoAv`dE39w0l!?AY)L7ZbyFkndmDr@uM)l$aI#<LK?HQW-Z zBx<$$*{8w){C@z&GH(H_jhjFP)B^HwETKBJ$B0bNOFh|&;i5a4+)TwKg+9bvy8qy1 ze`2N57^U6Xn5r=_Do<2?ebUNC5tHJB#txW8cRz_bt9JiwkLtIBi>QNDnu(#s(=Q)8 zMck+vcd;t!zQ1s_ueUFufaZY(0kZN{JvOs&a~{7kUdK#7hD-NDy_ZOTcrweyqwUi6 z$t4giM1xZS3CdMF)u>N&N4_$OTBV`hdjqMr<{SeTbtGit;`D+jzY()mD4a~#Ts1p9 zCRtGZ4&j5}k}JJa0=q!{<KGOyqQ#v$5^y+ijB9(`rn@=O)npcz=SL$^!Mx@*LBo+m zuJ$kUopEaNl9;$)yP!WR`35E}wZoRhA(U5;drZPmGnZMcOhSRw427W=Ag|3hW2KL8 zAO49~cG)qs`zET_Y`!CRkj{jy{;!s%Y{?>9Zz^bMBe-YW2}FKM$uIEibeL^f3H=mV zae4WR#|@Tas@l3>CqJ*FB)9pLd(y0l?|EzX`qgmP6q7@HFn}`^*bu}AQhx#P*jl3G z85`tX{@xXnSG5-_c@9M;MPAkyyce=~%t64#2&)CGrv?brLrw5Nv0vx}B3y_E2#TGm zuM`C@Z23f7kQ>O$5b=*^FsC8Em3W}s4TORr1V=yUMLaApA$sT_1BR&nQ-$gq-UON} zV@2h>vyUP<$0>Rqh&i?iS{{Hod2tR%5v<a3Sfpv0pCkESZpaHK2~P?tMr;p3(0CwG zk~$D4100kg4~h^-5k>%J8p%t$#pv@C+RNoZIRsmVL&bAH9I$yVCMM>t-_{{?n91ov zIdquYK*CEFB})tR_DPk(IXd})M-@FAHrTUfVZjB-aoezjzvI?nI7Es}VTx650}hAB zrGCVn1}3SMw_%M$CD39EKvS${qG&u*c$hVvESZd@V!c)31~vuMAtv)sQ_VCnX6!f! z<eo}sm><;=<a?Lp*0BPB{F8rac%^v>ddbIJv073&*z6)gnj2|qpd*>0I?9yiv@A^I zdRd}3AxSSY$qSmd3z9i$*+d;}Mi-8CPMLDK*#1PTDyF7-qs-FD7v<7<hmI67#EyVu zUPw)4OX#~y86_2}$rtm5Rm2=G(}~wo&zQOhYRVRto{6#W#&L2uNnXD_Fkkd^<KkFl zIEVGqM0Wkv@#YQdU5H#)DVki0TvsTXgnf_2oMch*X5x(an-JG5m+piWSz;p-m&D6z zb#1AbfP0T8-%h{;=$qv-__rN$4BFEX)pp+n^P~dzo?v7*+HKsF4{kEV&B7T|tqu14 z<KN#uX525W%Jyp5*>eM%V8}$s76}cIRYp6}7~+{cQAHidW=))t<&q6IhfWF-mvMq6 zaJUTFH1bKKr+7h}izL&ukFCOEv2~x^ELLS2h&kvp8bHMt%k<>o88F6%P$#!4lPi`E zcsc^aOBX*G^&n<~$kQPRIv{C7Jg;=qVOs@Qw}GGz5NLxv3ea&#D~=ja@<U7>h-!mb z!DRMBR5$=>`Os>{aLdMkEJlpgBPsi$$g9QxpC05O_nzzFb%F}T0uq12>c@l85<s<w zE!L@|_LUsrbjT(ToESlC5tt987}0A{qYk(laNHuL4ddFeo+EYZ<#|9pMi4nDa{a-F z>kbGX$Xp`%2N*|S<td8x%O*qasZA-ni&^@mOnH~7X70UBk-JF~D3?b2ZG-(O|LUZN zOQVw=B9&eFK#GL?EwRFCbA~L6v?P(X4QlRYn_q@gIAU<Zuvq@a6dU4Jfbb&>_CcQw zc$s*{7XbZ~wPL>CYUw!tQO=T=%$k$Pnv=|;m&l@*%&L>fs*A8fFw@+mI76o86{Q|< zM4zTs*QF9>5;tiLKh(jZ%;3yhR-9C7`hDQSJ47`rbQN@KJDMe;wJ~}KLKmPf_J{`0 z@!HF%O=JC#Unr)~mc|%^(Q_1pFEoh-SyKqJP!a^rWrABb{h%R8ZMeJvg>nMsF@Xm^ z^#T;k_pwoO&_o5ni}H!_K>NM}_x6aEmq@lz9lL@73A>PIjjp&XJETcXx}|zd8((n# z^$KV0YIxDv1Gi0K3Z~LXw|s19Qj_%Vj5OcW6Nxnu%ob47POYxL;{-)*4UEaj{6SKq zRcE5F(5yA9t<}s;>?kE0sLF*)-^Gr;(5#3P%n>6<Jxc^c3aBAMY8$?!-$;<!cO?PS zz89uq0AQ`GaM`b{;O8=g0KLF?=fYb$-~r0bP_e5X76cIzHUKt5UO(>7Ne9Q}fbk6; zI>6{WK#2{8cSM03TF~$}c7Ti>SxJv`{cC2#*lIv&H{$4l89P?>V6z>8>;Rt|_2Edx z=a2fzqB>c3pyLC6c3|Evao(;WGZ;0(q(d#EL(XQz-+;*;zZxV7UG>@#7fC{1vb3Zk zvXbW?YQ+Y=^2^9SWwf9vgK>4}(~*t-Y(Zh=#Nk8c^ckN7K6=c1t(nSL2P;|a?r!(o zh3F9V#F0wtS}v;pW|-NCXFg!rwV$a7|5fOZTSZPjDjUy8;JvT5$wBZy16TW^v*h_N z4#{AAt%G9A3)J(Bq%49K$U&r)bt;{-ku*t^opR)8A-QfYSIK2$Wl*d%GGVeb0%>c} zZ)9O<2W=f%!@CZkUFAsK34lk_O*<l1x1?ILrJ#}SGr%Dz7Rt7LbH9&mEw_fdG-yqI zb3>)2PSF^#E#_A=%9)nXaRc-@lsLgUdv@4aDk7DQpei1yOQBo_+v?Wy!u4Aagb^+$ zg!`zAp6Ss_cie{H)O@hOq{@?R{%XC_f^JTv3>Rr5K6|%x(~>=Wb((yb^=dUMTuWRA zS#=$3v1JbEI?R#kzDab%JBaxg2i@KJ8LVB<0nweidVyiyQcSL!hvjd!2$@8b-W|Z2 zOzoH3mEgn?FHF-#b`S~{$b^b!;)ApeLG<9D9kFS~Zt79%0&zWHxBb@!Z9Q<iqt}M+ z9N0fm?F*ltXIu`uQd&2+96@f0KP`)PaXtJUP8GYc{Q_SO=I(ucK=Ft9_lJVn_)(1S z6&Vq`L^$z~nI9Y*Ao5Vs_LYrjzeTQxkPiuRQRojWAIN>wy2Iuo{Pv$FA$*iDqv$D0 zUK^DH>L}0;tS6a#bRYKbQ0c!FArJFX)O^I>7<;R-hhHFc!;~J(Qi!g~Q4W+2x(jva z29?)K;U;ywqGyYyONJ+o;uUKU)3l7Sb9<di9NN7n0`LPu{lZ*6F+vZ?_ebRmFe?7` z`yr~b5w?)Fgcd(0{M{bz-@t_r8QGyGbXtPN>1QmE;}e1YMs`jHa-s!%g=#1hW~Y-z zaWKXQ^4P0M4N)aQRV|?*r7l_LD#i21rtvlQ!lPD7Kagb`YG=kzIe8oTbWIKkU42OA zh)%NK-u9u7mYKZuZU9*}*}SA%5fv|?<yNBb%XBISfJiWEYhH+*8N<zVvBs`$XvO8z zFDExpC*NKLZOilLJ=Rh++uWtd=W+FC4g@S|hJK!?{-ll|$f>*VFG$pBdVXph%f~H% z?$y^2YK?e#_ZlYyFHQtzNvCk(kmtx3;xH_bC}Qfv*P&fJ@S^&$M+DB7HR<nhf$<29 z1?)o!I#4bAh{1sJL*KX$86RLth|(m2-!Z~KTXgPrFz&zzfu^9g8qv7e=h+(g5=bHa zo0Q5qbx7kOK0M&Ah2Vq!@d~cy=LhHcb!)+LbM}XI=9#tVUiY!GAa7;LHpnnhqK0<5 z0Ry)@6<Eqv+(oNJ^fyu^E*m?<<17Oj*9-`|RMR9Fu%?4^9pGI^v;-4cN=r^hFXi)R zJm^rMpAE<`qS6&2FIYJevP4o@lqM~xG2+)ENgK3jNR<_`I<(#Q|0zU_4R3MKsZJ}! zG|MvM7~#_w=}E-+czH(r;JhT1AgASaS_YeCq>gP}82@8i-(b$6sy!Vx#@Lsqv0#KB zZmKN#py<Jna9@xcOj<lSq<b&iYB8bsx?t!_u8fyD7V$eGVM1V4?<7GUWLwtWm3e3f zE`z+*Z{tWijl4EM)qva@@mnKrz`jLiA0$2`^U&D_DjU}G$aOI^hHXo*==+26M2dB_ zz|623XKSq3_Jo0RpmDCUmRzB!gXW4`d`Tb0UXDw3vI@R%;@UTf?7l$tyhL?ds)`dV z<p_});cbB$mapd`VY}1X+E?GQlY{Y39J!g-%oXowVC;x6cH2r~3XgnBOzly`gp?(S zW`^3cQC2TZ^r=sV)=**}6%j!pZ3i2DxFlYz$}>Lj)o}2aTcz_rL4&{_is}+sjjX$m zI%d%10n-|FR4>g#sm?a2x5311k#r3q{||JXb0j<2QL6Z9lqi=lDL2%4xJhYz+#dZg z=|^C^PGVe|<k*yQm=C<44{1PXmE`?gL}XkNIz|o=&GdWuvhFHYrfjnx6%a!#J`o41 zj`-eX!mvWtx|_||qY4>6kc^LL>nF(OhfyU$-k|ptB{h7GBD2?DdYHc?wTOlmvO)QE zKCTN%_CaP3n?(HCvWlgKj#Kt^6>_dsI*AGqj=w3@Wi!((4?ALM?qbhb_udD@!P1bB zj_9?XfI3duRK>Ggd_Q?uJM$-M+!r$rzwdf9_hk&F7o3Ci>S>9AR4)a+{c`E}!o=V- zYIRuuUn%<9JAKOlnY4*x_IR2x5wm`SCLb>M(NeeiO+inythEXje@!xHBMw~-+Xf>i zrwg82G8;=WXT(G+O<DI?zOy6N-6`B)=$fup9IvWmm{JM9j4D`vh!j|GicGr<CWtzv zX1y{d3_G>3LEK?rSBec%3iKTH&;ja5Oehl;IHfT|7}cPr6rvjCQN0*u+*C?agJ6a~ zped1^D%pXXSDzYX8lz(>ZioHmc_Td|*>}}lI)MnKVO-BD=+7SrFvYun<JKT}`bn>k z)?g11$K7~A*?a5pPob`1$tX^TM7}^{wM;QIE`ZrZD*Y~|U^GfphAmErEEG=!`6@$Z zrhqyHG=V#lMvW>pIv3~mb^LqRUEiO!iSNpqvXRvZK%+h%t&d&I>uSFETWY(FZ7FSq zTa);+Hrk3<5>;a9<<%jUk?2$@|LSEn0IJS4>sTah$2K>64XwM@7Tu)kwxr05McvUh z?ixBo{{9rz@Hd`XF6^Z)N?iO@-1<K}n`~WJI#qEx_t}HULMF}$GiXB&37I0(sId)= zOrmL&=|B;lFtzJ+0M)A325+TQ9Sc3(g!mfJ|6LGiBe~6suzTCHD_MvS&MXJEiXF;5 zxm5J%>KwDW)>V$Ay-~i-tG={QxRxsGa)v&kU1B}n&N<%JJ>JHifcvFlpQx29+l85# z!jF9Gwd;2%*Y@=5dH3smWDmFeylt`bYkhI|EY}8Q)HsEsbcQ89=(P)65QN+&4MN{! zy6_i2+J|#cE57P`LEx`DcST&YF3cS2)^3hzXKy=Z>($S_o3%kV81=#*S^CXnIAEoc z>Fsu-EAD@V1K~@EIf>D?Nv?{2JdZ9$z(dk}*{@1o>Gp2Ln=E*Th%DfLgBKprk)H~Y zX?{a!_Ciml6eT0Y4d|RW1`ZzWtLNr3Z~$(lBst_bLCI0i^;b>K?aQ8=-M2pCbk}_% z^{VIzh<YMYC#MYz_!ZfQNww&b$EcK@Dvjd@Uk`3WCdXX|#ZjOuC5O2|1m?D_;PoL= z_W_1Ig25>41{X})6K3u1OllLn(&yOjx+B<sv%VSe;cLHazpc`@t&l#Vtn>}PTXw$U zIq)gzIKh|4QAGQ&-2i@&Ypr~Du$P2WfkDZ5wtjVq46hmWrA#HNc;Yjq^aV)2A<QcA z1ujgEDU|yFiB6iEw9Hw0e*vW`_?0};FS_8wwz2Nm=*LVeYWnO7GSTmWiu|K!lzVN( zs}R+s+6s?da=g5k{1UBLj!0K}EESOj49kQPR)rlc=So)g<BCzOv@9Op;22OdqOxW9 zGzZaK=!1#(qll;d5!+9=<t%>=LvaP*Sb;gOGaDpG@w3kiPb$pHjrVh6NEN<hu?P`A z!2fJY)Uwd8dC<qzsQ<?p;aS{ey+W8@Aq+X#Ways>&UwkOm?f`xW{^R<uWK|{%WLpu zkZ1Vib4QbSW)O+_G4}0tOTF|MNt8xaP{`9ukkG+<qDlQt?}4`X`Zi%%dYT&~J)CrJ z$sK)iW`4tvotM|<ESDWjzxmdAPx6`MmZ-yt_NEOMgnX}m32(AabsTwhIM^EfV<3nN zsd=e^QHVAO(E=e>ab(cVg*U58-VfwTM58pd&wbfZFP{T=^VhbIE6Xg8`sewm`v>^H z@&^T9MfbU1`2!y4@B2T?@ZwH}wzh^&|E<QSB<sp=F`$IT1+-LS2Qg~AZNB0(Z&7sJ zsR}X>nog=9Nc1pI0LtKMJMBnam)#ig8}M5V#>ge5lwx*S;IW=LK0V`b_x*f+f&#Fv zQx2N_;_B*W49G;H$dII5sv$6{)p%;FS-@d0ZmI1=;o(c*Hvd^g4Ls&wQvaP{xBafH zfw7`xd3S7ZIP}i-o7gu#Np3b%KWu=CBNZ#R>5*#Vt=alS^VBeBAl*R+TQQL(t{1B6 zCe2fJKZZ9s&qLyM`%WlJT^DcL_88>#pDHW4pto>x4f1@~EA(UKiEOvjz%|XZ#KxB= z68>gbetOuwx5@O#N&6>Fl&49&JcHb+D4Dihbq6-|p!kgZPp3`sOZ;pW_B8Wim_7ss z*v^SOcayk_YiQT?8Tal1_~KDXpJ_x1oHizXz{k|%{NE*LP>9^iWIH8}qic9sW!R|E zxPk5UgU!D<%?lZKS$}dNqM*jJ7Vr-VN6#N%*_yoA0VGna3g&d_rw?^^3=OcTA??Iv zAYd@$Tjq;h$`eX=jRQ=9X`luSXRO>YngQrT=|h+YRL4{faUa=iayZ{JSjT{N2_I=1 z<h1aq;gs~MdbB6pZubey>aHsg8=n8A$mlK6!Jz>G08oVh06_hpOF_ZV$@%~4F+x<e z)v;AkzU3gM88Cr^wWn~Uq%kNKTCFVooh&VjC=HOSG^%jN0VoZTk|ay?c0XZtr_ew4 zf%#qyx-2xNYEO#bzmfbx-g71pfQnsBP0jOqUS4kgJa3#G*ZKMW0QZCRt}#Skh-D8& zFV|Wxo1soymXCF_(6bzZ*-f4lqO=va(-s-UyaM1;g<C@yX+?4~xk!#QMxu6nOAP6f zsF0Yx+M?o1AMv8*S-hfDQSm7|>WBK!J@F_!ghYQRjR=F52C@P+%-GB18&cVp<zNE( zaj<#C@k4JUlg^{aZ>=ghn$Jv<&$PhM3Lmsva%cFMj7+0f`xs44YgeS_P;)_!xm1@& z-SWUlnYGb+_qI0}o>+S#$?Y<^PvV*KTBApD%P69!THl=BcBVKlHdAS!-;bP4u8b7t zqF9vb$)cf_yFZ?CVTuhth@ToWCo<m5KqM94%$!?BWvz$~+XOsgVPF<?B2I~hk&-r! ze0H{^r^Y~x9&MfA$w*|!B8s?VkAYT{xM-{+Sa7a@UF<A3gfs_=bG0Tca1x8?4VvPr z-`B?CilD4>HI75NWYb*6pHeHJI0y>F!ENu+XoUdvz^`YY`@?~Yg2uV}#7Jt5g0HW< z>Sz?YRm954Q+pI1VWVsS)m|Hs5d+}v87YmqC$6vyXTIF?wNMUbO>$S*WLj383FKcb zcc{TB7~K1nim`EN)Mr<UIbOAtN{G2FV-dNVEuu;V^s<+soO>qa4IL*!Hm{Zo5$wat zO*UdK>9|VCL&dfXk(raW_wcA(*qDTboq4o8_GWZso0fr$TF2~ADwEcDdCWU8G?|tO zXuq-q57e+aIqP$FAf2baoV7#%sb-x<+dSG->lUJ*=M=~~b2|iycZUf6_I3N*a0ov_ zDOfFwBb4HtO!~*+YsCOV6n&8T%<WhNF@<wYvb`?Ein+A6Gs3frCI1DBZUA1!<Yo0Y zf75bf)NO;tdGSx<HAu=*IE-#U`V`+scmnK6{xiKP-w2qtUntHX-5$-MOz08vuBx_B zZ=%C9x;y~nPbij0yu^?(SCqty@Tk`WGr=~P;_%V{|BF3@j1dRP+{$cw`+y^rASs7@ zBl5U6tozdmen%(x(GqCyP*I07^hoH*%XYs7dA&kaEwASV|G{qC2-$~0dQN}8N)4h8 zKR+zT7WbrWX7dJVMbRAgu0U-|+MF_fn|D#N^upZg^)-h;z_KjZw4g0?mKTnr7&40> ze6^vFMw0xE)Je_bjZuxdr40F6Ab0)sq4K!2;J&;B2|`h(@x}7O7G&K%J4a(@h&QFN z&)pV|Z|N6`@%&1!z0*~d{`c80LYTlCok{Iw;m+?B=}XMQUzowe3F_|tZ|c0ztyQTt zYr2pyl0KPC!ad27E`>xqrDrsy)J|B%&;Qz9pmxm_U%>zXs9*sAF#iAT#ni*p>Hm#2 zbjCJ@&dwofSMJCwXg@iptg>NBO4`sUxDSPvi=|Ldi$c^Y!BWLKf%*H^i86!xCS)>Z z^{<2AM2FZ5)_-(C8VXexT(MU>t52Lf`*uzqgQoZg$H4nuSH^aef?EkECnx#LpO4(1 zcg^p3pMLg!K1lsR_@Iqh-Pn%EwkMA1$hy+6&79mJUV;$^dt`2*k<Wb1s$>=oP2x{- z$Oy>^=?&#ExSpA=0LjEKK+}<EAVqz5(L-YrLBs>6G(O(m1j&x7Jp~4_AmJrFGzN*0 z@Jy4&NN`Lxj*vo0c?b<929uC-jf#Yka#I~N2APp!9WdrX9ay4K+tml1yZPphLlE>} z4oCx5r}0*H4NaGut;?SQ1E`ZKFEHHvMwwt}kIqvyFV~<&i~M?Si&@MS1l*bvla_I3 z)M66-*GcCS6s5JKn58?5?$*pqo=)#U2RU~LHg441P7SlH=Y>f+)OYHhu`4s~<T+dI zPA`i0v38bo2m??TqDEBt+q6>|JsO(L!~Fe*xy^l**js3Si;WvwD=heAC#*?4E*4i& zjb<K09%9s91EKd!Z#iq($=b`;h{CjrIBBBZSa0lk%dK;gU;~O=n~|+43sNPnZo9M= zrNV);=eMJBbQG4e62EeU7`;QJ_4*8$F`hi$puX8T;7rbOy%6P8Yx8DpSGj?}Vz$~1 zY}*zEg&Pp;DU1PHrd5NQXhO0f89TE^xGT`q&l+i)9?4N^4zi=Xb+RK>HlEluArIZr zzWdN<$ZAxL<dsD`K1b*!o{ouvGNww&7s7d_Gs^X|bt^IG16fS_16#~HhU2bRcL;Km z?l5B$1;qy=LtuEFQ2;Pu4$32xM3)Uqb@s+9r7h6f3R~1E>FmNZlqIL+ugU`Rlx$OK zFyaXhd`Zl*hk$5FGW<gr)g<Gt<aU8ry3Ezw4PAvH>UL6bNo%MoDiHM*+XdOxDF@_n zkK`wWoRN2JYfSuyiw4ddmx!lScAGJ23{dJDiX&qmg8ItG<?+%sqlKwfD^lY~S=s7z ztAMSU`e~jMvno}p3%xGbWk;)g?`0%ItJ1`k$kx;X-)T51uifT$U(_8*5+s#VOuGSE z5L#l;&f(d2DgC=sC!a6dBC``B>U-eGXi6WVBjwsai4re!b>0@w5YK~-ouJj4?}Y|v z-~cbJ8MBM`qM~ir8%^4>&d{cTR$A{QD>GQW&JHdGnoV~V?6|PGQLL;`QEy<jfTWWC zla|oDo4mD?r=}J;Oy``!D~0rb4@)bSA3FA*F4MWd#uq)y<teK#o5AF?l&s$358K6> zeBP0XyVJ<5aIhGe2F6(x{^m1C0rBk5qZ4Upn-4q{+dNO6t6s(q%TtleMwoU1ws<PG zOU|uj3)P+B%$KIz`Hq=Y<aiWLDU~CIW{ZFRviWy-NT^!{5hdYN4F(9&&#(MVg&&*? z3Uu?u^V;Q7(G9D*npsH!Bd8&KUy2Uy2iwFY_l;jQq1oMXha)=86GKMENA{a$j}efO zA@;y4=$aM8y8loE;{vh;moKm_=p$ATdn)ix|2#@t7xKe2T(y78z6Y@*?L>MCrz>LS zCM<%6t`B$H(TFZV8E82dOx8Q%MG;Kyj!u#V%36?L#cqI<%?+EfKy79l`v&Gz8|}t? zWrz>}K(gyEM=$KR{ks=!!rINJwc&w>*(OJTk>SU-==KaGK<y)9PxPaPybj=KKbBf~ zkyvTzFOyYDmkz>v%CNv_Q&ZV1?#nRG+uO49Kre4(-tFyaB8Zs)+3bw91$o$b%fv<2 zkSLl1D;lNg(m`%ztY|IkQXYZiV@7s;k}R#@O9IuI19V&HUq?2FeEb3BWF5Y%TeL1F zPkBwy(-i^bo2R;?D|PF17})U2(s{Ym0S$Of1{YHi>ATc6{E)OL-(yO%jTA@o=%X`y zD~h%h<AUr5`Bg`8B=w`hQ|R%?`X`~PTQ*8vIqCc&il&Ci2d`*KxV;l_kROYHrb=8x zO}O2RZm=a9!PbAjPW*li!3*mZ!P<YnO8kBW;Sd(Vi?_$t838B>BR5DO8iew>#Wkl~ z$D3eP{6=j^mZkqDFXiV7YrO8|n921oC(YhPUZo8gLO$(A_88RVF*Xr<Y6aGX{%B<< z$h+C(7q=DdK3}E(M}@XZWfP05Nvf6X5Y=%x;<G}?#WEC_qs*~l@g5&ee%veh{yv2c z&Jf3+0G?oG4-ozNupv*L(4PZGA7QM$BLv@J!_R2qSJb&fb{ted9(t{Z!1Lm`b&fv- z{|?$UBG!f(^w6;%Lf0c99m#i*sCLmfyNPA85#$ewJ+SVg&>gk13)O!teJJ=!<YO&; zNM;SCd_v@h*Is2l{hLrWa8Z<z-991zo0o}16hH?3O47N0^D@H!MoVQ2Lnl)cNjnEu z7iAYi7t{X}HeHpi<&hN;c(=f%(?Fp>MGycLE!w31>;nrjuqalcB1^Np+XhJM+O(N% zV13E^&JRl!M)3FJoANYiTk5Q`a5~>jXJjxpwe|V>{XiOEzQCF^WDhV%0jY!5Lh7Km z6V?|Vl?M23GkJ8>9K{9zR!be%2C!CNwU-$S3-9SwE!cHpHAjZ33^}HRR_}RLZD-nh z`*vXCUUpOhlHau7ZT5!hthjxJs#lJ?R{e3v?`DPl0+$o+a7!9qxGebErDL^e)2n>T zJz6Ezv#%;5&ZRWiam3A&B70;kfub+3+}<=VFtqI6vAd<RAKSH^XU>4P=B{A~J4xAr zadPUJcQ(Cqr-ofl`PmoQ_;p^dlYL8ZXm?~f99@!xT#KJZZ*Rl7<1TY!dyHd0Hb4Ks zmiNAtcoT%RVz#PjZ7UPW4Xvnr&+p#E-ctV9S+LQkjnYD1qR7M;D38eQPw#K<Pwoeq zy@w91Y~y>ULZQ`c0y>imG*!C;J(H0+td5mMMvKHM6;`T-OFh52*|;s(JVGHZLkscj zZKc7lj!iy4p(ITN=3Z?%(v{u_D1p$DH7j8CC^S2Sv8PYihu5f&EzqohLjsZvNEX<X za+^0t<(}^Y5uHV*zn2HdEp`pH4O?d#b4#M(4$>Sw3nXjWAp`xzLFfMi{;G={8^;+s zPhl1UWpHGa$cmE0j%Q&evyHIy^g7*OmB}htu~=GFhw<ercmbUyawI%QF1b{+itvDp zVq88hgK!OLN0F8lt*9FIp<%@>u|t4vSQbgvBGVdh5c)GS6Yl=-gRgSsP=oW19a^~e zk8sgr_(tt@8Sm+e@8GF|={tFAo$QH;6H@2xf88ul5(}st|E^vpnE#}c_V(6>7N&+K z|7X?4sD3yj|E80zvW=FFe-NZRH7QV~GXEA3K+!@dX;H{(*SCOzxMbOE&6}{>wep~t znYbLYyM7KJ{sqT%z2`LzCU6nKFz;W`_lb`6i#c+4Z<B<iL@9l_<$cM%%e~va+x~pt zo6!c?bfEKRc&AbbNRR#on9Law@DKW8rNDt3=b(6ogP3|^3N?WNSBT&{cn)00L>wyD zz(X1`Y~UdZMgQWs9AkX&+>T2#>Bi}&`ukQ8={X(Oo{sEmF=(nY8XS&a*H4ltnBAYO zQ97(AC8iZhH^7{`LIY`STxnM_{oI})W$8$5dA{*%!j)vTm(v`|Ql%Wo?n{=tND^#B zzMN#`Eww_v8AiigA@88Pz_ej9IsamTX{{t=pfuygjRv`h2-$lh$!p0=UBI)=Gbr2@ z4N_2PEUAl~E*EEcTF*t+k3AGOE-XS1&7U4v?|sA*N6>O`>IoNQOb#)O6XZzDI|?kG zL^QJ5kz^FgSR!X-H8@%xi``j5_D|@2Ivpgr*v`^yRZ?>B9cckx1EY#u8EG=w(NWKy z5`JV^<LA>b;0?OZl;b**@?>gPvk>W)P&cV^!#Le?#b`H&wCIJNZIktub;U(X7oghP zupa!@DVW+AFuOmV(RQ>Yw>Vx{wO7S<P<0?_y*M9NUZUKuTn<G9L3KV*4Rp?c`mUw? zFVq(6q&JPpJn1mAfrju>Mzo=pR^f+BwpDALx932O`niC*@=mE`IuuufZa@Gn6qASO z@mL*Q!m(U~ArUp8O#m9GcRw4nNLyFVpk6t3X`i>3j}9}biVNFcm{FskB16z6j)_+@ z#68<P5|JoVcL-tlu7#75oK=|@Uz2Pl2P|`w?#g}EY}DKjl4X>(;NTL`>m0mlhH1So z0jZd$E}a!*BsbnhYWz2^<SIxY&vg)+#!@9%9Vr+-)}#dyFxsd{hs&|{$q$ezx~6DK z**kStSE1#$RatkB+!kj2se=z6YH}9q;qWTsCCU{ZVnbaI!N%I^hS)fp^tN3Xct11> zk#N7|Lf*Cx>&o<B))IwPY*xqSXj(?#K;yWpM8cyrMbvcR=e?^(?SMC^kd(Y5%tk*r zCtPG6!m`nL=*HoojTq(+ayI}nEg-`oP;?<wn2mp#u75Z*0)fB$@MOq3)hPsy={4gh zURet4>8P$j^7>7pQS{$EF;N<<4k&xLfGq<&y@o`{F-i|~>0u_0Hq36A5<j$*V(ov* zE}`+JCe5gk-VPvuvBu40uO)_{qYM6!Hpg{aXvG(tBS5A1I4)u~!eLp<;B*<nhu7W^ zVuf;W3pkbZgZK~O@9S^X;hV}y8lpGTR&;ZiX(EMB&ZyOeY)zR$mYWF27D8gF=-x=K z93d+<17g`F7_$uubw`@n;xP90=k`pIzpPQy9uG1O?+Be|S-eGaY<h?70fn)axE6HP zU5=>8p%9T&9r1E~5q%NW<=o>`oYdB76y1+4jYxNjMfV24J4bVKzA!iTu#?%G6(os$ z-N5S(7<o@ewY#Tp_l9k`d$P7^!UR-PWMs{nNkdJSQVH&~{jsp}0rBSBS?j)p1)vpk z=vIYg|Co2i?$_YdTBPq>r0=|iA7`ystIltBkJhxOHw9f96?TNmt9yvdf)mc_^SE`b z`w+F!V2N9!8ydBQ;mdhr&ShxivUw~x&T3qT;YEhC#r<{=TavMop(DFTpv#J;ceU@D zzZ_X1PAm=n{pd1p($Dwm%adywLH3^Xdkxjh>tWQ(Z!c^ycxj`wi}9R&Cl2?IbLQ6m z;x)u2oJ7EI387&K7x#355pz4uO>LGQBm2}dC*W@Vu$SLt|9GZuKNEI5qc-+RE$-^& z{aQP&T|2G`&<n=jSGg^^$JfN-J$%TJY<nXAvDXU<!O4zXc8I_C-G8uSTjfFjqkQqn zZaUNx)jhRpbYu*<rzu3xb7%HTaU;B~8o>H6^DXQCF{t~BNO_HtzuY^1gOA<U_xk75 z2lMd*{@;VmBZdQxHvs^ExA6b$`;s-ZHvP{nK#LZ*hl=Vm|BDQhy_rV=2oMMaTzGMi ze?A!$7>KB_00f0W774wf2@|pz89^jbr0I>Tu92W(T1$0gmdw0HzpkU}O;5Gy+O5`V zXO;Hn&#broZZgRI*4@X@Sk8+b=gaaQ=L=u%=N&LS@&d@3MBb!2qHN1s_zG1WR&n9t zaB+n6(ye0EiF=HEPUY(4l4T~>j(DfmiQ?7q3rrlBvhUi*vZhtgJhygf&QS@YRZ*Iq z;@SJXS8g2D${UkcK&kIR5u#NJ3%b|BpM<z)b@Zuq(nX!hiYcB;CqnlSdEJWI$MUK_ zmstO#Eo)P9^(UHTGcWHIGdkt;YS)%w8;2@=FU49kmDwRDvO-?bWOojWC@<AKJ7%KF zqJs1Et*xrWzr>0=btQHQXL1_PbTi*;;!3N!LT-68JJ-Zntx`%`-z-u)<<EcQGUf1( zuM+=3dS0$ByW#(a_>{Dd9*;pb_;Nf;yyazKKCOJbXQO9gyq2M;v>d*F<?lV>UxIpg zPvyFg-|aFVMe!cLl`Wo%3VzE=$_t-Oaq>!YAD2L{)uP;_y))iRP<r3Flv7c~Q|ZQg zql~Xc9$ktVYQBG!Ub5>xx?s1dW$YrW?4~1mqOx@!5AUg^yU*qBJeRr$NA!6A)Z@J5 z@%GSJeF&!bP`vOVQ{qPY^Tzwj3a9!emdqD@=w{II{*}mlbzvM+CmdPFy^FbZ3TJYg zPHZqeXj}FooBGnr|J)n>&C7fjROYw3)NdT?`*X>E*@yQpDefQ-&kVkcC;R9?XWEqA zq6w^|aZFsj5nW^*yzR&r>x!>4<cVi{ZwUClJU5KcBmdg3APoHN+)6_V_Rt3&9?h37 z{#2QeL4*R`f@fL$rQ#!alfg37yImnv+=6FOe9JRA?NEnAzUWUk{0A=&*zAxoA;%qc z@|dRwKYrYq5q#SCpi<0~&tHr*=swi1_C#_IkHWB*mwOU?`BO?fJ^-kr3M~1hSAiJ# z#a9FTo_<xl+UI*hp(6!&`8AKwIK88x{dXN;PmfZBY|^2ysnaH29&rr5!69)kkJ_-f z#Dby%+1ik;dmhWnVtYOwe{_!vK0Yx$bT5yDxLnn_!Al+b86$Z5hx-PinFTz)*&%7u zT_$|qu_<1k?(XdThX}s+0Qtv4PR&ezj1s|7tUrId6{gO}EMXMCkp~@{%71~1sEZ&a zoT8a2i^0W~sEU;)OvCU)otJ9x;yx}ZovKG{G3t~~?7>7a)W(re*1!iI6kH9ANKlwD z4+bPSS?v^f7CM?W<@yu|QS>(On9wn1qQW;BZe!Q+3s%8L>7}9z%-q|_oS?WBlzJIV z%B?Ca6t;;QA&&0r;UlmL3eKn(v<m{()&yMKSTQ0CEiw!7qt6y7#b$Y%7R``JQJc|X zqM&RQ(RPIH5)3%e^6D%t!?}w15y6#dYq>}oxak;B!P*4IEEskbtzp*I>Z`%P1ubQm z3zv(ekxpi!nJ}WjRzZeEwLL8Z;j7?SLgx#>un88Q5K)4nwMZGfEc409EqqK<hs|Ut z>MF_Gc=lo}IN{*x*pemVLh?ZiNHAH-&Qht8@_tR`tC0rf6>J#7KL$-hi1*<Z#XYi$ zzGihLF#(i@>R5)(z&qJ(<voJQH5M+X(b4G6-gTUPd{zdHbA<5h3s}Sl?T%C!SXxR} zb<8pBQ<q_j;Ot^C0^8+7S&|EzPKr*_+U6^NUVqQRv@DL0yF?hbriF`qpC$d9*1Z#Y z1jn!E1EgK74K>NTV3Ld1dnPPH+d@@z^HwGtaTPUs$!Y%vXp+y_24zcSe>*fYoDlSy zU^y9j=9r4$bz_4pJsMCn=ff--vt-<1XqITNJk>yq+yE{L1cDG7zvL7*@Uk1zfMH?8 ztu~Jmh@+E{VWWd%-WEI)$`4#%!`DL{yt);OI!0OOk7F?(Mi_}RZ{<6q#kCWa-;Z2Z zBL$k-AX0${MZbAHFLjpGUA<?7C_uQ?t_?*;qguQ`)Uxgv7dmPCPUJ1AHnC}yMHRte zlCGkj>-AD$Qb{FkaWEm+Ltxe^;d`6|v?WVm`agJt`^OeYywLiev;#yhn$WNwo-H^w ziX`JKLxOy3aWbHocA!MiFl*LpCXg1KIL8D&t^=A&4CR%EA}hbi`E0n)NH5ky(aeU& zM(hSo^DS!eJ7Yz&S-}cry~Q|{Ter&r(}FMO2O-bcxnB<i<8n$%|00s1sa)6YnV^9L zYb_#!9pVZi%3duRSr4UZffMeCGzv|$Q7q!wvYdj<C}g2)Sgva@2o~zA8!u~!7P$o# zv;eU%nRnNMRS|Y#Rft_wO2n+L@J+%8Yz<KlC9oRy<ruogI>{Wh&)#%vow52*-Sc9b znzgdCM<qVZEQiG&TlqE2TEDTx(>}AeV1IiI+d~`<yYS_xTX)NyF{{MXJ|nw9tw7|= z9slFX3lWo51V8T<OgXPqNfAWuQK@{|sFXQ#_9&V?d-Uw2LZ?Et;%S|l1dn{aBbI!} z2A-Eo;$Osz1I>c*E8d`2yUz-Vn?0+-ilLu>L+{3#Si75gvhpdIMSmFK(kGfJ8T2a2 z^tZSv8b=_NpI;Ga>7yuB=URSc%Ar4_E@nGl(yY&|TYjTrg&NOo<x^#yh^}(&4fU(2 z+OUc(G;GBm`WFWqtcImXF8NwQe;OAoZ2g76)d*$;K4f+mD1b6v_0(dtr~g2f!(Gf7 zRObvqH2HvF<8q9=LGVG6@W;Yx$>j|vYC-^OXzj`;XudCjed<b<Yj0ZHrB~F3r?_rY z;Y|CDEyl0rNlo(wyBAk4FSFgk)>@dP_z73&M9y)}w`H_KY?-NK*8RaN#;@vW#|Qp% z5I_2DD4~5%>iG9pQ&$PGTbtNI17bOC4}Z9RV!2&!4})iSn9@g8Dob69vrsK<V}fOm z=RLVqATn;#P5~K^^aDs8z3atS2rfdBTH<EmABDO2VZhJCJ;G+WS3F|ySKeMe!4pmy zbKD<}xPB7y5NwTClMW$U$uo$!R%eE+5oT>Bq9b`J^*gP@Od@9eknHIuG!VpSk)PUH z#}2>2hW2(>!ERW=jKo6vFg(<4u4K;2M7o1iQ)cC#n2C;>I;{@QTv%mb*Hl|X^c#k+ z2p?U_S(ZpK%rPX}9@<2SW5j64AP`})Zt)rc2J|%}cs~Qg9R2*P1Z99C^3Kp*d=vg3 zw%#d7w4hxQZQJ&4+qP}nwr$(CZQHi3-QI1Rw`cCTXX5;KBG!6X5$mn8K2>F=-r}3d zK>3740g#<&tCi-37{eiaa8oMKCpK{E&@6&4T+rG*)qw}o-DF+m@6j2$M!eNf2(JAU z&ST4mjahnLwOzIN@!G3P%-{JpnQtb_6a-~H0@G&DLcrxJtiF<mtxs@~u;n^`N+YyY zp&^4iVRLQ_T^nJC){MQExio+lv*BS&djdZv;!Vwvp08IWMLr9iuOpWyB~s~h`SY|* zoAeExZT1Rx9fw0>i&B&+e9Pq3{!Qoi@5J&Wu~Q04&nS^Zd3jEOe{RH})kkhF-_W_Q zb^K^7Qpt~aeRbxq*XIH`d<bESmL>iuewYf@8H21+K?cD}3(p06Iu3UkBNmI`o120H z^kLibgx+Z+$6-zts9rg|M8BQb9*rL{Ys=j_r5lbcU+VUK#PFl9BI@AA-YG$qc0;~{ z3qA^SzycH+i`)uFV;O3mh5d8ItRJ$E&uA9&xAx!#G)5=eo3V35ZxNFAHw#rhriW%Q z6cafmPcx>dfaXVH-O}3)k~Mf`5Xx0nq3LEFohr+><iEN%>?VAOh#`KF6YJvqw_it` zC0UMa(xEm^zp=kopYS<96MXsBtu3%cED{p_G6$x(mwdQbe86U#nIcbEKjja7AWNeI zebT0jWN)xhy?-k|0x*A0e)_pC^`+`iaK&lFsfHE{R<Gq!?KTjshxBE*7b_q9RC)>% zS^=))ok;(DBi+hVB8H3$($}IOBASXSVn><yctDA$s+YW6Crm9^ySC7l>(o8S(Jtyh zwI3R$NvVwui0N=3F(TI#AIgOts4p(i+-hFLWtw#H^|sE;>vSA+cBa%N$@76I$$Me$ zixM5f0=TP_BLjYsWk%4^ylwIJO4F>V1YlKmZ4Z`^Mtr&NF9t=Q-$PMn=gSIDKN8jh zeP~t+N7iW@sp51_g;8IfgDadtj5)}VM`eiq{2>H-de3-zh|ASUo8H|J+{4!e-f9k( zkzx}gs!63QbzZ8vZ&=fqO=YD+u(3d=?6D%z(jluzGSE=VT~=PzWFq}owc#hUQ}5I= z3(c+SyT<Yd+Gdf@6ga?-sgzI)C9X1M5bU+8zs3UEb3_$qLOHRAO)_n-CQmLy40K2B z5|PLzIY?B)-X9W8at~@ylc$jjtVA}p7=s~;gl99@xo$b9?*O-ykj0L7sS6S$DH6KA zi+-(^$46_bRSHc`e(oLMzru|Zw$EK&qC1yw4zLiaMWK4{d_G+<$x*1EMUGSFVV5X@ zI2bnzYa%<>zBzgsnZbXRASV=$?*ylWU}kxmjalc9jaxm2U^TC|4Bz)^*PkpVQnTnG z%PJe+ZsliR565Df=@5P)XIqN0i@F%O%U2(zLR@EM!k5NbUSnCGlQ(LCATd4>CL%0A zle%WNW@{U+*VFQ{7Fm5-{tQ*3pF$bw%lhbRmJ)NrN2#;23lVAjr|DMw+yNn7tjBG- zP4^OHc{Gm03QHQ9n5FgL>q@Ik6pI1b(k2*D!Y9SzG~*TM^E}=)@eW0_-U#&WFhXRr zL2GLT$kB|R!)tdR8Ym;Ilh1>~W_O((MIhb)Gt{sHGnFGGiOr5r+&0x2n#L3P?EV2| zH5ynp@syLpXhkfLHhrZ;X-98r078ApGND;8D$v0&nJSOd+(Tf>XSU$nJ%?+aEKKcI zUbP8)u<G-U+PrV!U~37M_UIzQ4S>9O098E7{^08NX6@PS^Diap$>}&tbYi=Arp0WI z6<54AX?hbg5;n_$+3>}!E>K;Dg6iB|BYj$1LsaJDlW^+@_`?B@;Y7IbL@ipK{zQ4= zo&XrYB)tsvF%Zjh8rc+TfAohszGioZgt>aZ6%Ozu_;RUhq7Xj<HIaj))Y7r|JVD91 zSXDAuBOv{$RUNK;H7mGAr0}MmW@fpsCyQcccW|at14nUj%5EB3he7Bh=kxYxdYVq= zM8v{q6Fe_4k(ZZV+>)8`tYZ^|R$F}DKGFZ{7;^RO&?!0S*&;`OM|QsnXg_0A`vaof zeA$+cCM_akvB=Se+O}D9yaOLAVDZrEE_6v}rts+ND1LLd%*+8uS~Izt3$1uEc3+{0 zrE#-dOeK7h%cTa&3`gHLkUnuYCfDZ~D-vnn_4Y_(#UB})G;7wUjjopvO9Q!y`2x1M zmy$g;-nSspXUuwc({#DSwUp({$zIY(wug$ByUH1@v<6amh&1;YQoT8tNMYz()KIIS zw%665MkN}KDN3~<l78lOb-_%Yz(!`5>!XK2jIAvLJkOHhi`XZ0N9#&EYT0c1>aU@m z8A(vBJG?*|E5mUiX4Qw3M{{{EoW0Rmqu)KzFCVVxJu<a9ZWKShn;G5Q8EJQ1cflN< zL+$n~PXUZY5;pUVfP_xSK^3KVPd?7nSFV8<x!>Xg@{II?Iq;hwhee**wp8$+Rs^<+ zxD*a*LYG5GwieBB7Ri}eTuQt}&m_<6nT<`F2GPIFwZHL{xo;Z7pS=kQKx3(wB$v{{ z(4`i1Y{nsb`gc!84xw4d2|@BQRzmXk?olb4Fb`kqR5<l=vg5;^ZqOK(npE<(ywr>b z%%ZT0Z^Fe2vED`fO0hWdGk*;%+uyXxMbrC;R>&XP#A8P3Cd6Pqarh;9gYtLK?Oc+B z`h<<9CaEa9BvPIb=&nfB(2tV~CQ?RqN;}23NQsx(n~BC_T#4N=#NU+phs?=i3ip}8 zY7%cyS+Bqx5f9xod&^p@le)Xg^FE2k$?Cp5#m8hl-oB8T^KpLe!3!nk^FfZ&T$c7O zzdrL>L%o^Nykd(an*Yd@+{M?br>uYA`tKO`5gg<56(>P;nwx6`h6cReqO^SH3n@!} zl}Cdqad=9pWXKr6txlbuHYV&SuL}|N?~Qw)5+O57Lbxa@hy;q3nZuT7ztvfrlPTg| z!OxN^Aj*uIcNB$K<d+-M25*j)8Y<1^o7}OWuBL<K;Dzr(g^j}8k}!(~hW;&WNE&sH zr;VKcla=qI6nrleq*}xi47N}p{}(1&xe}7K0Tcs~B_;W$Fwl|QO#9n+%c7fk1d@`1 z>ZVk&U0_3zJJ}3l7wN^mIxprQ(H@YP0t0T$LWHGX*1HXT>g8XkFv{~%DEjmzp%etS z!7t_niT0a<ue3<A@n8uZWn!P(rU?@%E(*4P#tvLgt0+#YY`F6xN;DN$d4;r@s-}E_ zQ@~2pv1D~;D_AtadbEK)7Zy-7p;)m+Z_UxNrN=0RhYVgwD1)R^YW&m+<B*M8vYh2X z&rB<x^~W_T@(L{9xQY2fUgqzMpFv#~qeO+JL)810_}kOW`=%MzMxVFL8;aDiB=DO_ zdy`~`9Q>%u5N#HPSd9JFOzBn%NhJ0L_h;%%BDne&tyny%*!q7zELscUCRJWE?VM1q z@+ZBTKF?4VEl6^Qj#QLZn4{u5G2hR^^x9w3OH5FAoP~8rFnAaRoV-rUOKuyBsvIey zosg8Z(v>zu9<-Mnp&bi?I%ytNJp^n6Pj2!-Rjviy0%OneCGG3!F=wL?MnbM-E62`9 zkXEI#>vtt_86B;^9UwJ3BWN3j@+FZurz*KaazSY7?$LlKe*G=pI<vFJ^-f(fwqnZf zQQtYwUUiby$}{A2oW0?5>QQ<<4;BMT1P_aCIXTL*fEZc&2n1qYEzSvx=GD@dL}nUk z1!zLB)Uj1G%1O*c3bZ-{v7J^{^FC8f`AQfCsFs%7u>fV9IjdXX5?sLWucg&(cv9xU z0A@GBYn%`uu`N(@;u4_ezXNGYpwF;6gKY<vcAPOu_6)i7tJcm$J=0j1#GH|R1lX3` znnS)t+Q>!PDB*47zs_7)(y!%*PHEdu0?zTbw1f8YdF>l!AaT%v%4)s2LMk1Pbf{N0 z1%i${!qBK`f{_LxBhxc6;pDhGDBI}K*Hv=zSswsrw@oSKRR3ji2C?97GcN|hpDgSF zFAZykT-$1rgd!ccC`S&6lGQ+TZS>IZn3pqTmX31j(=7Ph4%1=*g}hc^yT9S%pA+~` z3}N^M%NC36*TpShZGwvM0h;ha9`nGe@Pd!<z?*v{To<RE;dz4oTB4|^epdcwUI+>m z-Cc=>fFZj=O{(}qTxS8#LW?$}8Fq)sl~kqY*jq=dQ7rs@)l4hoO<|@*$ec`3^DAA5 z98*C{k%aUk=d;R5nZ`4!X;kPFO;+)FPNvf7c$Ck6Z36IUZXs#?D|`Y?)pCIdAHXUY zlz|e1P^PJAaaI|3XY?92$Z9eEEDN3x(JArBFgJj#n?Yeez|KDS(@zZYM@a5hrgzjY z+}w9mn-aTI-FGz84?NO$@E!@i!MGopyd}Tem%d3Ez6$RCC2|rHfGWo0N&W^)vJ9Fw z<OAXUX$^hKwxIVkjcJ=-zge`!Lz&!oBvL8K^lTM){UIDs6rnvBl`nbp;{_0q_(Zzu zXHloCcOw{9POg~(tEr_%2<2`9sv&}1M|nk9VVqcDiDR`844!2Iu2Io_?RXxtmSr-p zf&;;xkleG`#}5I;(!78(?16yi_MDbEkyY8_dl}|w-wnV}1{#5XHYFR2Y55OaXMsA( zrnDa+SC-G0AUdbqIv{OZP<qX)5DB!x{HAxRq~d{s^kOjq_oIslkFkJFN(vw|%Eu_e zn%YIA3!Ee-(=cMuz%~`2M%!8AVKTJ4l32l=#8r>{sSC>i%YW`N>fi>(4Jt<|c>g zsTpZo?pIArcQeW0<PA25y)TPB0OGBOrujR$V3f@i6Ea0cELla(NHsu~I!w>*IMX|~ zD@ihoQ^mJR(Hhj4;Xkw+A~q>q7gKOihUZjpm;LjqxXd|B^^^?4d;)zp1e_k~c4Yf1 zrGD2U{7n+_JN9VEWg_f?X%B$k%OJ!AeZv}ArgB|CZFK`oNV0RF74`N>R3oT%CS~;? zt2MC<CW_7fxFUy{MhMqQej|YsNi`c<<PR)gO-LSXzR)sKrP7#U4`*zxs*H1vWkJ?5 zRHqUsMS*NV*ovg5V8|KfifCPhN<QmU!>x0dHy+^APIf_aqvKK!t1&ib?AMk>yrxWu zC9Ei%n|VwNw5l5>v7;II#2Nh|r~ivJ%UJG@Sh{TFCp4w&f=BI{h$`WxAsSB1vs8ix z*tTK{(Z;o^gn3u_sI=+fw4<SAXM}AKE~Rz&w@a%`Wete?X=@B^@t4(PO@!8!k3U48 zgah~Qd~H=|5jH%f$s(IGY;r}^{9W5p<(~q^mxBwz!7(AHo=%{O7`rBULreY^m>7YR zS1T>87>aH{E>VsOS3WdkV$3t;l19|bdY{o;!(Sn_EeyA^Acw89+DrC}6xPWrPE-d5 z78T1PH%(SsZ5fYqtjuE0Q+XF$+=|+=k#jJ{<(T;qQ%;o~;eYw<%9gc6GDWa{D?KG| zSGgq=L7ms4b37a5_EhQZu+rPIOUt;*CD+5J3co&XtvWMth|wKvsFqvt2scuyCw&(~ zSvR3-yTHqR=n2iRL}Fa^Dz;*y{wRV%961}Mm%`+(1!b%ICV@Tld^QB$HBp_7YrApu zo&Y=#$~isHd8#TxFPtOO<Vsc%yCtKn6!cJzP>x*{U16<Rg4g-(9PgcH-;`}%yAtru z^8$)wzp746t@0&r?#Hg4^PcP0c+~I5e9Km0VN=GVV9o4QIOGnA`C^sLK*iSsA)B-k zn<2lhDnvpxOZKFsPY7?zL(Hl?f*+MR;|p<wGu)yCParnRatk5n7M+4TVz}oXC<Ao! zJm)0Ux$xvo^gXDW2xC(-i-WVg&G?l&vT?FbYU}Wt0jhhuhIOw#dY)2B)AvAa6~Er^ zZRH?Wc#jJC8%``vwX0UPP$qb(S*TO&ey0UvIETvN4z4O5lf~homOLpIl~0=g`*~Kp zLZa+HtdhU7lE1o;zsgcB_>QLjMvFhQ+56!NpMEJ9=#i^h0e7x=4{t4xI|F>e<SFGX zTU$YYjD1h!Rn}WdJI8((@TqcKe#!TZ)->nZV+Bdfeqn<c%Xw@sfAM`MO2WTAT*c&o zY?CWi8I~iR^ZJOyz5g)|d;rKMnz<`$J;=60a+ZyjE35CcOLrZ{i*cf=$Rp1~g*7S- z;s`T!qQxD;<BWQsw@RpN+u$3k1xwYUc+TjY%z3m1haH@A!aW+Ad(f|P1n<Fr{W(zO z#MjABTLkg+a3k?WqrXGAw+BSMv!^^xXpVjvI5i9_cw?<aA0p^HOL<hhRiOaA+ZC## zNf}r}eiUWB^O=}AB#(P3D$tfb)UfSIWfwo(_9-dKCF#%7aFf=S?a&qo>Okrl<3xFG zqHvc9zbxc46F|9vKO-&p$8I*E?iHcM>O<xA4Y+Pf>6yy;P}eNuSm;!pnFBNm(i5{Z z&;8(Tl@oGKspJN#3e&g5h16yubkU{3M&nKY)*dP9$b$Mnz#IZ!Qslw8;s~45&&1%A zp=ld51IT*B`|p;lgmBg}%fh?U>64_U{k6)etDy#;?S&K@Z1>`71PC~U6sB7*mD@vY z+$ukcmwb97<Z_V$o^%I(isb&zHsh9v;)@ReXuMYC8tNawSt@XG#0}8=3E(0prJ>`z zwsM98Pb)&0-9b@)f+l-EcjlxEbBqGpJ%jRG)ETj^VAZR-=FHf_MtAh=;juGl9)H#= z@#Zw(J1pBgkM+FJwsco}NbWIezIV6LeoB4a)b#Uhc-++it3aN0pphnBYC`N^NutH2 zyKX4sQ@I&OHmXey5H={H1EOX+F$=%gfHQWL29#{Fa%7vOl);u^=Q*v4`mAqLy%QTk zzXYSyx%bWmuhj#ff0uJrj<{2K$+_5QC(=&n?KE262}{i(mPZ``ls}4z(HYQ^P|QrI z)};$4x_&oTRaz5W3o(&RUDB~1{h!;9&gZn_h|_Lb={MIQZ>BSIWeI6=W&7Q5mF!8T zw_uusW=ha`LJGU$*l*gMxpP4^v!z?Fgq=xrr5~@1=lfG<484K5hgJMn#4e3Bt-uA$ z9rQj+2_MNoFS*_A_-;u&uPe4XIF@gm6v<`$7x_;ixjN2R!S~AQf;J@xINOB}GIm+w z%qST_e>a1W&{h_U#S{a&_%BLtJWo4}=~3Ie&OWM>GZps~$RES&LLTf21GWW7ym?ga zVaM^aECB5aO1z<2?rR|Yw<>aO@}*vBI}`n+-0pbf_j(?g?TXOfcs+x-1Q_D06;9p! zVcjW5a7Z-GpW=F{Sh_G?&EUWEJ#sZ5KgnP0avtd{zI(<pNi-r&pv-cW+OY?1${M`+ z0!zY3Z-Z{*!~9*~m5})a!ETCEKFPU{U({Fjgl!^X4m}w~yH5Ew%zLBW?+#BbhAS2| zRjk&)5394jf1c+bWQo6&Q<O+gfbuv{F}*b>E+rOU<;0EU7RY_Ex_N^XhB%m*x7dV{ zCp%F~{1OB`z5<vpN-zz5@)Iv$AE;DT#Q=N*9A8DS`so%Bd^4clP_bs}4C~hPU)Ky? z+334A76yp5z=Qm?B}?*OhAuDP&~8s{Ugx-uQhtJM==uhAeWf)#1RVrB>`hfUbSTAq zox0@v4q$wOa9;1aWMqj>-P|bJJ}q@5ll0`$?#Jueq&$w-)=IoL(7ve}Z@t#Pf%W^t zj{e2r&y4j4%AMkWC&L}~EhKzmZofHILvgl@x!2RSUnaE+_Y}RGY`swJO|G4CjA;By zGEGRSBCD60(S5`^r#3p27<K2kW;oft2h<5~d(=;EZM{87UVK)*|NLa@y@8|1^DP>G zN0bJQb<m1PX-m)0qKD{kG_R&eVe8mdLwr#?fL+RDS6MrNegA|X-Ye!#i6!X(<InPk zGeI0231tr;m_ZCv__GT&6rxh8hy1|*&-)6bm;8;2zt`9XApro0{`(@PjD?epfwPgh ziLub{ZA=k&BNKaP3p?BYkHKK0gsg_*n`)g%QX5%SPQFmy0=WU9O4G}4LEv8)E=m4c zE2S<-zoEZQ-rVZ)zI!(1{9dv|hg+tXZc&!AN<nXA_6eBt9qVh|_f+)Ek;R<fpFExG zHOKLi`!Cxmujlec4vz<HKDv$NF{J)anGk!BFQS<UO!$>Hjc&gOBDye4q<91d(w!&5 z5JB}=cxV)(F4Tg%#t<s38jJRlz0MFUEE|hDmMBZH$$~lr>nMvc@po`&b*Kbv8}rd{ z7W^P&VLrc1?m3Qf{v(BY9yR+??Q#2%YOV1{dUGK^HanZM&}z7DQ9s{0hkc_MN?xF* zgDPw#kY1&kc&RU_z@5snKM+q|&a9TLr=hv)<jL%v-~^_Wth&hTRR#sum1z#lP+DoJ z^``eyYn8qmU(*Dt)?$dZtSWt9s<kiW+G2`}QtOsz@>%mSd!vz)NzJfyO3WkpW|Qpd zm43haQoXVk2GRTIceN3G@_mu3!#LK=LL*VCG$~yjlAtTg@ai*e49O4KM2l-EW2@I{ zZf+~%@LwdW^StJ3bsCPTiRR*M!mfcwHg#*U4mn`e+zTuts#KSh(J{=%xu^`v<VcGy zHYygD+?wX?XQ0RF;wuV?It{{lNU3Y_Okdoqbf|;YSi(*h>7f+`q=i^6&RG1)LleXr z!q`am09M>Fd+mYMm88U;I{K<}Kr!d-k?2^w$3)GD@Ug(~z$+;#YO~dx_zClg7-7_9 zkuAcEK<tUmgHEfN#pdQsn(anhF!>2qxPoeA3P$J;kd(|5(-53cRr^bE18$@xhNx@& z-T6Dx>jXEMACi2c2-`%8&0VM3wxE2=$4Vu<$m4++$rC#Yh%|VonAJpalb`$?TH|r< z%~XyHwcK2>5E&|rLVesbf`6y(|L}@Qi=V=$-C9yT8{?^tF<UHB%Bg64@C1NN1S!O; zQztdI4dHhLHx#e>v7F5+Z3~*zlbsZeWYp3xX4M^M#@C0ctoiC7aADmM74X!gX|b3U z;^>xS&Ld3T0ncZq9?{Oh)6VD=_?o5prZG9F(=zARv9+iU7be9iy@)($($LI`=}f>| ze4+(d2{71_MV3DgXuMMxg~8Kx{m&*s*C??YZ<oMu{)K}50C^KCBYum396X(~L4f_s z2Rp%Z`p4bue#mWkxbG2s0Q>DxtrfT)f`2Tq+*IjPO*v`_SDz_VeS}ekus#cQ2|M`C zfrqB9qOTI5LRD{2_#RQo8?~9w3*0_5^$7yFRi8FcWGxi955GXAuY+2jg<4N!6=>lC zSZJZrJk0&LvXCfzVd}v{U6*#8W1LXd9%yHZDf5O%=_mjE6Z({f)=<FrO%?c8=sVd( zm)SkxsDJLZfoe|fK7Di)bU9{N#<o&tm~@H0vQyLt&M$rR<X@^aq7NLrOwsNG0^KVB z!O}WqrG>SZ?bmZ9o+c`xm8#-PVuHO(0Qh`#jngeQEHfq-Ia+;FU@6@#(u+$la$Mg~ zX?q3)8`Ja$ugUe<-%><h+IHJf^oA*^Xhh%I))%<JWZ-%G+-yu^E+vcuJCLDv*^B`Z z_V(bd_DD?aAs<aX!noeOJ6~AnzlJDI;!QC|>c&EU41oL+cl`{Ie)iCE^%WHo{vonY zqWLOX5803m{@}1UPN{|8$7gy&NV9(L<)}&WqQ5TRpFQXj#!u~qK@$HflRHjfjM+K< zZp#!c=9Wqy&Aqp-v$&+0Yt3?50KLR!!0x*bZEO{;Q>8oSL3+hiJm-CKllb@YTIkE4 z=o7y5ih+I$$#qXryT_#Z!BO>**d^!5Hdf&W_&-B31!t?O&M%Yf^Os3R{C^3_%63*J zw*L{6YtlZHl*CZR`k+0u2UX|;RS_drEg=xSn@4^nLq!BU$b~BkM-XTk($$7w1AR22 zo@_3vcsZ9Wu9~Gkl5!AFjYj`+&OV0CKKh;hHTc-cl7c`G<{I4Y@p7Hx_}Floy$<2a z`+SDrC%GnPFW##M#$Lz)r;8<L&x~_hAj&dw9Hz_C1qB3u&zC6BV-?uINs}250DK%D zo#!L)GT<VFLm{ZdC;jUHZnmowFHcWyA`?)HU!gBPAOSiAC5n=*c-ss7XHN+955=oG zV~*-=L?9EKcccQS+12ZGtP>C%kE>u*>l@K#e*fZiD&S9iALV5nSQY1!FgeyXfj)~e z2wKZ)kte&taT4Je&4PL!Y5g`1-0+|QO@5f+!a!xG>>t#77@<7YYH0Q*&*zpK8*5~Q zna5pzp`2Q{_aO<IGy>Ge`PJ(ShU6oDI2z9LO;<Kag0*ZJcy$m*E^MDhE7bZa4y9(u z@`QQ);X3fx577hT*`?6KL>8>#DP!(h5_9hIgeK}KTfqeP_DbGjH%ra}8<qld@w$?L zu21};d41u6d=iwE&BO#<n*E2DP>#ll9Fok3;mVG;`bU)~ZqiVZ3nz8zdZwYjt!1xL z$2sLrEX5X2gQXAZc<S?x1do@#xB@bED`4PX0;NUcI=M9<4~tK9@|U)=m4~O%B*=g^ zYT~6W%`4T!HFNq_IB@0;5y})apxa9iv_b}5R65qQe$K-q%I%6|W12(0HIb&-YIl^n z$mH2J)?=Wk=nfJiCL79yk|Su=CIV~b3GKWGi^!R(R%58BYWqretd%Ovlcs6bu0<2E zb1K$@rl@-TWcAk1-{(nRUz&n~m;1713M$$|E~w!B{3jkdUk%31b1ea8DRcLjT#Ip2 zvUZAYcNmxUphlfk#ZwVU--rPzOP!+SItAra1IH~_%5xRfDC#^~L1J#9sUmO?x)Ab) z3Nxq|ZXH+c1qY<I31LjJ_ssc`vK=#lSgRq+%-nGI&5>AKy~+++*JARzIg}M|jS{!X zf?;UkpdNc1sSFy|vx*H)qM2DHm}q7^vE7C0x%aE|wn)4F9?95-`^LfF&}BX?FL3kG zUTa1aZ9s3BW<<wiE)$!d-IIkrK)clLPEuSco@nl8N^$6F^F}Ta!PBK9I=egEz;=-n zyu>$G&%V|BFBU|0J0qiN4U)P?jo;C1Qt0<#BeSlcx?(J1Z4+I%cJjNq1ULEGNd$co z9jrpWQTMYj9kGr+q1*j<aX}5XMQ^(%y&kl$vqo_ybFOqHGWCt%D4yAa8A(Y@5!!JW zVaH}eg(K?;pPBCa{0va-Vir4=nt#h$Vs3Qfmd>Z|ctd&2qW_(!z1>a3Ujixl@}M5d zbMHFD@`au|aI*g%X~ek!y*YNSd!oC3U{JR@$fm^_C6ui*#*Qp;r;M9*VP1?Y&9195 zc4}d6S&F)m70nO3;~C?0VT$n`l6h=N?{Xcr-1{7j+-Z(mk<^()x@9g8r3YY2Cafkk z2NW}M#Sq&Z+~6f%lUPIvY}hL9vQWhJ%1f5ai%N?a+Tw@}SWo+qp7<KNA~YqX^BTG$ zJ|Juju?xyabj%Io5ESd!#-~$RYgfk4C31+%N;EufICkZ(KtATjlaH{6rcCQ&dNu$8 znzqGdtb{My>0h!j7@ERf$78IT4Y*5At_m7(=>uis^QQwK0trJR5b<xTcMoZE+tTVj za7WE$MJ%6pc6cUM!8<%9Y5Sz7jY34dqp*0al&PZ2>F?7G_xx3GHb)wv$qkeDW4y+4 z*t~@bnw=@jn#1JvvsX`$3$ZxTW(_#T)1=KDmb&Cr6MrM1ZtP2(0g+sHjft4CNK$E% zmSkGNv1nOoTAq~lxC5fvci0TM`02#R>EHt^oqvW!`IpI{o?}(=KDBh7O`G1|xw^fn zcvJMDuCnhf0;lHQU6N7}(kbdRvflSooKu@;r_(aX6agE`GKN>|v^DUf>Ay66i>a$x zM19f(aeza+&;1kL5#G1{fvq--q>U=lPU?ElX+8+s0M90Z&i4lREYwazyBFIY?R9|G zd*U+3r#vlrS&%&B<}$&vo_!5Yq9;H@P;h^$l`Nx>mQ;0w?oR9?68RpmOtHZT+d19t zb=_3odwBPqyUuq@bw^~@6-_tI_46O;Nmq_5oEaDZAmg`d_&+)dvIaILO7;du|3%lb zQQA^O7C_)hg2rZz;*U26uq#J!B-o`B=m&rnP4Wj(kdM;T?_V)yYuQjwo%;^1>%Fa1 z!IG?K^nRZCss99NFhdR;<+h%acFS|>H1q8H`MyW(C(oV4;MX23he1EMIu#Qf1jW?V zMhTN*%$P!|eYIB+<*J2r(n-e#vR6tk{$tcmGTj~wi3vFDla6v>^GDGzCy^lrGok98 zp2|RW5Erbj0M#RdAl{?4XBi1qi;g(;E!0NS2t^xtL9{*}b1S0T=4_M|bj$WE)K-rE zG4uyMj+)86bVdfq&D1&QALWRPEsezm=)L&X_AJM+*bq@oc@N19rBZtox{Ft+9SXBl zlgm;*XWZI|GgAZq#<P%ATgUM!1)*1`ekxV!srYObs#Vb3x!`^H{8U;qEHC9A)GWTt z=L`=Odq5KScb_HFTM(4&esiD!3}Y}{LQ6Es11Q_$+P0xRNfO~tZJ^gU`M9CD0Neu< zn!Vm&VPLmC-9DgDy@q*ZV+#p;V8yngse_GVj?}+Z$BODqJ#m>T1JEh=@qSSh?!owA zRM4uz`Z4#xd8MK9jtn6Xoj%ibP^yK~pS<gnwLGQ2FxU0%{rhO}8}AlexfaLO77k?> zjX`=Q=4`K2TMi3XR#{n=0q7kDY%=09O9gj#nqUmUaHInrN-O0k9#=CKIG$Qy<t?75 zmO&$Ql;-2#Tskf~SlTtp2cx7y)hm17|0;PP_q|&+9_Cfr(giXv64_D98RarW2Rc%j zWd!-YcJhB_NlK?S7VsC&L6MzAo~d&dZ{<PQkvBl2E(cl~p<l?{%`bE!t_!b_i^ZFv z{(?&yvWu~bqwt6O3pf|X1;0nQ`xpLWP%h&Uph7lGh>PE4%eRSrU=|3&MlE-CjDmWe z??r+g@47WJQX#inkkN;?;i_bBZ2GyV4+IeKhxiO%<P{Be;0$9>EYl_uOkf~|s63q> z<t>WZr!j0kGkpcKqwNd>c-ll}*A%hK?&Xh{MjfkU?``@i(zs;obO^!fi6pM&Isi9B zcJ?d$=6!kPm!W%v%UR(6gV^KHkn@!{qkVXauMA&9AgxGz-Yt9iAB{Qxke6WOFGJGl zSF+@nPXJ(G>ul{vCu^r_VPN>1qph9)qXKkM)>2xMNBD*dA(a`TnI}|X)(+ma78#MM zAjcOsqvUL5JT%gT%h4C-v^d}UbB~EjQ#AW}8pJp0AcxhU=zV&Uy<^w+<;r$8r>EBk zJZ>O1+8rH2UTdU~P6En6Oq4DxDS#C<NF8A%DySL|h|TDDkb$0%b<m76K(n3dAT}Bq z*rlFoFE{8DN-*a!WD~mIXyBEaRTp_dIh22O=@eSguj57?wZ^m5p!GZ7NCDU{w8+}U z5+Z#2BW)RH&gzr7&}i|n^Q;ilrBY;?U`G4)E8tsjw>qvBx-+iEz1EEF+q$^7%d~5W z2|JlCUHYyNT)}SBHrpmMz}a(gnNir^d2EBb=Al$R5kVblE*Jeyn>fq@39pP&Us*^l z4Fs>EJ=h$~g6bg6Fg&NWZT<(xUXA|`gSk!CAGQj!-ntJb>QhQQBb^bj(`HDWL1a{| zby5o+b=#YZ*??WkHSV;eOLe(u<1@o&&`BT3r7PL9!rs|HI*%QTdB*WI<Y=9CRIrFp z%GCh`$x=xe#7;X-)sJvT#ffjk7cWVYhHUe>Z*SWBkQmdXOrvpK{^h>jYkIY=%*xO7 zXF@Mowo!UClzhY<`fW5fNHN^YUdl8~(!ez`d*#0@9Cy)QHMiZa;x<O9yipiFBEb5F zMb3tXLys^E6aiDlb@Mg;1cLw(&7;i$)9Aq%<8X}GhU7VK(YN4yZlRYD$3Ta})rd>M zb51OK8U%QVF^F=kO98@s9QondW#LB2#4?Hap;q(2k)?EK>k@u~N8qNt0v<k*<)yCl z)Y`bw^A$l0$ekg4hL=2po39gp(pN)5xY8l?%~TGF;fPfVEt}HCz@Q&r8pRhh{DhtQ z{v%y5qaKeX|Khm!7sq7(Hyn%FIsRXUOg_pwa>xQGJW7&nI;!SW$5pCPf!2K17i>U* z_59X~?g%7z4jQ4Ir8zdOS~Yav=!ZdfGRQQd$bSBOlkR3w^YVKJbJN=#|8}`vW-s&l z`22v$^@*aJBQ3Pk?1cuSBiT)f!uLxh>Cr=L@rwuptAn$HyMwh1P?S*=6dkbLP_|X< z;|Lu0numMuCY>?U2M{zHL#}9;qAx^8P;_T#CTDP`Py)N6GIT=o_kYoy5J~guTGczY z^Y27A#*L(IhRw9WG}6*x%*jSUhgvG4a~7MnO*-y|Njh8N;=Xcw>tLo-gT$@KvoudE z8@KFO(|akEU}<Z%mZqp~wOeK^rNXwE=2xFd45c{TpggQ_uQwE2+`>KF12&GBxITZM zQS_L40>KJ$*VaBtQAX>?mSBe7l{2PgbpX(<#86=f2~SFWwLTC<D1TY?R(ObV6$Jxp zwZx%QYZAKAB>mhm*I}wc5q^BN3G?CtG$*=}WD0+pGexi<#Ts(RKbJzu%)*AfMKxy` zv!^fd-;@7xFhSG8USMYmpU~#tG+TjkE{UCXeYQ&u9cbLsU}ZGCx_9vV?6U5!yoC8F zGhP2vi!3^Cfw#`kjiX0W!$)F(&iTeVX6Qxg0ER&a%^4#EU}jn4L+ZZ*{=I<jfngZa zq<ut>D{Ha{a39?U_h`ST!7q#v{x>G6-5?gx#z}9=dkB*e(j-vfSf%kw{&r<uE-1ai zg92DZjNX(Ew(Ao2Od*JRZlD!JPiFTtJ$+GOR2y~>B1?bjkL7m#hTrLgb@2peT<B49 zF8D9@6idcPJ-$|rPROPo(+`KlBL85V;Y&hKO!#ofK2V|zT1c`AjZGn)oPr)TNbzN~ zJ;oUf1CV%K{rR75`XNNB7x^!+e|~Ertp5hKoUMtRql}%SiJ-Nek=1{3*A@NbmgG@* z;sm-}c1Vq^VL(unJ8c>Ley|u23ymdEk;6y%{#-V!xLhqdi+(9*#?x3HfZqyX-dJ%Z z!I~$1Tyx!IyV=e9_<etW!s=slVL7U&7|?`JuPU{NUSP4-Q#4^)Y!B0*YGEbP6IT&3 zF-25rQ&Cz{+A@)IwOWDCVcv(1?DXGVeDK~pwf`;eHcH=l&<rFn+o*MCI>m+l3ID?t zTrJmhc$Kh*YD+HD8balbhrnSF?8cG1W<riJBPrbqv4=aL1zQNdYp}OvtHnsUD)t?* zhI`$5fhY-cHIMyDc924IL5I_R(C>HkX1I1I+qsokcL;T2LVjv2r!#_!>*gRg;)4r+ zD?diWt$HUc1}TRbxkTa$URE}k_FfpvnCij}oMNJKPJZszNIIkm64v$NI&bm(9!sN1 z$G0`0h3Aa1?0OXIY`;hwIt|hvANh4pt{1(r`1Qpgof!hH-<XyRb9^UE+67~l0LwYp z*h!~-?fph6-pHNnzY>Fuk*APSGBt}KUF0E=0xep3>#NsJ6PoGZoBK};=k0HPTUN;$ zWgiDUhhn71rj356FF!*SQT<JF0s%@3!VCfz_B}L%A2Q@S;7awXXnF?Pv=9N7M~opg zJ%m~F`3WYHSvpHtdX_2;A@04DdZdb$vT*JZVM?Rnw|{1T+m9egce8W?o(gs4Sczm` z{3pHOB#r<!Va^%_OhN`)ouYPu3z*t}*4g;D&x~Zh_!|4g*Z--r|F>9~vZKj=)!8A6 zGI5K)(6S?MR^rryh=xf96dMb~r60wWJa|Qvz%U9H*LF<@uW;2=oTS$7dO>e@ICS0S z|6ke&DSQKZg}Z9;`uKMwJukgpH(W2>5AR=VX?6gV<>l+awT8eRm>-mc<l!<3!X5_B zpliW=^7c9dunOGC4oaZ|2wi4fuJUH#7$s>ii$XWiOx7$mX?)l@d5(QHIh@H8j~??! zJ$u{OU~%nsdg=jJ9X0;&7>c4r%icCR>MCQ7A1kWASn3mfOEJT6994X|D_=YGtx>R~ zFAq$x;ds`{%wolwnh!k7U1;9!zpK)jb8uI~hp&RyysB^iYFmHawP%yAps_o0dqdXR zHht(ghWFU|*G<^ZVr`%$1ZjfRo|$RhQ9=;H9HE?FGBAt?tR&Gn_|+LoC7x)%)ZpYE z8e?&?j^$`LmJhOvl15-roh(Dh5n(@#1=H>|s!uzmqQ%RuBu}|`VJk?DDZL$a33ugu zAMM@D4fr7qC=_T-Ej>Dc^rLa1^sYvD1ib+-KWS90<12Es68mWcbXII_Iu`Ca&0v`3 zl+0Xcj2sVPk|QjsNE)S6S$a}_1F1y#R|9}aggYQxepDSjX&jM$BQ`@mB<bAqnJChf z5RY`~9b;4QO()pr{p&%GF-#bcnKu?^gfljNOy{yF6bP><ob*a>k3VtPDzwbi!9|o& zD6joJQ81;RrfI&lwere!z4fK9mCLxvfZ^poII2lCDNeAzsG|Dq;4uF?a{V{56kV+U z3tcY%m4ugQcNS?&(4tmb0}sUb$e)l=8=yp_je<n6mNAO7Fzj76GOt!&)x7B$dS4HM zNHq&deY;=x;*jQ0sw0wp+MQlzdCX>e++6*>zCTg>L25(m(K8SR$Dfy`D3ag_0v%cu zeib<HBROS*?U6un%aotb=x6t;V<l1&R7w$sIa+ez4+3K;0_;r;EJ`&qyy%r`Aj2d3 z`8)QRd6w={rMpPJvb;e8ZKqP9PdZV;RsLknO&8j5T8)UzwPd$M0ezKT(KN4KETTe4 zYsDU?fE;AxRBVs{)@-X2Ea<N|9-)<+uG)x(dI3;EA?haW*3<^}WLVR|I*_UySGMh% zdpa$)<Ywfq*n=o?X_#qMRV|XRUBG(A)a3J<H!L`&9e0-u58GziDy?c$tV|$B4)Q}4 zO=>g8_X7e;z+k73k^qZ2sC$qAr#XZmZSZZ;xKdcgkS#7S3|0PYG0=w+ahk#=quRH( zDaW4V9^@h4?wDDHeH$qtfqr7HRQta@RyeDIBxc;tirS>n((hVvc9p@`cRi$TJx<0^ zXB|Pp8AuH~4z(UPp1U-$H>n%hKK_}Cc{jRtVCQiHB`ns7pX(8+vUM|!pH_BN2@vW& zGVn$6ZRLwKfVe!&g8wL}2$)}6mTrG`pbKHX66lRV+&`@Rci#&e{^ATOYA%#x4+99} z0#LN&zZCt^0e8Z>H+9T6m?z~E{0xtAD3K2qQ}(1J5{w1%gu6>BPX=8=^aA+prlX#Z zER8f;VOQpRD8ac#_N{nMa`1L)j_uR-(7_61bK16KcLrL<T$4QSd!WhrgtZ_14E#k` ze`9AWXhl?<_;-(=vWIaaZN8T%JMN{$KpJfEu3spS&wyWF(yQr><Exd*9Bo0?&pR1; zj|Q)wLDe~X#h8M2EHs))v!CKSlr}%yqxFRIhtiEc;)5L?TFIDmvu2AliLzm`ljSc} zw70;~H5gdY(p8PFyh*cgU(9J2o>v18Gt`zSHLI}RvCE1mrw|3fc-<vL3v{K*1K;<5 z?4d5M>AbvOVbSj22>pMu|9|hH|2?Dsf3v@jf{ql>uX2rA&5DcEL)B+_^PCH8h;9rX zBai^0__;?_mGxO|wc453lfFC{&*QofA7!Q$QUxOV$?P<b*>!eC+}s))fXFE&kT}TR z*sl~MvC6&TqEywm{z@DR=mk_GjMHGpA?uLfOtZ)o&5DV-X*yrMwG<9x@KZ$ECumUJ z!M1&<{7mDUMV-&cPN&C8p>+3zNDQ0s)>)*{wWg1fIvncUX^U2qU8-j34s{OnT4R=2 zk7!WWv1RY%9{Q|XB0=dtv;5^4&+Er+D__G2y+X6ntz(z82L&mSh_!rzG650!fzVJH zYm0Dv${rg~E-Y8Xl34gn)ix=TCZd&M+UFXZMnb@{MHpQjO1V#(pivW7&h1_U@rx7< zP@@JIucjdKA7J?JOzt4TrJ4t?02~`8ey>s)@sT5siM4uu*91afJWhYhZhy=WGj}|( zQ-lqXLCK3Ea)0_A1L_!$kKx3+1VMJL;Fm^yn0;)+YsLrqkvKtt=yZq4#dN>dXt=u= zGWT7?<TZqcpm4_Y1G0#`LUy4Ij1j!y|FmtLfH%E8gaQC~!36+7`k$fE@&8@U5;YHf z923+Zp9xZ~u8iWVR*S6ARw?)m>w<=SpdS1l{P<u&MN3Tu(ypYd#h&b(D}wTHZC!jz z1u7syO=0DJ*C3Pu>=A4fZUF&6j&1?a;_u#!3B05YngqV*tPQrCm)(!u&);|Z<vzy^ zSe<h7^Hm!Ghz+~}Fc1C!WgBO2hsN<OP`j5rjc(#tmCshm-U~s%TVuc%6dVNwHJYMb zXh4nlTebrS=782)1?U=X{+8$d+UoxLLckmN@8hAC;>DKZn=C?3yBh6Z*gdayxq+9U zS3qBkqr5+FcSfLmkcJ75&q|;#RPOu(b10wM13`*c1bn`T!;0J0dujLYR2`q119m8% zsslrd14N6*H-WD_cqx8=ly1S#PUE2P($I3_2gy)BB?goPxMR$W)8{B(n*#gDU#tH3 zJsjQu4H%QE(Sys(EQ6jrSzt1mINL2pciY0)F2V5ZYI*hsZkoDw<zmh+dg|)Gul7DP z<7&D|P7!y4%MfKq$dl-wnhuOV!oWdJJ6?`7RwUywC2dIeX2BN|(Ae3|8=9`J(;zr5 zzm6v;7?mDdn!CyVnY<s^OirD9vEm4D-Le{xF71?Cx!;nuAto`(N|82h4BgGzC@4w1 zb9omhXi$|Z!6;uRBw}k$@0Fd)*djkgHP_9UCZ1UVib<$#0`<0Paxm4G)cYkDqbw42 zG7w)u;b2zep+H`XpPtCa*qe!TT7uv#9^Coz<gFoj>M`1#W9}e8#C1hY!8&*4YVDRH znt>~Y&eVmf@U_Y_NtOG~MB7jap?e5aIcvLHm4ywcovFVPh5uPzQkEHIWel0XXi{rM zs%ceJT54ob+uY1ykU*0&lF}ZvtkhgBUEGW}7Tf6Wwggs@qlxAdrA1#n60`rR#n2$> zxEkXFQT{hU8k$E~N7$q2Coo)ul6a<F=_Rv>vn(@Z?xp=_1&U(nz&7xB7#viw+zQ9q zBqgQP>I^ldkR@b6fvnzCaiOvY?!H#_sby2L1Snf!v4(O0t<pxk^f8*0jngQ5eC3JO z=1KK2-hM)LhITQtF0}mcm`R_*(rnVw1FQ0s?<#?I4sJPdS_|{CjWY9i=HBk~qT#Pd zUALKMsU#UH1@Ua!YV;MFzod+X1|U$R3+{L(%5k$a<0#uKt>I~+r~{b6>DeWmk09<` z{qZ&DRXIu*RKs~j)%eNQ+&PN;`a-!9+L8?_`kEFDPa4bgQ)ohsHL=-QgLNQoVlxH9 zwyA}&;bKYmN^6q_6C+B4a5|A^(aegAO>f|!IqPH2g!HzlEQ!Mw5wZsrpptbDAY=de zFp!N&g!LjZE+{JVok**=zEp4Gy%Vv5RSxB%p~zE%kf`Odag@vRqv?TXDDyqn&p6G+ zbu>`Oz<~8Y_}L=MlMNJgibZNnlPpUGJ9gG_qsR!rtb7BaStUDk5M^k+#7G5x8hY|y zHM*qic|{)4KpIM;)ZM`T31qn<aW(b~cr&Jo9RsVE{UdXBvk*i)3SuQwcV?^L!^0U# z(FU=-V#u<kqiKlh2i}TrKPHtHW(}sY6|Oc?tINku@HOL_8rMJCNj?VX`#Y4aMooWy zl<#nI)fU2hQGW*eRI)>tR6fD!UhfJcr5rHfMY6)bCc0OUpW0K_kV2HTqotHDhiNB* z(~j=-_;ghr!hz8>uhbg2tyvWM5Gu|4@l==zr#PvQAFF|ob5^OsJ64;9WLbZy+V6M9 zG1-buUVW5Ob&+{rVH}vGR(5;#|Hh4BpWU-LlZY$L5qO`~UK*Ho-M>1yyHdkc7Kk%d z_Qz;_L#g4p6nAf$=ZHQ2Hgapfmk|bKN5&Cdphrf^CC0UjKGz>o&4G=+PXfb=*FuXT zC6C$;o5o^SnLtnt`tT%}=v1k`i9}H<qeYmHkd7knW|GHm3g;2=+Yd=rR;BRd4M}?Z zGmFk1Q%WRZG9aub&**T8Q_d~3(DB`0M@B3oGHG@`3h5@TB)uR?01h4lB<mB~7Br<l zV8~RN(dyCa9t)QV6TvgpFE?l-3=8U-7-S~nVJv>+$(VMvD{efCUfZq?OV^&7@S`Bz zD7%r&taTXo<$9hjJa+8N)`)%1Od}1K+)$pbrb+liTDuWSU<SQPOc{jlLAf|Mf8<?# zQ>cwumV6^_-A@7Vc{`!u@5Z~aQA6d`<8r*Mufy?cZ;xLFe!&M0p&Lg;#$jadL-Zpu zKhDJ;gBOf}Cp3hCWfydGMZbo>kZ%j^LSh*egq5$&n}LoSL`MmiFF`xAFbaG-B@#i) z;m^M@%RLHRXi^O*x;8pq%9OjY9@*iJ+|sI9)y$)YhEpfA@MYfHVqCa^G}@jU#Ku)Q z#^{bI8eaL`W6l%4XJ2jtbIxP3X0r^41f!2#N+5BjWpB&lU4_mo;+^>lQ-URWzQ5Id zYe%w+&nssEbLaU=q5FzEd_(MuUcxDQv0vu7KS%ZrbnsW!A~2&oDDNbsFaFgH(GRgi zB3ljq&;6jD;AhFO-e_yz4x!#;VX?j{Xj5hhu7yK~P&J2w9^#VEnn9<_k_T?!0-@<8 z*JJY5Ju1Y$r1KtS+DNvMLkjZYwnG$Cn!1}v^9?TBd+^pNUh|<PPC%Rr#?u`M*6b+P zYm#RnO!J!u>>9T;Jms9T(wk>3XzzMNrHt(gcE@$|ZjUl7S0$7R@CU<GjSuqLj(b+v zzQ5KJTJ68IO3#3#PgAw0O`Sbe=6zO4+In%~r+-}UzL~i@9@Sf~zO^^~Ts#NqSE@Zh z7a_#yHJoD#Hs;+UC2r_vLzr!eyvg>`E{KtbHAYqiMpYxSs$z&v+oCszo*oeaJ;s&W z%LfhzGaTWw2AIt#I13x%lhe3E-Co2llN?YBZ1#LzTfp7|@P>$Zjf9q^4YE|FQ&P#7 zPTInh>FQS|5r-zdWocmr2Z+~~3OFHS+Pb?+Rzz!EYzI|s31b}zWE}}*9SLTY+90>O zt94fg7*l}ro?L?kL{aK{UBJ*gEsr=T-0*LR_q<XXdtWYCuZ8>b2Mpb&g1{aDT^<Rr zM<kMb@?`<Ye#z+H2%p|-OTorNs4iIScZl%aw}^j*yNjn&{@16D?km8Zz=0O|m;M(R z-jjKLVazMVuw2Pw<vXl*1iCNh9aFen*`v_!zlVIARNouJZU}T%4@0lvL3&5d03jgi zio*=GxdiUlQEzC5aY5@R?%HG<ZgeNe?g&yG?#^MlTEmQ38mhw$#f!Yu)O<;k-bkFa zk|QFT4e`5Z1_kU;RwC$m+Fz30z1O$8dU|UY43C}3x@ikl*)_bAN<*}9<aLQ&s}#sQ zo#AZlO`hD|2OuEB5h^=Tf9WvtW-mW0Wna#z58T~i)e1$b3ytY`_gBWUw%;%2iC2{z zWhl6!aKHSyz1kO$x8s!x!gVEI1&*z221O9bI-l4UM>0wr`_R@_inbi-I$;?qvc%h( zD0+68<^f(<r>@-7116U)l}OT#`MEf<I-lkY@*B~2{N>i{7xqJ==R>ju?Wkkst8m1{ z4ku*`ld<WqT&p2!s0~*}1b?w!oyAZD5eXvLJ&V?u$fqP}6+2f_(R)e{`!<`B<cwHl zVVhk`#-R<9Gd*H?B=R_}6@_nA8-k?S1us+J!t&Ocv#Vr|Y>`ddsM7sWErzqQyC%2U z)sw)^b`U#+|MGB(2s+wOL>cQ7uSdi7^&baOihLL;=D)-H6Y&4vwBUa#Tl=W!C}FE$ z_@;t12AAlYQ>br>=CcwIlPg!ljsVeMNI?GTc1F4+;TYm?$gp*Z-{d%SKgFJ<#4<%2 z<y0_X;pCjb--@w+BRz3o_hK>1nEv&d`}p#BuJikG2gMIH^L;!FGJP~yj)QklGW=7~ zUP4%FI32fzkyac>(tbDwLaHKN(S9+;BVCoQa2H`rqU>F1xGKj?q47eJo^=2Juys~p zaYap+4g?J}u8jqEcXxMp3GPmiAi-%oxVu}>#@$^ScWpdqun;o*<MTapdv5os+Naie zYb|=*JB|I|Xn5S1g{`FMND-z#Zt#o@q~niOa1J6hf3Ee!A$r?m8wa0cB*vKoWXTv# zWSnj1!M8Fjd5eHfGXQg@HF;nfk%`W3E=QAuxFLs26n}XJ-f~hNOJWf;jGSqU<_uY0 z{$KZ2EZv$fgzis$VF5Sog>*SpO=XA)3nL%dr+lx%f^N%9LUk5ZJ^pe!)a<0(!rw3b zT<PJt?#6T{0h$6E15uGH1dyUrJwo=}bWB93S2a@&p&~1u7b8szx6xoHP-GCBOk|~i zvX(rwCZw)LPOx2%qdh>Eg5Th$Jtq=Y!gX1N(<$Lz=v+N0CxSI`DRDFneFON3j$y8f zf)-e3MTQEXF|V;$AIERRj!~>>apLFVqWoyPxrkzg5O5hq!nHLNDqZe~2%(^}3N6F+ zJmN~hfL!CGMKr?k5W_S34qC@>d<~4mx?6BO!8wh?Bjn4a`Q1#%B+RJ(HvpCMG4|pp z$Aqf43H+Ko11+n!lt)}$4r?gJzg?50Z4Ci_y)KO~&h(INQT_Ql^rL1eX}+KlqOS+t z4*^o<2v<ID8fq3|9;2C)DNO!A$A8=$qbXSzj&%B?oq{G#YsDtz#GQw$pKxZ>zB%PN z7Wtgj%c1VxW0WlzQdsC7&s;u-Xky^lfBid7Vxg|;LVTp6k^`s0+xnS%QvQAMUyQjN zsvn$y(n9r>PzQyb9}=;FB%gkM%3?lHn<#9BmqXzN47VEJ9Q+MFLZ#mGb6QZO{^F{K za88%IwP(MP8Ec=d{VAlY_=P+u&cDrE%{5m~wCnZbnV9AKe$WyAevZ6^C=iKtAd*F6 zfMEBzqk5x{b57`*5s1KWy;yZGHf$vo<ttA{6?;ol*Aa8eoN8Eku_dWlaAQ?)deji? zagFh?U_*AOU1f%JMN$<gdyv%m?qiMZ`&(FtLU<6y6#k4<0HLe5{pRT#gYDXAg{7UB zemYh4l2wah+GEsj?a;=5I|;PysFEHB+JxT_2T#mD2b7Gk4g3SdTHqiDYCv7FCsV$~ z@^QB(ExD%3GBq<@h=$_kWXHg*8|7Qfi*?2{%N@I1QW68;(2z;f=cqq^@~p2vuJjF7 zwSmX)W~B(O6Ts_mVD==__vwreSFFn!(IG3ak=9^YQL7pw1%ehP^4l8yzE=mE!Cy%| zY0Vj0EZ^<7nP;ESbPaaVu8zsa&*0SE3K9-*Ii!E)nT)v?ap~r-p%||I3j?nIfP#L* zt#b{i+%X4y(;M}0+(it83mm|HRT}@a@I<2j3J`apyoY=z`p<-yislw#k9Q%)`(22k z_>YPG|8FJiq^7JoAcm7u${el%|LF;)!YmdB&GoM6rT~PDtd1S^2#?1k!LE3IwIIcH zv-{qY2zT&4g4}&wb}pv6#{ay$J;AAs7Q$n9x=H=eEiF)(A0T~DCeEN^C#ZWQctXv@ zdwgwh^ejUk=tM&JNUlm~J}5S2UB_!_rVK><rRU>ML6EZ?C3-WG@oi9MBVCHz?|$mH z(Z3w=YOO1R`$@a}it)5_(7D+HZsTC5g#;?Sbx0ab#6Yisfi>fjR~b76H$J(?kRCq7 zUiIS|_C$1{>*SHr*n@C-5!t5=kw<A`{f$+rg^2Jl01*+7c~mythHIiF9ZT2BIiW_i zEAQ5i6ZL}oUM@NaNLio<!MGg~QyH-6)xvS1G+dBXbV`8f2cvUIQd2gK>5I&57d}rG zRY|EB)wG!NYM+y6YT;qqqI=@PrehGPB}R(y=}?o(F(HtnF!@$3`Ib$tQkd0h9)n4J z`ilcV`=6q4QHQc{NbZ09Ionfa9f*IwQBvP;l+XX?$lR^oV_3f0IortCIa=wu+j;)4 zP!=z3Wi`Wh7hUH!lUtvXBifV_3CRW;D)NT+;6sIKX)!i60|VPWJhE|=02QD9bVO;v zc!A}3XQOs{&iGgqab7gejM&l^LA*MnGlP}795>p$KPD8S!_qU|SDnY3cUxCE-|p^2 z(Su+yWKH_)Fi~0GUj`zZr>CT-uT=0|OcG)Xp*C)5vomhVSaSy>zPx_Ya&qn`Aw>9F zKErXk?dQ~_o1-@?aQ7$#81vEMn4{MnQRJu|5ZYY;jNLDJMkfMH_UOsYj9?4cI<`f^ zMv-y?PT!USHXn$~q@ue7GY!H?XJo(A6sy*X(XqBNHw)X-K$@=jG8F3|qR!q!*ccl% zzQ;WNHNHe!nb0^VU;EzSmMH<}PkPftNFiPeRw$<-T^dqzq;D*riP2)y#P`g8(K1GA zY15*2AGFHqh@w$nmWZ@adRAuWT{H`MY+G10L3#InqczSwpL&`rVCC5WKeYK#4ohW^ z9~s-<3yYT^%f4DN{h!4+#uz=d<dWqZ?o?$*5_j}VXTP}!LD9#EkoF>t1qm57eI3P! zFw~t&avUw?YqVph-1og=2ZM%B@NpFAHsr|UDn;3x`2(Jpu2KU6DM_7GWBk%Kwwse% zu+Np-htRU`hFI3u%j7p{o{0O*iIEeq*3_0ik_%kVU^Lr?zT9eV9fiY7PqGi8RsYdU zl<s%TEedDjip+nYL`Ub|&ZuF`64zIvSF|=&QfEW9!74}%DVip1olgCd#MRX+>x<8Q zX`UuWbGDVB9(u<01!DjbASr1q`Decd@++a5ez(hly%HfQhOrz6M^YToc=&6_J`bOd z#r#yig9AluD_I=ocdtHq#y*!H%=Jp}U|Yfm8N^JE9Nab}JdXKKo1%T#YhmT6ZdBkn zdbCj_(o2?NXZT#hM2;mA;5q&J=7`}2bPU^F@FmC@(CMrb-GO)lwnnr7I<PB$Gv`Z} zT*E$v0tAR9Qyj5=TN<8H3&gAVc@<Hq!HVY$%NtQyMo>*A>pjX>;3l1r`@Tj)qB8gA zy-LZpP!;(MS&@%RYi0Ga;-na^x%sZg`0eMN3kx$NSas^{_vu&g;xWgUQB5oROvOKU zBi`z%O`OX4`R5@LBz)bVua7;D@4ve5v?p`U-}MNBPY^!Um)xXX)!8!`r2nRI|Lzif zo_pz>?=x~mq3N~0)<xUck}E2gVe_iO!IbP?=KJXjNitDnqdjFs_r#eLeE$z)4z%|% z`!vpLBY?^i@v<B33W%WTb?*9no>x+G!b6qk0+`Vf=8nN(JSchYhd5H2RZ41$*iQ@4 zQpPI$u5JGE^?(veGfu`yOO~0vlx^`IJ-{PZlN_!$#Du_VpQ!-LPzX4tYs9}dm9jc5 zZbZ`{j7%J0`&(P$7JdOY@)@F3tn2$@d(X;f)Y#8abO5kfTz>1Jq`Bv^uedqD5D+AZ zKJPuY_su>=d2=K|?S=sUHN^Kd-us%?^EDjnEu!C1&s@b{K`C7yW!nN~(~9<5<a`K` zDGXg7m8{9cf8fO}zw~CUr%WNE_4fHcVg2LtFiidTJ_bhn@PX|A>ScD$p8unT>DqbP zYATDX{SWmxSI5vpa|QP;-iyD{zYiP>XuQ}Jb9Edy!-|r0{KRMf**TUR$rTm(cY}XD zT;rjFEL?gCc`#3j6HBR+MluRlcbhVV$4)$cQmNeKUA{6Egk*{|U**1qsGPQf<EahZ z6(iGI9!+eFds~*bkMDy1{d)WW{?eZyB4ijNd!3W0DbRBfNp#@O7OsQ@LdnE22ff;n zYf4}R-X;mmJgFx%dC7e-kTsAUNuY_H^esb!@t2lcj?6h(6}Sy-Ha8mMC(BF!-G$yH z;=dG$BGR=x7*q7Z&3>CihJVv|(yI}v*v52tUUUN>Gx@z2t>>>?^i+1yb2Qp|({ZtV zeW2V$-Fb!7UUkqZ&{JN>o;Pb<+Z;gWGJANrXSu#m07!jqP!b_(jecFv5g_KW;aWt` zXP?dN_7%)LqqYzmd`Zb{Lbpk_6U<_3vfczY7F)CUg*~X)UMpvFnp2k-f;RLxgi{;S zh|n`n^##QrY<cW9bh5A}mQeM9U7g9NCEc=;_0=bQnWxMV#7#|U{K9hqMxlaPnaxyO zK;m&#RlT)hs8n>$^1mWaiRP>cvf-9gZSb<TTWbA}rs*2vPm^2RRGU1*wNsT;N39FV zrJ>b|T%L$%?1iYEw0Dp&FYmS5kcAs#%d)9^Emq0$Tx~w{;k&Lei2us?N#dtkp1k^f zn^KAzHQg2+b%lIPn@TS1oW`82Y7XA7Ub?t`B+^Ao#)Ctvyl+LfZza1uU-Z$6<pnVX z`Fwn`GdS6zMgc<6#t5W?EHCtez6(>-Cvs8|fP0I+K4<^_K2q{;;TPB(QM6$f`0jmu z;;~Hn>ZgEGCx`c3pcQhG9o}o6?fH7}g*9Jhlm07*1zR?^O}N7@Vg{!x;0ox2e$~i> z)f#N!V=Adg9g=XYnvW++wkvSs-PjpS)_94o#!dWA&R}oP29#KQi@eBOj(qwN_FzFG z%6_dmMf5}%Sa(4AvA1s&ArNE=8a9Q<_1dy6slvq(M4$@AQ3{A~UlYCRpebFI1sl?h z?Nx;FPqDM>&p2K&Jh2{iH4bvs=&M_&C2KFwwRc&eDd#loKZtpA$LwEx1a#_P{u2c} z?PoSS(LlOBXX$!O2o71PsOb0`FaI%7AwX1?oVAD5t})*lYRIK`w>+snqT3U8m>z+P zONEFni#<zd)Y#Ibnm3Ot8H6u(t>e?2%vd#keTLHiF4nk}7giD+%xbQ=<~_VV<x-nI z!l0enjPlynDVA&7wDZ!-)Iz?>>(m0nQmYE3j_WH<7gH&$2)V>rI&<~6d2m`AZP}?K z7Zff43u86y=2*6K)Hi1%s}j(E#sk|?+p2&35v$GdZ*hNG>KN636gU@Y;So#j4C9)B z;26Ea-bYZP%nkf9%pqA}ZX0ObBQ^YfjMwG99R3ux_~|A{0T*CObt%PcM<nELcGO-w zD$rBQyc+e}=L6AP+~<E->!}c0;&NmGFSjky_-5vUUwPfmVd*C4CoRDylK1Q4KMhZ~ zm40>$fmZ%jm)dVOL6p7ay_($p%$BrPHk($Mz2#fpBTvl7Zq`SosF%J!-Gu}Hc^wJF zMV^2idHZ^~*sRf+38D%xg<o$=lj6GL<9?eLKLioj7a|uabmZ0xNlBt7w}zVL57b*Y z(kk06_<zxbahPn^iGav5CM-;_g#01k_b(wv2_lc(KW@2JeuA>i42woKY*dgPEVq1* z2%YJP_=8!uohQw;yo-)>-x>N#l){HdS<2tI*DwIJ1AqQvz;>?N3zM1KzZ<p1*fey0 zj#!afM)Q|j<%;s62_uKmfUCBaEqW+?xij-|b!xea`6E(!ZGHg8Q3*-eqCC$(s!oc2 z1}o4F(~lmh?{#!hXzDVhl>iQ9(b~VlSgUGcZ0<z0vHXjgVul5|CEx#qk*rqOMixD? zVxu}1%`G?X>QFbdt4*0;nGSsf;?+xwJ)`Er4u%3>gvDnmI=H6xQZ72UVRd(|aN`PE z;YvssWA=Lre$oXVd#v&Aw<vyr>xK{eh&h5;b5ut#^_nXx4J(YL24gsR9amo|j?@KL zn9F)=P5i}hWK~_3zjG96!OdM3bCfg81r^^F_9xby_cfEqfCt?!&KoLr&@kMa488L9 zw{nL(Yjj^L|Mm6JKbuYgdDf~;e<ZmgD5vvs;T=0K=Al=w$xUlL-?!c6Y86hoh@7Ka zlwB9f2-XQzp7j-m6gbTVbtgmyN@fe$7k7JE9tpqslRn;f7JJ$w8UIDy_}Os9FaPFR z@nsrt^2@i)>S;2Mw_i4^A2?NznTsV6|NW3Z|CrC@cul{Fp}!P~VkTudTvCaa*q~3+ z%EDo3$s^dVtFO#You1SS#{!K5y-uo3K9PQRkJ|A~eaKptnum4%MB4n0!zDka3x>7f zoK<sQ&+gEhkJ9w#2P9TA8y~BxVNg(R#P%-kBTaEYjA?w+g7n8*>nNCn`(0XU?w{r+ z)BzFGYRm?AZs8{zCA5nleQrhnUp8+-2^Z1!eJCV)9}21d&#mn1Y5UF>{1=!fW9Mw= zVf#L7$U9rR{7*_RaYqqW9AmUMS+^`#KdY?luTM3~Jvtq1GMqRAn_pY&-TM96da@Vu zOOqd82<gkmm*S!|$>^xGt*eWf8Gq}HgxOZ_56X*8a>XhASQ9claayrjkc!d<=`od} z%Dfkb3|oo9pkrab+PUQ7WwC0p_;{q}ABhsa2AimPu$KwQhgj}A+u(~WtmRU+70yzM zCFJfkEsV7IkAx@K688Ugv&_7Th#sJSf^m+UA`8`Yx7jRJt^T<fuXrh|e8refVeJS8 zIT(qYyHTkQj`dz~_z6JA^19-(XtqWeZh6vvH2fHjj?2L$VhnRqJyUCWQ>3l=yVy&x zjcjU>9+?6qH1H=tZpz5g`{wKcGX9V`QRDDx?}5-zEAaDkq&X9x%0%3c{YyRe8vM6I zw}!NajEZn&7Bz89?PY@y#wj=Bk?abC5J9fC4svdDCV|qOE?_I_V&;n3Hjn1ljP}Vz z;dnZlT4(?Nz=Qo6P(6g-StRH?i}ZheKmGTU`Y$Z_oeqBAME~ETV4RlXdkhfH8%w~{ zCEFOAoOHyC*t`baZfIo4XDy7B^bi_g5gMPEa&D5qaGTrF@=%+{-hk}>fby1B5r|Ru z?IZphKvzbn90I${;^^MvLALYvSNn0!Y3ojY&xeyCFI>zaZLVU?BE=%Z{jec<kS10+ zwI7uq?tNv2j8RekUqW0P_P%0qkO!6|)*u7W)ubQk58oi2WQY~3Tx<iGuB&=~ScrV^ zuGxZoha_x|?S>aj5JkWWUPZ2gz=P7mTT-rmeVRsd(K>ost(RbfwH4gJ{CKvL=3@<@ zn$e2C+W5|y=ClS4No!|Y8PWx6WprhFx%x4|P+8(&Q<GA@fRS4>Rz=^aaC_!2kgX3M zO(u3e*rfDkzN{bc5%Ab?2d$4&0MYgnBXo#yD-1jdj3Q76DF)qO`j-c=LtLM?iq}$c zv!8;89p9s5A{5(d%oGN>tO=~?W4a{isYfaF0Um7>1?h}-ZPC5}l(w=xBw0AXs95?{ zD=}~CY1MU9ua<TCueC{>z;0PqN`%_qUK{O<b2p}-$2@6J?Z#TBr_s06mXd6iqs(a2 z_Rrsnann-)jHxX)x@}3I=vcFfuR2>T66o%VED%AN6aBy{f7r-M3rY+=F*5l?p{0at zwrQVK_Xx2I${|D`QZtVHcdC*cyvo|^epL}1&g{F2EYLCdl%c8*q+1`UW1uKIL`-rs zKf`(_{N&yFSsBYxGTfu@gFavliO^v>nS{1e4lMVz|N00uXa?yp)~xOszND~AvM+I) zZ^(k%<}A{L-1018XTNgRKNL^%XFw=)wxZ_-GfO>rlvHztS6wkw=su?o`!q^Fvevk! z!(Au$yKMEAGUtR{Y23>#;O?2`;g_Wyj=&dT1k4dOpxt&Dd({-&l2tH+d!!z{!jt60 z4yXNodP=0w`ZX^5s~EAUTS!VpdklQL^wDm}eW1)oc#OOUfb{y^>LajrI8lHuQSTd7 zf{ZEYpYDpX{HLML+A9)4w{XnQ7sc+6gMEZAM3<v>RWV{I&X2#&O0(NW5ET-f%<Ujo z<9ODu`;7=dnpmgN4ax34;EyDk3Jeoc8pSXMMJl9?aoxg$|Iqd6isyW^?LT~wT>Af1 zo{OcGtd+Bs`xj4_|H-{fbtC!^OJj)|2ya0koxpLh<yxAXo(=UR=12DrhAJFMIftlY z4t7>3iUx(o{E6%|$CML?bnaXngxO}v2|kv5yGXJ^13%ENtIslX0VbK9|Gr&)OZX$y z1Zn8#82DM;={5U$(?|J1&HV4uXyje_=}qkZ?8~#qtFI_ozi9zZ?jwb;N#oOG;5GmF z&$$C_zb@;W-e>Yj`M_LKm$?IF(VAnI`2(jH|Iyi<qbvG1k?w!aH|Vd4qo(ywk<mei z$NzT8{xr<d2DZfpRXy3<->CZe*FE7!2UR}lE{?5;yaE2<&tE$s{EH7#O(0`>yF#Vg z7uC4QKe^!)4lFF{HFy=(y5bd$-Rp%MB%t;fe!#;(6%GG_91n-Qhh3I<Uw=|q@g3da zQ!l!r72Ov@3JAL9GfLppOi_-rR#_){Su|<d*ux;xRH#0MEGX}Oru4!jWy=sGqHst* zuL}xDIVqP4qDG)&pQD8}Ps9qXe8QlPco}AU<JTrqNx)o`@5#?)_!Jc(LD3b(5lwGF z^_M~2JO!)xFG3V7^@!Sw-V1?j=0WPJE(kfWA)l^(=<S}gd<aG%<>mTVikfErTO*dH z{~Qxq^N=`~E~}chnmL1;6|kWqR-+7J5rM^-no&CBNIj97Q9RVIphc%%DV3TZL<!X> z^i`PBHHZ1pHHVHLZBLCiKWa{$rskn|YLSUG>4rD_Ns+i{s4&niqe9)h6ia-<I2=N6 z&#WG~@LA$s-37FyP;)bwS|kn{Jnc?vTb2{%nJ?A{vBmXDgD6vMOG~1#)T!4~^khF8 zsmc?jtjdweGPvRV_AJ1Xh5R7^zO<(CEn|&7?**P6`cSJBFl3*&6=7wAGLlaYEd6pM za&r}&a-lX3Pa7#;1%zkBE-`Hw+|saYAdmbCIf_?zDNiWfv%34R)GS*26x1vaF^aa( z_0-k<!TfXvw@j>bh?1$erLjCncmBZM&*%VuCHnlyt<(ETXW!5M0)bi}rA-}_ozkWc zGE8aH25tCX!%rVyDr}0^ZdMK%D{Lym?MP<bbYU5$w&{XYsKNAZ`B;yPH{Y?)8Ez7> z&^6m-Q+yU9{a00TFA7F2xBv-^H(?366nQ0}P5IdM(jiR+A?2OfCwAHx(%Ga7p>nvd zCBvsb(|mp`xRtQZ8^#<@F3vG7j#rC-HM+`%b}H7-6}rUNTo`Wfx_5N;NvOBA_k|mY z$QW-#O5cn@=&u*v>SAPM3#>So39tKP6^u_Aa_A|JOmCq4ZYh$WGtM`a*T1pb|L&VS z=x;pyET&msGcu$TZ0L^^se3f`9jJTM_e~WFjQq=o9u;22sNa+m$O86hZ<_LRnNZ0@ z0@e3*so#o+TohjGhRB8nwkF_2vqQErlrj<i5|=C0DFt(7m+hn!eV|=$_J2BO@H0|Q za7d|4IlYU?R}%edZcPW#u`aW+*0<&rHMIMxYmIJYooqZ-G}^Rigf{VW4Z`7}jyG+R zvS64Qkdi4Y`iH@TOyR10>TQBpOcarUvtUa6-lLu)lFoz9KAB%Bb1;=(BJ+7dsu3ks zzhugstaFiAJ^{-wwrJFrOmK-f6k;9UGUb-Wzs>R3GKHMdK^A8hw66r?-Y@hWiB20T zHJKAu!%Yi$#IYikGbSsUs+`Cvo8qui(S@Q~%`{Kx2Y#hDAa|VjIkmQE(9Us8cW0L0 zwp>$imdbSz1PLwcuhD=Si3-NGxn=pJX+X)z*Tb^!P8+@>>C5$2rMAmu#-z4~$r&qH zrDKv$rnZO3%@jpipO8-oX=O&LgMe0bTGojgy7R?4nO+m9^i3w2)v4_?gN|(I<*_Xj zj#@POlui1XU#!4%cStYx+SXwPGAh!ioywW#C(1PAn*~#G6GB+SV?v(->U^6y5(<4q zmTgFFNL?~%pH@4eG+ZK3P@qSXFV<gyOww|?JFN-9xEjYa4pm(!p{?dLXR0q=_pA<- zU*xUMw~k}BnAafRd-^WbH<*J}3o1R)rI(pb*JPY&nBrT>!Kw*8n&^_q)MdD1nC!}m z>Wm;=F@SnaP<^x5E|@|iQ#lB{Z&T0YrN6UQ=naQH=xABr@mOuwO$ny>mUCQbK({8k zWHSv@eSdNY{)O_~i8KSDfA4+1lcF=cdzg_z2W{o2WlwG@I9eG!B00!3p$8NGA@2E7 zoFhBxP!+3R8c@v%e}l|fx;uR<k;obfeLea>DyZ<!Dg2aYUEpcVg#S1zEOc_hUpn(A z!yUKPTbylxai$C1ow5}Lj~&mB4h_$19mkF)^v}d=Cx@sSG;-oqF7uxnbadiXDl?zq zj??N*GczAD<X<?&n);l|(W?XHop?>>=+%aLPrT-h+<kP*J7NF3xRNmO3M#p>Sx7at zT@Iu+XgVo8ik$;J6QRw%8fOO4d9)@KP-!lxB{9;caHXaw7$`7M2PnLxPN^;EaA=M* z*?ZCJt4^IqFpvLIcu?aYO14C+iod9|tV`-nxu~@yqrQu(Z%w_3F`f)KnO7ZuQ$SO5 zFGzx+Mx^K08z)~}RBN7f&qx|fB`&n=NrG3vW6&?LY)GO^Wm0!fNwP&&k!)fZrQ_Eb zcT<ShbvLD^RonPO-`<;qNT*+QC`C<6&#ymDe<FJrtU$5arlg|n4(y(MeW#Ryqp55d z_)$canD`CH-CyaK8Te(#LsM(i8a2ilsE--=RmYzdC??u8lB_4~sqyLC^~R|ew>7BK z=|M;qX-0*I<XXFGe#9~fK;V`Fb*Ms}Mx)NS0JWsTGGludot`8dkJ=~zj?;B9lCd2R zSB|IXZJfrwIa6eCQ8Ok<cCIrO7)M8_-Kae7m1cBh!J5fi#5D#;+dSbFNs?VSpz|YE zPOvy}V-k*UI=s0T=}*c|5t>iRX7)|md6LOfO0YO}BNj%AAJa?`!qt|@lSzP7u5hLZ zX^uCg2pNuhqzLJb-=)09BpoyQ1}EV&`2I-3XY>UnT`D+>TadGscBIq$wkPS*`IaW> z(u2<4>ZrWZS16cLSLl7alX&UYf?Z{{D-M<Kd-TT*kxE2<9@Z*s%apq4CW%FKX^wZM zbQz9+J8@vN+KPGj5JX-S)Sr}_wmI@yu(5$3SQE#yIO70V(hge=2NKr1Be;82_?`{e zzv|71Nr#+EEENLOYvu@yaP3i-rfpHV!?TK)hzun%^xS-0ja{`Y>V1D#gwHQWK$oxy z4{6eeMm7h=PmiVntB$Sfu9}){z9SK~4zBj+XGo!>$n<w1wf$vLx>XcLM2<$pj>9-h z1SCy-tE&;0Us0SY04-8P1Jg?m27~9>gqAX=vf4gwlCIj6X(!v?1E$g7&n0R#9V$QL z(WCIn7WG3bHsl`5%p^VBf7Fc3MW{LGTd-kOe&SJ=WnT5tP*7>+#xcNhG|EoNQr}o! zkES%5lgWLo=raKt%FeGekGNhMSgL!s!rfYn(=9B^#TJygI%XYCn4#Rxe{nW!E_7SG zFtb!naj$ou?ND>Fz_0;0j52(dy)c7AgcvL>H#00w^yzZ9+N*0nze;mPmG;Zoei{5h zZmCAsNVBOo>ek>(Jnd2ef|6CEdydxtczGhY5Gjg*Sq4B^=8>PSj1T7y{mAh;h`L|w z@=WV9g6U9JFijbNS&}NfOK5{fRQpdj2ybS_TN35y#A<JO`x@UV(lOWPFqnVl&#wbz z2L3G8AurW2dk}E7GOsV-4L25=VaHQSNvIPs|I9Wd%PxK8ic3q!FTtK7ZWRDobOp!0 zjDW|o&aT(hI02}`WOifT?Rz-x)L$v$e92g=*@5;>Xfj00?GT0b0E>13I~fmS^QE_j zsYdSp<!FQ&Qb(mJ-T8V+#s+)eb@Gek)gjoaPt-hff@y~0NrEU|<@Bpn9<Q9{0wESt zL+k=YCLoD~Xu|3=JxY@?^+hG&KU!a`4LzLjlR>|4&Euw>(59VgQCn$TM=j2UYUMy% zzDsh-cwuMQk=$%)$DYX%9)HcL@40^Ur}vDnjn_Wja;U>Vc+cp4DTYmo6@kEW`_Ni1 zyKhFM_JHz6@oc??=OnI1E;pC`qtPq~u;_;xPPv=hTYiNjzxEBkHeN*0x9YtVS9?o! zz?nM@gPSEFG@#pVgTNSDWomGZ&ZQ1rRf+Y}RuT~~Gzm|UJTsc!>``xDXu;h{6o)3Y zaC$%;?Ts_bf-2n(zmUkBtwE7ly89)$zkp3<9oXEGOXy6^VeM!u-bpyW_@KaR13yU; z4(jZJb5f<tD5=rPQ!>$KGw4M4=FUmdbDFc(5ABfQcweOPvG1y<)~e1PkHf8V-pW{& zLmy30UFo4XarIj?ky8*2*ZfxwJl(kVO@qtDd0QT-6u@zlJ*)B<k|#_|3Xznsz;r_5 zvETBNDo)}{W5ca8P>GAk7Ro!}h@p^!qZTA6yUIIVtoW!J)y%*IeX!UoKj`~Ln^hK0 zl&up^M9Z?0wP2B^S=QxCLV+DQT2hoZdY(GNKU`C7sPM<n*ukPnv%0UzTP2#Z&G<Z{ zY*jvnPoPZG^`UxB^!$O-0>rf}H<00JZdK3UCUBU+U88bq7|}rh7~Y(36XoQ#%Uyyw zh0;#5Ei94b&2*PAMtJ~hks?<RRtlni3{f$hN4?^*ClD}lunY5ysg^IF#ylupHV7<6 z?^^l?KIiLKdDdd~l0>G8d0)NW;+_i1Djth1uP)wCu&SctcJPkaG9^se+Jl^xGJYS5 z7u}peapNfy@8K+Y_G~Q1med!2m6@UNkGbP)j@!{NBg<*GB4kspkCi!fW^d@AE*0_H z+5uK5baT#ZQOAB2vb!!~!23E205(3l{bQBV1F(NB4d)xHA(fZnC-9LnP*xR`1C(H$ zKS%^^FYhyeOm4#x+xgm1bN9^5l=Vue^<r?P0tx58tWa?c_aO;_DFMVPE`l6MRW|28 zGpa_?<W=xJ>ivw{mTwq-AwC;k+POnkWdSy{OFScKFermgwJn920Iu=?;#oxt**_qS zFocpYq~@c5uD-O#NkrEunAh1P^z~bE6Pr5)kx}S##w3dGkLeg+%z<aFNy==pq4ITq zpzwqbOvkO1jcNg*RRukP^xOLFm**&EveF0Zn>Fwzi}&g+`*Ry}exj;@dpWcBc)9CW z>)kUreY^?>6!@Y&v8WuUlA$zJkHg3Bd^XkVK%(RDABKfGv&y3ti||+)cbo8LpKEA& z=P;1DB8y>iTogqtCT-lNZutXSnDf(F**;{?$|8*QY9w?=q7q_>HDNi&A>8jOGy~Ah zR015@#^qyhU32xnpDAT>l=>;txw>-J{m6~|{(ulHpG>oMEB%~AZ3;eO920o1@}Eu$ zYC1Z<r8n#$-;p|9g&42iGEYI%Zzi3dc|@Lsif%|maEEEee{I|vKj$&;qzAPgA>K+V z23k%AT^CG~^+mpB%!1r1$%U%?>qe;!11UsX4sF1%v@<_mb0}wfKV!Bfnp#e>9_fN# zvkpJcsa<jWZ0IQ|)c=V;@10uXOzE-S)qx|;Rr|JaOO)dzlBwG8{EiVb{~K0x?a}nI zGB6Afj(aeCCb=bN<Hs=VN^g!BRL}mI$hzu}IKB2LrS??;rX~b7P77N6fQX=srWKwo z3D2kQm9o$Zr~EP%u`Ji@2&kjFMd`wl^HGt|Y)PrzILk8#4<@va4XYpc9`>of!>b>< zp2(s}GBRu%7)%{hf7E-FAct=6E&@2CML>lFfuCi17NJBZZl7;n@QG7jQ>}lA-tuOX zO(!%w!%giv`I7+A@yXPiSj=QE2l9#Ko1cB`_q@%o^j{q>YCBSkn4n5wUgU~zd&pY* z3b?v{+&HcbE_EnQeLDAHGMGuJToGBivMY0Z-%f^TVBOXopsj1}yvjtZXw7SQbF;xW z(G_aADqB92@Ze$Ftd}d?1vAd0>2*aO0R}R?%lEp57vQioL{MoTw!0;xqVxjF-_~pW zUc4iYuS0G@$Qtk(Ymh5|1KoF8Q4rC8P1b{<_9Mv(qKfjVXV=&dOqDVK5*0neGs=)f zW5w;`FmltgnLCcJCb3hxz6E3r>bY@!Qnk-?(<%~FhR6GyIv=in2!e70ix5Mya4nf& z!PIkbH-Da`?P3bn#PlyD37LOQFt>y4<To0}zLzpf{dQ8EkCh)yTuVdGw0j;8yRRty zp4H?mhGDc*-w)<sB7$e_$0|HQ1J@{ROf+`1b9LyjfFt@;=7_mFO!+Q~;~Q#!>7Z{+ zr2Qo4)JWX|yVvA_QyqTa`par8_TRYh1vJp;7A*cQV~>`UzpfQI6zgfZb?k}qU&a=S z8iZJg*V2{tb7&-mh*eIL6;FNfDtr-B2KY{7W%*-m?TdY>_xdg1k6UM)&`Y655MFes z`l(RLp?{^nN6n)oc-L6k{}8;C?!WaZFe-vr538k^slm0!=~6OlUiO%VjrjrlQkPMI zEu5c{(YA}xv6?JDt|-m&+Cu3pFB%1-1eHYwjoAK9`|!gIW!w!f_h_0icxeY{cGr7- z=M>1^I17x5U;CsN>KF*;((<fOV+nY73n8qux2Ll=)U>$!=1a@KG#$jmoGWw(sXW_` zw#z(xFD~uaEfc^or}E%8*1Z$?9fYhS>qBC^3?Y6t3Yq>WjY(igSwk6^KRN)}Z(~^v zmer`*ZN!gjx9~%y6aBimLxvMTme)3}Z><>#TOVGh&}vVXeJ>T3qLhEL3mELVH6j)$ zFE1~y{^2HIa_9rR!AGwXlNF5p`e*J}1AMh1#uE<pZh~Vu&KXs+iNihur;)@fIuMj$ z@v!9y4d)9&H!b`~il0Ox&ZcDh<$A2ZjpqhXUSfqYE=~;EabL<#%9Ag5W|^2jRdsWi zRFc#`$I{G@RKR9TuT2%FAuTUtak(<oOK=Z)zWGJJ^T(WRY>BIT`4K4hYR$%17U#qa zk*r?V`6&ZE9PO0;5aP-A%T+u3EA*E_9^RRyfoq)Vj9Ui_R;-i_!g#pTP#*DM^wB0& zxqcYB3DMGCi4KNo90eFbW1Zr5Gb)577F-0Enry0|<BW28M)%x?y<t@Ufm4?9L;Z-J zg_8rZd?^(r20<{-7b(<>eN=9)$hpvX+Tvc;wP~ALWIA&_`@SeKW4^-_%3Nf)kJTi> zpD<jU0<lD4sEcEsm_jLBP5{5dVs9OaN<2w<tMIh7a2!&!W9`*c4zFb4t`hX-1ip{# zcu1KkCn6y=?{_uxAQp`=ZZIt2sDNuhmXv<6t{#+fy8;Gj8?Ue`)yKdKDugdN6asX5 z7p^Vw56;9Fc%u%(^rdbRF%}(~KqT&!h>a6QEqp#EjG9r?EL^z{MVeF6qT8Iy7IBa$ z3(aSm{nU6iyZ0Ehy94@C^cy&<%#vVOQxqZ{ZjG<OR?6-JUm9Hb1!`bsLi*2{)DjjK z;elBsOkwtV*wl(*fc0fdl;7aPpp4Kgy7;eC5>o2`qA?D*k3c@&;%4||-hy@@`&cp& ztepU?e4|H!7e*-PTeVL{U6iAwU&9qB*o<-=i_23*z4<5i4Zo{T22#f$Gm(4?!WHOL zvygwn0@$o_aEJGq-VmP8()&^an;FoIK!nlGe^KceWgAQ6?zv@%jY;2)4P|!2G&9t! zwF7HgE4S7Vg1I4CR)$Tr`pw1AAJVwkvJUM|<fy0XN|2euvEK&$YC+?`*1|QkMT&%$ zU=@{xG+(UBL>Ia5N|7ku-N76LZ#!r$LByB3;l<A?;e;MG%PG@&9UtzRlHN-cyLYW| zVq6gmNA)Ho+^)MIMg`(4wjn^E+olt)4GQF6@4%GDXSV&*^{ljZB<Yia<=a@xFc8sg z<dH}rMW=&1ljrk!0bHg16A&d&B-zGd>rhAyGr=eN!v$R1zT8!p&ZP2v9t<@^ToW2- z*vsRh@kWyj)&>ZGzguT)nqw!meBV)VD+$pE3r87uWvr@aS&e?%)WwfQ7>_eI;r@}2 zt4Lt%W?O*4pH}+u(;*)w5Gx-~KSupeCBchH{8%E}HCA&9E*<G_x{pL-T8_3$iacC+ z!(oh`H-N}9YNrSXEBa}DE5YQ;Sf*aP+HDURLQ{nb8$#hUhy}d<rR0el-QJvt@ukjZ z*@a8i{l$_U+FQH|5WCNYK<rCRgU))+E0JjCMa7YwZ-Vf^78tkWXm9)#$A(PG#lFzn z$ZCl~x=>~@dZZw<_GC-!3vn@k<TIK2nd}2OuRgn5N)N(Cz(KTYCpHOS4y%C6)v<?B zdkicPvme2&ZtgE*<dB%+C$+L{?-1w2try9eQP1|3EsRaqSdw`h{gXvSOHTvyCLZ#f zqlR91y<UzTxFwAM3(CwRnnq@07>85Y9#_I-xRF8Cln^2}SPFV1N4e){UIb?$UGf@+ zgK=qo5EEvnsD0jC#E>?=Hh0A-@H&OKVuWu%Wp9gf<lvSWhs#iaI=qpFExNX`2s+{R zp|&NkbWP{;4V2Yx%A`>R$rZy5tr**+nP7>Ep1c$%V_SjDSn*_b)qew-K&~}t>$M@W zoT)6#Y#F;IESh!RBG*?1u~}ANIJqPZcU(4BhSml_{K>9gS^RPV7X14oS(FYnMX>-$ z#=7CGM9rB>;^{wxaE#Z+#|FIuuu;@@(S=;;Q-*97e!lu%zDqUx->pc#7}hp_|GDph zOmpy|6x*}$nYzn(G?ptsXnj#)AUN6Lu2Wu%I>cO9u-)!)TE0MaSX`h~?!hS#zBigw zcQp2^E&;9c;tH0(@po%B`W-Mu$+WsXy^BoKBnRSIqSIpAM{4l2fsOvTlf%c#fS)N_ z>fQ&7U>*&meYxj0D-tV1*}F)mbAod{|3o8$nRfDv8$QMT43hG&?xa$5)cKHKPXpYG zIcR9aE`ZN{yLukNuIF$L*fc+ci3M7!I?Q3f-bE(qiFR8`7W|+Q3Rp_JLff=vM`EFr zei369M7vs-_M6WL&x@|L+p!*rI%bxi8);To2|i<B&tdM!HOI%hSz`73_3y4?nu5^k zjvxY~$iD^KPYAYt(7sFSlsu##V?N?25g#l9YudkKaHYjOlsf$eE>d>0NjK6>010AK zUAraWB6H1U?O1^*;!5!vyQc&tj#A1gbDly&_^c)97)OH7boKqBjD+aF$${=SPB8o9 z+T=!3xaG*?@v&CE0r!_LuAu4JJ)4bJqfcKRPR}mTLI>8(ILB#<4#b$D#m_^a+kIL- zqF?*)(jlx+<qCIOkkh#(Nt={VDEK`m?RTRu(xysb#eQWQaia>Pp&^ZD=*V+F!oL-t zVV;upGw1R50&touCs@3qlFiN!WM=af+x&bucwJ611KP%i8ABZ<A+hIg3@#y$bwa-? zx-3bn+!|n6k81^jz~+<Wjf%y_S6ARFRd>GP68<dW17)}GW$w4T{d&X4ZUc=ft+kvr zoObC*{N8xX&>8TIIJ3l!ab&cG;qfi4)49;?R?xgdr)Q27f?#yQZHy>v|58N)u+v)L z{4Za|V_0LC{mo+Z?P(U@q8)2R#7En{kz;uE{bmnIbfI_&t%s=y8JDAoGPa%xY3gVx zlAmD(i^f`3h*|3thoHHY@Zyv36Cbh1tg;M|0=e2!!mD3(#0@S2r(*JhTm812G7=!` zkf(g}1+_0*AzJZT?aPL+L(|*Omi>MLAt$)*qih*s&BfOl83|Pwb8{4I1d-CKmTYJ} zDLRw-t9nS!5Uj;-fnYBfZb31K$<ODIJ1j?sSOEiLcJ3fl<k9+WJXbGbF9lpdv7*m- zeM*q5=@kf6x(u6c2_iK$p|~lbU?fzmg+qnxem+uZz!G6Qvw-EZ*MD?JJZNu-uTf#q zW>aMyVNpgAl#n)ltwz~!5|YLi#xtgWJeH8%AS->C5kKsJpDtw4+$08@?YM&<W<OYs zSp^XvvHT<Q*=@C2^H3*p$w-7-c0EgCsKVqlL!9vA<2Fv=XI+^UUapm+6)sF5XgVjA zEW2&*AK+-+(T+3>nRn4n3+QO;=pe0h6vZ;57GMNX`?@tVUVR49cqU&MkFo7>f0&X~ zQ0S;PJ+)oHMWCLVAblybq46?b&{rMxiI;Ka`TVO8d!mKBF=_Z)6BPbiL+kk0&6fS{ zB$)4l3C;XrSeIc(Tn9)4MvlhjhL<xYBgs(~V_(<(nP9S+@7oqTrl2TK64?pGvy=2` z=VJg8Fd&up7+q$SvrRA32bE*1NWQa+G><TD&Aa)`1UT%8&HGVylqOp37ByOXP62Ht zsfdp)>s35NcJ=|)*O)0sVVc}NhEfNi8#zSUu9e%)NkajVv8xCNIIbK&=?l15jIQ>H zn?m7fwojeYI{6n-BAJXjQfBCI%8hi}8{>tylP;72vac`Xsx^YVL2;K;!Ct9e+_`tE zbGy=QmbOx9^1|*lb;O0pPEk%ZG-w<;nX%~MddALALb{fBobpUF1<I))_MPJ_hEXf% z3g4Xeq(uV}Z-TNGYAJa&)5_{RVFZFFW!z9(%JXFW>{~=ch2Znneh5!1vqBOLV&}Y+ zrp=l^s{9f6Q1hFnp>8Xtxnz)bK9*4Foae8o?<j|^#4whkd+p>E%#^VG1`GHkXlNrq zaaWVI0#$;!cc&R!S_~D`q#|MO?vf@Xm3`XKiGP0>MdC!u&Tz??iHIp<8`Et8=Gq4l zW^8t*6L~|QXnjO|6+}*dV*jr2g!Q1K)9c$};<3-7`;ZbMMu)V2ar1a}MjX*;$hDX~ z8V=G`yU(bH4ez=|L84(@GT+9!eN8+Td{`cr+mc5=lsY4bxT-zi$=Ovimdh_CXiN{` zoS)?@?O39^M6Ru`b*QyNU8UOSh)+v*jCL}f6=Xg~*f=X7i6=t7JPD|*<8?Dv<HFea zyJnFf<6=Jgkh_4dkGY|F)(Afu!oN#>)SE$HER=F16`O59MfeXbZtcdicG&4v>@{=U z#+)6Ycnobti#3D2xXk?5W@!0L9=lhEE`>5_Nb|&PRhBf04U^o3s17API_-@9>F}}* zO!V`406d(bU%J39F?Ex3QPeVt-;D~G?(4l+B#WB7U-_>@elW`p*cr?M3AAH7BV18W zRah^p|75<Ge$M}Cn0dLD=W3UCec1`eUxQkiyhB2gB`y}-e*JKK?4R&#qyRy~%-W7E z8gIhl7wsyZ@EY)`^HOvl)%tyJ?vAsex1M*BA*9+83lYl<cW@Z&g}*k|`8<fz(me_W zFDRUvM8CS<hwzb#tUw{-VQ87_%~fAo;y=>p^WPGX+wd#>K-@2Ncw$;f_nV&&bHD>H z$<qqt*a2}pDc6|=dQM4~7syffcX&2BW(CH;zsk9{KQ4!Ye<%K~cM>)iKC9h@h;weN zJ6~Qalo&=9ZLQ>KB5HYFsCpZn<^GfV2<g&u{50)ZHedY2p6zn*NWSp{MqtXc)*FND zI2Zgo?03nuES79|F(`y4G<YX7+1{vnC`u(JgpfGJcF#h0tBgkmdwIn~bC{H=96JNY zb7Ey)%%+_5xSA)>cY1LZ7a8a_c7j>ABAt-6J4&eZsJ3n!q!gUIJa(gXx!1`zd6d99 zW&WUmUPbeTZ(LElX+R%;QvRU4&94Ol{;IFqzF<^?IWZ?{6^DT24(cpj@=(7s2%zHt z4-+rp!}`ci%53<p`;9=+)eo=r1$cPf1L|A!BRl8hhC+og*Z(bS6smY`<5IZi{0ch3 zfCc-H`Jn|pozfi>FU&z@YAYOyUU2QiE&n1hr+RcTw>+_9Z}{cyr+l+KrBor-Y_Q6A z>K4;EceAH@zHr!gGrX#iQK*VK+X%>P0kvLrWk&(_)bHp%x0R$a9S?<RW+RXD$qU%a z)l!kRmg?-k98yDkUrss8n6tDsdAwg@v-CNuteG+lguP*M$(`(wsU2&nb4T(z&s@U_ zUNRb@xQGcCIwg<j#yeup*hsh=yBX2;MnImp^M3~H^s!^x9sv#e?o+ksGNEzKN#BMX zF^i6n!pCzLgKG=Rt~=(mn)|D>L1me>du1hmxM4|9LXz{IPtnsHdbpC*YChE>*Etl( z{Arg`S*floxzqds%G**%S6nf|RykP6)mwp;JrOV#AGn++oQ~2Xp*Rh6UPrx;8N=?V z;2CtF4mG#D0W_C<Y3CFZ?EC?5%YV$n>nsI|$_37Kj?;ZuXQ$U~h>|G*yB++XLJzRe z<z!eM`8u`P1zP_lrKy2kr&U@hQ8Z^fx}8L|-pQYu@@rG(qKermvuIl%3wJ}N6yh?Y zz~~%-f?c|xc(vcCqO#9!neekGBFg*A*wsn1hq1g`SFAI|Fx_dIyDIiE*0G~%VwDT4 zG^6Jw>OI77R`ZHiQMQr*=b!GQLr(E5_U|L}q?faLh|+$;c-#-$D2nwxuCxKSY;4Vr z7<!kLt)mh<X;mpLK@B4esg*F-{e8|fec8#MH0$Vb8uk9HE1v0st+r)g>A@!R^j^PV zWzGFd^&H~MzMSX!M30%D&f6Va))doeW}LqrG%pzUCinu&HW?CfE$`~|sJ4f)PLy&X zF{Un^XUq41x|4x07e?aFnMqy9%-gl-UVZsbVXRg`BkXkC{-1cwHq-NV;_I(@$-ii3 zgFJRvbN8CCFLBm?c<RpP#HgW(Kprl4F-T(54kgQySPtK<KlriJ)#(0qXNL@-ZKBZg zN$RDt(650acjVL-j375~?7Wv>3~rr3r>kuuUBUMe@wO271wY1=u2}7v-&@j{8jnoC z?R{4#S8XD{A93H>!>>%pDgBoT%B<SH<&Zz8an}(}lwTd8J-C1Bf#<C$E$tCG4{<Dq zuxxwrcw219f~>@icrAj3f6n<H8+B3rr3KEt3mvl7%~C)h_x=2&QNYyL6*JyRy`V-S z8%&_l9Rw&lY8OCt^lP!Kb3!Z85vF@wn&|9lOdx=>f3RI8#%gZ_Tn4>oF8g~9<N2+! zaOURTb9-s8_EKilXt>3QPHy9f<?uB3v(NZfDZb+X_l3=<#l1L752=M;M!#ZdR#^p< zvrOkw!+e6u3%|KDFXWj}9ey+UdlxG%LGksMlI@N#<B;>4d8V~f;pPDhefs9(*S`Vn zA|L`H=G-v3u6bfa&^Uf>uDtPXUKRDTC#!+%V_U_^TKm*e?cVRDy<6z|2v3KVEW%>D z;8pYdpng;euWnejE-P~D0$KkF-X9cHkMk{@A-%gfiioo^Fc^XNj8c;knz)qFgkL>h zOz7oM^{un>2ip6(yeoHfU+k^l@qXQ1w;Gwac+Y#p^Sm50(7f?40Gao&lltEgPUG`5 zm9p^Gov>9u)Xo!`f3b=e>CffS?YF6Cep+7=yQZSOu=!N%Yq4&ca^vk%Y-I~<scsST z<y?snv|`MobNRPB!PnJFT+mifJbzTl`K;FGh$MG9*n|4%KQT06>PcF|HC`9#H7K>q z^UF0OIE?Ao-Y>|LID$Bp0I<)a!?!SV8@2uYbje7!t<*rF7R2@Z4#M&ME?%NEhJAj! zq~8kC`BtDgU-m2XEw$D9_L);%fsh=}rFteXoAjPtlvbFnt%qSbZ%vu#(Vk=jXy_+; zd2bm*H?HGUeet4QMN<%P<-yb(eX=`V>g7UD>{!9pTDXUSC~JeF*;K9??rNr|>LyJ& zji_s3Xdd2ZHc-1r$j3)`6r}Cr{Y*03$o4xS=M_Y9>9>vbFA<#?M`*P8dXW3O@ZBR_ z&A;2orgoW0<!(X!%Bz1JWN5kkUWHtZ(oh!@2ZB8^W2IkZ<mRt*s455c%7{+hwEvEf z2Buh)`JYc^zWY!}8Qm4)KL{Cqbn2L{^(I#5f3{u!qQ7fK9MZ2nGkg^Gfc3Tvi1&bQ zMn|_R+WKnc^(Yy9#99pc5RK|ZLDP8O|I#iXAoJ(r4{87vr7)Ji6Do(Ac8AzjV;Ofv zTpiIt9DUQ;2@@FyhNSGIMd$^oA+M?vfZ0{2#`^730ISGou)|AQ(B^_=+jLSI{~J$m zG)_=9szj4{WJnI96C9_}B~`u#7(aiZyf(Z~6s=mrwC`t(YM=~P7hRhC@v3J=NPkG3 z%fXc!r--lD=91U*@XKMCiQY`Dca5;IdO|33j8ExDrmg)Tvw?0jXKrQYYL<LMX^EE2 zzs1aGJH&TlUP&1|>Z~T+xzl02A5&N;s{RoC+kxrQTJUd+&O2v0L1rBZM1N@-9+nbb zGJai4mg_3)H&zXY#6L_{Y){YlEi^=*=E}aP5u>+&1%e37+%A4umTs$Ddv+|h|2F_^ zK$E|(4}<t{J^}#pK+uhP{3Ym8y?z(#H&A3+zel<6(e8VU`yT7Q$GPwE?t5SNJwd<o z_<s0ie1H6Hz>D~OK*IMkSgzD9Khb?pa^I8r6#YKX{XU3K)$eKUyG+yFkM<;VKQr*# zZI{o)f3x^({JjE4RL<vM&cXOK1^YDc-Iq_=r*JE<Yakn6MmFyRv6-=s-Cy2?xr|rf zGaCdx7lI!aK@Pt2U<u|_dTkvA92mY2EZhcWA-@+SJuG^t!Uw^(Y#aFRg^c)5yHMN< znfRTB-`(zo?)2Rw-eDnj1+W~u?FByUE(`i$#}i=y90UbW1|>L{1K<!G#GyE-Dn8dG zq{JN*4JEs%6LRR?2|Y#KtzO%HT_OYu>M>=WH;D0=PJ`%)b#gnQS36RPzp{IGLZ3Kg zSwMd)?r>~nEmG8kz0dbrsC0YJBS!9mj0YhPhu8Pf4)9fE_qz}J-=#a~hWy;eZLTj! ze71rG5lr8JIc?bNdgucivFQbTq1*IGY?$UCvk*r$paLHQD~j$+p=vWWb_!&`X;`(| ztBPIesysUouOKxg7h=Ih9{GP@A11yx@kxc9FsLv)&<TSJvxn&CQ2iW6PaIq&K8A0F z5uK1<HS&HaV9*W|@kb$p?NC%I^2Gg6%wP))+-D2Ud!Fcokz!I|@x5T^j}qr+CyeUY z{a6R63i=uE)ZtSY`4Z#PD&z>jrAXoBNc)vw!&S(ut1<N&6p9;Q2;78|e=F<<x5G5J z3o4)!=D{{t4EMoOcnHPhQK&`Q*1+S~?o-(EPUQG5<n+@hz0bf2@GSPU*yF{u$WUVG zLT8|(aiA4N?m)*ExdR<jS&Z3ZJ7HWg(mtMk7vB&28c<lg4JH(K!hX&OpYDLn3X-KF z)(HnVgPQ@fVSjgU6Ce|xui(tR3O(U99MJ199NvH;coX)8x1ki?K}mlf>wJQ>{sHCi zF)V;jHNi_9f*C3v%`z)1+6txZr~vq$i2o*a!sHG%3VWZj6%K4ijmSQTCUF_6yjXcJ zum@o(3hA^;r$Q%`VbSSG`;4mMtuS*Z^hYh7g(YUwXD5_r&%sA0988Uj?1TzTu55<~ zVx_XHFgsQ>5HA|bo|}+8FX8w6cu|iuuhN2qf(ug$)=|Oi>OZZxXPrfkFgtw7jOWCa z-I2PlP&>ayL-ZX4;Cq~yA7C{6f|K_v%z@o7p9xsY6tplutY<b{#Ij%q>juxV?(jM5 z0Y9*8_?6`_!FsX*ESKf8UaW-WvHe+JHjVYylepBCx`$Eb$R4yISv}fe(A}^&Hj*Vc z1e~3v*~?;MSx%;41w9VI;)hn^kHdDNveElqIMf+g4a(|D1E!FLpCAg0Q1^nRW?`O* z39Gh2ZDFn;UZ6G}8XvZnM>Yh8v7spF!(bH4hw-ccCbB{(V<U0MqhSdf12t?cG_Y|H zX8S>u?XQQj%pJ-!917XO;d>6HZqK2_`_|T(9fW;P)$J{J+q=nC$TX}8?b#lF*6)O& zF*%@5lAYD~!1`<A;;<Fe<U)G3LpLndAg%&Sbf8%z&xHwx7xu$naq<SE+W<BT$ty<# zHwP+NB`jc7a5$TbY?y~^n2(lr1wX_kdmJh|k=<>dcJO7dt?U4q-B?*1H^kbtvc(|S z67aKSkja+oaUbe7u+ts)*+@*&PAEcJ<(8z8HFY(zDLbIK9eO#V%fOOh85`Z?en?JX zc1xmW9zkr}3a!*!#Q7bi-yT;7JC)kBfsWBX9Q`w}RglGMQBFco#Tt+yhr?3V1ShgE zoWfe*EY_;WbQnSr9Fy4}$BeajJ9e?I9kP&w^+>{od&z8d!bX?&Ev^GTvJ;M?IhxW5 zM|Z+84zv(7L7Zf_6OJv+K2E!*<Ms0d{dAnyCjC4y**auzPO$_hrR1NSl79+)lP927 zPep`uT4DC-y5%$698|S4JK-!R>ugM9l}_q8J8^u@FP!}TF=n6Z%oh&nJcqrN*?}sj z++VWK?}Q7s!-eEVcS0Wd%d@gC%D(76xVY5JGk1c_Gph=-FVO_Fdq!-_{ctG*D&hL6 z)$~g{s>@1co<!O%?>_iSkR7|<cWdOy`{4=$O07I=2VB{{dsm*d9j+`@o=jYY#O0|@ zxS9mv8u#PcPPonyh>qPCx{U6G>)k23!K>WijPXXQdlMOA`f+nQJMYxIr7-)}v}Rma zylqckayxZ^GIU2L+_`7&U2g8(PHuu67iQn%acyfmtSijE*Zc15gl(mgPq5--5SKJV zC(|#@(ECbNp4tKTx9|Sg>+d4Xp6zgdCp<v?J?Qn<vHQ_PX?iFoGoA2oLV71W;xaRt z5U=}DUibG?_t;JLqn)sQ3v?^YQ#{w&Y$3eZ;Xsb(z0p~i@ECRXI3;a|=B@BVCp_5+ zJKf$KN_G*f>x8EY83Hp;y-{%w!RH3B*ha`^M?r6PGz?<LAQ_urU$z-a*-3C9I|Zh* z(_uC{3)TN@sAlKDa&|7PWamLW`wKL(^I;vk0FGuC!pZC+IFntBUh)#SjJ3lJ>{7Uu zT?P-Z%V9ga3U;!q;Wb=~yv?qMci9c_DeHjm*v-slx3g~S4i;c{vSI8lHjdqm9`qhI zk=@6pvisRA_5fSN9%MD_A-0x1%+|3-*haRUoyK;s^VnnT681R$Zzp@2?PAZfXV`1_ z{GGjESnNfk8~dA)%U(AIvNwzg>|LXpy=Sav?;FRkkBn2;Ka8{3$3{E*#JG%oYTUp+ zGwx*nG#+A~8&9w=jL+Fu#t-ak<5%`AH`w>wX20?7?04SF06y4Ye3)VIQ3mG|4U^9{ zB(F9UUt!ohWMuLNqdPy==)pG|Is8nc7eC+V%`Y+f@ETfsqTkpb4fRSMbOD~_qVr4R zmj7rHv#06tjB7;5MxnNxS~c=Mc$Pp7*{o;c3FC^iPgv%{0c}6CpK}!WdH3@L`qZ$X z14btmbWG}VF7o^99_8a+VL8GjF#171qdyEY212nBfC<K6m~0Gz>Bdl)V+@12#&B3< zjDTfEJ{)EgK%G$tO~y!w7$va57zM`~qhYf#22L}^!r8_+xWE_>TZ{?FlvOdN;6i|F zrqrZk%8Pqr%8T&?*@5d0XPntD>A`6;?jWP=my_IG34(MmN^xKlabS~iU{i2l2f;x` z8O$`MLxnK|78o;OsWA%&RgT2g@;aB;I@gtJrcQRb_e!$GE7D!ZjY7X9wrccYRDfwz zg5Riu?#5i`Ys`ayF&_$z1u)83s2y#{>Cw0W`$Kx!Co%YkfD!+_x-;&GUUR_Hs}8TK zI-qYX=Wh-Mc-^t~Ri2$AP(PCR`$mF6eKUC&UUwRrmYPnd8k@eFgiYTvV1l-`I_2#N z3VVEK3l!t)T{rDo7=T~zQ3@`#-bbJ&CRp?}L3Kbcr+hd1&i?yVATcl3YKO2#?g!2= z-u0Xo`Gog!(R_YbifHDeM3?c8*w8*ETkfM@pQQ6w*`Fo@1RAbS&t0(8Uzq35{!~M2 zALTh><o2K&|1935lNoPl4?_Ogg}YppOhBHQ1mJJSr6U-JfHV$+3}Yo^8>>)KLr`X{ zh8klHgp39V8;3)i(F8{tEpWVX1e{{D!Z}78;(-(3YGV`JY;1-Xj8owy<20P5v*2^% z9Qew(5WX`mW;WWxKE@SnfN>?8Zd}ExjH_9-aSb~R?PHzM!5WPlS=6|R9ckRgjyG;+ z7aMo5%h7Ij7<aM9jl0?N#y#vcV=LO&PPDDtw9M8!;7~m7f<s!!e%>WG{2~Spzf1v# zj?jGNMxXvaMu%UgLx<nEc<Fyeh%tcmzaqsHJoc|dJf>yq+rsScQuWt^M&BnR5|dAm z3DC&&ppof8BaJ5aghtl?290isP0|ltW5RzYSfC#hAzf}^_D?$XXZ`%e%loPw_ASi* zRj2;PN&RhSf(7{9;n8m?fH8*FQt=sa!{fn0d-4E=>0u+H&O^ku75?aio?F~CSgzbG z<ACiUk3Iryy9+xRc%Y52J!1?Avn9hihaMis&|Sc|W>|p+;Zd-R?Pv@hgWksDFvxfU zoyOC!ukkFpujgTg@gkHPub^Lk75(ySu)_Eo1dZ2Wwebe}<u_ry@fI9oyp4w99XQK) z7cMs5gUgNgp~Lt9ZZkfF2aS(lhw(A&GCqaB8K1#B#^>;N<16^k_!_=6zJZ^NZ&?on zOL@jmte^2S8)^K)#v*V!$oLPNVf@Bsb6{&ZV@Dv6I*Lnn61UhH+{Z5Fezt{Yu<H<9 z-Oe-F13Zg8#=Ei4cn|g+&t^Ysu$714sxJboeGo|XGe+|M#yB1@Ci6i?83M6#KE#-d zU~Cy5Zq)D*Mu_Jdjl9q}gO?cRBS35CV~y+iIO9e>-ng6ZYdpdy7(4lX#`AoC<1=1r ze8Z<0zwiT%-+38ld?wH3<$NHY!-w!nUcl$_5<ZVl;0yR<zK~Dj)d>)eOxtS59rHFP zMrS<f#4rZOV;DKiNE6?|87<n%cqbDmLzTrl!C&0T%q_4VSw63()D8}dL3s|doZ4C# zm@4XIKK$qJWEpoAqdcZowG*pmc3HKsXdBZeY6t7q4*O$r_nk1ti9{5}BN42-Zl^~) z6p^Sxv3NuuFCM|N<yBr3qLbwyB|Ue-VZ~cn?pD@o7fk4Sn7zB8wU0*)wxvtvxfHOz z9WdVuEX;C<KgjKC=id6-r^~*OE&cW~t~O`b*w0H|m~n)s=6+(>F1=G>>EIK~_JU7S z`nLo3N)B@vK41?{_fO<5Hd0EB+yeT)ae7k;bga3b`+Im{4jVv57rN7MbJ)O67U*z# z(qrhdr$Js%nlc=C0w%r!Mxbynhv9q$?8^^<gZN<(K^2H1Oh1a(!tIEF??5Hk%Gbhk zycxddt<2^Tmd)3*UVH=V&yQpy_)%;*KZb4KC$RJRCbpBG!k*=)vw!e2*ysElTwR@O z4B{6V!}z7f1b(?OpI>P#<yRRS_%+6H{90oZzuq{L-(Z}>Z!@mqw;K=gyNpNqR^th> zji`caTnzq(i@`5Rqk==y#Sz)iof@#?EEXiNWoSy!Eiu%M+!>Y<SY*S~2Npf0^5fKu z*mI@9A4IM`0^|9ku$(^*HGC)3@m+8<e+EwA&%w$3uW&AZ5iaI0>rpniquk;KUk}%s zi{0m^iyX52^pQhNe{xii6~v>0gsGA=J6ReAfQ59w0VaPFa`;<F`+INz{{ZR!5E}SL zn$E)$W`pRwAkAzPr8kILPBR_xEhg;ej&Nk!X&U)w)1+sD2C$cz7z;Lz=$|+fpTlVW z1(foy;6VNjRPukJoc{nD_>XW5{|PqnU*SytA2^@?u1C4nU4`{RvyY2Zc6y;VxDtnx zqi|7@!$x~FVbYjRHg+ejN8@&kQnV6|ODQ)V&CF1T6Z^)k(**ptA6jiHBRbjsZdubS zd%zxL`^3r?(ho;^9n&*5PI74?$rIyj%wdz9*JPKl9c&8CP!2m#o0<&WD6u(*(asZ} z+z)%5ia_WZC@AXJ$);6}+{(%v2%C)%mQBwSTiJ|K(XsoR%?9h({jx{SkT^Lr<K(2- zX3Al+(&wkn?U5+2AQ%i10*ZtQ<-!Nm!VgWthBlD}$BS;zE_%S#A{TBFz2F|v2VNC@ z;cc-Gd?*IOmm&Z^iXrfa7|u*lfHu64^$|sEfGB1|#7LGeO4wLT-(QSn)5N}PmDrzc z5~b`kF;UA%qqFMa>k%0EQC613*Ep=(mYAT={{QhJha$f@tUS$1Cx^}XKM908bpNl5 zob<tGc5qVg`Mb1>`G6xB760>UW6v0FVnp?plyyRO09OU+)(UPY8P^IFJudYX=K1n` zdtWPbwL19ol|UAhp}<cAQ<OnBF&*+mISdsC!zfV!<HcOqUo3zrVj)Zy)i6gaf_Y*w zEEY@P5U~{M#WH9V%VC{Z0Y{5N;AC+qoGA{2i^NK}Oa$R(u?p@Kb+A>`!-HZCJR=(5 zCD914h$eVfG{a}&2xf=~Q(_&<5bIe#v4IT|8`&svBpWY|V*82X*@0pcTP;pxM~IWz zdT|OnR-DQ<i__TI;&gVsID_3H&Sdw9v)IGpZ1%V~k3B0cV6Te{*<0cw_MW(yeI_np zKZthro7iG-aj7vtTy6{#R~rT5I%Bf9!I&mGj5*>aW4^fASS)TyLF!Fzuyqa^Y;sIr zqp7M)>sc!Q8~`}}Bp*eqDp{y<*xV%T>VWm0Ydbg{pq!TglylhpL^wS;xm1Y*J3C-l z+!WF#c%k6i*upfBJiW`C1KG%yyCF;5gHo{#4iNW4nRoyt;z2Zz55WrYFsu=eLMyIJ z&Jd5mdEyDUL_7(1iCyr3coyCfe}zxPi}00jfJw8<S917h=GY`B1gbZ%)5H!Z$3uq# z2UhKb4q0_#=#VWkV1kZDxS>M}&HZ8>I%G={Lx*fBrFfx3NnaBz9Xh1)-RRp59m-tU z4o5g(B#;P3mO0*JNi2xCoSfRyT#JH;3c0sDF^V|X-6!kH-lPd0DmQpYy6*-LRV@6Q z80Hg6VZPI0FwWAOsLOAGU%Ug|#k<f~yaxlt2dLBkfI{&xj1iyU?EMpFi+{tx;zyjl zpJ9Xe4;&?agU#X(xB!vK#ijw5nH;V)1#CAhc+T|0D`p1#%e3KFGn0Xt#r$SA>u%<- zK4woAFmu^(vo|X;`>=h@eb_{^AKIueZ*gb&D%2j@CMOBDrW87h69Q=~+C30V5nnYy zxDYudlW=iHshMze4B36iPUwlOJ~UOA4s&ov8SQcIU^QD1L`VV=l0by)*!`u`e{Jy& zwz3^26>n!NOD%6f#$(f#XLYim##yV9G(?vg-T_03_4$f^jz_L_K@={?>+oO50Z~X| zZo+g?$~IPC*q?@*t9Ps^P@55-!FA9dz#IyuISl%lBVe$Z4+oe<aG+TXbIegN-y97~ z%`vdb91jiVz7RGiz<P5(INIDFPBtgPS>`01!6~rCJP@ukr{e5QgXhf|@TxfzzA`J| z2eT6XFsqm}=d%oR0qbE_v)<++WbzTb)dk^)xqB!jj`zaFXORYHfujDMZ1r}wh8!>A zv<4Kv{@d8$n>k{#_fi1ASqIV#L3gtr`kHGXU^c)A{2pnpMSv6GQ5OoY!JbI}UnQxZ zlDMsu!`3F@w?;Br*lUxXlIApugd!83AaX@_bq$Qf`YlQI^}3~#>C+4k#lwxbVE2m9 zawb=3JR6Ne>rU3D-E}U)ibt-2FZ0Y?Im&mz7Vx19?%4fBt`sXV=Ss-YIrI=KM_tek z6XGqeqn4#^c|92eD%i<3<gkriKf19is4i_-=&pKWIZHP<N_S^riBI+Cek$Jfk@2>V zqMsHa+_Z+qt3q31y;KSTaXHPkCZL*RBMXm7woGmV@o6|VX;O}hx79ysn`#pTP$D*< zR38O?^B9zhW1+Ws97^^HP-bp|a`Qx(XPyL0%#-0r^9*P=&w?w>bKqw4JlJYp0Ncz9 z;Q{j!l;TSnGcRMpyqsC)HLSqAo{cs;*fR4*R%_nGHkmiGGtFDr`Q{yLi+Lxz&b)`c zU~XftnD?R7wefYXgrDdx`VU5hJiZ<F!`BI0z>lv@?YIWPFMY5j<qTPI5;L&Wi94Oe z%!!?Q9Dp$&f?V?vRN?KY!jD0*`8bR*pMZ(xE|_LMg{u4v613hU=xmpu1r9+|k_a08 zUlW9-c$akPBedpUk*=4KuGf&R*O9I_kghk8uD6h`4{#zrL=*E5GzS~JGiZ}RYUtA+ zTim=8Q3y4?8P%c=b#^*}&>5Xjk#Zi^{1PnlE9~YQY-(eyDfX#zoQ*|_$n>)2A~d~~ z#ar1)JJ~8UGxUor4O>LN9Ak4b8JivKlr69iy-#h2H|V``3%p40)3(4<ZvKiqv7Mc| zm7U%W^N_N!`qPC)_p>uNg6#c0+m5TsGvk1bot0wYacTK1ol9kBcfey_lFv!<pw__D z=5p9MdxEJ=f8J>a!kGV_vN1H^b8+!YBRsd0orja6f6_TVk!NB`C;LlBj9fC$f83CA zhSB^PC+HWj&0itM{12Mv-(aNVP$~VeL1x1inFH6!o^YG&1KVUjcvudAU2-6NBnQD) zawyA|MQpqr#iq#7Y`z@JmdbIgUQS?*=6_hLoQ#uxBtOcX^uY+H(ILPCX<|C(r;V^( zQ0cMQLR==q6fr@F2__n(3u$vImN^O&F6v}`wQ(*+gW0RFusBziXk^R!YK!_$EORk_ z+=cH;63Y%xDob{kQVIFC$LhX`A6uxd$GgRl3n0s2xSR<^ayCqq<uFCgfvNIfm@O+| zft(A=<UFXA^PvUb>*PW>MpnbIaw(i7m%%x5Ib0@J!1eMFxD~(emWRRpvIbi}njhov zOC5tMl7qd>*DjGy5L~0$2ic{|wz11JQn3&p#zEBOsUXUi0HP8yRgqSXhe<h#k`?17 zXKrkqn;dq96ImN85K~{tq15jjBu#VD@UX7qg}AuQ@KiwMu&YWl;{JzDkL6`hy}~^I zR(4G%yVmg`ds~d;S$E=iuA{^ISHU3&kJ<I5eyV=MPQCU;5Y`ckWKkw&bg~=cKW{=v z)(_>6s@%L2y6diQMxNZ#iHoK@3cufqeeel>J|QDF!|m%D=vS1RL4DbI_I>QOc95I> zY;y)do?JgF=<Qdt?uB9-yQ4INL^MYAuym`uJJY(;9ClZXA6`)E?sT9wUX@R<b8RI3 z9!=r#MY%Rnn3<P}6mFsOE35M|x3aBbY-v_rmS*t1TVPaP7Or`==q(3iR;SA>Dp}Ua zwz=>7kWC#}#;tdM0u_0g#G^PBn{DL6k$bqM#GouKx=8wnqeSziypT`G%*~9^&U1@$ zGl}*rM*;^VS_j%1#@yHvE7!#QyevHly>xNoB`vTIVrGZ&B%jdT>w6QC|ImaUxjkql zXUCR=_${tRT!ooib9*>TK;PybyU|YM_Q<ubgmF&08xzTRn8@g%0oEh*)AlIpFy<kj zFpoWoeLKIlmv*D$LwRm&>+M*c_lX5`|6;5&G2M^54i>n>nv*LMG%SbhAi?O?nRM)= zgFPHC@L1Xcm*sZHg$?y`^DY=q?;CbOF||!$*vGZUp{3IkNfVc6@q5|v9qce&aVOm9 z-UKM^p@l)K3c36|<i(8A?84Z&i%gH}a|>g;(KBLe-<x6t=CCKV!f%D{dD-`~od$HW zT^?%9%hpAnat1*xEKJkF(`icPiYuT}50TDyr^=$vz}oB?vgmMPoO92n;~cDVTk4Te zvjZyrPt;nU*-7nTvtUWor6^P;>-g>C&Gzn&-(E)pYU@S6rOyp1l76&-dG@{R#5_yf z%Qod%G<MgzvlBXCpqI_}%tq4|b7MwdI2j#GGng_AO140TJOZ+01bWN$&|hwV@$yJ0 zl}EvRc`P)_6X9sN8BUWY!^QGcxKEymaNum%A<uzl<+<>pya4`?7c(U<Vcp~wga%i# z{_<)zR9?%9<#lYKyoD{1x3L;|2Wymfv535zt&@+kjS}G*uFubvkFiVS<LpxWzFI!T zZkEroyX13ht9*eyBLB*slrOTs%9q&R<jd^u@-_C0eBA)~hT)fQ8a?FO#y;|0qfowY zjFlf6rSc<Vvi#VXDL*lm$<K^q<iCuQ<+sMU@;l>V`Mq&9mhF%~8Mn!wjct}PUa)+| z>sE&GiIr)5ZDsN9Ru1oP_2fgXTt3?B%g0&$_+)DkpKcB22U|mVwKbftvGRGdRm|J0 zk^E?@gkNus=XY59@`tQa{;V~Tzhxc7f3T+UU#v3G*P1CNS_g}H)<Ut!sunfYQc-U$ z6D`)EVxtujCs>Dz)2+4QN-HWJwl;{}*0JVr>qN82I>{Voonjtfoobd@r<qmO>1MTc zw%KN#ZysY^Xr5tRYF=nvW?p7pZr)&BVcuq4X>PNwHea<m%-5|O%@3@b%+IV_%<rrW z^JmLv{$brN4Qs1Z);5`CJs@+e2W4ODAsMh9mSe5$@&IdxJkWYfR#{JipZ@PjT<AZ? zy#Y5C{oF(7brAxPMHyPC&6jp2eF~FI*|n~~#c$W?i)Gf+xZF9OpWvQ*cpO*#2nmf( zJ-w=P(d`xu0MFb73kXtFdfNJ&12QtT!Fb+Lrz%pMOwy#x!lIGe*b9k=>T=j$I}=Vc z4ZbS|pN*)-F-DUEpn5sok-L9UUKzU$;eOe;PI;*vOflID{ABct0jeofb0^&@WM}HA z<e8;r2hatuHKigQ;bgANIL+A5K}8zKmlP3rmlUN!ET3IilxOPSo$Tcf=trN0bOMRK zvJ$>xD+W^!*JVnn#1fL25o4_v;K-A@;42<aXzSh?#Gwu$qmzm{$c|{Eb;PU5G3}0c z@H?R}6?`qZpu^t_aJ1(-toeVhD{sidQ-(~UK-)wqg((O~Gp$cZ9FlN8qObdVV%%NO z;a8{kWeJ2Oxa!x_7U0C=`1;`)7>mmAD)hA8gng{HAYi=%Q>=Gkw)H+#Ss%dR)<>|` z`UH-)K7~uH@1Vo_H{4|X3=dno;R%KH6@yolfH#$d@05byl+8e8F-vu0nW{U>RXx~H z)su}?eb{8xpH-^>TcHNAkQ%~{RU_CYRl-hFqu9A>G<#T$V;`yg+1Kg-_Jb;A|4|c- zd^N?WQd5nks?0b_%`!Hr*~V3Bj`4^(*w~>ejrUcR@u6C1e4>`1LT`#GG+gC|3=eT; zTik_M;f?qzj-s`1+{fP3DaFq5rK*v;V!N4db;402x3XNS+{xZ{_Vsd-!ra?feaim3 zIuw*T3^G*>^j0fjpjrh*suo76IygYp!%Vdr4pwVmk!pYyih_<O^3Cpw^f@$26po%v zThCkBJ38htnSS-tF^6}n(D@4dXChVab;4PwR5Y~%w2s0+M^)b!brh+)6iV|X1>G*c zkNq9NwfoV%=1SNnPjdWVAK-{ERjlk}ACismZMG0`?uyIKM=|+y!H}5@8dA?;?&a1d zE)NTlXoMbT=@<K0BR0#4(s<Pm`tz%jIqZ`dDSO<Mi~|;fb^P&2d}dndXpw5cSvdmo zR0Ia8C={wT7^~LdtZal?>L^&Lj)lY3anPoYhYgr^tlA76>Lj>JoeU4EQ(%WW6`oaR z!mH{m_?J2#epMGRp)O>8brI{SE@2~8JKIlP#-^$kHcMTBGkcOJhgZ9Dc<BFga!5G& z(<Bb13gR^=h}YtfuR}q+9tE)j1@T4{#G7!)x1b>2ih_6>EKs+@A?i+a94C9^4tI~c z_zR01oBo%SdyncK@Tsl3&M9u45g>G^Fr%=D=)_UHoLXrc_|<*7(y4BxC0K>7eABgG z8>@ZRj=V|S%g$l{Otg$Pwf*^$c*AsL1=K^3p&kZXZHJ-iaVSwwU?-<}SEM6)-xNEG zi_jO?=-uo~-N9ER)E7DKFqi&qWnXu)Z(^xA>|Y55oP!OR_-)*Sr;PF`Sgf8y0#1(+ zz$Uxwe93K~0;ewJ9CPAv2#?C|ohX#Im+$UB{NTI}?Ls~N?bga+Kc>^v9QISZu{5fK z1%6Jg@k<wFQ|{5IH&Ei<gl_6BRI;~G;@*K_>Rp(u-h(prKFm>nhxzIQG<zSyM)eV# zsQv+`tB>Ja^$BcIpTc$OGq^?l6Yf=?!$ax|*r~pR7u8p&NN0F+Im$(T-H@tZ9X|Xg zX%2LlSA7eX`VO+x_gMK%ukuj0GHrzZmS*OD#9BY$%$*gB5kg+f`NoTC+^Bxl#m;t% zJ?c*Idc+XFw?qH9V$*K$A04og-n%<sY0(Y?+VyHaxxj&i3CB7O=7t~jdC&kZ+a0_Y zE1X@Vk1k~pFqzV6#1Bn47oyegIF3J{huRH!J_82%Ovv|180)j3)aQq#zD%g`Wx;A+ zcWCzYfOWnc9Lzc1VBW%^=!?ABfl3d#SUCod+pB~f|M3Ys{zY32(GI>Gwx9!~j;4KE zh<2barkgnidZ_LCyp>_;L$0(HV3_!`5Rr+Y_R@IrMcz`JWAOC`?&|}YzC7sR>koy# z0F3qxh3URwQ0~iz#lAvV=^F`ae4}uTW8f6uSUAf!9>;mEH_kKAERaoJvBx-BRe}XV zo*O>loJk-YE8-{KQb+4zxn*fggWh}e?T<tsfJB!f(NiGDcOZ=NO@rmWGAwmoOiZoc zoy$<><$MwX0q<~5&ujEiX8O=@fLuf;!_{~0$gPGy$H>t9Rbmo3aypK-Yo9IfmzdQs z>{O*r-JdoxleIj@$Vx5IEwx1V)Dk^XOJpY{=+%xph#Vv5KBFftrS4yr{pdC$7e{0C z8d=<F^d6aG^tspYQ#nk_b5Bwf>pu`ML9kLC&7=#WM&EX{1hJ2OFe5hFektbl%~V4B z@4Wz>b&yzWfYaPS7sbaq-GOP;6P@b1mooB9bl;uEpe;HaJ!Pvg*i+^qF}RXr40R=g zbb5Wfn)df}6GI=G|8E<ZkY^>#d;VT(4fARt*~6U?jc{K1>4#mACYcke#OW#2qF7yw z2+}B`GhwkscRL(FA7$IwDW!BUjPd)7;!=N-Wuql<o?lZ{;!<Ud(i_M(<QSvxGsYlL zEY>GX6yjW8BF|^#nY+B>c>2y;jxp9%N?!+zOwJh>AO84wA(dn7OJ`S9o^P8mp)gmv z*wqsznovJ7U_XaF`=^S{0jWn~sA{KC+73NDk7P`AUe0k-V{)oWOmWf=+yg<!sCa=! zItq&%l-m7Nr|PtnQ(2c|T3Kq@>4_8F6<RQ6#QBu=kB{USvr-$L?KE8Oyr!m>PbLlp zW==bSRpa1z`3}wFiY^g|QR$RTjc6KkQxoPTw~@ML*ux<0{a21LfA9MnX`qi$1?Qt_ zuLQ$a1=+s2=x^u2zP|aepKk&B+bTH7w+Q{xVwmGw0`q-KVTErQtnw{~M&AmE_zr<% ze22nj-(hgJuLdskt%NImLAb%U3hwmP!Zu$W?C^!)DPKLj>{|`5_}0S5zA${_Yk}{5 zN5Id%R@m)}Fw57*digf6Jl{q(+;=1!>pO<+?>m+q=sS*;`;KRGeJ8MGzD;bU??iUE zZ!>H0oy3mxoy?B+ox)D>oyyMkoyIQpox!g0oyj_U=de!Sx$HgPh3p&O#q1~FCB{JC zrN&6#WyS*ERmL*kwZ=-{^~P%74aO0^4r9IVX5(1jEyk(7TaB}QcN&-b?l!LX-DBMC z>oguhHQVXC&-e_}zxF+B{OH?m{Na0o8@^|FH{bKTr|(5x;(L`Z^!=SL^?l4&`aa|J zzAyL&-<SM2-*^0E-}n4n-~ZLwlLkgnEM46*vq`#prWck4mLz~2D!W+_!2l5=Dk2I5 z4<vw!h>=4?6!Chz=ZQo`M3h5<TtNxo0Z6jpl0zhT<AM4V1w|1r5EaA|zUrRYD+J$r z-;bncc6z$2>+0(6s+vQ_tgOSv!mQtn=d=DWs<Qqv)-z&kVbpkyS;h|LGj_5JV-L$T zzGqp+Z;Ts9nQdCkF(s2`L*_SgSv@n%f@XWx&^(hhGS6X+%?nt_yofb12eWMR4whry z$8ybwSW|O4Yi7=2&CPOllDU+%Fjujb=33Uue3_kMzRpfH-(_vgPgvCag0(aEvySEw zc7}PB<y#i(WJ%W9YRI}+%~^qU3Omzk&$?QjSU2lzR%rENXIYo9?$#Bohc%q_vTkG- zTDP&@);+9`^#JQ@J;wT3PqO~VRgW2uduOiyMst&)&ACLS5mAmrI6t&VQ>d4?rsCR! zieHKL%B5(fC>OjQ$~|$d>x?L3w7)*0wY(!*iPj3eEcJ|5|KNsw&;dymQJm~TA9{G9 znBht~P+4!fK;>UQWLDBaHHo8Y@3x(qlhM3OIbBc>YRN4whkjI^0eGPd!scmWsNC!u z)<92P`n$#G;5jOlgu2tpB${vl(!Z%;T(16I5u;beYI#2(xI^Mj3-qeldOz1S{Z2`a zcxZCO0eW?v`)cWR(mnCC8QWbw4A5&5R&R-JA-TMxUOJ$)W{m7fz8|2&6HXPCvtfXD zoHaYOZ?(~wtG1l!$Q0lriM~&&tLmsU7_o8hgiNDBDd_8tKQ2{x>7R12?v8eJDzw+v zIk6<_j;U)>iF=IX;rlnZ&5TW1`Nm&PUHdE3`f~mMijax?L3XO$u5G{-p}iUA#^bG) z48?3Wxo7hOL#B~1S(YgiMW41SBcn$p9T$Uc>VZD4Q`;`|=J-K$rh8=XmFm1+SrACJ zXDf8tC}o|hL~_bJ%?ztvJP+A$Ja<)w;^Gu&Q#TPcvxj^&Ai`>ce0T*3xU~pR--$!k z9j|eE%m1_khlsf~xd~kcUbw<lrb5kaYv}C;6l8|OYIL5%1H$gj>j^ee?s#sVfz(~( z)>!W!wP(yz>Yz2k)%I_v=?N#Arc(l$_ovCgKU3r{e#nrz*RCuK<tC_bdFO1%j%Z`~ zE-j8MTutw;K#f;T?@0)adf{IEg4Q<4h$4EQyRTn|YN@r!UrVTVrI{8J>!8<(1pNO0 zUcm1^k$|62yG=^fT%~nux3oIL>XPBwBnnzMg(R(_rcesNMuNpgfne7`n2m-A8w>5( zP0)#rgR|Hz(39N`eb^mP!u|<k*j+G=-3yPg`=N|Yf@fJNtYQztI`#-`W>evH_9*ON z(_j~S4EC{^u%FF_pII6F#pV)=%_H^MeA1MalU{5wxri+xgV|D2!j_Q-*mGnlTS->2 zO0tPnk=Ix?`G&0~2ibb^JA09uYy)l0Hqv%%6Ya~k(5u<YbR^qK$FW!GKiTVa7JGxv zV{g(W>@B*5ZKrRtcj$*~2i?Wqr+e9l2C$C}AKPgNw#x{z&y5yrkI{yGVRT@7jV^4T zaUT2D=*zw{`m^tiL2SP<oE<Q3U<Zw<?1)ju{xp`cqsA(B%y^NbMZ-<wZSFHZ<{8Fk zoEv+&Fb;6X_=Wq;M!cSR5)YUW-oR|ngXWnWtr*_e?8BRwLwUA2mgkta@?3KkKgpcO zTbN6DOLIAIWv<~Tn_KuP=9|2Y`5q6OpYn+LCC@Vt@OI{}{510@?`UQ6Gpshei`9V_ zSOvV$I)|TS_2b>G0sLHRFz;oR@C&WcysvdLzt}40S6DHArL~C<v9|H6tatb@YbU?P z+RICPK7Osw&xiZk@{zvIe3b7Tew}YPALA?KH~OaWalSeHX5T`7tFMCp1E?`Q9&S#K zdU1!7lKl5TED_k8usM{i;qiZaH~v?I>yOrZNoY7+@7f{{qAj95ROv&mDKbI*?mmb= z$HiK$=ap#z?C!&7y`zgFwNLesiaqWTRSqU*v=aJa7g3#cvU{2}HaQ7)fIjSQ8TWAA z_3MmS*QbR|bZ|Evv<+?ypD4JSPB}pnjVqwQd*2QJNdogo^8LEQ!jt=MafLZGZPRMF z+W+KtLUVo(g!z5Yo==1VUJBj$gK#l_2nO=0FqA(EH}Pq3JD&lid?q}?pMaTsHZ104 zP|4@Ok9-~+;R^}j<)jl|LeAz($qoEjGM+Cdck&hFe*OYlpEHb^-mcssmlt4l68kxE z)T?tMe?<G}pn)4#pxx_m_{mEk;nDb+Y|^JEk}{3;NwVCu_@g=xxDwSKOPq<-sTXVc zHS-u`@@i<n*CG}-Kq21*BlycOk#9vz)xdLn8&vaG5CgLkyVR4t&14lDR6hpQeUL7X zrvVes@0!r*`gFog_Nts#Q?r(QP&;c$tt3tSEd+2oNd7j2_&d;ozY9J24!DTF4+HoI z2-p+GY|lHQqw5S#9}XYqFiWS$jt_!PJe;8!k<Qe!)T|`ZQXP`={_be8)(qxFCA$r# zL?x%qU{9oWI{UazYe7|(YSPY0HNczJ!Cp#Kp7fyfDJXr%@37z+YHnRVm1&mTyuW3& z6X7k*xJq{{h{qG_m(qL{k|D`-eoB==sRLh-I`Et882DAmMi!<tQYYO4wERD9&MZ34 zr0}ULUmbWmL4QeZo(Zjyn?Hh+`6qBb-v!t3-7tplf!p{OFo%By>-o3vDgO?><Oc}l z2T2zHnFRPD(u5x-t@tmb4L?FU@Lx%P{u>#>e<yeGKgfgpD0!S8BQZhA2f`wsicIo{ zU^H8B+FA&jCv2K89NJY#+Ee&xUr~=1iw5*+5u~F<6FOO_w9sXVgTR4a+T5?z+N5h* zR1tlu4)d^V4SkwGUloF&H(lrE>EHu+QXK(rgXCuKVr2xbrWKm0mc&mgaG^9aMwgaB zmyoIIsLQrq%WA!%GHU9;<WR_p(PcGIPnYqSWz%(vG}q8)DC(6TH4tXW{N%K$SN1y0 z>gw8RCY+t742M7?0C6f<q75(+0l&zDMj{F)iT2P|oDQ8u2RKJ`g!9E2FkEzk38FJh z7G2;8Q2>iYH>eVYuu+@^HR5b|1M9yl&Vx@xPuL^Qhkc?K>Zv&iEH_0gE64s=0=Mbe zI@PgCDt?O$6`d8;7#<r9njVTZW(LL4Wx43`sfAjPkS|7`tAVZ)Dals(y#n-k?7{4s z<ksae?R7&}D0VIPZjzZnCz^<}M{>%vCRurc2}C>fiz4ueeqf7B5MP%<Nc4wnF#t{# z#n4d<gtNpT=phC}e{nfnEv|qPaV3ltSHV~@6mAm3pbYCR5ToHKaXmaEZa_SaMO-~; z%yq;0$#xf4q_<|qh|6yX(+e)*R=Gu`TU5D4%q^<1$cS_1u~g2ifp0z5n+<Cs9;c~% zt(Mx@Zk=YNtWHj+YvSmc5V9)i+L~l&u)dFZ9#*-@tgdjca>1eNT(Z>Rjg_pcT-U1T z+6w5GB+~kL-^aBZP6|wFFwJo_bqvd~6yA?PyINi+;tpi`dq9YZ5D@o66EO*yz7z@g z0JIYiLcW*`-Nh8RP&@+t#G^1sJdOe|9Y%{8Fh$IQ8Dch6i@C`B^WbH%06r7t@U2)( zq*z9ph-V1CPr8bgq^DR#E)<n%VdC?Q`JPSjnCEA4Nkqr$`|3Ae;f<<qUVth`^5R4| zW$Qd0Pl=OxajrSk{f+0jrc<#N_K))Pv{8(t@10B#t@FT$wU8m!p@_c-^~DAp?M7%N zHlc`bMiGArN4gPuimlLB)M)q?c<>GM&YU|(YP4-Xtp<{0+TfW7aqEptOEKV9s1xS* zYkgoqYzHphh111{x|fBXVi=Flvarsdk!=bEebnbFaL{CTIW)vE!(4yf0`Q?w>rsB4 zW0k|&h(9kz2N&vMW4;+FuyW=Bj~Kbieafm!JM`3|UXW40c|j&hcxHfZD##3F)Fe)* z+z}~LQwLvrzEv4%gQ|o-19Y?AtjIm?wM4c5&y#fPUVI6r*o!pV2U+54<j`**S9}Z2 z@%m)3A0pxaV(|wk5C@@~_z}()Kfwj!5OV2Z7$SawYsC>5C4Pl5;&&J){)F4aU$D@o z@VsrnE4BrD>?~9_<;Eh2=Z$w`uEr?%{3X@&r6M!mjOry`v6*iLt(--0ZX{?a$K3*- ziVWb<0NtV)6tRyF^g*K?t*<sAiz~n%4F{E1Dt%eAr-g)jG3v5sR6DkYtmKdjK?2w| zFx$bx4-M>kkZae6lkEUR>;}-mZV35yHgvah;6l3@6yx(N?Uqntw}R{J)_N#Uc|*C# z6RB3X#9CjNtHL?B%MLpWbCigUUZDaKE0M4EBq7kB(XgXn*(fgd=@78bfJSx~XkvH8 z)}J;OCxX*lR$Uv;t|rTikjJMh&AOUyRVUurY744Hj}4zxsn9XE$Dj{Q%WVrGs-$93 zenxy>TzUKHSXip!6QXr+iV7uG@xA7TayS#!UofMsa(XDp3}(y&5wZeQ1vwOltf*TA z=xgqU=HX&}gu6u@B=%OxL(&*c&tvul;IsRHu=^s`ixBJmpt;>2F@G6iegL$!2SF!$ zFcjK2kJ(otwuizk_At1|z80q1!(pa90_NKzp#pz@&b|&RZI!gB!dT)_W2)!OF(MC9 z6i-J(U&py5&uCkim$$(zX`3JSe%9=!5vx(6U7>S57momaGwtD9>Mm%S=}9S)gVPRZ z_ISv!Z-ILDZ4k6?$HCo!)9X@WSxQD^Tx!AmgdMH?-Tc{W=ynQ4Ik?71Sno4E^0+DQ zlrwpBg{Ne&`rB&Zt1Q1zd?d=k&-N1EMpr1dcn8_S+zj(k^Mow@o0@r*XDEGF`54qd zRw$#W0s`TXg;S?;GtA6J(-EuIqS$>XClhf%_e02@1Rd>Cl#R)7o;?+1<53u5PlKWM zbQodJfU)*07-v5L<L!Ac!JZHI+6$o6UI<g{r(wFi7@n{zV6MFkIs6&pS&w43BT|$t z+`SI@F_l4<y9inbP1Fa?lo$oIFTY}WWcb-&8P94PYNwg>=+^<x_HvZ16)0OPQMOh= z3%e3|s|q2HL1(-#wAUbMo->~Jpy=g&3Fp*Q51{vw>T`#O-{T3dCmMSL;%Fl{_GWB# zd3>UQX`XHvq}>VW`+ZG!o-s?xp_86zR?`nuMvq+2BiADFF4aV*e~!@)Rgxh+6>W9f z`S)zd#A)cG)Xy@wgMJ+{?Ke=c-h?*xb`+?0;2gZ~WxofP*gH^-eSo!B7%RQx2JKue zOctq)m2F@}Rv3j5cSl8|!1K`Ak1S*sRzN$oeX`s46r8NAqK{*Ar~5<60%#C24ev&~ z6PtyGQsVkV#f_PUp59H+^5Ukolk&sLn!?FV`TA#u%nE3nYGoxh^jBzwuDpiS$%)FY z<k{sjLe>lPlf~L2Drro9nlvVN)!uxIsg&$GM#23JJO3YFMo_cUVjB<_`e_9yO&l^) z+de<Fw%h9Nc<s8!THwp80Xw%0vhvVWRb~V>nIyDM0A}xjEc;93?!Cx!UqNGgA9DED zaEkpM5_~^gY#)G2?L%;_eHd=Fe}Vh#BT$a_OYEZ%vyZ_#2Vjds;RnZpADs*W4kLMv zAZ;B<`Z_^!h0~BsbsCY!oyKIA6C!h+9J0V^j=cRs!q0b;$J;kXHq*~$gFhVEL_ez} z?enV1TPsPC>)_nVby##Fo5(wr^z$OuXR%ay^=%@hmBc9W(%^AacGGJh+r6ZFiuDDO zR=N3BXg$uOdFejCdKP!uK!y{BfD?fRPCIDmoDR882WaJ-0qvYlknePXLZ=&?;}k+) zr#lRA&W3B99x&E9AGOdbqta8&Vbnp&AX$utr;4=QU8ZC);-*_iD_Kc`mXLMyi$Rg7 zUT%D;STH9>_iAoZo2oJTmA($f=)RDJO89HFkp3nHQ~FduALMv#p?p^X-3xqaJhwlV z;^8}?0-FEr^T-Os{RL<&UrxW(<p}z{E=%cwR6ktjBH+%&U^|y0Zu&zbXCO3n219da z2()#sg^tc}=<bYw3!LkqpEDW;I=8^(&KS7TxdBS>dW3T$jB;**iFjS=+zbyo<KZdi zR>(A}jF`s-4|<>Zy39ly8fUPg+_1Kzdxn+n>YA-WS32UKnv<0s(_TB-x~1?++bf%^ z5@pEfrj=b~PEw`oElOtsQ0GqYJ9i<O?}lDZDfD(8LbBcompYFiIjfD;9$0&koT|%z zX>um0xQ_lXDB{sd=f$a}2aBReryr5$esamwyTFX9`SWK*CG$T}>F=IvDz${upaW7# zm4!$pRSro|$>re3kxJ9Sab`kGXFi<jEP&ITWzfMXhclc-a3)?CI!_~|79(|*!4PK& z40V>m1m_tX@|whkdDKhMVTU8glZW~!myg<MFP!BlEGs}bD^Zl!#y?762*j59sLy8+ zeg61lxPJ30TpR`H;TZj8HVU!6I-(N#HqJ{Xvs1F08IEFA^#c7h9H75dktzD-LA?3B ziVoB_L-6L0Dj12ypH*}`7JpU2Ff5K%!9i^NSfZO_f7i{ymF~wN#)Ja~=>80n(w{+9 ze*weL9U5k8hlZs)G*F)|`R_Yif*q=PaFdG=ca#aVv`IlrZmrjC7cJ3b{W55zuGYbf zL4IGr$f!0lV@6hS9A^R2)*S>(K^p#+ItK2JK~$06|MeJ1@0HpFHqh>wkW8xA1bQMj zR3bOTP(4(mYFGo!oVCb+>rid3N9KDGIy;+@@m_-SoGmD4FT*9yR#Xu+aFw$ShC8po z80S?O@4N<gI&Z)v=S_IXc?)Jb+o8;P8|FJZV1e@?R5%~O^UlXm<?O^s=M#9z`4nDt zcEQ`uZurpo40bu6!(L|(PDEeA5oa&_;e16hoPC5lUlYIcJ*nsXKpHzglBUj2q?PkC zPEdzPzH^uqIKPmd&Jl8<^DF7+{6_jae~}^1Q8G>fxkD0ix1^+08f1zz$#iLvInqbU zWd>O)Gs!B+$U4c%Mk&ba(k9!bLw3me<bBzY?3RrXL+gwZcUuf_F{aJJ=HV1U*FhDA z;|aPUQ_~f?5d^X+G?UHJzKgQnc+nHo%e^mbbuhbW^_Zt?x$3cvrykpQYO#%{7TajG zn4%E%aznNNDqBLHJQdo>FtnFZ>}W&$^Bsota@YM3QISS!*^H_=-!ckS-Z(R8mBR>? zK5kefXrc{`>bhHwjx;Pv0jS6WDC_}rng>wtAX<dS)~jX~LA{8|N;TKd)UJt1^rM9p z$L1L-P16&4O*+v$hL(IuVbC&5lw}w+pMr*AT*oU5*YK+>2bRimpcbEIepWCG+a>KI z!K@@$aB~V=7kO|+YRw<RO_eFHullG)mN`@bcXmWwdEj-Nm_;g}?F&Y|fKlH~BSHg4 zAO_0vbZ;8y8?^+XIWZ%szRj`7ebNx0sI=ckex~8J?*R(;dVq%U4Zq5Sm36EF#&}?Z z`V=bl;LY*iZK2_876&qr3ZxH#^u7wxq^_PTKm;>$%Rx-cBx*dz{-ypORS~r`W;Cjm zI#ad>Q=Sf%JPR^qcW~sn;FmohAbTQ@_JTI@0_ZP$L$T}wgJlt1FZ;n*c@d107sD;` zQn+0XfC;h~?v#V!K6yDzl2^iHITWVJtKn%m44#qK!t-(@tdZBjCOI0umt)`uc?0|; zZ-m40Cc@=7QcvDWn#kKoD|tIPMgD`dmlH@w`7hE{-b2oo_mSRmBIzgZCzr@c<TCjH z873bhqvT|AlYE$rms7}Xaw<ykG%`y*M#|)LvO>;4DV{}Qat=!JT(VWpBd^N&<PEt1 zrFkKFS3X7lEuSVkv8~VLNU~2ZCkLboZQE#U@}%$+?{MJJ7hr(0zX#{2-4k4E-VssB z%H}F2RrEU#{|t}mq8<@X@|dlQ%I;w_jv1i}=&G-q=<Cz;b+*24m2x_&c<TaWdHSJy zsnthFr}8PqYHATbxK@0NT!mDtf_kzVLUJ{9m22TVxej{C7vW;L0V%f$u9TZ$sN4eg zV7*dV15+i6yRkX(6`#|+rL7ZDjuOa4Xc-tewZ4@rUqddz)uVg^Z21<x|5D<UMMYkI ztuW3#I$9zesWh76RHF+wfYZyeg*BR`9mctBzXKWaU1%XcLT>vQ+ujm~jr8}ZutTXP zFPBg{%e!}o88fKUT_WF?yA+D6g;6PLq2CGA!WCw|RRQO!okgEH6sg=fqAomvi|E`N zt=+Cp`a5M{x#z%j!iS)1QVyvthj0UABNld{4DLn@e+FFcfuQ^XDf%U}lwUzqehnSv zH%P_r;2QZo43`IBl>7l@?jTH*hu{%;80GB<%#pvsJo!5;mPg?kKR}hAz#2b=Eq()P zu$?#j8StJz6G3@7LA}#F>idyeE!@0oMvIuyvX*7&7m(q%LHebBduttUxANX@Rma-_ ze7ga@-4GWCH3<)fmik>#-xYpxP_@x|75$`E{2ZDg#Mq|vqw&iB0Z>Z=1PTBE2nYZe zR;ffZRHkZ=0ssJPy<>E4TeCG9+qRPx+qP}nwv&})#kOtRwrz98wv(IhJ?GwY_P$?h z&uH!WIp-WzHF~eAQC;On3+{h(!4*x6?96N}oGt8ZMcj={?ElZ7|5EIWQreLH5rfk) z^TY>>5Er05BqHdVqokxfMEVivriAC0_Qn~XU2J5UqG$0<gijY|NPhwJO?0@VKvNt( znOHx*Xn5wdx@5Y)UunSy2w#mn=#C~yMrsX;<X0sqLB0bD!bo-*R9IB#2lfxC*Fkhg z892bmCLfeLhqc<V)`S{Jay#;BSfszyJe_qqcde>KuwAstF5?L@U$SV-U`0Q7>A13? z3}jqmqh52BRgbT%b?n*VZr&umZ|#$&bV^XbVg!86NaLYc($k<>DNoOK$&dZ);q7tA zHTCFdG<{zdWn3e0Vn9>z{_QLn0(sR!Cqve@?VvN_W0RGY#<D!fQ?enU5hA-$rRnJ3 z|KhLWVwowvRp-X5T$M~6?wHlDKjA#H%4h|d<c~583$xekZ?MTgPZZmq=&vG875QZ4 zy~fMa^wB(rk&WdZd<?cM&srM|3w%G%Y_P67Km!_<dwaDP@mVn5*VHKM#G_}lg~dQT zu<Ei|eCm;0p+AaH)0~jGuV*>2<?r(RyBOtR+B+*ZB{aP%+2lS7T3}}~O4*IpWb&3t z?#>QEU`)A9kx`v5`h}qnwL}c(z!n)xt=HUEU59_7%qh@uoueNpZpL><heIroJ&>FO ze3V_d8U-`R>LcFjk2aPOWy&|(5{Uy8=X@fUOg?6gWdMj^)96BN=+q&!#U;>Oh3i(2 zQFhM-ki_osYoGQ#^6lpf7F0eV4VK~_0HTMXf8+#;0*O>uiN*M-V-cnaYuqM!An&7Q zfv;l_`=2$x`J0jMd6j)_eT%{#=P36WpvLZbIKxk%X3wi*uke-=vFYS);;$#5u$ozs zj?nm@iLfWV2#mpSVDA(yVbGCSXupB~DM9J~lz$}x1pu&w3IOo)12C|4wsxdbbg?%1 zj{xO=Td*3WH_8&`caJd}*BT5YH6#HFCY($?q%dFsX)YK{Y&*Xs5K3vH1fxW<wCVl@ zbxOWDV$-^3ijdY#X<s?HBpRY}EmXFOCA?RQrdQ7TfbQAz)TC{^NkBaQPR4WBb@%p0 z3a|T}1%T4vD1Gv-)T?<vER3!3jR}~Zfj#n{49rcW{wjmN2dvwh*)d!<O9;)krd|+S z{p5~vuEF+ZsmmQ0-cbyCGh!63x2|k<*QU!}f~{<kbFDJ{KApZo{hysr^gnr7;Fsb+ za8hoR;epkOetd%)bBOoU&pLX%5#QuxDnis@K<>ViKcMbNA*(q9-cN~vu8?w4?xOv1 z^jY{O7Bh@5Xcg|V{iKB4bbG0R2S~cHH~E1nB%PD>x)i+?FU^4~sdta`vb$VJ+xm4o zNjE%@J1IARygS1#k$guB`Jjv-e5v<-A^B47nOP6wLGr=xp%Z>6^4G_=H_KnngAmoR zoM|>mszp7Oi*AHtU$OwbmM`gU7>>vY5m>vaAGHe`wJZ}6Xr*U0Mm}hWGijoySCN<s zOS4#Sm1{}|oJTHm>YUHRWC)KnC)XM|Xf-JF5E7_DpqyGZ6kAyk^+(^gYDw#?;H-s} zyQ{V6HYK_iix>j6ugz1$HpIXDp|O+#&*+{vibyjpS<fr05>_v*vYTty0MU}Jm(m7L zaMi9!uOZ{KZqir@wRf*rE+%v7n68($>b7h=OBdN5-hf@0UxoGWOmiT%&7q?&n_OU? zQS4|}t~mOen?y%Se9T@)9zFzXV^CkA(U7j5)|-Yuqt_Ea3ZtT>b^gXhKu<Zv1#o?W zy^O|IKgLwdnwFKWpma4sEw6iY&`;2)*kLOFX6;DQ68RWyzH$-qkuNrqm_z8isRn!@ z@T$MmSNQlzq$^#>`>4)u9Kl4YCEQUAsDc{y%W&Ous$6FMh<nQ3L}4s7i@LshvqY9? zD|xv}b6tC(oJHA3h)C8^lmyIyTK=feOx!TntR(4`Yq;@MxTAFAGNBGQfstNFm};%~ zoC;OHAgxievCY9XFZOWyXg;T3Ar5gwi;*|PgfW>(y>Az(GJbA4_fLydT_j3&eU5rG z%>lGJZvO_OZ;%^#sRm*ET!88sQqECaUS3qRb~M<Mq<OO1Dx+^yg~kUKW=|g%qi@8{ z*vW7aqi+n~=nL_eu)_58&4sZRwirjumWrgw2j*|YRK@brc9CLhdCtYad@RZ0CdfS! zQ41!Tp)@ikl%uzbNUJ)Az@9O8^lM1z7k5M;h`npZFaIdUudv@^?)cx+>}<KH#vkC{ zuzSB5zhdBxD+iA$CW4!{U6C;RLl~#n2qSRfu#o^U)k1S4r*JG#r<8@7lL|AzHcE{x zvYM5b64DR+XGj#=;~}*ymQhR<Lx=a`Mex!n1O?+ocmX@9`jy9Z&su>yx#b_;W^{&} zeOO_A{?w~39aP!=O%>Yf@U!fxpUDQS><*T%-V~saKl1fPLN%~tZ|WFO)ZjPSIXdt# zQ6Tsmi$N42s6ZmWo{tr5LB;)zl2K4o8Wy;QR6@8^UKz203ztC@k>^fF5<EuKe<&Z1 zXWXPSb^ByeZX$n6YTW6s0(AWFdM(AOP9S*(yJ9R>a6SeTL@AWkL5`-?XuWJg$dCzD zpolh<9|)x!nTsn!P#1Q^R6MC*$@rOK;ckhHu2i8!1hW)fBZDtoZ-;Eg49l<3<WhDX zrn;!KYJudD5LZH^BdZ)FyMnOcry<Pd>7~i9kc{MuN}oT*940q?lg5dAShltGfR<bN zwoUZ~tCt|sUFrcFRiYFZ@}3wEjr9yo+ABvYQka`#c7dUXb#7sP?D`8b`?%nBvDuv* zi9bJ+>oXzl*z54`>RC_}KGgmEN%~|frk^WH+@aC@>2x*7$VA>+w-RHcRKj$V`o0;F z&TNot2wH>-=kvBGo`1mtx^d-#)Xz*nYiyR)v|db;$GXb)s@o3h*RLb&Df=rsS&_*y zK~K6xF2MTZRL}Z}o8Kuf+{tHaE^DVBpyheZ4Gcq{QfmXt#>GYp0PBL)V8hI|CzeNs zlsrRTrTBzn(5@AtnRuE5vYgI4;IN;j+I2hUy*`iBELw|4h1HtaAj4*O;(z%3&Od;h zEXi_8P=*)ef=M5wq(uGnpdL_np933cpO;a$CDAh*=7E7fVz!~Dvu&BoiogT@l&ttQ z*twkmeZb_g0QFr11Y|XKK({@BGmB8c@e7O4Ib!@}gb;S}LW~6Sj2qdIZ>&dGd_cHM z!RK#92b~N5j0LX9>5tV#LFx{@5%OZ7)^tFLLkYenZUf@%vwT|u&I}?5CXO_Gi&7Q5 zVScOVJuMv+&WvJ|9%6p$Kv-~Km=+**s4LRRE?P1+i@l6dRmS6YaJHtC%qR5+^d$OA zN)PN&DgbC|h+#Sx2Dp%Li!nBu=R%diOB570l6$wpARTozQu@h$i6EMQZbXzLX+WJv zqDfSOY=1gZlv_yO4Sp{x!0XSSZi_=0!f@>%9v8*~(cws@QfNP1&)XrEFhno|Eic78 zNv1BAy>fsR9=L0kZuYHV%(KBaj`(BCakUZ@nI0fTF{UI(b5PXItu!%S^&>j-Ib8C4 zGwrGRK+PkXqLGnFIz1El6p7Di_^yMrr1vR^WMNHsE9#nQRN~qm@Fo=M0`|De@3Eo{ zHX0)Kz^rev!Sxaukh(`wlqLzyh@G1&%lge#n=~1Wg~*-yff|;9`)X-2b_kt7YMu{8 zx=W~SeHq+jo(M{gaW?QJ7EWaQ3t?e(Lvz5T;q94=)*)rsGiMRrc?+FZWfv<7Ru1$v z{Y#&d#!Vh`42ykhYwelo7RUzOp)|kd)E<b^WqQ(1YKSITR?p^-F9=|ow4!(4A~Jt& zJNUmzer2C|qq8Rzh;?4>7JIa6gFmOQ@Wq{e#PxHK6r_LUWb}LR80HY)F2IcxN!z0^ zxf*(>mkh_4DK#JI$Ap?$k!{8|CZ_o+PP;JAII@?^Eqiz4%h@I_&3a$-y~DkO!g(E! zU7)|!9&kK2CP$nSm>%oz{XIxcWzjo&m_j#e)Mjp*w|HyEvvzQveuV$-#A`GK_qT_& zh&X!JNaTS&_xR#CQ-2-9@hPfLx?+(3L6T$z<|VtF=~pXC3_Ie$hh&z2GfvUkgJf+- zs#<}$>R_LZxSsZ9I|FpwkvneDu8P}x<WO?OA_wsp@ZdwCZ)(kZb>{-b0;7EPB`?s~ za@DMbBrp1r_XTiJVh(EA{fU(;X5v{^ip~5W6yoljeaP<8FyK=@TiyLvWRJnif&I_) zCG0P{)O9qFGCeabkzuoU{%)y@iW=$$!x{SXLqTt`4?0!=4|>3(5J6RDd%_UEGl-&j zC~F1e9}jGO%3*aT#P`De6(Jk$Y<PIQ)sTGzq&~V9WxJE!W~14hc<?y;Fk*IyQQGP8 zLv%+xxIr4fWyB&+jB-yZ?vGeJtWg-%D?!L1xH=D|17G<K@=x5knUkYd|08|A_(P<y z{((D1Y>h>%O>9hTo&Q_#Tv103O8|uj7#g}&a3Ta>zM@LiK*9ZlxHt^UTAVChxj^E5 z9+9lJo-4x|t>BANhF%o;9r#0GxC1mYzk9Red9v+znuqHdzU3Q0Szdy`e~tZ){Nx2i z497{}1&81sS-m#}qx(#Kv2GB-BHUDrvGChI&wHc7apf{R8l?(LNV;vKBl8-Mv33V$ z&P7V&3!Vr)<Zn*4J<i^eBsk1^@&-{JN=xGADTmnn2D%t4VY*B_%$i}r!!pdy&v-?t zCScJp{0L-)rXWi-aB>DDFWVWbaT_XxiI20j`f5!VEl$PPBtJWXAb8GhO!Z-?Eq&`y ze@G0laB@s~h2=U+f<G)^v!j5|MdU)Z0CwxP4evNP-gT^1N1;lZQ7jk_PY}{kX#=qj zT=Dl;!AMVQZ6uPu#vs>l8U;*-Go5b3`e@i6RoE-KTvFd0vey6*0?;tIbg&8Hif{}2 ze=&w)lzmD#g*l9pYx*V~@d+=lar@O~X%XEMi&IIEVue7Il;x1q1zgE%8BxU3e1zXZ z(I&A^479mf#3=sY;lD~={wW4J1b{6uIvDf_U-+iuy@&YcPLo8EO0fM%rw4-ld#4pm zO#iXdQOXwoM>U<NX2ThC91c`iQ<z#vLs_}jFLCKC6sk2ABf+0n(u9+A!QZcEIL8k% zLTX=(@1-E}*=5~uA~lulxyx<4?K#`+I_vB0^Ag-o!5VBXI1WIQfpStE;h>eq)eWez z1A7qUD(v7B08d{Lr)2OpkDW{?bvQC`jiBHC??|S)QvalsdTi||LL)QNL{$@T7E@y> zexs0$^h)H#YP-o%q;-6sP$1DCz7z@6h_=eU-K8d)YNnTBC(-G2lh9$6saj_z>!HOv zk16To80;V(TapE#8j5j2LLp47rOZAx_&cr5&DmyQ+26_7n~T)z?FRuAahb{#CR*O3 z67r!Cr{x%TEy`LkVst1^fm)uW)cmCU8;6>~n}vp?wq75W>Tw*(m5|z%U{6}08KRGx zbU3LS-W<OgTf*zBZnH?Uj@t~P!b=(3=ZFiCaT$qDVrxl^Fc~l}fi(JzAT2QEZj^(= z&5%@0xJRHd>FUS|r0kdL2=|gA0b`4!J&W$axwtk_G~O`Om4~rAlkx~e;al)^sKN;i z2Pn4oi}N(vgmk;0K9_!V++lx&+Q+zb%3T{-coxVYUTW2GsnA0n4zm(c^6eLowv-=+ z@tr8Em!L^%c*zg)FUrCR3BmRvjOrHKsNpWg#&A(RxTy@+HUkxH2UqD-mwQnNEyVCS zLM`cFBD&OMmOG|YCSRQ4{y~!aCXN`Gd~N*nu{Fj(`c}d0Xps;;1-31y*%9Ky%9yWi z=oB5dQnP>!2=gHJijuvS!h5L6gZbr2*Nfr`mO^h!>Hs%`*%_wvl1`L^pqi-U-osCH z!Q?^z5Z?tCW(}>8<_l|1hO6@f!yKdJO+_QS9jn>38-b0X{_=_NbBNtAD#qFhAmjAQ z2<C?-b$ME#>gwJ(W+|U`BVqj7xE6O=Q9?GhV^<V<Ty&@hCdCZ!guaSz6xC|pEbtcj zgZ(IrYz!V|&GncNVSh(4pgjAgCfgrDA-F&7?Z)#v{e>wIhT~r7@q=T(1VW+w+DEPW zv$1qvZm^rU)5Cu_x!8$0qI*3eBH5`ilYJAaHJwzN6cDZKTuQkZRWRiALU8|Idg*yM zGU2K}K{W~l008YDfmO-F#?a3Czk;ey{HYwW0LE|*Mc0;KTPHx7-@K3p0yhKMK5D!u zGCj$gO$ToJ5Kp>|RsQb;d}c&(W(MD<7)D;EEkPPsnYZc5hMwol*Zb!YIsmHG$$oy0 zAW1Za&GB6z+lsC5^)$<t^!{|tO@)w06jsGns@T#t|4#w^PRmytHfA@@>P^M@V*Ya4 zXI#By&_OSMYw~9kav!Z`kR#$vIBm6cn_o9t#Rn`pPBA3}g--MJ5=dF4c<T5x3r!!v zZ5wd7J$Zr~{>KtMGFNp6T$jIq7KR%1E#wHks7s~%>nNo>wr(vMy{(qCDT7sNt{*Is zS`{y>{NJF}%3(M~+X*+cwnTqL6cJWofqX?Y>0sf>5F9jSKOZqFQadnm^c-A1{Akdy zIyK8W%A(E`Dyx`CJcKCD+s;DTyv{4YMpJk{C#XShqOxECqdQ3GUv17&nXmP-lfi5b z_yBW6V!8W;P#dX>fepv9-9SVDy(;BqBp;kf)(B4ASJsvsRhlZjJ(3UhZgrL6)*@{g zh`NTAr0+@3$an4}-)rRerdZq%{(3PRlIKG!R(r}{k&r%h(X6q6V1Zws;I1+VoJqHC zbA(a&3R~?kio_xMiXx&*bWMafiO*HamIYE{KyKT~ZE&1P>><|W5Zqs+so<NW-=R*@ zm=vM4L@hULC+W%Fm7tkk&|Of?lTvUN`bpOcp0UmU!HZ}F)y7BSzBd8TDgL>`4@Dzv zt_jK~=o(u+OIz1R+l7!6Ppt+QhjTIi*Iu=3bCJWdbJqI<Ax*$H>jNx_=$Rq$>tA_N zR<vUR^q(Vs<!9mkf0n3ZV)K(@vM~C0k~DToa)2LU<U6A{EUN4?RvCetocuHP2oQzN z*H4}s<F;ESr8eGHQaqyOkYcwF{3dTOO_{q9Z!>5u?R(PB)Qzuan-3te?m90z864Z@ zX`PmnwjF4?h_$^H3F0jQy)E8=QU*y>q*}(2!5yu(rXdZ<T&7V0e&SX6P|h(ue*PPH zRrRVZ#H|3WE!-r}6zI>lgBAUFvPb0=GyH{!C9O=}!N!U@4OCVdgAp%ItF^a3@OX(w zs|vY&>oj*cyVOZv;U}4cbdMr<4Hk$Safi?xB=x!<6HXF>-Cs!NQO~3^<b}#Jj-xjv zMQcv%fw|W>mHu^MPUYnxTb6KvZ?joUe{aB;zFt~|4HDoxuR`XrmfC07e;%c?rXN7w zKUrsAXaE4b|M{X8Hb28#mF=udY-J2=4a`g&|2u1^qNRqchVlg_XbVH0TdEF%LJE?& zuIbf4X^1dBl^z<@d=?wYo<3PPHW;sKU18Hy)wQzH{Zs_+T7|S+Zsl^jiNCaDHv<D0 zZ2lhW<2e2Lw7t`v_4=N}_YGtZ0$*@4;0?lcn;hCA(n-AU2%(k_v0rZ8h=7(K+S=<3 zkw*VOuB?q*hjF;)(uZZR8T(j_F%=w}Aft-X#xPKuKYE}uM-fUMo==mi2+;!al$}W( zMn3W6gNPscB0nfbxCys+fWWJOFl`}4ab9doDL;%VY^Pyilb5&zWdf>`kZxfHEo4EJ zv9!=^kTyg}oH7G9<!FYgt1_!^1+AgeH$8^EPGeJQjJ=k}Q02bGapW_|5L;ha3AEHe z#-$4?O(Qm?s>W2279k|jp`RMj361Vd!(?PSCXl9vz-^Ek?4u|kXHDf<u=J&|j$6mr z*kLnI|9GlsD?nGM9SwV0Y2vtrc)p`=V!8+RCvQeyw8wPR$E(sZ-a;bT2|D|5Hs4l` ztB@_Dbbedbui|ee%!ahIbthS48<fih)ky`S=5JUc>@N0S`$amPi~Y@Z!({cIvTT?6 z0X$ZS?4(kuMVY#@h5gEwTb0atDP^;R18cBdbI9l4GgqNlL(oft%Oh_Z<Ch#XIrXd} zcwU+cY-;>ER?Es9HC$wC^)kiXKPM6_>dJUygQ~1Waa^d2q5o>9(FPi_Sr*wSw?GP@ zaDr-C?6MfFMVXESq`F(CoJDbSDSC8ha`?fEvIq_^W%M2>>dby=`0-6=z;p?j49ayW z#-IVH4U4Gcp%hbLu8EXqYUJQ#Y3VPOO;qe(H|gOs_94N=bh5I#5<21}Khtd{rD0-7 zgJ;TLaP&&uL8%vPSJs!+Q68#~^@WSg*6S0BytgS=J;~}4m+z7M1EL#E)04L@rPW&! zMz1ohhy%SSub?aF9CU}&*ozFI7AU)ift&yEjZk*?wNT0$sSjaBmcGCpD|^%JgMXCn z|N7{Zn84M0x(JR`UTb+>?YIW$5Y2{+j#Ta{wY$hN-J(v0dJ9cnnGe=+z3wV=0Jk|` z*jo*&?h*91xJ$PvEbD9?a|doYu&xU2ww-<ERn{x;G(^QI->W9$u2lQQWxtTN^5z`| zrdw{X`#arQTC2DU(=_h>8asrg$;0^`dLe{!aCW9fj-NAIZ@`b4eueW?)okX=O*PuD z!I8YR`Nj>0E`a;>8a*4lb$VDWcTi}eG-8FWfS0#5lHXe&6ZUolVj5Jnw}Sp#>_`<s zNA$p`)Tv5_$~>DFr&M3-!ya_w;5PwIWv<Bbvg()BdsZ@P=Y_j<{zYL8nlJQoKIZ#u zFztmXyk}ibBs`KE#4pS>2;y{oX>`muqJ@12pV8H`HrcrIXcgZtut6oz%L<72tP3ov z)uwO=$nomvy-_TE`g&ISY`r=g$!N`I<=H%LEO+69-OX$w)RZ$sW<@-a)G#ZvGtabE zf#NHSKkNdGCE`cSaR-I0eaIrk+Xd{R0WR8JL2LY=UR};N*GyN<G*_S3+H$fLN&!p{ zTmf(-_5cN)91?QXOS0Ad^#X?O$|}&DAvH>ljy&dcThM?io%37WD$cJgrsNz)EX-JA z6<(<2dc-0g$%EQapSrPg?wNR=l&jYxGYZlBnIYFtCm~xvxHkoKO3^%!TjyeQ^3hxh z?@Gu|La^hI(w?($@S1Ah8SrL`cODP+J}`3Ym2(oK`k>%+RVkEb!nRH{x5i+{JVmtG z5oNKBIs^yL^2Oc-P*)~hsJ{-KglE93>*YSNS}5oUG-TSe3Uiqfd^z3bdSjyd8Fe-T zb|x&I4z3Y@=lp7D{k!MI?LBA}AmqylPrl=<o6`3CUne2MZ?z4#A3XL2{=X}RO3scJ zwr0{6&L)lq*8d<vJ}Og6S}G{tTQ~7yy0i$q0U*M&<s^U-HY`Mas=Wbojg}H~%c}3< zv=ZYJUbnZ3dA_P0&P&ycQ3Xu(_C{ucoJ~y8)tL^L{g~*}t@g+GyP`bLq$uV@5pLIQ z$JsMG9M7FO->+9*012(ddjitsq3;ag1HRnR#POV1y~ys0c*vC5^Rv-quG}=w7HuRf z?P+s2FwtX&t-)pt6$Wtkimx1PneuhHdGJbiwd7^Thw*m<f6$pbLmQc$72Da1_DDOa z%hZ6_qexLPQOz*gCz_K`&(De2&ee+|SM4!8=TjagJU3^jyuHWjB20P5b~7l_MUF8B z%t@*;q76pSZMu}_FO3gU>y`u4q(xFN6FsPYVYJVSC}ox>ss?7wsln_w9tTlaZxPnh z>`P)LHx19CONd~b&JWH)3(myJ*^HI1YShUmw(oh8pXLjpMIr~2LoTEx#yN6FijiLg z1J)5<h+5-JxT_3V;g~r@AGqKsI%FRJZST4xqhr2ZPdQiDw^LeMFpST74Nr!tND{GG zE^f)jIG(8QjS`Iz#wyi~$BFqDga(95;aJftC$dYAHOe2kLz@Kec4f2U^%KHrg;x#i zmG0Juw{Wo5Qe<iGxr1MqyT=^(c=z5CR+qno5(md%f}OWD2LxKS*YMU?!&r9v#;dI9 z@diixz<^ziDrPUr@X(#CwzTxZ(pof~cfc-C_s*uFM^9+1Q&*{j4X78k)#Q8GtbmR+ z?wFWTmknJ@wyN=VX``7&8{`)?EgvS%ajIq!XH;oKlK`RATrexqDYSq-4U*0wM_Ze= z*eIb8WF6BKDCTq7u<?S`)Y?SE$25mlrzJS*Nx30|BtF8qr%f?>JaTm~OO2TwfE^T= z-^==kS_`11)1DAcAwS)9TAMs3h39Q#z!1ZtG$b2@Rw^}4KDyT_v+g^Im`SiFe%<&3 zCAMZyEL|#%3dOww*FLf7wt)~W+Ef4P--pXE_SC8!lhDoQsb@0KY;se4yLN^m%F@kX zaWT3Nw{GssI*rrauy`NFeZ_j|;R+szTlDWv4@QDrS4cksFd)RISFjOY0LXt-Fw_e{ z=UoRkIzS$1=^g$Zc+8X;tum(?B$)Bc>WwE&WpMZl2eU@7>(5g|%kK4@CB&%Ly5+87 zUT}067U$`CIbo~FWUZpmGpnazd{5N&D(*v^qdE4cq#z`P%jbLIX3C59JYhV(xVzBy z?kim_j$&ej7YSN5g>}v>TjG=g8}aN*Kt_p-ULbEsx4XQQd&?~5MQjGv!>>-pF1b0D zFJNw!Kp|t#+BmrjZPd@ih`+E3f+$3<8*k73GU#0lnreu}ED)$$C&F}u8)EFiv3&qj zCxq!W#N^1&lp=SKc|Lz`zQSw2(hF^o)_dfQdx*k!=%aTS{P|AI-hY|gpns}=iw4Ar zpbevVM8qa);pcM;=fT;dK95*pY)6R~Xc2?~n1&(~ceqqB^b2o0FE!y|gl`RtV|RB| zoH#|{mAC}B!sEUFi%9BzF#3c4K=-nrh5tWb^M41e|IH|E<R^XrJPJ?3(GrG?o}tbU z7_6H0_S+Y=N8K!J%{f63EkO=d>gy@bMQOhQ{vf|4i=$<R+4MTvbb@m`I`?{q)Q?sG z!0w{uJn_PC$6#a+Hxp!li5L6oHyU!mD=ALo?9sQUD@r~J-?P8_&D~{GTN44^hd`<r zv9ZL6d>CLBj=_gcW)UxzV4>Cg-Khj(QAc?_6jhmdAQ~r5ELlCjVxn5=aR|TH2fx>A z!hW<~%4i$M_>i%d?~c^IXD><Dd<t&9H!fEyl)7K)dg=-m0k=Cn&8BbH#F&e<Xf2$L z$KVC=`|;Nzri<AVoK;ss2Mb4G`wrSC;JMucqDV{_2Z1%=+rI+8R@%jZ@edgf{0aW( z|N4e1&KA~A|BciYdz60IxKD;wD5RO+C?Nt61V%hG680@Pf<Pj}cxbq$7vwLT;Q<M_ zk@4}KenCuZP3!&0pyX+JO)jI;$lrlCtmqJFg}dQ)*Iv(0T|VzyU*C2+fYOAxq7YpM znPNGVpXD&6NJ=L1N$v<j0x-~xGn~~2CZLVRXK8-go0<)voGG{~zO|o}b}8BFuS9Y3 zYg8OHb{at`K*(c<GUriA6q;9_rb(?GybY<A!ywg7`mDq>Ex{GRQbjZ?$f1ka-w@BT zq~4kpOI4SOeY%dyv$XiWXB<O!iA3iR1;n9<xajodMlc7Qv_yI1fzc$2oYI9L?KCS? z$&A06l`5~A<98aNb%FmXas0`@toFiQ!u-36##%WKRK}PlMN?j}Go50!xNS_k!uTi7 zItm=uZOXUfPLM%U8~l<pTy<^Ym0Fa0;I|mhB?2XT#Wd}-ioFff53<{f=v~8toNXly zn8tE}L;|daYzXKTi%hjlvO+bl!xfgfEKPcLga1nP8qq{N^9u%38D689s!l)RvTUZX zv5}n^UQm9CtT<(7DJimJQf*=Q3+MS)yI|q^IenGqh2v#!cLZ`qnB@Xs2D@N}V4A@k zN=V!YgDrH*2&IMN4xv5fek!)=ZphncVDZDeor21|V5z5AJ_W-V>a$fFl@m&(I1-A* ziD=PSsI<Ghc^ugwJN;wFGG0%*ekaj5Io=6nhH*@0d!PFj)HqbfAo{#jNHuZi19<ar zZxL`<CcVXMY78o1ff4T|FqROQ3+E{tGi3%AYoc8#u>k<j@hN7N@947XP71ybAX4a` zOwxh^Wr_U9Ffo1%6XSmj)5BKY(Zu+Fb$<9L{+3&iN8z!<K3{gp$fyNG77#vdZ+m@T z=>-udA&FwZWSINLyI?qLPiDr2^re)6i1_JV`j8)fU!N8aX&&pk&hnb>pgZo)>FNFi znC&kPCrUPMO%nl}(5T!^4p-Ssu4ux!+N}<7LB%|YS4p8F{u4au0xARgj4_X$Z1h@# zG2T9gyYsZ(frk&*wo=w(B!1b-(<jeNBi4xt3m@1r18*&ud~jjjaSa!UEY9S!2NClw zEPK|c(R>bvVfxtRDa;DFI}-5BDg3-ueXSv@$9Q%m<~zReqm*`uKpMR6BDS69ZZq~( zbd`3$jNE0j!GqICqBX#hXl!m_e$X8Nj)k`$7chdAy;~M+=3c!U6ilhhsJsu`EG8z_ zpYRqQ3`%WzqW_1mj-m>(=G{$-lMtlETF)Ksxk?EU^#`a=fm;O4!%NMtO=t&ykopl~ zzn;u{(i%>bUC8RsYxe+=ZAgsCXK4TOUC@^V{Z>ys(x2FSTKgrCKQv}NDc~F=5%o6t zT``<{?se2ClT{&_b@c03|0x6W<0*$+3~#1%$hNb;Zrz7z@84RAWQ&$?kWc<~^T@vL z*>IS=QZV!E)gV7U?Aw)C!Fb1EbLIpilKpTbl>NB1Qemhpdr=Lh={Rn&@z!2xZI%%2 z-Wo$*#VRFq4T|7$=cyMc(y*D|fv3B(py3bOL<(G%DxcAl?+o?B7-yi4CQ<#McMi8m zLs*9(wjW^sw60B``QK<iDSwrplt1GCXI=lvQ2ckmQ?mL=Kces~BzLP<qLmsd#D*km zQc!m1<~N~eXlMc_1!4%Hsf*WHORQmi%K65YlEw|<@5U(3Tr4Z1hc=I8y>q)=rFHQ6 z`o6>I;|$T~r$P}1oYISsg^mDD2G04H5oC|vmpz#MaVML}e3%4_OF7mCm??77O|Ag! zgwPkrwNjv|?9!a3t4dPUI|2=q)T_3<(rUM;I!S8ZGcn8IciT%Uu1ZS2du6Fo*B+fd zZfIcqiz>g^FR7|zW&?5hho4?A(`rqyx1}?;`{8Rprv1@iMt{7$Tcf<2McQ?7wMtQH z<EYV(Pl<J6Ins}fp}9Xm+a&=MvC0}N=<TXqf$H=e)zceNW!MN(Wn*sV^fcVowj`xW zb8Ry_*?+d#;IKUDt=dA!p&5V&Ni;WMUAxUN^^LYFdvH|(g6y*8*CUy%9kGDauvf(T z7d}nn?@dk5tYX(<p02FZ8+{dA>hiQGNvFFT$0pqkdSfRnR)&N6wg7`jatz^`fDQ2m zh2cs#&5N=8)OXLBGc7GqncjO(asOZuP~=t-+F(UY&;)TwGylCbHmIu!akCAfQB_FL z6?zi;FO0U<ZX;{^{wpK3YDE^<V~LNq?Q8>Es6tud^T3HVg0$#+ika{`C`4LbEh0bO zhujp;$cV!}k@b}I3*IlfmNkd<Pn##yb+wHPz!#E~MIlG|Y{X%4hC}iy5+{%u`#S`p z(@&@w|E`@CiWvb~w@e5I)#nWtwsaRajpI1;s&?a#ntk$#-U{|1U=Zv^KqMJIm<dwv znH_*JW#Db2L<~Obn{~KxdIeGOdGZ3I&h|gfX(c#)2cN6u_ZxU?=SRQ)7LhBp9{x;w z*7iV7JP>EQf3prqbJ&&4D9kkP8_KZXE}e;b_PcxPxh<x+ZcOE4vI)Ms>RG5yOrTM$ zX0}_2`v8i`NYNPgq8ZFPN_f|y!)@-m_ohh7ey{4wVO67Y2#j75dMWS+3m5|v<jyw` zySC;Jb5*e0&CI}s6<~ZYQ>fW^A1vY)G)~gS+y5}rwufI4d!5bxn6vw*6M;dH+W7o9 z5yy`c{SS8dj}r;Hn412-Sw0&j9VKKl6kpag<1tfcz`sKC>+_b70)SMMRiz@~=~yBp z>kh>W2FTm&&|_p<)|JvFzlS2W?H8cAfDP8CAHW~l`Eq*-pExpDASu$;oVH_}vhOpG zJ73RtcD_OAV`z{ITH|{memFR)lgy+G@C4cZi#Ds?=vnaCl4L+dhQwyS4ad9Uw5o~A z$RJjC{8GDr2iTQGD2Hv=sTIc5Mz!888dMX{q3vsSeFYmcOe?&Noty_OtfuTA6<Am7 zLq{Qo5yy-rL7S>0)^rt-((8<J3BGygCJHm*@EZ2&gPnQ$Y>uM&3nth%O`DK4A&(K2 znDnLmJ1EyWqSkDvaS<jY)5Ptig$dar!IZJFwzjYG!n5uHE#PN~&!9V}%k5#th7wow zv6|)ur+Qj*afdDJF$^6|I7=q-t1^5XH!-35y6a@ls0^*9Vl_oKT!RcK#%tyYlf$X& zbvhg9Yoqmkb~0+|a1N>?m|=_!y2Qck7W$yZpcoP>1!*{Bu<qs?01s&R+tL1CNKO6` zV0c=qgPlRYQkUsB|E!qyV)Yy38FtX2v4(e)3-c6z{Sp=9Vm(0Xa#?xCSz?D=jb4nk zU!vk;->YT(^c=eM)Cm(VLw15A%alh|QK{~cgd5A2f=e2pyjY>on^#&|m$E!%@s_^d zi@u{n_(K~Y;Je6hlaR-U?P)1$C0G!MKbw7UMR8B`fL=c`TR%rEJSaT$BQZ!kSpS>g zOPep)A<$nBvvf~r-HG0uj==*9GINB$RNN?=6unhzuy&G++93m!`7O-%MF^%b_9P&> z0a`!oiBdy%0HONcI!zznt=AL*wl{w5IAr$GX5SfbGB*kJEh90A&d*C?oJqo#(Rx0y zK196uv|xkJNc-u-u%~Z+w%-ff?)#J|x>iU($u;V(y5WOIdpB(QUG8;?02v8cAV^)h zcH0?Xzi$uti9W(w+>D}-DNP37h`thE#_pVp2Bs<Yt*9n%MA^8Z<bwXlo?);Z$1o}@ z_^}xN1k=Bp1JF5)$?Cob35pBLT-bq_$X0l^-5U%O#Cya!<D3Z4c+<x3Fm@~rfPh8` zPTn<io~~4=V<MzsMC{<sx{hhbP6#W4y0T{&N9Qk#A`mL7;M|`l5G@Sb9)SMyp9jBE zP0c^@8v$P@7$MvF;NAHd^#6uTOnXloF!S}VUfTG%chuA$w#4$|wf_UE{{M-2m-so^ zpN@v$@4Qh}<#4px=A~rIg~MSVfNJT%Kywy~K<MjW6UpT1=~xr<ze}ETKgEtnvzXl6 zbKQ#+j{BVNOeUrlx9=}t_F*^p5WHxRWkH)Lq|%qDh`0|bV45lV*0UJplXRdU|2N#C zcb0EKtdfLWt8em!v>~60jHqlsHsveDVLEC~+OWx3>Twcx@%_;-<kGiGX^T^Z@h>30 zkCb{*QQ`>|_ITB@B9;2aCKVg03Uy32#8oY6dY3pjO;fB2;r3B1$#o4GPBkXU)qMS# z;Cj9##x%&qPm!TnOBpfowgiIk5zdpjaWZ4&NV1+p9BoV)NV|_=78d*ohm~sSD>Lb@ zaail&yI`ZOHT61^3{IxAVH%OHvHkRN4Kqnr>_T@->TA7*7AYFpS40@yu_C~5TrL?w z7c>jX+9{LYlEfjD9I}tjo>EmaZsr%q@YMhie`9?Qxn%;l`L%`oPxok?a7B*5Sktt~ z8Fum}H?y6<uhUSK(^xJT`SfF69j4`8CO1a_@1eViE(>M9ak{tuwVO;QiEe2>5Si*9 zh1CD-rh<!!i^+c>85>2J|MV;@oHjah@@s*{QRD<PD_MszkOhQ>$Hpon5)v^`()c79 zrp2EoVxYI*nzhQaTC>!}r;ftkw6wa3@z|AuCJk-AU-?{TJ6(0%AKYvJ`Z3RQt~&^X z_#?Ws&zYCnSqQ?26}6Gm(T*tzrW+$9PZkDXK=0QF@OP_HLx~BDBv?<oPRN?J-6^gn zK=m)pTg9O+odwXKkl%Z2QJ_`ytK@EYm@T_z#g{UA6&R;%W<Y&}z5XR`Pm}Zq&0346 zxmszy>(`h*oR|c0+}P-+B@ZR}%8wTzR6x_}ceU%d^W=SvN%nJZ%1S7*>@SFogklzR zckGW|Ex!nDi&sk8Po`us%ZmGZ@qmD4l}|RG(Uz6z-*Cb-8$%0hhQKoGFAMCD7BNO2 zKz=J5i+vI#A@fTS4@(J&PHB3LjuHA*rtZox_K(f6?8l9ScD6Ut>^;NGJ1K<^0#uOm zoGTOMy>1bH%Tr$Jb)Ht-D6e<URO(xtz$6{84W;dsV2l;El2??Ts`in3!7fe}XjXH? z3y=ALNBwhrPfVI`Du(_aA#bJt7}2qv0d%oRs=tqOW|efaFQ9O|1mdUy9!D!=_g2h# zY-OZYN&dg9;4V{Jv9WBzqhjio8pYy<*(KPU$s~SC(4WATc!avIivf_cz$@&e)%hBx z4cHt>ka8)_x453FS>axDwE1PNsNdl?^ISRgD=!vBXM;~yA3>ag$(mvtb(03NpsB(b zKY9*BWztG#FhyHKDwF%1N26Oi>!Vr4e|0BFssdSK42oXuK%Pfyd(-%Kb<sI?LU8){ zD^gJAj6?Po0605Y)gbOut+Y+{^egNG+`@ke!%hEYW{2Fn%(sV{Rtk3)1)NF4z4Ptb z+xaJ$Fa{>gwfqT7+dp99e`>M+F=j;rTQie?rk|B<lzs|_zP3p9V@E(N2)!)<nlknL zidC8{sv;Gs?V40&s7-Wij*xLv!E3a#r#&ZpbxcU2S+_=f4`LkI4IN>C`3Ylf&)hQ} z9nYB^-#x$Y;rJn=!-Uwgh6OSWZeb%DEHVc?kazY4!O$JXgh5l%UZRIk$*S+Jur_E? zTcfcneP_<5U~CQMdTo$3l$BomSGXuvDK-x;d4Tz_TIuNjmbSZs)IT{r3MSzmvW`o2 zuQ+3)5}mitIfDwT5L9oW`aAnAKInD(35d5!>Dso-e24dX_o-H2yB~_kHEE7l2wPTl zRc~!cHoeFbI23f{gNj}jS6tgPpRHGvwF`-t=jmKh<TT#`X(8=y7?d3Z?dKXI%XV~4 zTQ^~l)<eo$X;vX*yfqx>P+hpeE52OHBh#m>XKXY1RE#xAgMji8Soti>(OkZfKBcfn z=a5A2ONCjW!Pgq+lHD@lVZDg#BZh+|lj0qO`IjK|?6ZYo;>58J@4Kmf>x%`o`<o$A z%_4=QX^9N<rUwR*9qwpdK29yETsnMlKbnf}bDZq%$MaVz$1}@__>XmWT+!+1QyQb; z=y_G&Wzg{|GUeFl%`y}qDsDDzH3JQF005pg?C2bp2a~yU@@WRfs};i^zO2KCP<HHS z>IYhgCO2z7va&Gom8N}$2?~un>Enx|x(+Ngv-T@g1e4zI--&}tabgX#qQ*uT-tW@7 z8iez*0u=kf@-D;$e1_SAII->5SZwI({ahP;WW&Fcck{h`JfZE-E?VjS#OdiiD?x^J zN0w-+L+m_j^G{)Szo2C92R}6eg_+AKPBISA6R4FHJC_c`hh8QDfjx(e*Nc0C-@E9r zo|-;H;zCgM#%4fsnD7i5q=K1piS>ph4u(^ltm}?)PRZU88L4{pV_l<efPJL{MQ4|| zLzyRO5En2^_0@>X3w6j8g==B(e@`tm;}lsgiH#YjA`s=`4;~Ayf)nKxWez(uGCR=^ zu#SjZQP5no3hfltdzwrDWS5!mw>C}}<Az|wB751deZ&IaUp*gOVF`I1J!NmJRhm!V z8a~<fymQV26_o7qY|dArcH;Too76H+aidShy(SnzpjivE&pG-uZe_DL)jvDLyB8qq zLJ~dU&RxJ%zVb+fq)EUVSiuMQr<2lIfzRmvIH~@RlVbmqHvhX-&gaKPmDCV?;RxHt zrT|Gu#v_*XX-EJCY?>r1X%verYRqM<sWi{~G6PfJ1?kXB9>7mmT*3BBnS3v$e<vPX z$so|rO&ZT!HPo10U%h@`R<HpaA*81EDgzy)n#M~J!~i)lNlfm;L^y#R$qYKMMmu?D zo81*jq}NDm_ll6|WwZuPkfF&NA5%^G7$LbO4cT!_x{;wdM70%>bdR_Iv%ye94^}g8 zirTB_Gn!Gb)qcL3=y62fMc~%$vovXG(;WUrJkh%=*VG@iZ1psm&{*&lsagvhJYQex zh6;`PD=4*bpAK}YO|cVZgqXYBRE`EZS>JNVx6FohkpaiFIoEXF?AnMu$)g~bH0ba_ zpwJ(K#Mj4YuVe_?LSlPh2JA*MUMju`TEsd2bl>cFet+0&*ZOFs)s+6k(O=kmqSI1t zrEJH7ZJ&K{)ZB2i2CWgMcbhTDQz^MQQtl6q)N_zGi0^K`8yDE0?mvR00>)yA<kGAo zCbSP3A+rjG1BsqJ2=>LyFCk~3MBtR`@{W#-!MnIO)awLNpL5~0`V@K|*PxC{e`Z7c z1s2i;0tN>N#MpT)b6DO^#^6J53r<?onomjjMkg6t&wD{~s<fpG^v4A^P@KcMxYxOQ zgY7rH!A9&psbKAXU5d9IV!5HEkx++<|62B(=Wo+)!QCdr>=s+DdU3@rZtH4C^WAvx zv;E{VzhjQfO(azDyLdA@jzXsAbL3FVo#&IgSG*+`;-Z@gShprW+pd+)@h3178Ibo* z@+Pki_3Fym;-<d7DR@8Wnx{Z6bY0@PHIZtTg;V<L%R4-2Sj<yECE&Bo*xSq{C+`8A zKYi`Zl}Gs%7neOAD8tXo8<tm5E@EO9qI|^%VH6rV8}b*v)UieA)<7Q-{Ijw-1aFuU zGYBG)vMuyX8K=Ji71-+{y8GdXxK2ul-;nBfsf9=KzxO^S;UZT;cf9<C$E^v+JUKOE zFJ}9Dt)c%s;9KsEIvGP572<A-P#TMBileXUqo@6*DCm{QR}x3y5sbN|2a6@L1}TXv z4zWOiFO`*1;S8J)HmX;0g7X>7%W?r1gQmgRh%t{xd+;N<<sd8(9M@fNc3OsM>Jt40 zMaO{F$9IiuWH3vSUvhdefPVciw}jfZsZaWG$MK)_FCzX^!Zk6l`7b2M^=P-k3kC+p z1BT}cChH1DD+)H<xfmWF`*E?zEehrfE0Z(W8J|hyQ|re<44h&m;%F%#Vd|^Pzy-_} zi=U~dnV5N&oR%;?N&ujWs;!uqo?4NTq@FxFN)TFzO9ZG47C%2DF)6k3EH^GGLu+6h z+b<8+5)u{XALkzi2!f%3ftiY_?&qya059AC$iNjlHP{RIuQ$QM#mtEPfwW&gke2A5 z0p`EnM9{#=!bsG@`llrQUoVxUv|)?%b9XglqnEzvp`4~s+~%@ZxmLG4NwY{387UDw zG^`ueo?xM$Ke%sE?iSj6X;61@Pz?VAu19DKyf{cP|JL9s&FN{~>T-gE&)4S_j38`; zakv)AFW~&A3$@h?TjgWuPitTx46K!*mk^n^WNHS|GU;Z#y;eVNu>O#Fic7_vw%s+8 zuv5FmN|kb(M$LV_4fB-ixOwAQ8SVhBJ=fGO%cSavX{uxF&=D^ibo0<7n1_#6u*K>I zOv4$(?+?;H#}W<wn8QxNV|vb5q_(J!idnKGzYqgTHT<;|zvChSK&5^4-B?1EqTs_7 zIq$9n(puW%kggabms-25)`N#4P=@Jc5WU{8c~n-WG{fteCpFu_C)6rzY|W-D69_%3 zQy<DCi{<x<WUJiPN1(R^8;p`(nS@Z#@XY(7w^_%Xt(~YS0#T)ng!)K|G0?s=s{#<n zP&NlL1L%p6uBcWAfk7>-CEQC1!fikqxD7+KPd@ypg-Z1tx*Nq5VUW>@rqyL5CQYH_ zhGxpVz63`#YA`p;Q=_zMW|{v0^QSX5HNP|ub)-`3q=KQl<+44jELPr^3*}c3+bxwM znu-#BTZJ!51!bp1WY4i{#GLSTamHYvRq@U~_Q9-atlP{ZJI!$>u!BjNhuD*L_kW&Y zWDB|T#sAr3T$6wTKN<^0<PU^E8+8J8f}4VhgGlG!NABDsetFAtTya449hVB6<RX-k z4V5eP47r`SL83rr3w{F1al65iXyp|$9JSb~BL`_Beu+VF50T$_{(6?X9FYH_j2j7~ z7jTWDM36C1FQk)%e40n1Dp;Z`l_hxQ@ZP$2sb`Sv4vB_cyquRszzMdC?Gmkkp7{MQ zdyeWcd%^i3-1k3=;QwaN|7tRH`A?G}O3)06MZssplU!BB8Cmf>w;xgH38k~apLYvf z%f_t4*z%e~%H96|(_-jlgb3*Zv?D#ubG&W9`+qtNVdkoGBXNgm3&zaX%r{OT5@(2U zi_n3Jy&Qk(>kK_h_CgX>iB=2=ljdbkN}RU#6?i9qX`iL>$tH-;OtbIW%zl&a2_f~^ zhirCUe`%FR9;h&?upz>8K^*)lD$9tEIA1B#ELNxt!KvySMk^REWjF)kDO>Q^x08fy z{2iWBK;QbAG$$68?VkeLClj{uuu`Hkt9!>7%Emdn6pD&52$q($sjIUQBYrHohHXqA z{zV3Barm{q{u?HNxAzIG1as0bSITXD0{Bq|xH7*-3>Z$rVs_2%{$HJjHwXN);6G6! z0|Eem{Qvf4#Vw4DO>F-|ApUo}h*HtA!&X7~iawCKpms=zM@cUv%>y*M9JcY-jgLKA zR#fWXM*@O<FfghyD5HzJ%q>O|Bv1xX6bV95^Z<KAEgVK9Aj}ROgx@^|*txK^cFQs} zwm8aU+L@d_<Qn<?^*Lb&K;}RkK-`KjOi(PC8l4NxRPUiNXbqp;KZI~(%!Hq(j!=go zz?KZ+DFKsW@*W;aRWCDkrh=#j8jltu4Y4BVP7}C-+P>4`XgXZFt<0XyD%m7Rnnr^T zW!h|-B(+qivPn&XUb!Bwk)e7*m)2sL<~UZKL}hB*<h?-6vV}G=WZ33BG=4ZaFIi=X zC4$Z0V%}G}jPvJwA)$rxT@0!ZGlI|z70k$%8v6(&En8jbhA!EO47jK&-ovJ%)j(A> zDhfzWP{XuM<!?C^S?_3(mWI>9G*2KK3iFDuMt8~Vd$xvFeYr+Kypttfl#FwwW@e`H z@jXjJK0W%m{GIS|GP5CVst0QVjf3o_28?}*p%Qh$jrc+OD=%-eo~R_Ml!Vx@Aube3 zEFBNssPgfyL7rcRbYt9PH%q<ZcDeDIP1=<C1d3L8Zk$f$NAJt*tUb<*IeV}{P~7*V zV(c$w?x+H+<huMl(oCBdZZa)cA&ljlO7?C)be76}8CWZKseuioW6oukPGUo0d(L<) zB%<vh3)q<h5UqL9k!C@Z;0=Cg(WUXLjQ90PD6x%ctWFgO^`a@7_{ST-6#vLyKXp_# z+~E>;kMQD6aI@|6zY5h!J6$U9ZX=wIDbAs)T^AROjvSG9m+U}8YNIpwW_`aV=wzB7 zLn~s|G>M}Jif|5X!{uUPJmq7q1y3!(c|X;hb#{V&gZt;08<-}3K7jK8MI!Bu0hAo4 zK+bFJXBMh1`m}!`^yMHbzTj?gL9hu4U%>N(2xacJX2tGL|GIbn^RY+fq*X(lKOc!Q z`|0wqn74F0=!UT?VK*`6L+wTX>_FHJKE*4+*DJr-Bw~YGa}aAZf50XENa*c#lH4TM z{j!_mHDz5gD^<ocApznLUa^qchdCKnN0CXoG8317Y=Dq9!W`bHYLB>)YF8#p7!296 zM7%hk@27lgbRZ<~ZXc#7)(J`(1wnt{OZPx&vd@2FK<Aux_tzg1q;r;KT!IAN@2ztd zJF#RH4xDp(MheIvj8l0eVLJ@_BVwagXS$Wvs9H*16aQvkCZ2lc>(=CEc~ma2YfU}T z+esVhQv}LIVW;l6GbFZKYJHU{W}!n4BiHyT(~bL{4}*1Mxb}9Cw+!hPU%Q%=q`FJf z>?U%c`1)W<+YGU2)0E2g9?W<0{Q=VMw4^i4%{_wG484b-s+*+fiYTN;eTirO)XF>1 z?gq2lCs6UY^=a>;=byZ0t0c1l@+U-R|E&Kj?2wTASD^lBCXwxzN8nMy3)18dlJv3O zY>J(QpKWDGPtBzzxS(@i(588gSB&gA6qM2a&$NtiT5)r-w8_jg4i2a8-@H8lFuPpl z`G>gyTb$#o4Rv+}GPQ|>?gL`C)I=uv8SfP-Y1+o)CrtkjWA7Mb3$ta5mTlX%ZQHhO zyLQ>OZQIyoTf1!UvU#if+>So|#eLClMdYvbW5t>yXJ$@~A@rzYnWBsEk?%m9jWCgR zEQq8fTynH!#g}rXA%iTIouFC5>{)Yn>|v8zjAvSbat|9SIAc|GFfbSph1E${Sr17r zWG;z?s*f1kI)Xju7NC-fJb9@`mquj9nM3g5O@YW2n=W{k{{0we%aXmD3|mznHT3)Z zs|xEpJEx@!4SeqMaYqop-s_V+S#Q;wn==;agiim(VmDqf%^NyK|9=|N*uch^;m3&3 zKW{kd|JSMf|4l*?q9`l<(_inq(JYB<TxDz30;Q#J3eLhWa7*MBiDz@>tDS~m>rN^= zoL7>M%JcFwKeul~rKgk}Vt72=?a9oYr+<wP;I-yj9}x+Rtcnfl!Bwrf)~H}kF=SLN z6x#D^(gf*!l`B~hiPH0n1MPX8(~Lo$2uL3DN!uT_H4NsJ*_9Y$LXc#5*@p}1_E#KP zFbeXr{JunD=BgEV+eg4VGM%u0L}KKk`n?AY9g(gdhl0D1lHAQ1RYR_wf#Jq5oD`i6 zi;f0Gr-pdMo(1O-KQ9JWMyHJv>*9~*8l@RC-a>tgnp@rzg6x}pQf&X}yv^a!Skqp- zu5?^d5qL7!7U&wbQ_dB2^hxrb6%N=RD8{PhRB;O0=RsbHE}-EV=xES8`92!v;R}<= ziv1Dx|7mzTm%X0GAA>*qEYknC;a!|O|FMbxJ0Q@b12Y4oa|5$;1H%&oW6PTAo<ial z12co2W)K5IJNZaf`H2tmrn*)77B-8Q3gd^0aq=P59sDd6ohr4-!imun^KvrL|1&1Q zPS#RVInzqW)>25!$SeEL2w|{)p#LXq$V*pGR4$HFrX>zS359AW2_gbUp35QVhX@t` z4j{pfFM~K{W~jHaH8<FVNHqgb)Dbv>fdLW-2^2ttBgl#fK>o+;ifgr&E%s-(b^q)( zvj6v=c6a*eUKO=7x3n`QVf<Ib5TYn44a|t)dp5<<8mp~KeFfEOSEP<gFIu30QsW_S zJ$K4NY<Yg?K4eTENaTSq`$h6>4|bbh9^f-ce0_8@d9bm?`^z)BY%aK#1jnW8RCYjU zWcXK<Ai6M&?6JTK89Iholum}gJNI6K0%;Lwon4eNZH$KUyHbQ{sL7d52C$(?hzGTj zWYYvg!e?CihH3r%Uao-!JyN}5U24eo-qA0FHYByUj#4WsZJtB&P5AcpXZFdkLZeiF zq7ES8N|Y5>(dtPFgVQ$e6XM!1G#GCSv4vrXpzpTj@mafj4GTMyattm%Aw5CLf_uQa zWs&JYiV+L1ZwPv(Uqik8VFlcw=Rauj<$|ymnAJDVFNJ=qnK~4&Bb&oi3$Wq5nPXA> zb$KwDpcJ7N>;lDmtWk+k#wV;e)2=_uz$U3h@U$+%xD6nW{CoPs(<fSnJJFE=u7TZz zl6u);y@r`J0GcgwP}LP|%w9c`reiPTQ~DwVrkC&=yYxmbFsGr0<&CneqH!*WkLmAF z=<Pq+(ST7DRla|ajQl~B_J2oI#MH*r#Z=zm{{kD|CpXA|Fv4GEnG`Be00Z-ZC`<|^ zd=Eg73ZzsFRorUiK1s>cE_cLn)R7*K;Q@dL<#+`IZ6NL5_wKSYeiAp^<_-XSNoGM1 z5ifQM(M*@Dc%_v8XZC*4JHSDMFJ8dB7-nlF3iD4zwxwF4q~-?a7KJ{J+$1>@vbiMP z$b(Hvk+pKY=?#TClW2Gjgl+(`Wp?Wy`>h`8g~L-jN(6u7Ol)Dda#K}B(z$Q*k@Qrp znbnym`0axbu`kw))Y7rF3K_>Mb)GkGf>^{G^jG4SPzxs;$7SOuFP~O_0zE>#6<oy8 zVBBBEwHZdo0Jb)cS4^O5{bW_JGaKQ3|L_fZpHczGA1fyR_y+U;Zb?ZyXHzE^AyYGZ zr~kI6;<y};AcAjAKSgYQdlWPs_-|7_fCIonNXP_{7_p)-F({@;-lS6TR|<MEF=TkZ zU-+igjM*4zSH<U#7hcOb>iBu~*8pzynIb@EhC__0LmW(mne_~&hH3;27gVd4kTUiv zmF#zVT(%WjGY#{#R;c%7Kn;zn1OYC~sxBCt%aVCxURjt?oi4Z-Vt-=7n^9P@ilbg5 z1@6|MA6RkQ3oLGjx=4pvNv>m01-n9@RHL-7gK=#%Fd7--szX4rqcj>DqO(I#18gf~ zw7L7vR;eq6*OSZ7EGu7uD*Og&DMULrQ*+>4L9+ed9_3i`nptYgKt>8xrW95oObS;T ziuk<;a;103ml4(?-_)kQ%}N9|RbkJeAlO{bu6Kw>h2;ozfDsC+aKc`jLj|{gsgBw8 z2=Oo;LORMg5jxBiLYs*hJcEE94`wZy?O_7bWAGf{cwa8+I{ig0n!g5DPT$KmL>VP1 zeZ2)a;e_%1hcAdHMDmCIAUN`aAl?6tppvPBjiK>>gQvtT{{!9^S^zQ+>TSTppgCZ; zf|dadOQwzy3t(XlbhL*TU7E3?Uvf-D+|a<n0KRGV;7GUyGcz~yP8;*i)%)lq^)I58 zLI`83K!p9?j94SECNLy0G*F`0OABe%3UUIPfScADn;zo$F|C!olI{dj@k+IdN?z@j zi4Np|UA-<zpro+Y!lEnJobJqO?rg?#@tE3UiVWOeS8lVj<J2cFu@)^`k611S@A)n@ zzM_%d5_;;VD^09_tI(9ueZi0si)An{SQErX`V%8et1&cC$D~Sd>sVm=^axiIV7c5p zC+!<7DMh#OuD1$e1<v$Szs}Z3<*mAEK#YPaIxZP%SRR`NeCj9icS!fy<7=fWDHSl1 z8?v!Ws|Aj)RW;fXzCnJC-k}~*^gDtmwi^3T83a@R%8<9?6FyXqgV=n2mu*GX0o9sv z_`StuKFawVvT0Nb@GkNNNNmr*?(-eIOZhHvb9n_mj;eo605+UI{)NFvQy=GyGJtdJ z+0O7zBF6s@NY6EVUgdw_6#WTYS^xh)`k&XAyu;7@#ecK4`6_GL|75(r=r;N}(4?s8 z<|0v3WF2-atZ9Wve;1Z8-cAG3anS0FF;MVNfXiO8%>PGY8dEO!{z9Pd>rC&a^VRFu z!6Z8XXR_)PF`fWK8cDUpZDS-zZFzg7HBusy64U|}P`LEiOG3&+XK;3KcVHIO6@v%t z{Jt@mn&FLxj}2pRmG>Jr@6NI)xqh3BunQDSuj)?_#wARmnbBINr|8nKvk&vTlJMoJ ze0BG@cKb9@Y|nTbM{`ItNx2}a$So@?1SREJ`%|AQblAj74cV%PpDC-`W~^Dd>(iHR zY~*np&fgvjjXnYnb#`0=7IAYKVI(kAG<)6w{uz~L?gl{`3eS?lKy?sng_UOnjMv)D z7%SHxskDhOqcFG(%ZN!dg0K#{%KG?wRosYZ8EkWjwul}>XpyRh2!uUK*O%i^`0iyx zyry9^s~O&1DRy;dFZE!!-ob<`HZc^Lr?l|5@>uKkfq3H=Uc)|3?@H+~DYer_FC9AW zMU8UYP`|?xhMbS(NlFIv?O6~YI&J9XgBkQ9Vv^}(90TzV|H?k(%285TEJw~T&sHQf zUWea4&mA~|D>C|TO@?gZGd9om2(ZO4gR@gWowG~8%{+-=hg=4kD}ji58T6(QP9EY( zP!V#-)bP%5uf@E*w;S>)aTE_Z3}>C<3qIAvmevI}9=7gf84AO}w$upEZ4(;`wvXjH zh;F`Msr`z2F@mOb4qUAUM)B?}6*zn1ms^cE`rT1!kOtwN<%%-XlUMY!h+k5<gq!`e zFaALP^BoDzF1s@f0|1clQ-dY>Uw7!g?%f=9Xb+WP)Gu>=cX#J|g8Bf`JzRoIyKs%@ z<S;CPF)O5a5C%S|tV1%IVA;(r3IZxsA64o?A}JA+W);z4DoBiB^!@igZ&u5dz7{_P zkk%44Td$eR>8s=8P>bjHr>UHb`#jE*sSIbc-0$l_a6lO}PP^>L96J?*w5Z-I11IvN zJj%7dp~Q?I&SdVC?HjP{S9>#fpwFEN5xR1lX#wvI?7%4=0>9}u$A*Js@Fsr!s2_@e z*UgXXyrbgm?uB_4M~xH9;Hf&y#Uyxa#*p8TF!Pk`#zPxxMwNB=r;jts<eK(7%jBM@ z>h0E{XLJ|unzBdULb>ai-eqEkc;xi?jUTGZY#W4ZAJ(;{ch~IVvX>g7yZcQ8`44Wn zXLOGmUo*efWU0LV>Vso`jW_4tuiK$~>A^mF0Z#JvIE=INiIz|Qko=v8>QlK(5A{{K zYY#Njq1A-8iq;HO{#!yMYQ_?7*hovJzeU2@7H)a6qS}C@RP>;!WhAv6XH2s=2OXAK zE-G|?FEw1i&9vT1b2?CYvMLp{>Nquzjvx>y!&!@{;fJqDAIZvYvAVer0fVW{NAJ&m zWTq)JIxUB%qUKR!W#fcXz-DAhfwM5_bb*Ajq$>|rEXy<k#?l~iHPi}C6<n_3j1U$G z&TXoyRxrx6WdHj9-f?221C1Pkxpi|1C6<<K(;v&GlmfL(94WLB*H3E=F@}Zw8pEW& zhF?VU4IV1cHE0+*f|=~%(j?j~I3$3WuzMQ56zd9@ku^vdCHG5hEbP{gmr)v$9<J8T z<ChNITE@0G%!3IIA0PqUM97{=sSs<&%`6tx)*OYZEj6`^g{%dgW>}b3p%6?%sPijB zM-+RJWF<}WiC1^5k6KkKV!zD~<0&lF(JRS)ZAFpfJ0EUav&U@W5gQox1OcrP<Gf_n zO41dCg=M8(rCDlOPx+2`5z?&+J7yH{EQz?GV+cu(rkOQQzLAm<Qwg<KFjfnJjJ++H zi}1B01CNoF!4)d;Jw?sv*vwT2Ex~03BFJX&zy<2@B_e(o2Rvq&l*;ojOoFj^?mpr~ zNEAAYiromv*{66~3@KLcz7~{nT|D{2!(tYko}|VKC#^WUb-Um!aHfSGP@4$lD<^LZ z{+s~kH(av0;1kxIx2d4>3?cgEoDFQItXv^vkTh{I>{$*Y+Ftp{Q*vpTBP_*J!{#H} z$5yVkvb@$X#Ku%pO#1v`S<yIX7wG$Bmg6XjYkhBLnw|({za7dmHq(RGjTS00NNRbI z;Kf_8q^u*p0!PHO_%SSP5YuhKaeCC%w))A)#FRg>0jjju3m@0J8O-MqKTBfAtBWGZ zs*RA;8(=0?gVUD+itfuRbVEYLP#<+-z{;v=qr`-*|CpqD#zr>X5;yX)^7Er;3#No0 zC|bj`u#Teo)b2xn=!!CrkqS>0Dh{X7T;R8h4fEg9ql(|yqt=91zCe8!Ky7Vo{7lrc zQyEz(JJLb;GPgoT;}ImtAp%f;)&zc6o|ZNT*9GSnJ@Fzl44?gi__Qn7M`M!I2u`^~ zVnelV$Q=i*tZ%A8UqDZI1R4eozw{L~WS&uXM5Hrwf^=uEr=C%6KvZYwNW_(-`=q3A zg3LNA#tQOq(>5*=!|R1ouNnxjRxN-ii@Z3E8Z#qfFCQS?q-s@2Gh<fS46otcpcMrr zcC3jghDbrT8f6nTsa&ILRN16z1Qo;EqLX5!)Pz1)Q^HAn;ll_B+!iO&P}_3;IC>ZY z+)V2Phr1rk=$4uLed(H2XtTC1_9i1O4**GO{(zgY<R0Fb&(p+IMv-l|+UgWrq8&m= z`#8oCbUtAfQzsEo1@l-F%zQXkR8u~*evagxOjxm$om(~n>*AWQJd`vrEqMga#q6qr zQfOV(qR{LY(jQH90QA`*h2GN1DpFQXO2u4XMqyzU#5zJIf9Yz-nK|uQnk|i#!m#zp z^v)$zQ==8^MsSmJuC$+CZ+?cQyEB5y-$$=-VpIhLY?C5b&0NioFJX60z&_G`_PJio zk(%M?SBDhD_|RDSD<n5v)nT64fiZP%(TtK;j)o)Wt%Za5&ur;ehULBa?-A30URxa} z6YK?TDxSuYMk4J>#w9sI8)P*ESY>;jY7$U~*N>p;JQpDzf*n=rh|Z%SGY(2lMw1jc z%P`yzC$7a+$SC>Cpp=Md^DXeMI_TJSIg0n)hu7zXCAxNNXs(0?cq(7>1sybCyg*j= ztP>|Ji#q_PYK_dywvy!ZXqZCw_$Txvdpc3H+I|Ba;n_1<3~|gx5N$?Wc0<6{gtT=? z(Udq8b5Z&wTkeolXWV{*fYCG4Q~qco{+KmxhP9ml!dBd|!rF6wfVhz6@)F7or^XNr z@cH1R46gXLny$${_KH;vCuj$5rUvAo`Y5*}xb;zP#D2TveY&a9t#FAt=;paT)RWUI z>ZKN^H>ak1Zic1PoA>-(zliYjaOJT*HY@V_4T)((G^QbKRUZsbr{Xm&2Y|sEiFQU( zdi6rCG4q^<p1h|w!^{Z6+DTmT3&osJp-dNoo$|3FhuwUTW>P@NWz@VKtHReL5Rb@} z;&lrn>W+r~aF0|QUpb-`5`@BN1iDPmb@314%1(yH)B&3%7j4IW>y5bi61TV>+>MNA z`lmH`0~l`OOP8?KTZ9qN(>~<bEeG3X_v<S^_aa@8T!Fo54Le#_kIRxsaZ0{lw}EW7 zYFz7QuIHz?(Rc^0QcDK=kU0Gyca=3NQmR8&S3!8AY%(-Y6fCUsQtvr=21z@A9&p=O zNjfQ=)r~mji4XJZ;)!W)7II9Ae>B`3_AvHFWD)|9EA;6a8T38s1r7}pZiq-iiHYtS z<WP2j7?IK<71v0_4!9V>v@LpdqepFxh@Qd$o}wr@NJ<wXtsCe(yKV2PJ3WAba4DEB ze{tZ+G0F<fum>C>n<OGK1racln)JZkA_fc7PM*NeAzu8dTLW<?Vj7l2au0~j%0JlT z^AE7)H2e^o(rFjrjL})E69ptT;j2JTj{l-LZ;}EPq#`{mM|=EDOA;lQ)Q%VR(L5ME z`SjYQprfs@88PmAptnRIO;ef>mB=MGmsFYMYC<X<oxV7Z+Je+X2y1-t8wDlHV1{Vw z4^q>N2`>NpH3qR6r=bwiy>XK3M}QHs46q?fM2E&G$QYuVl`};Z`U+a~%{muj3GgUZ z0(Cs?0Fq}!EKjOK^ptc5-@Jz{85-Llv6iKYF;m~2owk=-7SbhrbUemiHyt55R_J&j z<S|bWO=7~djOzU|71m`4&OCw((!)DHqBi(LqClJYc<RLX;FAh2^k@XKV|}6c7$hfC zeTjUH^vmTV5W`n~$@_HCwvb9(&r1&CL#jX>S>gvT$xsm>B5L#ATybaRqxs(<qBcZQ zaYVSxsak}C;S5aB*Niv%@-E1=vS{#Ghw8p+`ruNwu(%xC?E`8NYt_Uocl2R1)pRmN zSwrwucha_a+T0&_+P~?dpVtzpuZQN0^1^_uyui&|42~CK*d{LRm276EXcI;UM7S~i zp`nJ|aHRjTGz6K|ac3ryW29`7BCeL%B6QIuMOwfgiV&N$1wX8@jv(auu3aZwvY)ah z(`ht2B8)zE(#y1Y+J+^ZwMc^76xmW>{Ki}MW!;h^ZTv-T!kv3VLF`sASycRbp%*6{ zb~R+Gmo;igk&9<aF16q>V(SvF()Rwj9ly0j?}-xeGxEHk09dyujoy?bm9l-q9(^NR zZS-tZw{@bp;FfT4FNr5!v3MXe@qoONG1S>jr<H=E@5as4P1mu$5F<CxGq7X1fiKAC zyDblCMZbIwF0mGrE<<h=xfWMZ2%WOexD+`$PXecC>xYFsWT-=%TLAtV<)P3WEk0D` zA=4d-K6K%s-W?J*wDBU;9Ynm(>$THI&$AEADCR>!rr0OqBU5F^siiT^X7^TxG>=T| z>UAm4KIE4W{n^lC<S)VWbV363joZ}!9S!vD4D~^;AoSO9Upljg(KA#0v6E+p74L}H zq(5e@l6jWM49<X_((oc;>~5l;xnBE8fhs#Ka8kPJB@^n9eGGNSDEzcEAuBO$&-ej| zO(gPMh?AdQj!n<kbh}Z5ac#i$!wl*f<PAhOVXr3^j9Tcm5&51P*xTFsXSB-Hk!W?F zXd6bTjoeh0SdzwC;|^DuvIGoiqF8dmh)<erGZp7h6KwvJc88Z*i$~-l@q^gKkDK2x zx>~PrBT0}&%iQ(u-JCx#6reGh#EaUEBuS<cs{P~LF)|@154tS?Kd0@0<py_LZnjpr zAwE|qWQne@HGSR6YE(&E_^-s+&i6mEXGAX2c_KeSx(MXIj~4%DG5KG8D9S&XM`IWJ z|7t=}(^lS4L->MY|I^qG;y@>W6xM72Gt43h2}@ETEFruv5D1yP9YTv8K<jDJk@QvA zo0tJ4nPK_1lJS+-UHTboVpG3-_VD|p`svc|{co=BxWDhqUw42-ii-Bg<Unw$^?0ZQ zC^S?amH9J%8p*SS<lf{3W6(*cTndlMLhK5J1t)*BfyhmDRSOS1K@fVBYSH-Lol>)D zO6&0prI8d$N^erbXuYYE>`=X`H#vdVpl>o&I<CyM#-}ByJtit3g=e~-<h+`$(?)j< zdVd@r{}wXR&z)sJ!4$hr(sGTvde7GT$mfbt<t95mUgq|fWXi74p~X~Nud9)s;m$W& z|8ACf&K2<XF%r%<o}a-4>akp8QmZVn9n?$%1oe8*vFrFPNASZLd6`6et`-1@vq&{1 zJ=Yt!N2i86T7SMh{~|(g%OERnGjagv@LMnScH&W`*bgnE?0liBTJdQ??FN{ccEi+6 zt5(eoWCpy1P*OaoP<iJJqxPN|TAk5^5wug%bKFUGRD&EkKoH5|_F-D>{xx!sPTN!4 z;7w-N%cw$TW~~;@$97P!G@+qNZpFi7;-cLn(r$#<h<lN#GSqPhR7}f$lO`o<+-1GG z9gA-SLz_ImiA86yJQQCr|KderkgXBuL`#Z<VSUUoLlDY~@d%}oblb6Kv)ay?5Kraa za}aS(&TyFJus?e#-L$KrTermt>rNxSV#@Lbg&m}}l|dtERRO*vKYx$;(xN?R1Ix@% zDq>r5iehb<A&wW;UGb2mSs(``K4*QmtFz}q_j>G)x2Bvap4473j4-W5*@FGEn9G$5 z`D^`sO=g4|D&QImkTD=Yz_G4Zhm8hjKt=yNWG~EHh|b0;gw9Kvx~Q}Ms<Bwmn4?_i z>`G0A%|U=MItzP6|MS#0CT{BkYVYC3i(YI2E^g!S>(zBU?A70Fu&XTuC%5*WsumwD z==0tXqR2jmt+u!YzX15KT%<0zg5JFb!S9wl0)q75E7DB_Ku|J9RbXs#4en=&eRT@u zq%a6uw(O%Ya2DlPk{ifA$=*fNt3*NaoPl@Odpdc}LDsXH1(%=%(l6Kud5=eUkzCo& zh>Ov=*4TO30p8D^u+sxg{cldXuv7kl{;rD8QXD(MSVeqr3ovJ%y_<yGXvRr$$!75d z&nUrw&j)({zUQ@ILVg=Qxwugh(P<*+-ry{~2+#!31o^}+QJM%giRRcg4tjx!Gmux^ zbQ_1ehTI#g+(iA%b<NFM!p&+z7zvQP#bGuNh`KC*T;yF)z!jcf9p51BOE5Qy0N5aF z#ZS(y;ra;}?is$P7>a5hr@D){XOEkvwpU9TaVtRXq-5|2c6Px$-)1O0?;Tp%j85_7 zRziu`a5sOBU@w=8EI+1=3(#oQtc&7hZehhTxyO&a(4VbVR;@M%7QF6Y>DaTnbgrH4 z2hsm|0O>rUHpl-Ye?Nb+h5u~n`!|+6TP0m-AVmaTcXwT9-RarhrN&c3U1@zU>Ocr6 zK@tV8z7-?w&WTR2uQEKS#QZQn0e-5?uE;YoX!9#xXS3r?!@mEhM61--35wDMBHRH% z0l5vXK^Ki7+;!jf8yT>I+4k%5c{serhpT)h@ZVddapzbqI@^{xPayPIv|@dFR~@aE zo3|Q!pTKAy^tHQ8=IbP;8ur+6s~Im@YuiP&bqx)1r?xFo87HevN5KPkVxVr*v@e}) zpYv<Zu+U<YdWqX$Ai$=HL@FX5H=Fq%ZfmNyG9=&JPdnCaU8@Bn;&K^r5zV;-H<S`X z#So6;)?KKf55b&Ky8pe?i|bNG6J2kR+DI!1cjBTfOv5kog9(a240i0y5h#S0NI!yS zNRlPUxC6Pvc5D_HKv4y<JjX72gK^ZHAc@a*rBE<I5kBTlUiHj4Ptp#qc&!im!>~*v zpZ^gv=fg(-g=n-utu6g~MRXwgnv^0%A80{%AZD4aI3GGlCprAjLl6ChvvgF(d7Om5 z%oJM=>E*{il4&|UzjT3q0JQ&Unf`AI+5fyn)Gb{sB<)O0J^qzKb5*jnUob%7g}47} z<r=iNY2w^pidMb*J~{IAo0N=Xh@KeB_+u^xu4)d6#_Wrn-=Z+yVjuoS9COwdGD2qY zVe>uv<UdwxpP&CXWPYeGu%`{Qj&46wt!29%L5MAG>QJPB>L_ebR%>h)k~P;kQE$mX z>kv2BRpeD}=sOl3MKN#RK`vE!sZi<Ot6qCud^6Q7suH;1sH%pIXYaes62DWJ?Mb<~ z*|1gXHWz-j*X(WA<DkRo>y~cC+)kGv^Ho}7CgNfaqs;{K14B48%AMMg4L0Zj0|so| zR#`4i%O>1*#}_oc53*}T#P$$rH57`B&Jfh+l)EPr7pG%b_YyTS{H?@pgOE{~jS)Dh z7Uc#ka@U&5+|ysY>o)U3!kUFA$GHO|d9;Yt(1=2mLtOq#*bDzG#j%kG!MSU2zvgj5 zuAqPmcNCiod|@u(VKvXcK;Tc`x-rf+U1fVL?;N`}N=Dgf1;)uQw)Y>>DEc$O>1H#W zh^y^Xj1zjDTmf%Lko3r~B;nE@gpCQ^3@P@6<KT0Zpx%K)K7x3dxrOzyF_wZE-Ipen zA@&k87wTtbF;l2Ea*x=|{Q3zWEJ@}>PB|LUG*QiiXalW&1dmREE_BSL^r<lgCuk)2 zg9c+cQO?RQ_YKE^hf$8bB%Z0S7#*|D<Y*D5BOt9`|9F2m#uV%;|M)!u{m=ThH0*z| zW5#Ggdg!R4@|}<-Ju`V~a@nqzTCShv%CsVN&AAlVc7~AIp5~^OBxR(TtdGm2m)L3~ z<AMOzM7BbOLjZ!nrjRTP{0<3(n5eV?s-=kh`4qn7J#W)w$U(pEZhJoe%z6FLFx}@l z+vmOPxW^(Y=G-xo^Zr)8KO^WW$sn6{u{5*bQGU~;nw>e})Hx%GsWKTVa%_2EU09M* zCYSADaW3JM%>+v!^v)*r&Yif=VF^GV8x^vYbH5|9LkS$FqIXmRm0$L#c$j426Mj3A zi?31eEJ-qRN@A%h)~vb1idp5VSisULb8MP0=c-7pI`r-tp~Y&0x(AD4x7sYd)1<O@ zS^(O<EPm}4J*uIycUCI;p;`MYxBdHPjdvZc{-Mev#y5`&cFtLQ^`yFXTcCQ9S|p5- zKmJ(2pmOIrlR;cRDn`3f<J>KV?G`xVm9skNp#sloj_@vqlte~r)r*-;<0Fz)IY@tS zjCtnt<i}U&n3X)a16|Oem=;~oslFR!{R&plE4(YA(l5O`!qP9eO`*~+xm}i9pIj~f zkc_EwRSK_5Q0|gDkmr2$>J^;wEn>-Ad0}p>3X=Px@t4b-wf0FG(Vu&XdYyZT9|>dq zN*vK&c`=KzpMOz{=_|ao#qw7@*kJw29C5esDI588igma2X@lqxKd7_zsk3m;o7jo> ztDM+b@(?(9&w1d~tGz{x=_|PfzGI~jXDz;~pAgS+iNZOW=77vrOd8oii?n9>ioG-t zk-5ts3Blqgkr^%a<iMXM#`0G`x*k8@abNKL08YVoT>!vOi~IRbhtHp48d>O(I3^Ee zICtS?6zf~WkB?${5sSa*wn^wN+vD&at1tgnp7kqZgue14afF`x71eK9GA`1KU;UMp z%ry@&0&IYgOnnmXn$O;M4*R@v2PX<dNH;3Og%}A^e8p4vD<9D?b8R1XI56RjcF)1V zbsdJH#m;^S$0%?^Q85is3-!h=WME#SAKlbxLSU_p31>S>^|rxI+8SEfj|1-_W>gKd zUwsbs_UXZc*cwO>Scxk`iY5nW?@cyz)xK641!gEZoE^h93L_@~c#d*=!&)S>Td@eW z5**e)N)}*`&_1rAWA!4aow4;C8%dZ*`nc$>LFl-C>#+Yg9Y3$Ilzn{*2?A4*5S~3m zcwU3#Dk_8+gW~D&#neu;*gA_H17K9e8&#hJgT;ptgG~$n^bB^T4rYiAo3T2hjRXN| zD3$R@Ma|ZD!WQbiK(`_M55n~s1Ce$&Zlf;-Lo3@B-T_rrV-CX5B@1het%R)`jfMQC zU4v}$`fmCI;s%&di`!CfNG0ju`4Ps3m(pNd6c*#W7DzRuxL0>Wdi(65ly(*JF<KNY z*;^;<j$Slt*i!_j;fhBbVx-{i$Am7q-IuTpEfK4Jd)sW|PWA*1k{kvi*~vLDU(qTG zg!0>96(X^3gPn|hoQLVG%t6x`akm%O>-cGA22Lm{b%|y(5~nJ@<i@dC0qx}wm^N^M zNAooHg;{2ftQp%5Wqi=E#O8)6<`|Pjm3y6Gm!2CR`U@M`{z|;TX%M+P_HR8G-fe)n zVv0@cU>dB+k3VcGDKOV;KBKMTLjeSRBuDRRo5tf4mB<bG97YeJ#0`gzjGhbXlCgP* z*-<o4trG3jMk1g^Ts@5Tb7G9*b?hiNh7Kw7QL<jfU_fMbtJneJOtKX+mBjDT8<DS& zA%d8!Y}lv4Eu;vbtKBqW7L{BX`1Z`Q(3&%P*%ztxrelfQ5^LbDi-p3%?R(A#Ug>=c zE|BUhlaNQFNcFHF+t)F{GU$&cur*2TnRvJ%%<D+{bD_*9#|}LE%rv<7q=HKkFgbpb zeG6yg56yD368F_Cv-67pFI+jfW#kzXNTt?rf`--R9^Tc=YOk(2JG=S<P~S>rc?+}k zX43bm%UNp8*=37S55;oy5&dars5yEmvw70@nbAFTQ7YL;#4cVzehDO6rY>Fwzcqdi z!{LUIveQwn9s&8v59=I%;p@{6Z9inhT+51-+ZnmrwF*G!;muwK9L~eKkP?`-RlXLn zwwb<zok5kTEkKj;@V(VnS})}jCNF$9xo5J5y?3tf0Kc+({4;kMWF?Aq5FhFL?}~^9 zF?Wi~*b(2Yt8z~|yWbF+54MO5)S{_uf8j*7ZV{@l(@>U9M}#0*)d(3D<it<-Bht^4 zG5P{{@b4ngEE}JsMaYAvC*)uU6gZBb$XIEPkxJh#hrWW@yFLwxu`-dJvB42EiTtj@ z9J9;kUxuElnVCN%n<d%%SSj>w%q_nXLuQ3)Vfd^SG`1CA>$tvSzH9HgxW0qFEAIPF z)yHThM|aYBgmbow{4YN6;^cFgcSmDi>s7rXWad7^arS+`>Shj3^|`950dZ+kQL$T_ zZLApK!j+7XSU2>DO(<zTzNO`wn=f?{@4(*aB#7mt0fjyUod!@g$>zwAq0XQN*-?j~ zoL+`rmcfA-{L(h?**6>NH>Q4O4su-Q=Jn6)0Th){Lc=ltNK+A@;85T?$W$g4QFlZF zk2Ij+uvSrfMpja1Ce~5Qfs`l_n7Nb*)l;6vh_MG7TMyjE^V8Cqv3Lsan*t`=$72JK z5Yv5%*{TaQd*~Ge>t!|{lduLCOJ?PY0qLCGfgu}YiyiVMjFFqCi!u2%L)qn7T;~S$ z%u0raj3YBh4@jnpvSIc*pbNM+%OSUgcFK0&bxltpH_*h{QgZcVn6UNqL+!hWHo`(% z7bpem7)mRp80k_b9N-nTyO>rp!Eve-w$fRZaB}7=y$Ps}TugwN7S<+HCXob?T?3BE ztNp24R|nLkOoL%y#uJ5Hu*jUU^$dII@J8Qd@`{asag|V=wsW^#%jsrpuj#X>+k<v_ z`g33j*w=^MaP|Zi6hXPM5ZV`O$!OvV3XBUNsp8UFM{Wu_$Op|gkb@TB%i5q~$c4P= zS46yhB=-&NbwEg9SH0no^}~^9aOs|9qRSEIL4WwiJZRIP4!}^FpqhIH8Hbd*f+l`G zn?<pO8R^RL8L)AyRmeb}v@_Tjm%-faX~?AcLglB+UFNR1F+2hj+=%S?OQ3oqhbU%! zssX|(P*MBz>8j}xKLR|ae1n`{w(?k^=TDJH!?V3#<}cPrPK(&=Okc~ut-ul&w~h6( zWBrWX9VA92CK*4FA#oHY*_oR{t%?BpN>*+~ptfJ-*sE3Lng;Z&zZY%k6F^w!Y@6uz zu0lIQT%os8V4Y9s(z`6K0;yzjT2CKDTQJh$ZDzAq&cu;;rEJ@3Wz?t?npU(#J#tF| zXE+1nW|m5L6P(3XM~`c`lF>%W$IYg)StpsjUt!v*8ZqvKf#lPv+zX1&U<+r^f5Br? zL=-{PGF<Tz0t$l2n)jpM7`6PdyQH@Y{-`&fDj(h=py1IUL(;Yb_2M8>kNk7BogYwD zEDE#s__t-s#xqN`Vl}6TS~=b_xgybW#H@pd#1ZaU1;Y~`Ns$WGSe=g=cI;><2XA35 zg~;PXEz;#Jt{8Bc=G)W;tCGo-%c+J*xVmPTuziLe9!+fzD-JZ!?XUTO1we#~x*1hd zv7PtxA!)hlwzL<h&J5bCvq_0miIh5zR7<`&?3IP3V1;u<GN_bo`dM=>z#Y)tWkfwW z7;<*=6`z_Xq*M<1*a!~UiUB_4+}zL9mYn*zs7tReZM^XcQlBFiu3ldkc#C6yrIBq~ zY7q<d=b<T)dN&?=Q}igf$=g{ale)T`GFCc7ZT8(j46b+nOL@Vx?|k}vP|SpEV>9XG zBLE(A1JgzDrcxv_yQbm{PKHCGJNSiI(o@E&@fdNmYr;BZ3l!Z4;pT@G-$KcHW!)hs z4O*)h!2pe-qwFNKNX<n86nk=|(l&WF;UcG^f$26y+c>w}aS6NeQZG|h+n@R5HNhbr zp_<L*;7M&~EKwpHocEd%TO<g_m%u#=F{c9N8Iv~(;oQUV!Hi1z0`2p`cyOGHZEY>h zln~8aaV<FtX_<_Bew)2iWGnTgI?H5%cNVP$DRu7oER602fHCj^$-v?^l(kv)J1mO0 z6g2n|+RhpX51W=Da986{RT3h27r&RusH2Oh8dRjogO$`dEOrHtvYLbA-rQIRhRh`j z)nav((pG!qxW+&zE9k$@@qN>6s~Xls&_@8Hi$xP6vnDDr(@Zo56#Bp8ALr81=#Iw2 zMv(I!s>?(!xDlaKG+{tyx&IufXoE=LMm)xdforP)Rvu|MkJ;lOESmdD1TCJ3AK)rx z6*V)xD`_#jLZq5!<Fn^6h>thT$^sO$uQI_PEv1G-+IsSO1NIt>1ELrU&TsgUI)N2Z za~19x=oHfM)Am%pcmHlTJljfEEgP`2Z)U||lo4m!X;k#fz)x=yuyma}WlS5dtm2^) zPl%c#-#3eBNy6ZoU4{LQ(2QRNajM(N>%P`hX&pt6AoN}p87Nqjy2LlV5%((jkf=*w ziGf={7GVj!E2$=Y^^Ww5W>e3No4Pi?{L<|5pSg5C!W_TUXZX<pFBtpqo5%AXFZIsQ zV|-Wtdz-iMY5nwZVOBR*h43atQmMaCH}{35A7_Bq5!J~%IFy?$s8l?jK&FlrHk!gN zQE49B{6w70FEb-Zb<_SJNR@m>1P`y&z(TqZeR~L(C`~pJXsq+jkOH^h@sT|T_lgW& zap{*R@`~MTZGc>es<8vRF_r(LG-O;6Nu~rVThL)~q6j=)7UIH1TOgWm12Su*6<5cm zCDvs@>Z*ub{F%Dl?5-T3=XP+zBaj4^D1DR>WIeafloz7X!5;J=)7)3q))<dwF17XR z30@NwBT2Fo@-Kc<Vya1^o$$Mxnyzj}=atBNS+x>0b4hO0)2wC*nyJ)Zfp>JTQL>y+ zJ;a6cB9&Y&p)$_32;$3uZ~v0MKZhr~)aaid*`}z=qrFm(tf;~)uMDz5<SPA?rR}9~ z30<9qfHl@wnS_~qBFwd8dtdOmk`egwaLwM5MFc4d@XLG8Jm<rgJ7>ByF(t{e`IJC| zEyOHMJznW%w(<C^FZ1b>F>rQMRk($J!p0)(W(+f#gi`)Ol2(d9T0a`z@xVl$!$fAz zqnLJ-R@W@da*Dtbt5}1I>KgY(FXNY1E&e$PY#|%Y<#Sy>rHrd*7m(sp8&lXfE|Lr> z<_j{>I~KZUY{~C&OGkrSJd24%)Cvw5d1~A=)Z&qm#=0LlTnLI4Ynf6kJ>Gprpw-P! zv6@h)sLPX@xMR?&gq?5vg5PeBihQeRZP=xopr-a{SEP5wDH~uKMaY?#j~y9k<awRK zE<`;(*?Rlrcw^$rnjNgj9`$R2cT9escj`^2KcKek@a<)vr)l;L|AIz%Mc?nHFJ$V> zKAuAj|65g_QA@_J8@JdOVB|uKa6_OgoL91Orp6_vUv%IC9{(UGa;|%`)TLQw?*t0# zz>B*F`T)Q_PtZ1p(6*?^m*oc{E5;%6^IN^pws^<D55B$Wct?|`VRPq<y;z^*0Xg3c zib=A(-;&>rIh|N|X+gdHz;PNKE_aGnQXN(aoR2txC!Qk1&=|gPU$%@?jO`YL5OtUZ zs(<lbPS4e{morT*R@ja+$@^;e891G;A3Z|LF<-cZ%v*^mphGQtvUR1sGmO)<u<ykz zf_6_w#9V{d2`Xi9OPjD-5Z9Mti5D4KG<78U?ZaEci)=!MY{Mva4%YcZxa-l5N8l9~ z9Nh*ic}zLZbde&>wds~L6x1A&XFP*vY+X`0O`mvN&Jq67ISb{sO>v6gelD$+lOOzn zpJ@yfA;JE1d8#0r<yby^XdV|ZT4*7UG4eF_OC+K|S+kHg@)PIpSUetl^09Z~JJHKt z;FTDVPnx~l0ShcJCs&Yp<6M&E_JCyvwkw8L7~?zg9t(PM&Ay>8$B=ABDLRtiR|f1` zjHjyvxP~UM2L<rtjdufQXh1H<05cc{&_o|-p$ie#6~~|BopMkFrOOcBIneRS#?{ym zm2Z-oZ4|TLd)}Bko7L&3>RKBQsdh%39lGY!8BpZ`>r8QEjyrg47j)lu|3!YImpi6@ zOJWfX-S@ZCyq_DiqD;z5Eq3k|@<K%Eg-v80#{JmxaQBQQ#5{fA%Nkl6`W}*Qb{xSi z*@zXj#NqgbGGs--f_7Rgp6L_btv;B|P>xBg!+J+?eMc*1jibIA$l<UYue^3_i&w-K zxab~;T>;NO+9g-q*n=<TC}hay%N%Oc#=IKS;U!x*`J~eTpbzKnLg+Pxx{nU4-0v5i z9AvH#l^-2($}9nS-LKsgmRNN~&bm;{6`{^V*7-`zh}6{}UUE(2En6$0!;l6Y{4m+# z@8B(cqvy2sPg6JljxBw|XZ7_@RX6{ZEq&wXJRH*tP_lg+l9-M1;Mu~6?ugCq3@T6P z>7yDKE_+}c`!d(=pml(FZV&Rm$GXYz^38zoDx74MJtX^eAs(x)JB9K`G`Be1GFn%O zep=~GE{);~UFJ?f7jJ}}dkiV#v)I#lqIdU;FP>wCGkrn{4|;GcTvB;wWevnG2!8i} zR<H~vCjM@&%b&CrzaF3LK_I=l*?TIlf5@h0`4alhJc@Slvt&NqKnC`|mb^F23xRy% zy=B|B!l~p9oebD?RmA(MOo8F#BfruJEPBA#h<s@b8)`*etHsW1;*|XzBR+A&$MgYo zy;W@n=QO4F&#pa?F3+PEmFtWSeRcA}<2)8U#4rOt(OiZe-lI3#S92s%-^Nv;TaNO{ z|CK-!pd}#ueDs&tg<0S|6~qBL;?gp&rOYJ8>4L$Rlv$y6v|?MJ#D`e+Sl$>Ld=WYO z<300lX=0g32I(dd<{?Ln{1W0Fr%YQxvc*{$WsRi6XQc@|^PjafEnb7rEfa$MJ4HrU zWXccGQ%4A{O(Esi$(xa^iUj)*uvY<2=^)qE(dFG!D?DQIR#$I+)wM~<fP=TpmW_?3 z-6+kNJ6x6N&v>nPk-iL!G=QbpIoxGUjw{jb9dJ0_aYbY2(>Y-dg~#oT2xIub3qq=0 z<6Rn&a&2%f;GX=zbH~R)ybNhxuqm(XC>a)n)@R#RPc{L0narnJ7X)6xnI@KiJn0F_ z<3y7^Tg)4l`t2<!WVz8eZ#cz-_GQF3u5K#<zs{?W9TL7`4Y}7Tl6I0?X@RpeN4+`# zUOmvS9<W0X;2q=ml<E?<pA=d*VrSi!vR`s9qs)#CZb85k(h0*>A7Gg)2=r><_X+~< z-1l$p@;Y$E;~N3nV=H^2HNQC89?;}ZVAb1=rGEc`krA@{K{@Z1(5VlFTm}t2EslN* z;AKv;b&QGVP<Ka=Z-Mm}^0`mm>PP&E6n~3W#<~f%-Opca9UVSBSOjb~ff^NuT{stV zJf7jPPm8QfueQ#O>o}R&U0rW$w#D8$JD7zDe&;}ko&qc)@ar_%Ax8ztJYlXItz`0P z<Hi-^n-AkoGRH9UgQP8O`vWm?f|(|A8TFm4M}z{@C^;R)lyF#8hw~z$B~YS8nvqGz zRG=*S^OhA#64uE`R%#;(S^I^!Qk1XBw@WoL`FN&8!zq$35lV9ER7q!AC4q2McAcUb za_$t&r+8y{3dg%1Ql8zuJWZFs5*D0&UJ-Z`_v$0T&sBm<g_uT4H)uR_&jpp3&o0Ia z@`ZLIB;P>Y!e!ndj-p77`BEsM35qV0nR>mYFr^8MD=3K-zgS2o@{&~eYOiyYcCj*R zs*wZCBFKR3g9JbT<BvHkm&a--R{G+&o|EsKu@b2d=^T=|hSag;Ms9)kC|rv*Y90Db zbEPWGjG7n3UMDnFs%=U`Ce*YFY>IeKy;I!EwR4;IkS3UIIWmq|59RJ%Pv)PjRvlMw ziyqb(c=;rTF*Pb&b{~9IYF`pG$jN`CCdrfrfOYsqbQAU)@CXd>bdLL{l)wJLEpBd% z@4EVvc<1}6!QuRm1iYw|lf9FKp`D4%e^F4l#tHt%+>vOXG@$|;%`fKuQceLj6w2lV zs+J$7lln{&wf&KXs)UV!Weo=aI8{SoG*!?h%<1meZ|hz+{5*hAjyMN2Ljs2eQa0kh zVz#xFEl$@!?(E7;a?U(vR@(c;*q<pT!g98UJ*}ci-6nOonOYkPv=uUqmrs(rjn1+= zOTG6m_$T;X=11q%x|XDq1X)Q{-*OOuLE>G<LVOgoptWc#=gEKWf@La5;nSK411|K> z2p{Fa@vNCtc_z~u9mszPz!!M=1`t00?!@f{kSneoJYfIN#_;y{rC_rkW6=E6v;NH> zPNx5o;TE>Hb20V!zk-OS|1li<!?Z38UD6Wyi|4SwV#$E<1rP(7#7bsPgp_U*HC?nN zt{84e{}x&&OF}{iW5qA|wiRK%{&e%F?%;j=;N$D>15|D-9Tdrm>Sz*3Tt!euP$x9v z#Xw0xK}EqxqWeW7XM5$KuEVqCk!xV^4AVe7*)qf!r1B$P9<QyJ$4s)GI#~xMm-dd^ zWR0B2`2JZ++kTxnfOVIFB;2virfc{f7BwhFP`>2_+&4N~tx$a6>}TZNGn#q=#iZiT z5LOC@JITdDb4Fnt)Gdb!e0R;we7VVvJNl3{;Ot^kSZItY8G7k+P{$)|#q|O&)+IO@ zuiuP^gq<9OPnK*)&$A&A;-p6DV+2}yhE@>w6%dcw`B!na+-d}4DqcLiJLFR2SI8!e ztr;ZYbyJS@0BL2{2zN2$p>$;edNI5evWR#%CenB}k=@dW!m$(R&;WBR(Ie?0g@6<& z_ZpcPRdeb;wX9B$ZgY=+u!;ClU;4L#@ee-#U{2dmLKZ~eO&YR6LW2m-B0vB%MMm2H zL<0d95=qNPYFH{Gg)tmAOVdJ=`UK@4Qm>H;QL3WJ^SR;vfNLTD;{bhE&&#`Y^6=pD zd|Ah@-v^vNG>Op3h$ezg2kMA<Ku8e|NxK~gNkT#*9M6C$AXTjna#J~13+bq9V;}5* z+(xnqM-<I1xH;Sduz*xbvT1(vC-sOyL}l6qhC8LD#YwY?IaXDU`K8Q7*}W7qH09u{ zxocXR)UMRH3dMXz>jdU+rQO}8ooCF3r|mR>bpDvEoi$vAUP&kmP1Vp`3C+kR1r=tq zY;DbA0^q2Yqs<l#l!(mM!c%i{LB_DkmQ?s$WQ#TWOCVig*gf0HJs7?7Vg`x<rf+&G zV-PqJ6O$Pu`CdV^C(YQ{enPM)rm)A<oHNtI<<$sS8>oN0QcNrrQ?5YDe2`uN?RfZp zVKh!EDNo8R%q%9?Ir<m|T$}9l{BwIW>LF=&d_yEp5IGjN0Ip<8ti90;mRi6$5^vK| zohWFD(H7~1FV5tg*Hk}(%cOn6_TNI$szz95N20Ry3Xq{<9_%xm@!pjiHuIz^D@tRl zksq46o6i`#%90V34nD5JYk$5_N7LJ8Vz~_1zSf@UY1h!;1s;s)CMA1|HxM6B+o&JC z;@w8KwPf5(U-qOxQ;eY{T4(Z-w6>Tfs=ro`*gVJryt|LmrsdaLMweNQ1?q%X9vVZ$ z&hzDCf{0nZBJ8i)VPMTsUuXbDaU-e4aSwdi<bUM57}vcmVTZ_(wteeoe^}+m5qL;8 z&hik+CP863VL~p6GI8qql>^xILas@u1JStB=9{qGG!I;)X!UYj?Fha={pk5{5k7xn zFOoCaj$(L`+xfR+>|*tI2p6y_2*qEiREJbrs!AK(s?Fa59+ZlL;&iXb!gOwd`I6{q z)%ncNx7XLiwKEWqcerE>BJ7}+Jua(?oi#$KAV>Vdkfw}6<%oCQ3~&E9%VT77o*{l1 z%Yb43U2st4$2AlToqon1|5bu7QPXutRz=xbtdk*AmRdxk0M+g#kp)&%2v$;{5UngR zP^JKFkV&$HlqEA{0*u7Z4+MgufP$hTnAlgP21#johynkO@)z84H_J?B0oCPu*v?>n zzigWAIN5xN>+}1B?U&kALl}t%2S-UZ9FvYBOErWqgsQ}mmZ9m?5F27T9~2zo<tV-} zl@Vk`f=Xl<Ql5xnftzGNH8B_;qv8lGf{HcV3_5^1Hk262GV+(EIbhmGqqz=0B@e!q z#Jq;uc@BQ{#Vj+)Mnj7D5Eu#5v*IE?sE&5V^C>1EY4*ST?FpGHoA9-*%gc*&?!_`F zm2S8?$Dg~hDjgptvvtnysym>Ajvz~l<h2x8799<MTs#!xvJ$D0DY|BaPL}OvWhTZ> z49=<?=X%08FenvsCRUfa#2npScM|U=0!_|h%!1P})y^mto)*wl`WqtH8q>N8twrg$ z9mHR-+`0);mbTJ<esM(*QmHMtGPWJDjZKOIzWFLuVLl^LQAbvObI!YI+;Ho1H59p7 zCFVR8w}^3$%Q$cuj)J~`FV0saSW4sD#0UusXsf1#sVWz05<<s%97=_Zm3qP@6Nnk& z0xg45ceGGO8-uhu3sP$UN4^w!Z`zT%Q2PQj!6xiNRx>(#CE6o-lcu~v+|!H^l22K_ zOr~m*MY%NicwEBQi-mPUDT%pm=-3)UMqX;I3O5&Un#E$@`*?nz4Wx8c?Pc1@p@&Ce zKAUGMuz<P1G`)BBD$tI&6nkpmpjQ$iC7wyR;8JQWmb>vVp1TmTEg@Ng%3AEP#&MpF zHRMT;vRu^$fUzkmrAi~r4fSH4u;55Cs9>Lyr_P90tx6*ZU4<veoVPuHpNKEvCi$S3 zH@5*^D((+&a$QGcT7&G^%Tkau72n{={!t^ix{6N#J?T<pKd_dO4Eu)mCGgX3Wu*0K z5&(R!(k<&7&x_cw>t;MdS-VkI6EQKD{B}_koQ1ujBl3=uTpSlTB@FPXa)UNan}|q6 z>GjYCo?=#G3@r;NN0b;_!me>u<h7`-5AC~HlNXtA;%Bfcf*SW<x{1|R1-?uuEO!|E zea1#_DLiV`sDdU>55gNi2ym&XO&RA_b(i6R(O3lg#A3QD)Z@{P9csgO|L~jO+vWp# zNj9e3h6fVmJw*mnav2`f?QsknQsvdeZvJzrbj|Q)4`~M~AGtYQHJ;ypDwcA7=knic zM2$;uMsT<rL`YXjNtd}2t9c!ldUME%_T8zh^m+tyjAYnA(CpJ|VH67X7~#CA1gL7* zUT33upH#2CYpu>CG`Y*+K66PJadh;Kwb@dfAkQIn!&ANhm<By7`oW_L(xv#+?RTBv z9pXnM+#s!TmLFmf?KmwFgnLyB{2#i`0l2bYYul4dY&(;QZQB#uwr!gywr$&XCbn(c z{&VklKipgOpQ=-JcGa%xQ@wkyUfsRk_hD2LTMnF{ITN__Z)9*q-^9DEQfjh8U6QsW z2dX3suG(1*s-$U1?Y=T1a1lr>QX1TLuF7~p>JX=QBwTRWL#=}}MXx+qPj38PX|I8J zHp^{1LMuW-TlakZSP1CFF>a(L>yA#_f(}YC;&jUMYo#jut8zhb2YjT%>aKZfMdRkX z?|^%|f*-;iva(ck9r9O)Gt!6itN+BP)J1xyI_E(rw3}VYQ<(hb1Eo8B7rZFO1JgQR zqHDH_bq4wR?aaR9iS<2#eUJ+Lw_yGeo%6COKwrlpTCdf^n1`X^fG!ya)MfCKsn2WP z`P3nEF-F-ll^35OWf;x!erhTg03yXsMb=9n{D;UCz?EdMW57PU&n79sE3s=!<vgeY zy2gey_-ud^Xs7Pl+kTMdKebb;{|>n;b11<SqtZ71a2p1hW8hG`N51&PMD1~_(BA80 zMs;PHr*c3&FP$^kO%^g(Oms52<%34{&ZWE!Q#yJ30@Hqi(+#6vE#Z{mgcQ=k$tIc? z_EZ1dK~<n_q>S3B{7`3z_#Q!=ETs4<XSQ1t<EJJWe^>b8S<DCjO>VAGBrfhz=^pUf zA%TS_K<6=W`o{FW=?if~jC?2|%t`amJxIzYk)x{iJ7h_;4_LWv{R|}29hA97&B$C6 zT+exHP2P$0`Hw=Jkc)x2h41_y={xoPKNb`JGj}MM>V5M_#H?+d92Fe(9RKCH>?G4G z-Y<)gA*DZ8R15g@bw|9&eF3^5KmpDZ2zyF42G9;H-QMo{JjjClLp86o9=fERl)93s z_jq*u0ITa)4*?`idQA@<8z>67*LGAjS41K!jj>^tzro$x-ReaQ0-qiRIg-!vKHr^e zsZwSs3<#65S?ZYo*{Z5`h;GE$G?-qed0@QO-bX$h{>Q5X1AmBKnvOt|VoyCC*9Bp= zH@<One#K$sdUZz}3;fp45l8+rHgGfpqCJ=tBJ?mjr?oqz`K=uQCgsdW@#!E}<j+0u zAC@`!9aP0F-<{(6UEB75{CdATM#0v|z|7dp$X?pU@L&DmB{wF$_Pro5;DmHrZYYE$ z;>!&x`-Zu}=bVD|LKP<ZFLUaNf=2}4C_L2jQIyRK^XA|MxmOu!<2yQB9#6WhbKX52 zKH>eq^(@H=Twn-urK};Tp}DRKd?L0aLz(Iq8ZH$u;Ek9gJNZSV{xtP4jf0(eKP2L= zk!x=mC)Rd1AtVB|p!y~HW{i;PTA*9JrvUn-%*C@n4>~AA!g68~g#MYIzL@J@FQ^do z;)Q&+Ik>_{3cmAOe;D_~@rr-CZtHbQ^4CgdNPNP|a~dt<utU<{43A__HkVsAlR+Pr zKZg$_3jB$m&jgsK+=PNl*`XYyJ5M!W@afFsxtfB)ITW%1<u%We7<dv18)Ok88?*t) z-1`JgTO0!%ycGjqj=BIsnWPls#xxc6dZ@8}uH(Tunm05H!e>y_5(`z}CST-+YPpu( z!afQ8c*O0I5f~$PbZFNg;yit=ztk#fs22FokZ-rr+T&?XyJxA2CTXigU8!P?MWq%4 z9B3x8&~x*!yGU5<jhWRtiCP!VJs(%-kGjabc|WpkR`i?QNYD2LWCEo%g41$0@|yZh zPV3q;K6*!a|9uJQ0lj4M_WigYzH_O6f8;89mKH|#BKCS#R(k(Rr@Rz3zNrrw-bo<N z^;BVi-w>;&;lV^PP~2FGa8N};z$B>f+*W<bOf@S~tnG`BZ9aYB(kAZxk?0qau#6WG zDxIfzr&?=AYeG4EoT*;jtWzF5o?Cc6AFoh7OgOkUx+MPLDT({IxL3Q}uvZq(e8V9v zG`$r>4jk6oMZp?ahfY+wa{X}wHWn@UdTONY1UKz*`vtcmSjvS@9l;(Hi;fX_IeJ=I z*m3JBa*A^D2sfH@)=Id|xqNOFIW|?+OP%RZ#>g*LccrPdlI=<4?$#SsMt4OQYSu;j zY|4)<j<<gP*Kzg4C>fJWR<(z$qkYt=M&Y5#$W69V(UxTR%nzJX6nQ5Lxb20z2B1Hg zcThiyY?G<#7vybO=-s#i{d<ef6otwgw-?`oYq-tfNV76BBnyZ;1P}yz556c(M3z^? z(5lgKw<<#q+Qwa5_MvLc)H(aK>?Z#7I~Es$|4hCq@?)dHboG@&g@@(xXG(fKD_TRM zSz{aQQVt9w1>@;02IGl;&EA7Xy_fwHl<24kr(tH)ZEZ!3B0<pv15vOnJM|Fc=cXw? zt-)N0#+dF}iRR*ex(nNVFgQj)<Fprr4Sx@#7|S5rpA2>yXK5hf$6w!}hNgUyPNGy4 ztCvktcVJ;GsO;4s5$@ecp{e$ubeK_}ou=$nj{WSu?i&;gq*3HvwKkb=wP(p0_wiNx zTXbV&AL>n`hpCNnSJt3}6T4NKvRW^S*BN*`GOy78M(C550isFo+SDi`?s?Rt9OLrZ z8D(@WZ`TQp0At2$3rR5yWb@#*J~E^l_yO+IE=-fN%0w@5PGaBi_){>vi0_~%d4MsR zjlI><dD<N?=7GE(qd5(4GgA8wX5}7qHY!dkqrPV#N)x(j!jj&%DIderd;ENG3X?Wy znl;DYvXA}}{DVq}hO1TEd)<e?CN`bm*CBh1WMT1R4v`@3%$<WS9ltvi{;XUHhQHsP zQ1v#2JMbK27SxpJEqY*_RUrJhV_45$ECbTNK>(RJlGxKB+&%J0!I{nM$B9>9(V`?{ zecVBt6Y;|uj5hi#_Xom5`8~#&E|&SDP~v{tTzYrI4p=XA1NnKpP_QrJ*D8^fkGH3Q z`>NjpX~ymfp*O&hzxzv;{!Zv7byFEZ7ld_aZg71X?iv2#Ey(+WpijRs#CNaQ^E75# z>=FxC(@TQ}RfCu+d=G<-QphxPWr;1ggI;=Un`2UQ=fT!Y9ve$28sZkEU3Y(r{Ri)2 z$J4PQ@&=`wg$BnC+r3t2pJ6g)Q@`{MXA_u47r@vu!JtAm_AS_`_2c@r`|DS}FVx~o zm*q7xS)T}`&Yji!uk`yzmXG`G)&GbZyXlsrBi~Vj`Wr3!zo@1E!<GyBc8bPULh+{g zjue)wF}M1$`s$zprU2#gMqP`vKrAg}qFl83AtQ%)n)>tI%c0rqyl&vN)ShL`kHe79 zlBgr=CIsc0_*4&vDYr?7&8LO4Z~SvjATH=!OX;?OCqa~kT}QYKs%P*T6wfd&<QSBg z|8Ur}SMD~=rP#Clw@nf-tI;~T3qOu9D1|tK^56&GkP5>nLl+v!7TNT5WkgtDSs-(; z(C}WPN!FB$#9Pr+PZP$Fm@<==^)sl%6W7E{deMe4hBm#`T=y7Vikj<R1WGokNn1Ha zEA5kWYlr448x10Wh9P1K!?<w+?uQDu$%!+k%AFR0y7n<LXpIqAVS~*z_m-ojOrHyk zSpPxW)L7HeSyOL0b#QC5tWvWJ*}f6v8In1S;JOoTavl3vMBh{v{#E>ZcFUwftjv!j z6&OlM?NWB!rS0+}QKgk@sWA;CV~W`pirgywpYTea(IOO^{SkpusCc@{eMw<>bYr$B z10!~`6y5_e6jc!K2B@&_<8)5`8du9*tz*$UFvv5@S1#(*(kCRhiET|;+H+QOE%C~^ z1{y(rMG#kD{i50Gp-CmtU2D0De|}2kt6C|RJ^VS5Yn5iUJV_c>vTY!0P~!3%p_}_@ zJum)!4A-ex!V0C{rEFok;90Bb#>eBh*1WDMi*;()AP93J`b8Pled>5_tmEw!vkCKD zM8kB%M-|@eL}`Pue)sx&MB!uKJ^s|dQ8Rh%GyO@`m_Izv^w;p(IxSn%)RRmSU&539 zA@AIp0%STPY6CtZd%(Q?dRUi)5?<}g9IN0jSQ4CL1+#nS#I&IRr%0nweXfv)PHt-j zmZhya!jF1^fx4@EBDtkp@<9<NRfkOO%hxFk>#wiLj5E48!DEIIpOb0N#I>fqTmQ=& zha@Lxm6Lc@DZEi2GJTQbYy#)-OFg<;7f0><Z_`f94Z#(`8s200{x^IG3?WS_f>?-S zgEsKvF6Tf$8nDKr(2uBrUEWYy<8};=zrXaJ`Jg9%u<`?mroaHl3T%?=gT>wdD%1&U zFeu2(p(CLeNyFGV9I*g{&RufE$dMedN52UWjhOSxl&qa33>U8JjKbElFZ6{^@q#;G z6|E(V=m>0kK>|z&YKm%|6Ntr<wqtM$on9I2LJN`Lz$+x85FjN;;2%)up^QXk7fEWV za}B5_=tq$q0tf_e4x%JBAsqQ=9)U-<p$FvmN&)lxh?^(740ds%_%n*xp)s}bhvTv@ zLZ$i`1p0FNsbM(9_o!hGfwFjDnP0~`|DG-6^aI$5zZ1mr?=SNI?4T<f**looSpV0S zi&o6UKTH&Zrhd%I^Iz+{i#dYRh|hrzn6AgP5VZ9;T3GLZNsL;}ZQg2ENoqd-;7PDk z7Y2lTFl-qfPNu#*dwPKD?#&BezJbBP;2=d5O3wb4|Ay~sQVG+dm@i_V5y{qD2pC|L zDnb`>BYv}Y5qrfMzlukM(%I46Z*fKoVIUhzr{l2EY5@iUjM90n8OOz2!QTbXB(i>8 z#0i{Q(XyC-6h;d3`9|I>cgFVRp7Bj8>=KBP-O%@CpSpZ%9O9jrX7nA-DJ9)E%>x#< zfZ@G)lK5!4fqETri?1}<y{hal{J7b!Dj2jha|TF(Sf;-xVrqs&UAlA&O@pS-n?tOn zRBVfmLBs=PwPtn)WxA<WPtZ==9ubpDv=N3g>zSq}(0}jMQZJ_Ge;8zMe~T0U*MVQf z%+k<6&))FgwtAfuHNL?w-=f4$%XTg61M}SV*o#55D}6*zkcz4<J|?bT$GP*?E+cIz z$JKox;{P<omK$Pk*9erKHJlu0y~|8xWL)F*@%fgu^k|@pjhChjU$DK_{to&j0;Yz_ zzF+7jk`@FKrW&zR<?lg()IvKLfbnbeP7Wp-l}oN>0D=A`iw-kxNaQmWUCLT1e632M zzKl5d*nXm{l@dmwt(SVqF-!x_hN(pXY8<znrb3?mE(^cIS_MR~TCRSeeQzks*7-S0 zOtgZ6YR5KtK8A)6(iWEYEGO$Efz@)=S<8Ja^>-})4_=fGfz9P&=+7AM%*#Sst1W%m z<_iN89m_>S>Hs`*W20=&L|6r;zyq{zY$8H1D%XN+UtO??>dZCHw@}htwZF|j8H=T+ zRPRRsR@1dOznUOcHRdu(zpV$T#V|N{Uu<&`Q->eFp5qhKkQlk_#Ao;_h2C-Z?2gis zH60O6V=8}aWd5UjB-I#;8yKZTvP}HX77p^@OUfUDTo|EJud)c#A<YZ^0LE#cq6Q_k zKV^+DRx;NdTYJBt`b(<S*WYiI5J(r&a^!5dsjubIX3{-j*gHKH(%?7|555tOWpw+T zRs+m`@#G*C?!Wg<`}4F%PvX#sGZ+2#A=JVHLr%`e4sTB!YAm||Rg8gMZW(fM+z@W^ z{Inmh5S>AaJ&QBKSUE;Ah&;kXYeM(D3dFQz7XG&k5qey@g(nFW5VZ;M;nyYLQ8AJR z1Q1#|`?qo0y!@6_Z@4!It6~O3q$ia;X2E1}C=-X1ISosUfKYUHFS#jegzf}IShZOj z$#)_BCmi)EfHhz`_8fnv;Glh9{PAU3OrzddY;uNonJbsk&_(YN@81V9=%^Yg`S(En z`ELVR-N@cX#$M{%gzo<!KAq&xtmo)3xUHLuq~?+mwVR@>YJeo>>g>Cn1oR<_#CHg+ zfO~mu9#*HBO7l>FWI$)<p<@2w?svm37Mo-RxL@Jn86M`y{(Ap-!R|q8QbMUA7&8ZR zt1z;~R8g!j5S*+swu4<lwJZ}AOs;6lz%*mpS5=u-v<<*-v|>;C3d}7@U%#=cZall$ ziSf92)d+4iu~wl&ksL#;9_s(Ob8+`GJ*JV3Q~k32=MKoMqYPW$9#3q%yKT}%+t1** z%~BD=_#d0-9cv_Q-zbZ$gL|TUYw!JR*RezCYSg>|*{Ahd7cy<t+3tIO*Gr45!ZQHw zH{{b&%r6*PHKwpY?puq=%KS~S19f3qALNF8y5Z{;gjM3wFB#x=9{LyLlX#wq3+#m< zAQwlQ&3Lp1Yq$3_^WcfIKh_Fxc{i2x75wG}R)~H`$jF6>A$SSW69YhUFw>4&X878` zluQdZ=|Q0*$270c8mPi-AiR1CGK0(FSpU3LiYa2T@MjOTrduOSAG~|Sz;Zw0N@rY6 z+s%))ZG(~eaFmg0X1C-|-?Yinu6RG}HB>1@Gi!|chJ22iO7?cmMG)kcftf}vzxe8e zJ!6Z`!jt{UXBQ@*QRNFWO<<vj<s;3QDZv~T{bewjqRUf7L5O`_t{S13Zb;w)l}piR z`R*Gx(EQb>XnTyL<gOB1f~uzEga6?j7C|4x!QWIOm--tWy;@eQh~7`)KP8l0%LoNr zR6l+&dH(o8_&*bnp20ty)EsCHY;9@z|M^?e$o0R^04}`1U6q9AuE(>y9e%Rr24lI~ zllvj4|JIH0_2c^u5<?PfiwsO26G##E8%+pASgrt6uIe|`9|($S{bB8zvGC5Wu#F|@ z&s2v=>Q-_g*{-jz>}W2|_IeW+=YM{tvc~F3@jNkpxQBLPRXP0FeSou!V#NSiWNeA; zmC9)LQ((1l4gU$VUb0t-W20Y_+KWb0pV-R+W(2n$)l9$KyX_2nWy^=WJ~GvTwR!Tx zT)1Bg&eTtPa{Z!*Y<<FNeNY$vXrpq68_qNYo85%==-j}THo$(eT?V+M!qAa7;3t+c zTMp$f$L){j9|7RZTm?JbIMc{@v)6jC@D|UZK%F;o;6&R7SUi`$uAY5BAJ^_A&jmlT z`v@h^%)q8>H|yb^akCBX-C%XLfoVB@W9sO?(mFg+!bCB+CiYsuXfNHsMs4li+MGPI z3}4Z;8f1LfNaG&Ow`aIVD_k)?`<8ki_e5VCSnng_@-Eyk;_@!tK;wSp?<I417w$pg zb}!yw<909Ha28#2t9<(PMss}b_k8V6aeV4;S3jpmbvu0GaeR&t%P{DsLgpBQoC+KZ z%m$6Ch0!QZE;#0%^-Tu}qU*KUo)T!H!#d8$qSI&z9TUi-M>@`=oH6N5C-5^8P^URi zgeg!n&CCKVg(+vurHwS{HBcAlu~%o(tUC0<4HO^$WzTe+NyT&7Imeg;93-SGXt6Iu z^1Fa>V+`B`WVIa+igE>P!XRPX@0fUD-WyD3-+|GI8an<i2BR0%r%UNY06RJ+P(wdD zB@iyHsCbX)qs^fElH1)C=QL4sHae))LBae1#1W9Eq@2|e<`3M36Xq2ikv<Nh^symx zjUBFgz`!U{4swS_e2;x06rTQ`&?%_~)-DOG_?q@3bSI-9EkII4eXqJP$wIil->+{* zlZ~S%_d^uSF)ab;@!7R&P2_0z2ewCQj`GR%!Ex7sn9i;qV=mxM^{=4WX{cTX*5tM) zSSidOI*gIuk-cPK`IrTa82!3b0We^D7={cOQ@X$b02mrwIzX=>m;#2R5nW_&5KIwc zizu>MT1qa!QfgcXVk}EX^PHS&A|?BZKU8##f@*>`%HVwcJ@1_TCt`%AOl~n-c|!?C zF5rW!(6q>;g*JVZ?e-3e`-GjHI7=QxvQXT(bv!T66Qo!RKwqSyo}r`~r=Fq^I6dy2 zkfD{PqL^~x!B^N<l#DiUgA#R@AbkaxUZhFZO31#VA4?iIKpmfm=47o-2velqDu+VT z0X@?Kl_>FlDD{7+^nWP#f2j6{&G}BbH|r@@%PFvQP%pGlrAopcOT!*3!ye1S9;?HY z4=B1QRBn`7!>UKWJ?W};%k5Eh63bn8#c>l<QdBrF@Ciw*oEQBoTHY)A)?4ff2i<~N zf0majMsg^I6AVc6#k3L$^fS%Y&fGy8yM{5=8`m@i$F~)Nl4s$>j~*}!P)%51AXm7* zQ&lW8HkY(Gn%dEqJ7{d(!N@qv(Kz|7{%RvzV@yUiej#CY487~8=0L6wgC>X0ZPlWw zCZlPzy?mFaI31y&3ul4i8of50xJOBEmGY8GADqg}jyK>9edHFsqq;?jPES-iPc@4l zr+7#aju4n4IK_wk;X=Q-B{I6*dVIwXIg<CAotTl?iwW9<VMz&k$S4YrB_b4sD0(a- zD~;U|MTz_`j=LZH47B{LNF){qN4!P!*tjSzHx56!C_68Ez}|R7t{`H8KVT1|C`*Ka zIwdB9p4)A`WqxNqYOEkVjwh`wN@hfIYP(4Cb_7$1Y@LYC%XC$?96(2a*po6cVi-(? zrO19P$6tn;YDn--^pp5|*V*4J*kSNQ$Xr$3y>4Z<rQzh0CKxpWs&C&vcTZkb^r#R{ zhWTu=R6k@tWtp5%pw1&``v%|j3V{nB<O<pU3AXnwX!}FZHtiU;?0SxoDPP6(kEiLM ztLccq=?I=&OfNyk*C6A2_z8#uCZ2@3XIbezLH0=a|Grq^I|-<}vqB~wyk@eEpiI-r zxWG&rb{;TN!*%F;*lrbX+fT1s%xEU5LY^9A0y~km464jr23zB(C3Lojf`@a__c-T6 z=A747bx1F-#OI{9w$n3P%rk|@&N=SrJEp2X889vWi`WWd%r2aja)IK2u^$dxOojrQ zMrOaeq+f+BLkCVept-x6_IN}?^8k{DF`*mrr3aM?e}*qG#xV}HgmpGxYI%fmCseDD z@LPkXp7KuO?sji-iXv5MRC$S9e9*I4)z>0JKUZ~s;D)W294(w!+K&E+8a4TMLwy>S z788E-8PQQP93_RZ_InWk3nkfHKUG0<NJ}${saRv)IvkM$6q9|dWl=HejUEY~V%nqJ z5+OG!cS?RPAgiftQF7X#SQVefWK!id6_x@+@f_+`JLRBKTFWZAvK;sga2%4f{xoJg z+aR-kBQj}SgjVk9F3M6E^ZH*W>DnZ452&TIQF(3BDwi;9(NVV4@-SQQ13ARnticdm zQLh#OnC2Sk_2U6m@g1hBtHb%AjI_xFYovPS+Fo*Nv}U%!KX#OeV`KR3taI^#XXL3b z9XR6hf3&4@Q)9Sah<`Ee+J_a}k_@j3Y`qq{R-h`4q>D`wDP?G6Bx>*>i;Yo^PiFJR zGgVO5+alJ-7};;-29U6@4;s^_AJ5*#mIA1yYn3boP3O7<Lmp>>gbQb&>u&FiZ@I`b z6IGBhwG>swC9;u4^sr(t*{HawslD=$+v!g(VT^6BMhBeJZXf3`;v}gAmIjVrf*hd2 z(a`>&$CDyS)!Y1896x@~%VSroH+4q708WEdOG1m(eKjA}E5+Pn$lPTqDppg4DXu%5 zB!-m59+z@lDlk3e7a0Q`DZn}H8Ju}90cU3=&Pq99<Z5*bs{NV&bFk2FhDip+1Cf== z0@Vs>RFiATz&KI9Z+w>XFiyk(DT;n1X*^p_Ufpu;!r1u01Ij_dWN^T_8QVdhC%ny< zA3xw%1uCa#03BTW?}n<u+$=uTSTpgzIY#wNHs~&FgVH-rVVr|B#mm%}dA$;nj`}i1 zEg==4hu6OPtTcAb$R0O*`*!I!8EF8f=T7#-o*ejqE*Rrf^J%Xd<Tv`&?A{+>02upJ zKEwca7%=<I-(dBaQoHlIV1gJK{l8P+h<A4}S|D5Y%&&?XZESZnGlm^5evzU%lm+sW z2fV<b(W(B`MGP2(Nup~>>6HgdrfW&)WdKX2SDn-a4H(0$Fth~?pv2T1+%^X*$I$H8 zWuCmdOEbDl<#w^wobD6ik%>7Nour`J@1Sv7q+bYsC>_w@{Hv>$WuL~rqm(V~Qa-X% znPl`<jz2hOGERcOq@+npU1x6^6j`br^<-CY+ChPCjEbP4UKP!+-lQ<mX=)}e_xTQ- z#uVji5sjcRH<Yg~UDnEL8YdNRpHW;BxEKYR)zBfIR`^1MUstwG04M<ACCR$`AWkb- zs3EvbYFbv<P0uBuURebcT(gueD{yqTOlKYL;Age5_|Q~pofI)<F%KIg+skdl_)i$f zo1aOl%8E&7Cw<Vd@*9iqqrR{oU5M#&W2-uC#c4a8?fq8I=OQLnYqflqn3xoPX)?=a zoMR9eYEq+)7Hy^48}M!nX|_r7B+=+Up&Y1U21tgd#>HVR52aR8fT|U))VGL+z2r>S z(`_k21w1SjZSWkTn1C27b>mwp_LI!xgtVp({*s}X2rO8As#|a_Wj3ojO=aDhO-nn3 zc<9pmJG3nC{YNBybgN)!Xq?*;E_sxUA}>m4ao$-lOZf2C#3>6#7`9WaGWH5gGdY<< zM`;7)%hbAJVtqHyau%|jj@_xjvN$G3BK*iC9r#?6_Kv?YPy@`ww5zzs5yKn>DN>cl zu0JxSm*U~sQshc~cvZd2+<I2;kuczPxgQ`#pE#1LBp;V7!8jjx_yg}?XHX3kRBdpi zP#BaMBM$3?l3wA@fV8jkGEP39F0>`&%<nsCAYc7esuX(m6%^=A>T7bsD?G9={o&~d zgLAgUs14`!g{bxwI~UGNy<t1&^|>gI6}t}Hr=~p+&P#(~uZxy!+^6O}Am<Fz;hz_- zF}S2FH@cj^^oNg@?dmYIe~NYqLG|82U_;fp-LI~CLD<SK1^kBd-@kPJVd(PoGp8kg z|7XtTn0#+8NP1e3LJ#B-KZuewRDTXCOmT6)ZHrVLH^l2t*$rw+KInO;lvYB30M<c9 zbm_vV3-=Fq(-(S0Z>occo>=D>l+hhht@Ss4UXY=JfbCG2@*gHkP!QF=V3$y)qP@cS zdB6mMkWnF%biG6=#>nSJ$d-K|?OA!RhNdtIWF`sSucExXigyr=Q;HNhvFK?Fd^L8y zx<uEpFOJjO1maV_yXq!tF|ClJ3Xde&GKPvEqow8orl}I};3I{j)Tldy%_myb6=4^Q z<r=x_S5vUc8n?}<;RVX4%^gbAyVR^Iw5VZ;?!+3>%Nm>|z;hzg9g8Y8s&YC6r=x<4 zKY)%Aa^`^*{ey@a{e&7Ju=+IPPPj~=2Nel^4$mkOjV@=8);3)bF8L%dr3@^^0-WWW z1tk~}ff6}ID-zBn{V(GVgSw2p4J9#|@^)*j|7?KggrlqD`d7t|7x(ttA++HhmWl8^ zC|mC+f;!@j+nqrj_ug~~y&&9Ypb+B)YKI^nkiEzqcOqip`h$#mfVf|U@POxD?Fdds zUqc=HAb{bJRN*qwB=g|_+)6PSyP$TZGWH}O>@CF%nV1OJviDm;!Sv`KJRlcZKvsJS zr-73ARaE&MF6>(ns)(ReVmqpe;>t?~%-!9o3m4_haVtX3^uX6cQ!N*N<l+fkoB2{t zLC7;jX5sYA%-0V<VJxdG#uapxktel}yRd4lAjs<qF2@OoNVgY4VeAK?M8$W|)!=}o zD^ckF{R6SL?$9w^3ZSqdr5AWpC+?INwmFcZW)+ya6v@$`tc@&^q{PaZ*?{N2B?>Qg zNdL>?Ahn+gj$a5oX&^XHoWnzCTJ^)ypKcjuM;46c)Lv#8(yIshV~0l6pWATnF;4br zhO0XoL<tDJpC9SqCs6^om{7>^iC_)hFBZ_kc;Mj~+53PY&mX#w5^Q3M1w{=H5D*eF zP@?7#pd%S*d`>H&YJSue>B0>2;S9t59oHdi2PM8cM8S8R*O6lVs49OHgmw}<u%*}s zCm9P<PlHS<<admw``iz6qS^>W6njL&$1|1vN{tGNjQ!w@n7B0+T5(mtg9n_DDdL9! zf8|i=R-uVMo7NHq+tj9T`u|v~;Hcz|Lt*R{vUpauuUFafo<SbavCv)bD0)_?bv(8@ z6&ZLDUyr_nL_WkbEy@T2bAkWdcEbRn6=diT2%kPHfVY`e?G_6k;53ws>J?y<-g~Es zyz{Vy_T*c=#!u)MvE}uIq3tQYhV%r}=|jIp_5@9|1x9_w%Dkp-^1Z4hd`FMpR>1-4 zj@5d{h2D{&@{3=%-v`dlB5N0w=`(HGz%C%AVTMFjlANcLYbFv4m|MdlVUVir@)w^L zCFhb?WC@6r&O1$Pe=!&D9M#M4sVIPRTDWXT7k&Z)3g|-;@74=}KS#*mnY(tGEu-x4 z2s1GuoFAG~Gs}(?C_-OdY>kjRbX9O`Agcr>A;JnIGmb+t2bGj`6k^Zvf0X-!qLvSB z9dxK931SilSVl7vl4ii0%AYr6Oq3`kH#WyAEJ`c2OGq;=k|%e{O~n!@JuxnWFQj2m z&>~MXDq58@4^B1zQ)<bGDqWhIuxiTT0A%c`jhjkslECk~&Y@q8!v*w~pDtf(EGCbM zsV3miacyuMk!~M`nQQ?i_0$*ena27ib&BP(Pu0}=#_tU!Z`p)V?#rc5Y5!e_LVo^R z4Qb30ZoYWjyHsunC}oehnwX&*7^+PDP_6h_MWkKlD<k$JL6Tw%6jBffR+c22A0N3` zfN?&T5-Y|RPIQ1y6ra(JC%9kL62k4+U;ma2O^=9bcu1du1zBxbb9_KGHhg2yXjwwj z??#`QBow<Qx&`+w{EbeID>9(a!M1=2d02FiO<6q@U3APYt^tZRu1Pnk0og><gHD6P zm$49hhLAg|bvB(%f+MQFFq&ScYyg-YIDG$*P31E5&WM#J27Cv}4Mdx&cn``ANt?!G z$J`B4n^Y&r;()nDx(nJS=4t2E{EuhcRH()9NGNL#tf){8;u7#59AsEYM_v6CW(wRf zy4BejJ)`CMN_&b<n9R$+0<($sWKb}N)CY8|HIv!~NyJ}Ht*LY$OQ8IlOS)%K;bt8k zYm=bEJI**(!=A;)x}6dJl)(#`za|(P*LR!;)nBKeGL8)cwzt2_wr0%Iph*wVNrOd# z@cb~EZP1dgsT}Ltk{MF2(xag}ZncyicrvU)J9=r0oW1Fp>jx6lgLf|f2IcCnstQY% zd+DnqBFy#urca$rmXU^R%0RMYCtkJ}uQ^~kcHBonqbR0JQczW5r-n+L+f_dx($Wsd zC=kfb*yfRtRx_#@!)-0-bM6`6BmsS3=J~q=)4XTOdDumgC9R`WUfm_FIiC5uR;GqJ zy`JJo`cU)y$&SWYH6u9z0KFb7;g!+OFt+V|1}KKPv=h;`cYZ5Sx|l0mC!IJ|*stT@ z2p)bvziM8lr3l!#{5w`w^EEZ4&`I$%mg>`aNsk}DZ}8ze_`1u`^8F|BD9*m#*Xhe{ zy<0m2mj*e<E9NTci$x<AO4k`o_o6h-Do6Ooj!{W6eJo=Kz;k1^!PJRtiiGV6spFbw zk?H_wBNNlW&3qQ?P&2Av0d|}jA)GlVSH9e?r0e1By1bjP;5XW?nD9N=szAfnzde1Q z`b}I@9&w|4WS+_1{i5@uWc1m1f^MFv;D*s>0%&(|JV9A^%Ac{i{A~8ppKZ8;uV%Jr zpAoYLqJsjnA%60r!rla$M(KnvK1UvhZUM5M1C9fD!$zLN$@+K)4xWougA#WU@dx4s zkYu2xxJdg3hVyctqiq2;LV?d>LSb9N2Bo#81cPCR@^PVY@<I}3d8Wit$W{f|!klLL zrnFXQnT1w;)El(!qVVBtCw4Om?tkv%w2>fZA!kI;^19a*VPZ4@e)dHeR5D0{`=tcJ zSv0|8;RB*C^06d3G=E0Q2Ta{6F$lNFheqK6k}s(A+TIG1ikkX$vqF+`Y2hd060wy; zp_;^U<MP3wTt+1+l@TZ}qmpttRA_ez*aN^u#i}Leh~bGMgT$kpy9@`6wVLes$|ZXG zg{K6pM2<Vz=Nivu!={(FdV<$|TVx~MQr7ZL2Hu6}uOU1RYg1LPq*@KGw!op~_>vX= zV7uz3w2QtP6+ylFxG>0PdTq-;UUrSi(3*QV>?qfXSd`8lP<*QK>ODG%T9zi_)~g;L zg;=Ig$F;RCD&MPcltGovi`7oCYz{b;Zx}DsbXdOQ(}N}U!#Rs7m9qf$PSB)2I#K9G z4ACgQ@H)7`fOpDoIKEOgi15LW1$Wkkt@fw$%}V%7ErnC9WGr{^&asgVh)XT>ORdbq zs<Ex<3!z8WLHyIl?vk~T(zR&$X1siBUj7a5xV8@_rzf`*3T<Dm?*c$TvTmd+s5OE} zxszAgRy6k#M}#bLKzr4icZF5Vw>Mg~9Yj^;zCBJLGaxFbQcf~*7;@lNh94ZtW@U$z z6Qp>G>DkoFCS>}E`5;reBz*G8gnoYDd!pc^J3iE&V?8WZKlx}pK5+t)qVN1m7IK22 zk+ru9rHa1qsL99Q=wzC6;Q-U%73J47)oVv}eTM04jgw6heF$=;Ori}be{Ri8$?}O& zuw=8kBl6#^nfz~SF8^xn?P|$lV$tFPZ|RIT#N&&rTKd<=X4MGd#cFkPRH~=>FYJm# zlQw~mWEZntC-vOT9Mn_lPz0Mf3MUx#a38@2HaM-pw+4ByAAns!^&DQbnO#OiN*;9X z0rWh))&#&Vd@PY)%I^{Vwt~>qI0`5tsRYqrRdQwo8BxStP;z;kL@a>8zI_)ZGdiAV z<$#SmxL6X0_>MejY3#h3Iq~4%Zc#1Ngf{ZBc`Y-t2U&tbhXj&YH*xqA&%*44GMKnO zWP*jUqoQUB3`(Q2EE0Q(-_n~=YqLE2Y)3zNd?}@0F*Nc~;tmP4g`Ni@rF<_^6pF;9 zqE2EC3*RhOW_}7eaM8jA<t6BktEsw+Clej8>Z;0j+UaK}v4$@rDTTK|vFY^eLFL+G z24}`R@-=97<s?00Oyk9tw5?8<y1I!aK7OXNx5bM*Mx_v(P~aFefs_UaEKv!30d=s< zg0Y<P1{`-W%AD>7q{+mpZw;Ojopu`*O+uBQ+N?QQLRHYqtW%AoI<$)D*|xeF_d21K zuSa3JUUviHuSDx0!da4Mp;h3o*d}G<FURcX!eQ!e=~Hy7&rqUl_F<qR4I|9EEHrHc zQ>P>W({`<Mwp~k*X3DX~0$}Uwz8}q$E6gjBkGAba=^TqAxUE^v(@rY`_AN74XnSqC zCN-gaG8&VZ4>0V?oml<X^(X>sna0BblYg$GhexzNZ`fKFE>2IdbV-)h1RZX%JWQo& zzJ^)iC30Y;@-LVYZSqSykU7OYYQMQFdj;UN*^Us%h5fEk_Yg&*GP-5=L`7m#IU??u z5(WAC-Hwv)60gl{R9+NOqS*iwvwk1NSM?4WFB#=`@VZ^z@aRIF0h3ugq`zq>G-vXJ zD>3dPdh$9eYF6$#`&&&HP0dz8y>py#O;%!`RvNP`rbeAgJLw#!-YIt|7kgyHc)pBX z%G-wv8rBecb<kLUBXerkVRrWqr)8`mk47qW1J|*PN33%BqN*0dslMPWNgn(=fSk;2 zX>lIms7y<<ZogVY+}k#{zuXIaHV8Km>gJ$$CNfd>{ov}jr}>+}IsQKKfv;p8fk4f% z@dRX|GE+wRJBfsv{ZV5Yl=#BCX!=xX{u*}FfL^?)eehK1<=}2p)&_IW^{MQbkCs_# zpuoa)9FHv#F_Yovd^3&InPDTefpcFOpyj$Z*I?cEZ=T+~uvy6;!8M&Y6}3<{35{u= zZbOBxG-7p(X%}E^ZJ$2KA`rMFP8+?+t6bM;NDc{?z7?fcl}7JBpeK;}ML9HvsUMa> z&N7BPh<gjF-^?YpPAY?jdK<J0<QB|EaTI2Au(GS-7FCjPN32DYz?*b5Lb|X2;?XMf zsYR10Gpa&Krc>S!vqX-&f0l^x0#=yZp?yNSRWP1tBZoGIohWgjkyySjHOhR;ViegS zxI(^Fcpmpe5k2xmJ~i@|sIvcal=JrI=+Uj<DCCPCv!u7s1rcx2&{%Z&#{ua)<gLOf z%8O{@gG;bae2n$Q%z#MmnT@M%{Iz!stosJs)fzsVS5dFXnX4#HS{3Be!2;|2P`^&D z9Z7DH^OXAAgPWij=e_+h2HQcl)#dEMMT`;2_!}s4%5<d?&8|>le^F0iAYFT*<K#nf zZsyar`da1DCfAYVM314Vxbe0c!_TQ$Ojk(W<mg?<7o~UQPZ*z=ZWQSkjTzZb{`)u| z6t9D?Fqjt;dbLlb@z^f}N>qGjim>Iv68-4BaBvhs9A%u{mR%G)ik*cb^(LFL5#81{ z`LFF#<C=2p7C_6d3XNK>4P_12Mp;dXPaRlF>6>%QK;p)0N99!$(1~k(^5ItP@gvte zAzI_LrP$)<t7fOCE#b-!mQvvg3DZpS;*$8YAiQ@c<D~wi9+)&)3vP<;)@oz7W~l~^ z9qliya8Db#=-F(4YNadK<HNVl@((Guca_H?5S^7Xt+zz(P7?o*aY}dSGM$+>(ydEn zK9^fZO@tyLzMqANLS#}m=EP7-WYo5qvtTyztGm?VGV5jceHY?*>!tUDTBAQaMa2e+ z6a1b#7$9_1;;vg5K)Mwsd$$q{fks>VWaWhd859R7`h_|eH1Aa=(MQC~*mN-Q|4^Fg zXE3Ob%MOKV8da#4Ng|vj0Q3VG#4P2CLf;ZgcR>#bZpz|_c~tC)6mJW_MlDNg8AQTV zpbEUj^_bV_khznrY>PCSdTRv<Jbu3oZyex6Bt@HSDOT#+v?uj1`ZhH@F3A7<m1*wo zxY4Rv1IqJ|6@=N@?@Vf7*<1^Lpk<Vad5V2*g>)pd^L=Ji=9<;HvEx4C+?r&)^m}&O zep&fo<3{&x;#tL5-?g)9LJ_ei#-0osA}9F@O;d6kP4hxP?6A#SoZ6F8Q%E<6voUAf zDy;%slSr*Lz&d36J{2rI$%Yc+eLP!5#N(6Nkh^b-e@{}-wB4lIOF8l4^C>Uj0=CU3 z@)M}chx$4I*MH6g%d?@YQSiDx?N*?_*$4j}muZqIu*qX_wR+*tyj8TSM2An80<8lF zhpENp*k;;OUGrh*c_sVs`>w;j*{wm><o&2tLD!=Qlfvi#*xUYmbLLxD@I}T|oS^Ni zWI*&Ht22bRvVykh^C4|ucfe3;@bo`k4wIaA6Hmu`l?R8k2bxNN_2upL?5c|!hx->% z`&xj~lJn@W>Xn<PX<gy&##oOPdtJcT@3c;nh2{d0HbNWdvTceGT)&4;X!a4@*T(1* zW>!d^rn-!E`xb858*!377j`r?8<oSCt*ZU3p+b|cb**lRsl^cL{?VN%ic8IGb&L4} zzo)3UXujyhegEM$jd<wEty3`0ov<lL6;Ek4pViI6g<sj&QOyEy4>c%(4B6|~p!>nJ z{zIckq4G4rO{2tgvaKkS3Q7EB_LvbW%6w7wpi~M~es76q+tdf{t}3mNUGgkFGNa1R zS}S0riMXL*=o(}$dJXohQF52PVx!s}vMV9=iT0Z1I6a(+;Dw2!;j<J6B@NncN~<Lu zRS6U}<jG_<l#~fB2@9k22OI|)2kr+VM$Nb3@>LY0Knt?kir6J}Sh>OFvG+@&R;4V; zYb6s4&gPWNa*@hYxr$+{YPdy1Wd@4P9Q+qWPl|i@K;|-DHLDVMRYPZl^E<EK!uG8E zqBDp2+Sd#7BJXAnZCVx5<B)m4YyT<Ahn!Q}XH;6HPr)HZSenW4sU@LgriD<+U4*gu zw*`fku24C2<m4#<p>pRkMkx*RP+2lY{DRRCl~XIdhL#?ck_y(?0%gR*Da9V5Q{zpz zd*)4X+al1Zdq~0NxoM%by`y3?+iQtY)Xb^0NLAY!y-w#?t>VVsa>3@_a@A#J)571I ztx?;xE7&bqo?wXj>g%Q_FVH_#HJsZ}%@3`MQa`JlQW_<KF%N1ObE2%g8q>kd(}}C^ zbU-g#GmTSIv2=OwKI7Ac?+(fAaEpEgf}IA~M!7>ws^Iyroc7CB@BpinMfW+KB5x~2 z_jo^;xypKhZOUf{?48~%6r`N_yuGG*H6N_%k~cxDTa|8(aGv?R>_@y=Y9lG@<neS% zdU?YV%(I%wZu(!I(u=BW1;IRUV^n+pV4R27OL|2d*+y2a^j5Fzu7A(IFi%?iiyZKF zcAJeX_)9h0{;n`ij73}JZ<$ODFZkB@4GrzOs_@)rTvptp6q^-n_1WyOHLqZtHk`{# zGT2SJl&t3wDH#uJ1>ByLm_~R%goho59xWW<`JkTxYY<G0w~6oGr8Ca3ofoe|qfK5! z!^z;v-u&R?nc47Bo0irDaa;D<!iMC%EhFw7aKuZmM<*7?S+>H`{fM1aHh%VH@$}c+ z_vL)|S36HJOS7Plr$<qd1!Z~RD`;xfSIo&P*6qTTZq_SzLRoi@{)38Y*(cD!X|`bz z<ql<C53e~=umzmtY=&#)B0}|&rfdEphRtHy9#19nr$+b?e53O-U=gx=o?~w*4clkF zZFfo?=d<(yC5Jea%*yvZpGEXlNh0oZnxR14%70xmol3-lasN`iX<Z|oJbJ-?A5z_# z89DXn3p4_FObCj2S%?LqL%bap*yJso8mGG10B$T`7KbHx8%KG8alAaYiguh+;=iWf ziYSi`x_Oozu}AsYVQulYHQtHY5tG|b_AdiqCZK6!!4wv7EYqMC`F0c)voTRMT2dn| zu~Bzs>v`oJV=HRwrNy0#)yNi!cE~4F>{`usRCrU38(}NXUvt*|@C~@Cr5pH$Rwm5C z85cU`9&rS>y{R}Ap|D=GX%+E?%=bhumsrwq<r}calLw!tVs+bs;Ga817#_I!%#xlk zhkkXxu_wX*w&We|ZFrozb!bG+8CH3`4!0lFu*$x9>RjOatwQoxw}G_)j7bh(;NU3n zn&9Es=QLi7_<o<rc2~Q-(2-p*T}7yd@IU*{tK8v&>3N*dktq&&$fykMm5Y{!$cSeG z%bV}yqa)_1G%r3AKR0ihl^*p58oM1e&tGO*9CNGvVoUiA%}8oH&bQ1Yu?%=e#tO?c z*EmomAh3<99nO$VKV{FIyboAMql-A7rl}KbAA!5@gShx*T6PhnyxKXfLm6Ut!GlqB z5du>QT-OM$Tlz?MKJzQc{=)8A)&sa}J}c0sv3MK)!pyRmI|Q&Qmr>pscGt*im->jN zo!c2{(Lj3*c|qyP&*>-9SUqCw6>w$F8?*6>=`-hDJopHYe?q3Hg+`-=DCHytGv^dr zg-xK~5*qGUyj;SHa^OyACu>8{wU8dJ^FU@NZ-Z~<E-{kZoY?mOCvVajj#AuSSnKXW zu5g7fHIH0i=8k6;ys2_~44B37%3)H$BT76LEJ(k1D3EfmYY>!)eLU+gK)*+v<$M)A z@#2=^D2+}c=I%_R&fMFgzN&w8bCs^4wo)_7Uh3_h3a1G1!bku8*;jR?9WJeo*+3TJ z@zXKGS|zPC=W%T99Sdqd9kgPOR0V!>SC!**&n_W*IDtaxO_fWzYogUe7=A~<^iSWU zFP#?-(=@3-AP=VdnSySPH@@Ut{WgIYnBm#47S$=g#8;~2ilbiKSDfYYqkbSSnvT+` zfTw%n>q>7(tXF%>vg#h?*MpQ29Y4W)%JN8~E+4Al6;eE2kZ7YlA{WEfFB1%$wcjgW z+>ikLULi?FTJZ4>tK&3Kn9Mm`OoOg5uKntb`7g8ZxmR2UTB{mEpQIP5F!bH`gUrPx zN+<O)D7G)jL7Pv<tgf&DA6S47EYqTmZ`G?iM)4Me!UHv($`(}k14E1E7TnS)r*42Z zr{!FyZMQf2yTsPdsbiOZiC1o0fi3W@vnOR_7eAeKkqe!`F-SBQWTYoAZ@c!FGn_5- zy)yI}+DMS@`}Hp70xezG($Cr$n@8D&&#oH)bcBouUThK&L2ov+653nHA*~{O!{%Bs zsUWa>+&1AnGauQiNQs(njEsx4_eIpYOx}xzHS5WnSs?s0#Fh-<J3{1jKT}_bUfd^y z<Pu&G&WBx#un%z4sm$y?hd}(P8Cw<aPrS1!y@pS&q0?%;j86`@*{vRj2i6;c53Bp* zD@E)JfiK~{uE)#bQP$gu_;a0QXtn@E5Q6i}X~swV0l7B>|I9vZXB?a1&WjW@w{>AV zJkCpt;g54yiXa0NV_7zc_Yc$_!XDmq$e!l1FmlTxS#dub7OEWE=rtwNHnF94twG~m z^XBq-Nh*hSv=jiS^%4xD+_v*U3Ltec<lU3^?|Z{WIHodfXUZsE$$gbC_IvP?c=wLh zsX|DcFUL5;M0K}qMYnC`a7ja!=lNV?sBcwlse7)qN{9LjwG*2VWR-VsW(l5-8FRCP zyAA22DcJd;0nG>7gs+Pkm?t0OHsNx<57fb{NkgC~WXOH>w%&(^tH2jr)G==_^sCQ~ z(Fd!m;1}-ZBIOSEEekJ`;q$uewnV@06%6>hDU<J3MDTU-3<hdGrZa1rLB|X*DK@oT z@C+6@_Ka)545SMt{d39;bT%{6wMRbur|~^9;-5TQ?4vLggA@z{7<A-_JK<7#0V<Y1 z%IR{#pM-}8kM_(Iu78AyU%LD_6!065xbx_-`XU@nbq)Cx3~(Ij81NS{;QJ#1F~*t* zeVWjp-C*ZBwcJymH*2QJpVf4?#@PLS^tU-lr*K#!Ns&9-DT$&q6Hk|3pO52sSIkBJ z`jYu9w1F%`j(Mt@;Dg|&!u086lSE;^@=^p*Bu;Z&OSDl;kO$d?=(EYt5C-LW2ZdI{ ze-B!PZWHA_O{a+28?bR1$LU9;7RXOW&=Uq6r*;Ebjt40Jp`S^;DxTXanj0;;Bb%X@ z<~IUrphH7S1Z|Xe>-eQeLqZ_|80}MkyEp87b;NuyW1msmFJ@d#ayIF1h>oyBE;Jb; za~fTL53<~YihD^Ux-0+P*Mh}?RUZ1d%VEm<gl<}mzq*8Y(J17BJJXeAN?Y3aMLS>q z#VYs3ijWy@QFtfcdAu&}$by(z*f{GpSa5erer!p|(LlTXHJ*>gQN0wNy#|=X6*`(# zKj|==b$df`bVkhF5HeB2t-n$2G~VN8a`!O1f1I)GNG8)(rZgFrn%v|BH31K;hsvw( zQ0Bl(apd6u%>)Nb;^)=pExtU9aUbsKrA0?0B#v1e9M-$r-GSKM5zVNnQD)Mf5@(u( zPSy(@g{gZy7;(El5Imd`=h+)ou4j~>vsNRqRwHJXn-|_iiXF8pOuL02cSt!_RV7Zs zKcwLf118&rOq41ez01%u;Q^B(LPu%pC-0ioYG0T$FB!)b-}hBN<lUjpumf>uhg(o_ zJa@eqZ1|$%`frhL!293?@?P!HvSP5C5uBjOn-LgDf%FOusX?TL4hsYVP}D*V2^^?} zSYnmX@>2eqL(56+|AC&7G|Ue=CaD_{fI(i-$A?2+F~`><shbeUAdxr5-yx~%7r;vS zdx17PEp%CfkPJ9)h=D*}vBHlfu}=<SVu)?0E~o{p8{kVx8de7}F~@qL&5jFQ!af@W zy}#Z3K?}sLH+@9mN6$w=iWrQs)P%~99McP{#WKb`)9bQ>uApn`QQu=(wsh4?t_7!v zc-ywy^LAZvg^0qA?)8Zvysp3D8Xcm<(ChHCiZEDSaK(GW&fb>Y<4w`?6s*(+f6sQU z`1lXi8(co|&DFQ^1?IcF{eMCB|DWRHe-c3y-E55<{!15QHK%5?%7*}cy<&?20fJ=D zKl>&sv;JmHIEJCWupHM};8m|_s3aE4&sX+X{*a58gI9Ly(=5dq``Xm4XFSYE>HYrx zm>J5^U^8tIun95B&My;V3%YPF#-c;CvP*}VUBF%d$uH$|>{bhdOZw=)UFo!~s`a2C zEjv?Ji2W??#vddK=fNH1pA&~VvYa@{*Gg7GmHG4q9Guh9CYLGUU-s%e>;M);t5iW% zQbkkqlQ(W>I*Gre50xJlH`wj9E+=g5AeN%*+o!s(%N{nd_|T0q<;v#$9M#G4P{v7c zI<7oKTew(|GNO{q{>}ZGnLij8M!GyrG_)f{co7jZ17NA^{?;=~Xr&*HG4tS*PyK)u zTN$;cYPxjsZ7mwq^48uG>9m7k@ROUi#?cad>xo9bSZl%Co&meCGvAJ)#3~X^Bz|0? zyMU4XCBgXij49J4Dt-!(!`*T3YD~gmWF1wcaMyjZoJm19EcQ49!-G?t52}sAtz=;? z7j-KOq@G7$N%#NQy2lt@q9{?=ZQHhO+qP}n-KTBawr$(CZJzGacHf@)=H7ghnMx{^ zoqFFtm6ctUy`QyK+CGyrsGeEvAnPe=`|P&AddAv5*#lSiKsTg4qx}%=DO>YUH*}sc zAH2RnFND5PFO0rnFO<G<FWfETp1(cQUZ6emUcfDryFt<$o_F3G;Ai|B;%E9B<Y)35 z=4bX>$h-2Aw2$u-^nXu`Xeh5Y6#ZrEVE+IAiUa>Ia-4q)4*aij9nu4Jq|w23?onoL z0x}x}D45kI5hqmuLYu(g_au=Zf+$BAgam0cfFOu03?~5kYXgO(!x8vf8-T*YvEy%~ z*T2KwgHSzo6`firPgQ2;-&T=;Z@WK!@V&KvFH1WA<M1jyJ1#l;^9(4!?prsT%I)89 zg-a7z!+=mtQXkn5o9s?pVz;<41IMsVo46zO&lW@tSwq-$6-h(fpeJZ&_U~_N=zg)B zoeO`A)`&?em(~rynRTd~ofH4l>OiJjw|WaV_9sX9fIpP>QM27}7E^Ww*&h_<)B(02 zf6KaWpafi53*Zqv6wKi{^O?5}4B(rjfa1<=%4Xd-^SP@QH|%nFE1Sk(&L^HZ2r_O~ zHjdyVjD8#h@ZES3x6cgZ>&YWll|gb#yZyNKDgK1co4Y>asCw)IT3&+|{t%h=iR_yK z)gi3Q@2gJe6}`Gv{?JdrDSUz@e6XA17cXZedqpYPD_`OQ-6E~L;9UDW1G?T9nBYr3 zH<*Nxe26s4lYYoF&XIlyH4Y{EP;RI%fATNiTLbM$Jl6#IjP<5nhY$D~@Jl@-pWvrl zn^(R;2k29tv0onbC4SLu;3s}bYL1a`%XO?I1|7>d(RC1YP<6!XB<ZB-NZCpJjpqTv zb|4Rs0D_IDvzMSmFDZ1vyYavBB%ZX4X7Pk6kfm5jzRy&w(KwE0CvOHVpe3~zMb$!H z3~fB3SV>j7p;*Zk00+XQyv3Q|MnsY)2=LDmFsHf_%BK#nOHPx>=Pux-ND;{=4=@4h zfp|>qjyv`ty(O=#s)9FujX^r)m(kI)J)@bdtM$EQ53mje%mx;!tL5v30X}7*7XMxS z$bz)_7nV2sf|heBY8I;m`}>c23H}`Hh*%|B`=+SOx@UCH3JSQ&8oF|x-O8eBCg(!~ z{d|hp$U|=&q5N=8*-3ycpK8APNjV+7^DDwA*fFaviFc$ip9mi_p)*R7#qV~$R{*IJ zBn$}ygaBvAVnhrXf}DN?AYn)tVutK~2p~)lF(eF8f~0;6AWe`)$Y??bynqG}Cx~Mt zj=X-3oVc|&P_DfEhX@#=`?J&(PpQeVS=xJs@X2XvN_r}35*r6a%kS!MnCOdKBza9e zPfN@oj4qxYm&{+dj(x=u2_?<50SfBOa{{9Q#>RAYlA4Of=&%_BLF{#6>PhO%Bn2gf z$<h+Fcs~U#E$!q3szGh!<at3OFBx0r?c@$-d+qgBA}Wg4^f!BW@Nh#kA_#h_LCWF_ zk5EGiVwD+08g9TV#GpsGo{vyt51|?#j<NjZZ-GUe0t+R|4Q3=+SYeOQ!ft^@o<g%d z1=ggh5{0^CfevYiQwqxe8xX2*`VS@!-Uq;pj+)O-XQicSB&##=GM05$*PD3#U{R@7 z!L1ZPKptU~t0V~y$t*WicZ?|Wns#_9OKKA<?l1+R$j8j(zjG0#p0Y;6tMO7rQ9Ml3 z(Ng1Usfk@~kE-*nCh2qGhWY!z_pt0SXCaw=rE7tSyd|LJ{PQ#=O&`h6(5<UyVJtFv z-gc_KoS<f_VuM17c{-MTNY3bx_14W=0iUC#sE0oE2F=Ko<~8MHzMte-vPtwj!E1_C zJnTRb4@VXdmbr^VWVWDv7iR!BRm@J!%}U4-9n6rhZ8^-|eh7mVCK|Ei>_}pE3X2^j z8|e_Hzawnq;QjM>UZB~r%th{QBev=QR><KavZ)d2JO+n5DL{#rC(K|BG1=^)v$;ND z$;pX1)PSER$<E6Sot2xHo5h>j$uv<GBPx_Y7BC^q9Hyl!LJ$EUCR3;w*=S*KlwWuV zL(McH@+Jvp#R7K>x)fa;nv}3yKYh*8G?qO*@l7a(5(hW9d|1GFK~hYJImA5O+9Y%x zkCn$@X`<m4$G}4gbBh^D9(K?(c(-flk;l+&j}Z&qBM8C2GsNr_Y)%ql{s=QC0XKJ! zn!CWwQzY*pws#lpAeS`ADGPPRLYci({C@|@Fv&Ra`X*Tvq`9d9#APman!V;4gd2!y zrmoYVYcZ=-mx=ZhTGqQ-?Q*Mmu%rxw6Gj@y<kpj!oSM|Dn-k;>&N<bf))CO$+j<(- zS(&t=+zCzj#XPr*9PpU=?SqN!JWW^09OQlR`Xc*A<ayI&9G-Xq6+C+rW&gZ${$yW6 z>+PF_MFb6X19Y^ee(i&v<O-k<L7KcmFD-a$gurNJ_g5=aCCH&oWpcl{@C{8sYqDw4 zIa4@KK}R8pAJ1ec%BijWt^#Sw=?$lHc{0*FHqxZt9G7^vCg}@#n&Q;RX;)QMFFJ-S zlhu@aYgl6bJ7kw#C!}9{(;?3j7tWrWHJ$Ia)1J;Zj!$Tcwzhq;z_Ca$0xoL11Vgk! z)JsjkRoQG5V;3Be^QF`m$ksnKXDc^SXqmG7i*`@#;#-nLKM2_Ppde*K6Tk*@_D<#7 zk`zOT*)_N_GJ*bJU7kcL=SwT=M%TiXSKOUU?|gryFi8`Zd6)q7P!FXqcW8X0=u<AJ zeQ8M9w>z<E82Ov^c|*yXtAvhFg6bVPtIqXC<r|c=H*PPK#6F|!uT81-+CiEwav1`l zBA<XeQ$Qp?!GcWNXysL{tCDxS1=_+i=b{`9w%WWXw;IryE1)aS(qXr!cgD{BM(Yiw zG-yk#e%8kIX6wxww0g7IW{<9}q=m;$UsvvcRTFoQ8RC3+FD*UkIOW`E2=jv1GgN;) zJ$?O8ZZ$z7PuKt{#tK$HN_vMbMm&Oq;XE6Oz0E{T^5QeGo#|2F&|yV(CJRknMT?8t z9<0`?SU0+gU~VzjrLfKwBbAYjd~IS4k#}eCkTQk+4;viJ4*p@Oc4mZOz~+DxzY}Ac zAa@hPk}^||x0sIA_HhM8SmL*1foyP(4|ZzKpx3hRfK6P6YAhtPv|D;?Z?q)a07<;I zm8E32Xsfi2g1K%@HwgJdd^0qJ4EcNniV-gre3ZFFvnp=yBge3mEOlV(wGh(z%_kiB zUOzk6TaI^9lKS0@Trwq67ql%%mQ3@GNP=qtmOHnmd1h2a@?MA%dP7uBHFZfRq6A62 zIhEjAfZS@%JRV3Q#3Knq$mT2oLyQ2^$rDk$yoJ5g6XATC06!4rFo3)a$-daWT=k#e zRm*`1s0|q{!xxSX8Yxsn3Ni(u{N#Qcpfm&uVummQ&VUY(Q^a)neI+1h2pzF~Cm?7@ z9l?DmpeP6((S0kRC`cV)1IVn1@7xjV+!^z492S`-<RCW^7q>teHD5hR$deBF)oB%m z#d1zxAi>ee`$Xm$*Xp<BPHEd&yBL}+b=az0URScncaas-j+(CauF<t>adQq8x6K6U z`^W@ZpUybJ?MCKlXA4g+%Y|(t9ky71?KtY9R$=j&Y?ucdgrq$7v7{r)jG&KE9(glE zPCWid1tE*9{tzTdcsjA%s83cSChHB@3l8nmj3ezL9_AUYkm4o8ifLuOw(4QM^8`b^ zPCj?GzuFt6#JTKK#%oT7TlJAMhf7yjG9n7HzdRk35njM75<T^uv#dzcfc^^K%WMLU z_n9Mp)nYE2({m{yT+0rQZq;36YH|h#o2^auibCjwipduFZ5fZNQ}aH<Lbj|9sbhtL ziPu-jOKcy){Fy59Ve-LTA;qOBf0%i1(+6fzKg+G_HHinGA?sb%vPcUq|CDEXmiEDe z$$_+Z)hD*bQK&{XiFJ<DnYO0FHfH}EI}|sP_Jo{eO65CUi<^0_4phb3#*z|_q_edb zdy$Ii7jxagaIG+9Mr*y<3D{b8J+P*fzBZLNtu{?bJt&e_PoB>otmec9($QyS*+boB zdu701lP)rG2uJaZ<R;#81qU;u#cV5(ThveT@@*|N&33dt*KKyWq#t2Kc^<b9mt{>J zPiHZgIdIh~NN0X|Cx@k-prW6pl%%Agtr<yJmCzrO$H-uS+iIdjfz4tyj3R(j<sbnt zj0Oc_76rvHmL&o48WuMJi!~ghWIAed+nJBu+_VSbx;Gy=U$-aWj%_&x;&$D%H{rTB z9M!sQ&%`3%w0GgY)E|*>|Fs;OaNC}W{j>Fdm%TVfqUS(EXNLiTE5czxSG=z`CwtJ> zgJ-(}Zox)&Owr5#)^-WB8?Wf*^U5e00wc09QkMlGhYFyu*#QmZlfsNG3SR4EnQ-sF z;tM#pl>_n4uNt1l3PEM0Cyj!wmG60?kKer;*MEDaC(VYgKP@qaNpW?!2W~@;2Jh^L z$Cd+`pHYSXQmwyK7U2USgq2W*Ly)=fXZ;*W`wCeG@L2{hh}YhUr^p42GK1NM-={^N zp9WKB4St16pfTO^&1iu!z#v76&j3k+VU+2)k=`d+&dl3n+5RUY97tzmp{J!2b{1H( zao}f#{Wffcsb(|fnl`jEW(G|{O`2k~GnvXwXk7)S9!;9-)#Em7i*~7yk(x+nqhvMP zlXMn0VmX#aYE=yO^vxp|mTl0R;1sOju!fLQHT+7nA)yS|re2WE0Zi45k*0@AB9qnh ztHicj156thrUa37z=${HwxMWdL{OEtVhu+3I4CY<GW3sZ4@F1R`G{)r4#=0gpgG<1 zPV_Fh2B~23V|M5FAgn%kEcQ=gQmVfb5=vWTpdHGsgyM_P3uMEk-T6O}NUSP8P~J7+ zqMrC@PkEuaoOx^ZM_(iQN5O8W_rIaO@&s#e*=f`Sh$G$e(UAIZl4NrKP$4K=NfJS0 z5N1U=^&*q%0mghVTib!OhEnG7&;-pjqOEVR+A&gzLQE;@uIf*nsvCf$)r~I2WOhK> z24@`Dw@1Z@Sy3?_11P+Z45pZ&P-Vvwb!ni*Q<Xq}d%1d5E^0H6IPuT-&0<)vZ5dkx z6abg(NTI^q32}{7=$-3B0?&}CGFb46DE#fvJI5%h$Wn}+ua%ReUr2BBa*cYL@40%I zFCpCvmM$fgQ&3y$iDw%)v~-BJVn#2L+k(ANWeA2*Ec1Vl9&Q1002k>83lD~JIEe2W zLOTc5JBNM|rm_*oenEh81+RS&S5Q!O;Jg-7<O>zr3?kZ$D*5rxsh>kh76FwTt~dvd zxwx~3jN(>QDKGWt`~~WzU?i*%K}K}Y{jDa$)$@=+St3l!Q!0^Ro(J-6Q;MKNiZI08 zcRi9rDH;LNA_|i|kZIZV4>Fc!9tWaTY9^p8ZId`03hs~NR2ZfS9dnfqhM<)dngu?f zbnt5-%W+k_g2!B7S0+kCUM{F6o`$h~x2-Ahwyn%(^$A-k60!_UP@^6V@cOrOZPbf% zUQVRh=;^N#)xNo!J%3wVJDqz_Hi^8!&fYb%uh0oF^+J8`pkVyh2w}fNvgQSs!`K~b z_XcGTby>)62fSYa&fbKx&*BVlafEDNL8uOtJy7_9zV1N1;ld8AU!i<M?enpEO@Vri z<v0TQ`s1pBKLeY7^jYlsni%iEsRN8{;Be{+$j{y$MQnt4Bl=fPVHc6pQYV#IQVW|< zEG3c1%gR_~Ei#e3QAOuvATueexl^O%B2QJf-n6K4s0hdS)upZ@wA{DF3b}*(`yDV# z_nL<Ye?6c)d$y!j85SRpbU~}{oYs#Cic`=0Y48??S*|@*9A1_BKsyRBq9GY$f$G33 zig@)Arv<w8a3O2wzMBP_5fKHl?C_-qu~(ob53Vxu%(7^Drb($2!>>u7>|Yi&vqC7P zV^i*7_yuULqsu7FD`?7|W|fqszj|Fl=ET^l=VB04<L=GLqB^?)49Mj)zCtP;t)6Q! zIi!V6iF&@7=<?s-!ksJI1<6%)KT68uAfDe;i?49!Brb0b&5fKwUXV)`?O>$=SR<;g z#Xqx14vD~VCQQH^PG=ph>IP^tuLbppTvbrff@hC+$<dVoytO@Ztv&%^sozeZ7-3*C zqVj_IhD-UBN%I+)@zXf*gG2<lF-H(+kY^2{3gbEop}xZ<9@(9ltf%OWr95%0M@t$& zd9$7ORT}WVw9<#v8ccm5Plqq{y`PAwgZc)*DZ4hsObMpc%<C8>=`rf3P0-1rHjPfy zS%o$Ro|C#Zl}`Lq>TdOxlg8Bo8*`=9_Vq$1x@^*K8K@Op)QZ^kN-dn!>PPE3tP!*d zbEat(!W%1AY}(ba=4(|=8&pqFZb4qKU5Y!?c4}?)+E(d*8~B!L@P(Fk0OD{N2THZ! z)9q4?>QTU@BkIjcgh8X4SWGlPtq)fzQgjEh|DGEyr$|vi%A9seQNUi;u4TC{Sodto zr0ZRE6XZpi39plNmE9;Q;8^}9QOUTQy{}E7v>!_DG+4A&oWQkF4=nmA?W2%q0D{-N zI8w?jNpLX!BqooqkDn3l-e`xIHbdnU|8<5){#ZTIse4x_-xW_hQLulBs;JSIk)>rc zRjHS7f9!T(tbs>dg33!r10QDLmyju)I!RJ)q%AYimYZnJPPFBO<v`^W4W6P5JVrsJ zDtkL{>TH(dq@1!!NK!gYLgulWpsWMJa}lR6Z``4CZmtkCmW6U+CcfdAjkT<%EMroe z!K$)HNLwIKxIXeeB6v83G2N5Aeh~M*e&C7v;zafC=6-j=|ES%DTDMK{pxOs?e;nKo zfQ7(PhySC)d+qpCKejT2r{1TGnTE$zOKqX!#XCB(`{3NSblBSr)Y?&02a}Q7=T|eS z@Qsf6vv}Aiw|ewhecPy^uK@VcRa6IM`gN<%FGg{zzP0rl;Spv@?qV@*iewLK<ptX8 zCQje_e3D=Dh?O+E*Q(gas}ShGYL{&7P^1%ved4t(HlJtcF5uh>sMQdIFvd0@pav+s zuB$NnH{fO(8ouenfP4$CYXi<B=O&nagU%yPb%3xH8?MR6<In@h*Gzse@7j`VgPA6g zcPeo`%7$ZWj^|pHEvjesuL1aa--h5b+@GYLxm{EI2KWv8Yh<@<pGnkbO!oD&Zo-dH zcH_N!wQKI(0NjI}jks>~j|h2_zI&x-@V?NmiL|DpPs!QWrtAmw_EG&)xNl7R{+}W2 z``eDF-_4L${O$y#DQxN;4`ovZ`_kzBnG|SGXj3ZtlIkPJNwHnEihbOaF3-Swj@wF} znJ&t?2N6^L+uH7dKUDm8CaOn1%ctFSSYyh|&>odui1_7l2SF>|d@{P@;+0Wv6t0+a zD(e3hE^BzScV@@R<^SP45zMLX9UX}n^9c^$M--CwX*3@wi|XqUfZbmZ<;)>qb}N`X zXc~dhBdOnQ7{TUIxBl}q0`F7dnL>|*e<S+G+9&ndU$=^NZ{0lVEg3VzKi2kkq`APe zH<Y<Q)2CSZ<Bx;vMWTNg(tBWP*LA(ww<IeKL=K=2hWN>4(XTGR-HWvS35GFlA8h!E zmOia6jHnN6>P@>nyf$Rz`zJ>6>|Ok;nfG!kP<)4F<;KdK-sB-7kh8L6_Y$AVP}88z zEwiQeL9NePm47GUiEL<y{c!y6aDr{<=%=2=Oj|$aC!fTrHem`s%tbfS=$*I$&K~4R zHx%044y%}Zub&J4Mo|~5hl{L(OO6#L?qhZE31QKdND+5I$CV3MXpRsc`Cib_Zq(3j z*pM$$*cS@iM;^zuxx@P0k%N9H^c%Ip_=_;5AFA5FwF9*8IxJ!Qvlmlv?Kr~b<oyEa zt+W<cr$`kq>^}$ZkaS~q8VQFGTzDgE?*xFF-@p0(gIjK|8*l>`OR#)e{F{W`-L2is zxV}751+5J^DZRi+cDd|6&c2N~yL(X5>R>D*k0i#prOq~<aaEQ3p#)_|Krop#!e6#| zMSVBUk8M71k;wjf(*Q07uPB}@=pJcM-*p5df0eq7nu-LyzEW{xH-AlN=dTF`=MGL= zOLZ?Dg8v2UY^_a;FBxmrJFC`T_G?$hLp@`m+416iZPre~<S*DY;<9|K@(^kdOFIR= z1xw^V?0*%&9mBk!3tzX|rF)=jUjHDB?S;*L5^q=Vg`)UEu%F9&;`{`X-wkzR|0KQ~ z=>J1;AyxKd#V@1qZY;dFjNBiI96h5*q*o+*V~&ivRWE!6B+cwAV>!g9l6@mA0sYan zEGw7#L#lL<&!WUdMVlgbX&<T0P|`G?OjlU2s47AoBoduS*GV}fif<Z>k#7=SFe$+( zHGzUobru0DRokx4sc)k^8X=ziuTUz31W%bP3V2fHUkj5oj%wuatyDuP1!<-<<w_<+ zQ;SK7%vITRMMGEYOCRS{+g`R0Zg*GfV;@%$I;rFL8jI|;I+@_DH=4%EA=UUy_>c`f ziiT!rhH1JcXG@<erh#b|y?>y^>Wj}-@{(#8P&lZ<sbDY@J{CoqaIzDri^}gu=Lyw$ zfex%sinT#~BZwHK^ntf2rcO0Y80O@YLSeOk$0U_T@ixF375kvn37Ut3CM-O)wLw`U zT&~jU(8J`-T}LC}cacps;WxDRp*otjZ%!d-6hGC9`K+d~O@<k^Glz76qegiB+w0qZ zK=nCSP1Nn<kiWm$!@4lz`rJ*H?Wx?(Ssjx7gIBM0n7+@ucw;A3-;G!J8*(td31#pj z$71a37pTt-{JZ()<mlbFx%_)+PPVqb<mkP!=f;)|Ipe6hA0f68P5q!pmI9t3?HSIh zgl9~f%v;^k80V^xYmk%d*XW#*rjdFNrC)(_+(v1C-!eJoo#Yh0SAui8l}!HzJjwov zc%rQra`w8G%>VW=$@m@NqyvbGQqYK1<sA64+%m)GngUWcYr*4M@-DAik(FQaWE5Px zZozGM>g)kCl-vnz$Ei!%Zuy|98m<7!qCm=`mJ?qtCWOBND!fdAQ6V-2)53^S#mM@* z*UcUo9?Ah#Y`l%g10_EHXS?5w`{L(mXtCnAjPq^1i<R6-jbT{HK6oQ?VD>m*D>7%l z8xi=r+%dqGCr;P_QKbBXgG)J*-9w-Af&Kce&a3pdI~`B>&t{xF33gvDeshq#8TefO zr%!Wlo3Mwct>?kX6Qp_IXa+<}%uV&9&*_uS&&MOr7IX&r(t~WgK?z+Y0s0%s70|{p zcz@@s7|*a4&)wQLzgN5i75MAVpLhqc)j$|M=rh4Dy}<>n@yevMZ@qJEa{8yEC0E68 zF>u}iX-1=`v;3N`<@N4x<Q}eb-b&90Qnghr(sNbQ^An6qf5j12)p*y=y5rKt2lN)q zPVa{E`xbwS7Sc|in*54Qu)}2z4sqKkI)gudRpt&Dt;lzEV$N<>Kzw5}Cy|#~_%v`Q z#VdwhF<d$F@?-atRuZ~}aA(>oH9rMevu@SK?s%=}e!{!}{gito4lYNeg1Iy!l*%Y( zRw^zPSBmhIp+VHkq99yDE%ND56fadd-lRq3pR^X#b*UDYO^w<+b#%&VQP``hhOwT& z8YFuZw@Y@Z{;IA;`dorJD(sN-D&H<-SE@%T-Y#jCYq!8%ejzP`mlW`kV3%{7C_fo) z==i9$D(NTptb94ezgOZE_L7NL)lK0%`Ri2RC0DJmpWIw(-`hRec8L1u+o|%W%2(-6 zny=U&hg~9iYJ3U$R((_WDaK({zGoSh|FCjZ^kM5R^G7FKG8$)U+3FDWr_-l5Xi<#b zoc{~!noRl}`)6}y3Gu_St{Mx2Gsa&#!uz`ZU(+;x@W{c%rh~qo&tQZ{Iep9$Y|GQ1 z)%UtNU4W7{HArjV+a<G1xzbk5YHgxZ+gwKx3*GUSwsk2D{B|G|!<S^)j&H8^0Ql;r zJuf~`YK|S{QxS{6Q0*`X!h!&YMtV`<=Ng9w;zHmL$zkWR^GWQ;zujTy1An4&y{jco zkwxwKq#uu@hY5N`VNSJ0x%TKn@5hE2zJoDl`4KQbkr^9DmAdBJmR0&gLZu}yu)CLG zxKhCEK6as2XPmX{sA;;zD5{8mWI{*GDRtDO`^;<nl;#`s)Z`ok(ohw>KRoEC+Uh># z@At@VF8gkG_$-!Sd%~;`uTXZ)79}@PJPyeHvMf^^#0@}Ws+w?D`+C~!aD|K?w+;+{ zQs>U?>Wg80jL%_lEqALsX7^IY`~=;U?m#zkUG?KrS`e>|^}=(oy`s$D_x?nISLRdK z?k%+YHaUF722dmn)gm9QQ!(c5kdQU39169{p)_%eLT=GauA?!A*`hwI^ACGJXSXN! z5TVrv9Wp%!XpH+JsMqg}q~Ht_*@ahmBx_6~53}+}(j54VwD8E%oDdH)<&vg8;4}ov zqf)=QG(^&)wB2P5*LcTh%&<qcd@44?-lAi_VjB_vC~cQ8IMyu+*eGH_*Cmp)Quz$G zVznL+xix$ZTP2xd<Jh7!gID_P>dppCbNOzx4G3S`o=L4E%%`gLs%iBPEX#m5QLjL^ z_LK7qAr_g0omXLW3W?>xxeoEXH(Mf2`X;;15CrE4rj$GTx_Q0Y`HzCz`LE6xVYNId zTm9X#F9iCSnb;5mu6&m(wNO_Xfy?~0?`7CFT6}2~?bCVgf#09C%aZ?Jz%e5Ze(?VJ zN-EsG@Y`pd=j-}-naayQU1Q|m_^-EnIBwvS)f6<m_$B5nNX&o!-ui3Jl2Fduh@AEx z-k&zTQd;OsciRlTmpCp_-|4hhy_Sl_t#1n(B~X3iKHJy5$Kxj%KGv^3^18CxuCgzc zi@M7*(bKJySjI&j$A-jCd7VVhxPqM<u}W+1@iQ&1ofe?&RCLaIpu=(36>n~jW^OO! zw`8}V&=dv4_1!)d<(-4PrVKi3nLA>dsiErNnSjtWB+R}r#yu}+&aEG`#{D`!C&8!7 zmx+)k$hCT@cIx4jOI7nIWY0cc<CU`lZECr=R_%fh>Aga5?*73u0O&km8UCI5iW9dV z<tC&h*eyUEo@hD;($0SF0>(%(wd+u}L&kIZ=YE6+bf)1Whu(E?&_hZMlH8z=;i$WO z4@^Fkx_-k3{9eSmLHk43RjKX)uc$WEv{$VN#64=;VZ@T6S4IC<O^ieI1%Xeh%*Z_v z=NU>ZOS%PZYZ@>sThYu_MVaO8L$aDGjXGCkcdLlODp&NaW|M#ZtLi*uun2V)6^E?0 z^&I)IsJGTb!{nO~UyioP-_@xVeZ?`Wd-IKt>@5}V+*$$OMQqAHs?>=)ElL~mS+w9* zY2yc488{U)NkuJFCIN0GG%K~K?AFr9wwo<ZHLXIw0C=*iMb#<FEy-K3OS89fhiGrn zE-BC2`q<F6=CiI<4{yzmU1u{#tWwP|+1ec&y7^CZ$fnOIk!@Fl+?Jt=Mat;VCfyOK zZQZ|$=iq-q&&B_;o|B6zp5?`<Z!)lIKTLjnh}ym;KZo{>eS&@7x^r%^#azsG0L@!t z<~Z$;9Ab&9mC0plg1dmJR!7%5CG%S}olAa@{=CezJ4~zacU|Z9J=~e@damk)LfoKQ z<oAG`S=9|e+yG23@A@;{5YVjb24gq7_gD46bGN`7#61&s*Z9ETTZCCjI7a>)4)on< zYf=Z5tn)ZfSDg~v*8H?oEa5eI_UL}VjD2#(zEOuS_6|tCp><k`6KH=xj#`Nyc;BF> zSAIb;H}5Hc^$kJY#9<xHJos7FYHJn6!sFFV{cNK`4ZObv_!{&$QS(TSSIO7=4H^KC zXm>kkhnIel@`~PIyH8^I7IMq#@e4;*2Y&$BxB0#F?0gg6xqU?W5Ag3LH~+Ru-URb2 zw*8Mwo)LR!gTWUY*of{8N5bK|Z>H@YBBtq*bn{t7QqI~=EO?i0&Wvqq+}6s9jEggJ z&cW$d?QqieEfkK^?6W+;@^gl_Zr*I(<k`m$wl7eA>%XttcSwK-iHEa<C01ScL@lea z1s7FeVBG*B-5_Zf+{q^ijeK_h5HA#!%Y}Mzdzig*Mh6x9QKBa{8ddu#wM*Rf8830S ztla+9OWh4P-iV&M7o)uMo{cjvs1L2%x!xu4hNAb5Yjqz8?o#-ZeDgaEUTMzCys}Sq z{Ho6ibc&UCnU)N_!qJO|<=S`emNMT8uUy{@F1fz$(1`5IpOsXjDG?_`8zO8FJ=q=5 z0P_=Qn(Q5$F_c<3DP;}(P-P9hIfPw04jrddA=|IqmTyViHZQ|++d<`<n&Pyc6qgo1 zx$>g9<1e4@F^+J+`MO{TA4IB0qgIi=5ZX0+QB&Qh$xgTwS77ZrdlT%(t_`y<JhwPs z{H;oR)2%0PjgoJItrGP{^(WnH-kwO@MfWDFFUH!-KUNe*z4C}H+6st{_K2nfk?Zp> zhofFhRU!NtJ8Dx&8(4MUT}nNDcP6Xb?(-**JjdNja9KCMr6hJ7%yAoXO08)KO;PLy z>p5s{O%6<WvP1G+xChdIo)tcZ9zU+$7<xk0N))%0{nGUyw}5NJU$x+&n&qAympJ=n zaTpo5Uh-SL^1kv@nR-_A!9Sa?z3`?l4zy1x_4XR@dK<7)b~|qmu&vE`y`j_oJu9dD zdm~i3JWWy>^H0wFI2Q#y&+!QPAoUQdLtl9ijJL}vCR_DMT+Dd!Fx?lNS8II#F5}Ub zUtGA@MY008uz30jQ1ipr`XVQk^25qJ{|QcgZ<<&4gIjz&Gfe*mieAwV^!DNJWCec( zeHZj?_(tm!^vkMS**m~~bbs@C|M2enM*I=_5wfhnSKGYQr_On@PsV$1lj8qMXTomt z2Ti0@m#U>nigfB(PElnN+91NF+A5Lulo+K*Y0S89k5<i1rA@{+l|F&rkOJM%a-HOG zEw`!Dqv5W2V-nmU=qi7iti5F0ko6HEt5j_)dr!YE!i)b}c{vt%N|!+<0EZThMF^cn zfIXH#ByAE=&Y;zrWGsxKLAW`VS<p`nM{HCvnb;_lNR5y-nYqm>eajQSu9sW9-rnD- z6djlB?D-+V)rN!**4=o8KD!K~<;p;v??%FdnRo2e%_!B{sLP77s!%XdOSe-!7Ymb+ zZt~`deSS#CTWn4nF@EAs*6yo$aN&)ODxie=gC{cnHZPzDr+6=QPKhq)*MUKoxHgE= zfpUN1)UKlkFMTYvPM|)}b1&v0u?y05Y<rig1B*YweGtAq4dY2~P1IJOx;UkDti~p> z>P>t7Z_YIK%jTkNzr!Z`GS+we2bwlkHvaTy73P;y5|uit0grC5$;$$tPF%#svikuV z)b+U{|Crm$U9Ca(cm%6{X`a4V=}A1UxohdS=FIo141_PC_PqsV-UFii1W|m46*N=_ z&N{IlkBc7&y`fB}$`1j(!RQd@g{0hjY7p!D%if!MsPuxxO|2b>zR`Qg;`!U3^c{$M z)`zx3e;)D~{K%OI*0&ogY;%7ex-F&s>D5n~?~Z;eNw`kS-7<gM0;BPpfrs>|0?&GW znvpj$@a1|9Z-zjC{7$a#oaSfsEAY&J$>rn4M43-A!7rEv6msMfk_8U-?sWd-c7GhA z$YgfHm+p;W{)C&o``{P~a|q=h!2Cub8=o_1{KSDeHq;>R3+6siZ*T7%6@7yBCg=;9 zJAR>&!!v}uXHTX0nF1T%+c0<o&mxLrjH`aLj$8Ut$JgFCn;P8TuuHZ2`CICTUmA71 z-#C{Uw;AV|+lc?r4Y=Ah$ZpdXa+vEDt<9_*=19-|*LKY3`c(*q-Y`AV5PH5X0{|ZI zE1j+%3dR)U{Ps4*c>UZhC0%aD)lNMlL*v*jB`d<yZcT+*@!AbFJ;HL;-fJF|>_MHb z+oqb8f_^IBe$z{BK-QPLYuVl${oTw@&fwWReRWlzb3ngi_H41;$NN;drrh7Ez;x5^ zut_%N9b10Cg{12p1isMM+jMnzuA*m<lQyI;if#o1h6n}@76vc|7WXeBPW?={Klm?B z4?hT`Dq`fZ8}3IIqv5e;2}6%wy{lXR`!;P3Ym0`vt3`yz$A-MCSU~M%>KtGfljpE{ zG^35-tFBpyGsU31<}n7yGK4Ww#};1aGUoWRjxmJC?6giuoaSR1ePkfB-ynu3&&1;$ zuh<`kwdC2WIBt%?Y)zAm`ECBBzSXsOz8`{|b@`!l?-H^U3%4c42vr6W;ta{cIGNwW z2#yr(gkd)wBxCH0;XHFO7qiZ9$UFRfa>bG6%>$&nG^)TUhC46Rg>7ChYP`;A1}Qvu zBK`vB=XXl)j-3|7fM%4ZE?|8mRm^b(f>L!U>d2_n4Ms^P7`a9?Qi!bJ-K>X_Mm%zr za0pf0jzo#}L0P&l7{F(07Xw00(8Fs?R$k6$Oa@^*4FVfv7mbN3GWQASa71QdxgG5y z_384y>7oVpE7^riSy|Xu2~rlhDz2-*Q??SIzQES5xyF7a`)D)dSnyx6FGI{Mxm4O4 z=g&o7uV`#aUS_duh11iyBkY&_>08kZ`v8g|Xx!+Jc()D6|D^2p;+yAd81O_lVe!v! z#k^&+|N0c_{@o7$yA|R(ab5JBD1MlfJm(2@c_zr|_#L<CeO?Q5$rI#w{tkAEo%cyx z?#j)1f?Q753QWa%+C2eVu0@NTEOWL$w~8N5CC{(L?es*spf8Ib+<J<=0WP`&T<EHj zX1mC8UgU+&Xp0}%7CX9USzir#SNA_Ca^T}92e~@l+V!?^gzWePxzv{>&yu_(&!CH) zF)nm8&&v6##>#s~6@7wK&{ig9(4P)ZA)Fq77dtBDxb!n!zMYY{_=$7$<7Zb~7vD<t zIzPD=-+(V@YLjN&p9+;>X>t8sYAcdv6W*&8!XjNj7B!W~bMUW3#{{_G;;*$@mkWpZ z*lr1dvl`K3<vdV)cVYW@gz^#)?yDk9w8!nqoN_}x*F>CXj@^+n%n1F`B_cvTEs09d zoTf!mHOC#1HSGvj$efxY7#I?^Xo54wwV;2&`mPWPa>tO63i5^l;h+ecR=61vDq3OI zxEb_+nsp2^r?wCdnPF=}L^7wm5Dr<BtPqjR@h`N+evwvf31MW<ejy#QdxL&(>H>ZY zLmkkBQ6?Q;b^-DuH3_y=!ORB4#^^4C#0FS1j1&g+3@sZTICd=g0k9*^b*t{^*sH5M z`6GgEyKZQF4E$fhKDV!aL|uxt*FbSZzPkAu<H{D>&<i&k%H_hgdN8b)2Kcp-d-V<e z-yyOB*VXgGFJXuOCF~6UvwrsffXM%wVqf}C#eV9LNG7}aD5W)<S|u>;gWrfl-r`_0 zv5T@xgRD7^#HpG{^lHU(2l%QG{zHdSie&$hHGS=2mV(dU=R;ly*TZ&RB3K7<lATX3 z(H>~^Op-N|WaAqjEx(Af7@S|q|Jbb&8jJi#@NRU|y}I_DlDynvV-eQ7q&r`TB&;V_ zNKj!S(&SpoJYNSzC3UvT4^UV^Z>M~gR8ZBY>xdJ0ER9MHO+_7jJpg~g!D5O)<sdRY z6mE#eM^Rzq=3W9-Kc8F6P`@K|Qu(2qbozze_c@Y_?V+rb&|+Xkn7(K!0CiLirNf8! zHIiTm4y;U7mPABvny4xqW>#dCp{K|GB4M>bH2VC#b0O3#W?XGdmZtgYSyy*KX!}cd zd$iLbx*;GJU4yGN<n|AC#Zs#kKW9el;_d+l>T;{t!;s`@iT+|mwzm}X+Y?8QYi#0w zF?Oq8#%>mChM#oN@U{n4Ex(d}MDk$(b{n_2fD;$lTFKo)A?{fYK&ybrmM-m((E&uy zq<(<)fTUw?*FQB)?U3Y&s%NYh#-7f8faZ+7X|x+U$CwvJ&!8Vn&!`{jp6-4?J*|FV zJ-v2-J^klS_Eh`M_7u*B=|4dGUeGNwzdt?`e;__He?T4+zw(c@SM40VFW`R<pj$(i zOMWT<fB`Q60FwU^KvsrshW~2?c5hWtv=>h2t?e{)4@gJ^tMdtH1c~wh074LmV30(B zP`p8C5G4jkRYXA=2#QDo3W@qV6l^gFs9M*Mm6n>GMmKlbDvDH9!o7??w^fuP0=|1M zUufyf&ZVE`r_&i3%rCP(Jbv$YM*#C#x`l=%un1}E`z&-T5j4mq9R$=O+fs;yI%%5% zW2!jx$lq3ibm%5A<4tPu)F7JXL)8DM1Z&Zbv0&G>2$1SfEwNd)ErM3tRfc5QEP}8_ zj$PTxN3KM0*Pt6Uhj;Q1V%W}ut3;;J5S^0<v_Ut>4((C_tgJ!1bmMWcc8!8Kx>rKE z9n%QfEZen*sIVUgc(HbC4}Nb|2ovp^2KlzD3%9`{-PvKo43h%g;bH$B`UAS^6Sz%( zh*v)__L^_-V*MIFu3#I4;;pfdkFWp^T7h^RPY?%jPcb$$$WMfThg{GXK7UmBiX7;p zR4*SfzXWuSiT#b5hgu;nI>?xC$1a$QeC!$P*LDE?N;H<{;*F_)@Cu)BqbjI}%&CWd zvbX<AHrB?`OIx^m@LC)06L<81!@uv5eZ<e{JN}P27T@_Z_^1qr|LB!-j9w(b5Axn# zuotCWKVp83=rJbrr(uBfwI=*cE?5p?{}%KkXxu@G<x+g$n`AwY^P7n2Q=OqN@_bL^ z+#QjNRHzIT@o3av2nN(J@ONjPNDxs3RRq~l2SK-<4G{`)m`<XcU<Sl;HY2EsVRkTO zb90k^{EG-^6dy`Q$$F%kuDr(Q7G1QehS!IcGh`VbuoD<`9!8?&U5!|P)c4`g+xl?1 zmd&VGi{V=VKsaU^=*|m}V&y)ox|mJ7N760<MOMmg1r)*fG=UA1aUs`CWay}uXMqU* z)o32hY}zNcbhmE;O6FzdDSrcION~0>4^SCzz*vm`s1`(mSbS)c1fmtC1ht?RG!m%< zw%{hzqFnrQpbJ8A5y3*B3sP|tfiB1el?1zBC-kClJcghVs3Q~-xrDr+7v!S0@jtAq zqJ~~9X#ogI4JEz5R5jCjO4mXVQ{(hCG<0$3+vA6gfuh0)k8ia~>Yl!)nw&z#DY;r~ zbF8DtvYs|0q9wJ}gM(1&q(G(0gv9!GnwpG(J5(eb0qUB$`dSHkS{kAAlTuQY<up{( zGfyN6wecG%rcpX2oVAl1J_uY|Z%~twQMzKgk*|e`BP0Kaqo^pQ4ZeE;b%X%YF#4aM z_us)CfPvZr0Jrl2>=;}Z>Yn)mZ1x1$2;*g8Og=yxzkoLY1Fri8+!P3~*DHhj)kr~F zsR-*;Ap>fpAZ%2DTBLBbRJ2q$VF<a&j19jRKVJ_&7vKJIrkseDJcKPT6nLeS1|-Dg z1QJALL(DKsR4}C_PrIg^oz9_NVoJTI9F$o)$#jm_AsSa|Jz)6hB3lxk)Q*^*q*$Ju z2>Ee)EjH<bnm$xOtGI981Fab$GTe)=E)gQ)TOG>G(9@St1h1;~7B;><E{;f3QC3m+ z4UcaQrX}A@=ABWo8)<u0vNgu(C}~)biu^%h(wWjd;e@`Q(tV&A|CCBg5T$peEyG&` z2&WtM`j9|0y7&B}AlOJDDLErMH;FQsK{i=Q`U}#<<H+I@le4!sE;=lc%Oxc3HbwD5 z(~8Yx)8kV!sHM)1&C1MU1r?-}#!5|~`PsQ?VFjrq@k!5@aS|;jl9R7DC^<PVjLY%D z0<tnwBt^-~PR&fCDq&ueZGfOy0nExwi!)S%5#r;JW3t7rVj~1Yz7nMtW#{}MAB5hW zM1G$qqp;|}1_&z`G4)6}Be`*FTNEKF@+U_J2`#xQgr&-Rx=Yb@p?`>YY(x$p9Yv=- zLLR~}IoQ9iz}IiVPk#bm0|b7G@Un~@ntWcLK;m~WaS{-55-{;c=-6|797X~TBLj!w z{QdC#R5Fk@7Q*%t$N^ee2s=w52k8;7;V?85ZR$i6;^y5{<<{cve%4M28f-Y{1jbW! zdq!4CS03i&?88%@7GwBpY6*UBrsQjiA|r9^&~;6s=VoH@oKwfUdjmOB#cLxiG$*xW zwNv^yw}>aQ&T<y6y>c$f&Dr;c??9OPrU0Ax99T4x2-t?E0-NyB#2Xt7Y&&z}a!?x( zY`GdX^S5!-6gqv>h``4eveHE>Lo%XfTN6~o60mhe(V1DLbqQ{1Q7sNF3|&nnO%)t| zwmu`l5)G3Z8x-lLrUj3NoESsnoAlu2VHdX9+0m$W7%^%w@}|n^MoQ5_87aq;^G2ry zv|A|=)JB;Y(~S+0g%Qbh<O10tX?h{{KGqo>>8mO7cR?<cldGPLHTZH{2Q9BueXB06 zl~>X&O|~gS+PNpTRr(_R)(NBQ()tRluJPIX@}P7Xr9s2Mb;jk{(uNB+94eD*2sL!> ztO2t~DYK0Yn*uvxkqQ*T6Hc1F+0(>i$99TIAzKvkMi%6BXN>^dtf+aOf@oq<M(~Do zs>#lEf*91z4ewU}W*HPHWXmFvS{6Yu?0DTyi|X-NG^WfdCfb7zENv6>k?P>p@7kg! zCZ@*HO-7w$8^Uo6K;6l4r6V;fm<{&^2uH~UX({xSR9fm7x-uWW%w!+C@9y)%#zxUM zXbUD$^yHNI`;)97v^bWzmD-}ECTFJ`n}+@+89K4xdvtoYlv!fpqQusYT{3Y<Cw1qf zxe|@wTCqX~0G*NtYV_gh+^bA|6)bKNuKIW*+oaA80TFU>=wQ^}X-I_>G@4@9m2U$E z>@Htvt<l2S#t4Q+it$WE#zwv=HCN2LLDSKOzRHSQ4k>U3jYK>if{_D#iNJ^?l&IOh z-z-N+CxbD|5@QSsGOY=UyUIlR+J;iwY%CSXoKsdAhu%ONl3`MsQ*FJW1tU!c5ua4( z;ui$jij>z7Ad3ibBU;f*fD3X#B@!Yzfo4!hG>2c2NTeEYM=78Sc0w)6#{VtULc^yI zPYP%5J)p}lYsV!&LMhm!zTr>}rb8l;kGBkzK{p8{U<S<~9k&rYg-E0y*AavQ$siAx zju#R<g>DpxClW-1YLtjK5|jd=L@kD~e7ZGYW8SkWWCZ<s252PvM2iUgTvS3tU-BRn zt_vno^@#eQg)2p*vQbuYiQ{{zo=dGpHq8hW+-N$bBY|X3%~4OyU~JABS)L)E6)B!D z0{`vCQDA2IzzbVU%e2F>rdpbcN>5p^Vf3Im!xExX+JK{-XRA+6w!<=z<_U8&9{35R z9$VEMsP?y{Ho8!%@g+*qtQcsY0JG$sT$w(yhm(l;awBdypkZ6}AfuXwc!cFcc_gEF zTeYLOdpYx8fuLDKs|n)`j%MgdR^PbkiIc)cesqno685E9xW1fn;Hi>PHb*o9HPu6_ zPBy4_*F=23u#nn5=a85NvJNWh+XLipoN}R`a3Y(YnwfydxK)8AO6*L#N@6t7Ija4Z zj-0_UkS8-7OB`=bzo@wAWlmD8QcBd<tQRnmWJR*zq+wewcAmzR+ZkOL?jq8@XJpV` zc0ObtHFUJ=m`agzChj;0GR`43^y%E;Ighur>M~%4wT-JrpW=W=i`3aLHC>*)^C}o= zW@O`T%7fs&w6yW+nXw|9jEtF4PR3rGK}iY8yb{uCs2Wz)!gN`FoOVaD<S?9{&6c{7 zDw$#)LB_^`aptbjmtre=wuvN8pkS;Rh1hzariwgWYGyQLSP$YU<>@OX>EkJBtS-*= z)T8f3V)oIwMmYy5D?r1DEc3z@L>pxWcr)S0=G(|QW;PUvGPfEmCZm^HmkQmRzR%L` z9l9T);orX3*6<BJ5!dpSp0YQ6tD)teyx-FB)t<69f4iaW3p#Oc{<N67HF?XS?Tb2b zZ~3%K-P^efQ-1kl0JETRxG2DuOWo>@2RI$Y4RVbjF`El6==RJ75y>pY2XQGZgmq4` zxj3E;<%R)jsM1av9qPsqs&rIe2D*WX@dc`oV{0w&kkW$La0E#hWaMRd%k_2y2LwNx zC;CRNB*XLEa9^erEpc(c1MmrP?itpPhNlGl+>QlN6JR!rWg#~!NLLLu7zF5Cz%9cD z@S)}JL)$L_h~XZ3=!pQhL_s#7?cLqRt8$OALa$(zAA+s50*rA03`4#FJPibErtCr2 zVx7y#7J=qKQv$uOfR!b|$VLk<ShfF*vZyi59{E&NreUo}Q<-Zds$x^1SnbC<vKek< z3oqEUZ#1G(JxsyYPn8Oon1FOsOmvg8D0se4l5=sMY)$bO!lm%w!W*IUHGb1ysyVut zEm#3v*ttF3L`zP&G0+KSSdax2GQ)dizV*ulRW3d>;k6TL-tH35!Wv{S{}~R68ni1Z z|Bp$#p+6!%o-!yc#h+^B`q`lQA=sN(0iE20OMaZN{4?ajb4G=omM)QUFfUkS-w&*F z+Rrb^d&Ki3bW;4lUU`xU#e3!Wc3>@>0AG|B5)wTB?=XXYWN`z6f2<7W2r#~ZTDHLG z)qx%w0BKmg`)k611JHh`iU(Op6TxUAX^A-M^90q!zWPF>bU|?SSe^YR2;l1TI@;ou zPOOAF!c5xmQwLf?8xovsh;5i`{jl|*cEQ{R)Np81m;^Av42}$~$CzS~WN7U{>5{zC zl>vmnCbXJZ`B+9BYaX76<Y)p;zgzvJYpTIHO0Y1l!j*SPI}F8Gp_rmp2Cr}shz-Qs z^R!ASFYy=!&OwQKWrbaC)?2vqWowM*8?iT~luNN-6isW05);f@EKEwRSm=~<+#nUK z3{o^Ayxy10v8Pb|au5N!2vC3e0o{f09fbYbvB3s>;$dEfAlBuDd>~5u0g;vok<N%o zW`{_MiAhSw_60q%m2w$CMkE7{EGfW*f;phI2f4%wiC9aBYvna~HpnXuj!BHQ08&t+ z(l5N?ouLwnI}S__;@pN9%ZAi|jU`}=cO2IH9fs8xP!vVRJF-f%jYcpRW!#5k&1&bV zER0JxDkWkMj;sv2A(an8E>vJK#qf+dv^a4871Bjk2SD0Q{sna6z%AHSd#nnT*~17` zdX^#nGqiN96J|@<O#aRSyT#06BVK^d10HnXi2+3~2-Pj~F=5TpT(?x;1DLdLtA)QC zV0woKyYazdg5U4<N)CG&rT~mTlyrxg@`<AtK)+A>%I>H?&~``b^omD(0B!?KZfW5+ zXn5zGLn!wQ!?-0cEQ8JCd&xcw$BLPxBD2U4k(GF*1R8OQFkgvuHBruis~gM^5mP)& zli*&cL7%9?KKq>7U5Q2ZHfrW+T+$S?sFkb+%qhvmD3zRV1$#`kQD`F`vqMR#gtkG6 zAd1D>fmQknmH@qyVWpO%19}VfOvK)ewH<R|elC`~fbci;W;aoKIuS+d7$#4Q%i^Xp zIjK>mtcKki3~}>MOzKCAQkhz$9u8>NUEyO8LsNsAdyCfB*~Nk3x$L7l*4th_W;PM^ zDa#FC%Y0<?Acx6(T=XDGGGR*eU_<#J$zmlD6U5X4*wh4pPLNxBBuqujI!<douw9w! zO3c9>MQgC}I+R{N+#Q))@X>lsa|8HiD5C^7DQ1!!6VB22`BeyS1N#QNj|1EDh!9lD z0f3Gu_nsC`D7NK92jtlP7Y7{tk%xDpTi;Q7M4o{ft}fo`g6R$M;)$7wkm&nW<LQ#A z%p&7Ns3c)&ahIB5GiPa0RegyvYC$zsGxw1B!nxXz%^rYlT_`6XYVYc}H1{1AvB7n} z^w)Eo;c1rz0+>r-3lG$9E_e~Ge)k2Q5ljy@7h5Mcw^4AQl2UI$8e19h>as?Gr=%Mr zvyBncG08@Zq;c76hh%|b!5G2lMFSkP1b5N3ko+0sAyY~V7}U;vPym$lZ`12G?<jSd zoNgm4(@4r5DB+xghoF&WVu9aaFw(k0USi^B#M}xKm;0jOd}=ygo=a5bmzEQr6O$tx zaDqZ~f`Uw53N+wEWu+j$xb!+EN%?aO5|{2YSr-VNeE@A;?K5_6+o-RP{MkCKFcsJ8 zy|7l?bWvsXys{J_T8K>Yj3duK+-U-D)2qvp$9rwbH^rW%uQ*c5H5A1=<9@6*K*&6z z3i{iDQ2LXbZMjb0r^ffG<$Y!CQeD4FKWMI0U(29RO0=(;>=AnJ{}A?$!MO$hwr*Bd zY}>ZY72CFL+qUiGjcwbu?G>9VIQj3r&#Aiio~m0ltGfDAf0*6B+1>LQV?4Bc`LDk> zP_3Q9&_iRS^83}?_dV02U7ec#!?yNpYCQv=E~zaG^vc;s2WR`7&Exmf-<%ZLd>Yw= zd%zNXkxs&BRC=iVn~b7M$aNfttZT9NVUdN87phpeju6N>2SdJirw?UAtYq=f39+G% z*EDK@5W}pGF%zu7flbATe?91Ni_ozLgw{_;6QFi$xUn~}&s*gmSBKQoC$-1jh2lG; za?4#K8f(Rn+|mHj71>g6H6Ma)k7zrfb?51gYd7R(58V^Te#lRGg1!|~S|2IV7Ix;& zZ58`cx6&5ZJnE&P)|L0v53b?2HCwX(OEomEj`~)i1uw3S{LbN-hOhrCbhfVdknx%F zE5|2-zRvDW<e9i<$ahc;K=Bc_gsqn*dVsy4?k$xWU?=5tr(?nGOK>%CsEF!IvmKBp z6}O+Zu=twd4AYycJ7fn~z2!aw$&FXxp=|BPKQ{l+=z;J{F*~rk$EiwzPAAcuVDX?m zykC}1V`t3j3Ryq?r(X7f;xuMg$MD9xA{e1hn?kW7X)(G%g{vWEf^bm?W2BR!ydooE zww*$QRz#y;KS8x3wLXHB>_ellKKo8R+t5GZz^42bNlHz=#?Z`(T_9SQ%$4<RKYIdy zlWB&!cGCOSD*l{{K=eBfU22Pgf@9jEnD&!drWT|wX`L5JP#ufK$f$r>3Y;7peo!4O z+Ejxf%S4EAGQcqvI%^$eZK7o5><PlIHm}9Ad!cu=Ix#19W<~h=B;DZ2GNbcZm^EW} zXM4l;NOQl&XLZWAh8LRv4Ua9xlP$-S4Vq|8`)?mqKDUzqzbeFd6^fz;rnGUC0aPaj zl?G^)eu|4{+QHQ}fAx;d-HndaxlWv?CwRni9aFv=uka0)&b4QDm@PSERuXNIEq$r2 zp5V5w$aYV3hYzQV7p#jHuFDHndjE<LVkg?f8ra$pTYt=D2bT{1S+fc9lvBp};|*7< zwT6{|?7;%iCxmw5X&r8$)X(KLcxL+EZ<$t~k<<Ww&40s^P`x(o__U|^d}^ot?>mnD zXHUa9b}yfx&QDKQflF7|&WA8(m=DZXk2{LV9TTOLp`@55jWnZ^-YX-@jupk+5~<Y* z#_L!=4WT!qjnnuO%9lpVbov@^<(iW()OMq9$Vig!`$y`rtmX{Acg;+Y%fSB(;&uSs z@&4{AaL)JrUX{RS<yXO%SLlZs(=u(fjWsIERbI=M2kEiIy`tAW>mv3pk<GRa+eExA z&b=UmFw(M6<ILP-wn><I<<HTQ<XWN=KV(}3+a4*>$gNJ(ne=4pRv%zZFJ%~4XZ(zj zHIQrExUOW4=ardKXQmGNk6LRuR&m1VQsbHD^OM^vrn_&)xVFx1?c&nw8Sh_CH$CO$ zZ^~fYG@`Yzd$&vEx86&oH<o|W^J}M(F`tFO4ZA7VNECNSRG%azBvOfqRO1sM5-Mzx z9StfCl&#`~6S#>w>(rddUI2(=i}IrTT$E~WDi_6`WG-rcaUJFOj*5yUnJcO%d86WV zu1<>zGxn5~%+O%K`%Q_#c&-ZwahY*sb7UW=BccG^kmYC``T!^HTWkueeLMC$2QFo- zg=k&YB4gHLUA>1YtW_5oTFt{mtv|y*_4`T7LTdA&n2tYmZ95jJ{I7x>HyGJHv)o{% zFC4f&I6*OcY*rkycJGUD#Lxw>(~%qy37&$?<?xOc3|s&bYr>d;7DX)A_=WmP7C0~Q z3=YA}=!^yB7KO|~+r<0z=>?(|Eh^JisblLr<^Jom)cUaE<0{dP<Zc=rnTtNwOCyVJ zkOeS_1h$oooT9GU45%tMN4>Y%8P}aO$AfN}rvHRWU;G4hZURtETmDiRJc?msX`73l zi6+|$A1{3)nU`VObZOoXTAyciah`I4gdm6r+4I8on_>ZLRuyLzWHsR)0C4BjIzYiB zxD5bJ&?8cv1`W!fjet#q0B7)INw)zc3;L?mE&F0;cI)Kp5O4ta9^sh)2LUgLoW!!d zv?m5%65K$Vq73d`sfV1#zbYlw^4{0Mv*eUZUK7%rP}dV|m^)xmULfYUh59JLdjWN? z8YKJ3X*JJe68m(LTlDbw+(7p;3k(Wg=psN7gDjUQuP>Y=;Pm3ru&ETCFxyjr<6Y*f zyY8)f?B1qj@mr4{Cuh3g$S<s@k(sO(f(z%3-+%gnnJ7$C^hka(9LEwfL5TLy0jfP? zfPYkIUTnE;=3i_`w`sSL!K~MAJwxyFs-HDd!`=BCcIv~}Wy}MGAN)#dDzt1ZJsn3k z<+ZndHoThNE}i)HsorcezufGZ9&s3{(yW_M6=tReDce5t6tpFo7wVK0cOk5TDfZgr zH$Lwlj;x@6-*^PsY3+TVrvoJB8&d3y;7r)olL+iEmUXl;R;5NIy`tE1mx+%QR}{_- zc<@nbF3-2rpStN-Zc2sj-5MV|5@5P|h;lUY#$6R)WO)~zt?l-R>z?$9)h|fvp0)AK z|KJ;5bVF1ZE)ZzDe{C1Dk3V~5trx$j10MOTh<*Ax#78yU&b-j5KZismdmHW+?5qnP zxhIok>(>=&D-$t0#ZuRPH%!5eLvhnwT+%yIcqzf9rEdvBB@hD`I2A34TNC9bY>t#1 zwL-?Pk`daw7o@K%gU3HDmcXea921$u@d^QBLMe>*498fUBJBcr<<?0`DckoH$F3e# zj%nEiJalr3JMm5_-(wyXI=Ka+6U@sk_cYCwJYhlFeJ&n&c4VFI)a~)D32OJx_a@%{ zU8(SCwR=TJF5ZFOq_YXNC)meUZ>k=@dqsA}ZsOVRy6<5>@I0vfG<SycQeJKk?{z+) zJ?OthT_5s}yk03i@@9^_p3L8TyR$z0bE$4t%_f%L1>X#O>b?K;%GS)cj)k4CjTv>t z2{cRvq5T`$6@`1^1$(Q*>)aEXd<&ah_Ne27xDOh9y31`VX&c#?Q;v3Wd0O`BKewBZ z^5Zg98(i)|H-m<~P~84~;(~CvF@y5US*9<ixy(}irt<>Xa5<UOu-n7@6mLbpTZTs; zJ@?|y5vvI#9$qNi8zggFZm;*K^bY&SAWGI3+An_B$n{NVMf)rGDTUwU_tC6I%Lix{ z*>@IgVz24N(apN<o0z7qui?vhZ=KljcLVv6-a7dG&85+sa!xth3ionuafGOn1k^*G zWd}#Brw#lT@QI5C<2GBmH?G>wpN}_ZEBbgX4Y_XgD&K;9<ZTXtR}Wih<gaF>ZH}d` z(&*1FbY3qHyAD^2+sHCVuzr)0yaMT5Y~9<`3|xD9S4E>$g<9PFjM7>0E3~#1_b`HI zFO(NUk3Cu(+pS#6$CbqM?iQ|B=~dMWk@p8%!7VyEvII)hLIM^g5(p*bF41|1B*VdJ zN#?BzmeDIomYovk0bWV=txD%nuVnR)sDq&*Nt~Yi$07D)-PZu5IPzq^*UE*ofW$s$ z(u5GoPmL-je^QFy>jWkUQVL*=^^!=F%ApN7CKy?jFlLj<$}Iwz!?yAZYf2O9&oxZB zJ_W{gcFB;6;fbW2$q_DO?muxqx$N!Jkha)F^MKUupwl{dp@&=JZ4)?kmct5zAiJ?m zFUfMg2YJ@1L0zJ}Zzj)^-|=f5r$`pI*Zbbp7Fk%nWyfM#J#7draM5X6U^h)49FsQ| zZ{0M#>~E+?qgvh#$8x22ovTeQZ<-Ga0)O1X)CNWM-2Qo92aUX52eHuvqA09HEsZo% zhP<&AGe?D}YOFii77vT1(v<%9hkD?CP3FsDr%m+yVMEKzKBl>#9OHBlbk%GB96hpO z{2zyPx=X{0Z3X}9dYzr-HTeI`(VoU^KTRKp{_9S%j)wpTK5hG-SNsL07CtijASks} zx?{7jkO3*vIb`kq*FE)$QTML1copz#g`IV=a*gdmXXsmI)@1gSdHI_+jn`|N_tZ?* zPnq8g%TA(G#PLu)bS5;;1ZTU{eEW)4d9|r<-;Hy<PI5Sitn{fL?Zq$BG&5=0KF3b3 zw*jl>MFV_t>Ln_w`vx8Q`*jqVNN<rZmw~?yO9wXV_f*vvY^wPblx%cjoWRYqG*6SQ zoN3*w;L0w7Do<$L0b}qm_%ZLs_NfmIn+y+|S_zO+Ng|~;V#dHCfndfjg$e1uWmBPq z6F3;fM?xJ;=w#Fn`SKa?l_`ctl9+5tbR!0moUsa23_|5YQOU(^k{SV<$&-NL3D^ZB zlgcK|buyiDYqb-KRw|JR*<$7OVj3k|B~_~B394ez^%5Mi>+}Y(H|`K!g&rkcrLW4a znrzh_dDdf@<&v(-P^!`8>xofIxnpEj-M6&NeD7j7l^#_ws_*@)WaO@_dtSF6!J_an z34XpKpL+9y^>Tk{#lCkV*0@_4?VF7y^|h+jgO4S*Z!gw#T!qftq$Rwspv!%dCC<0T z)udcGWCwukydo3e<PyFkid*rb9CqPh8QG(OTWqJY_;_X6;akZiz@IO>fUo5Ah`vnu zetJ&Rt(s#6tpaV0c+R6$sA-N}HB)Oe5cjgfZLdk+6ZbD~UZ{%tFo$;+Dsleo5i<vu zSJYZ64-wnY=bWn*%l5WhNlfl6wP!(eMrEh+)aUsR029l)c>C21uPr)j!jdw$%w$fQ zHVn}cG+HICPtb)jxpH!!$^}%rR2RzDg%wAhK5XzD%U!D*m`{FnIl(aW<-PA><tirT zOVRqUvs<AxNh{O0`yl(DwYH>MZ3&;Akk1Z;!TA#lMOHyt2WZ2RO?>qZOwuwggIYHz zT3Kr%jB7vGQw!H;&fZyVVTLBL+|y0%;6DV^$i5FCO@bp0ZzH;1%9;0Y&(d2v$3dB2 zna^R5$xU_>8dmN`=z}eu*d%wBYbRb}pOvS$PmsIZ=d(Uh|BQteP7e5HG`B`IqW*DM zIpCY&DH3k-0I+=NC*#n4lhAy2W#aD8bh}t(d8^v^Qu!Co!kJqJ17yYMiRU&c?ME=u zjt*w+C1%_(-pX<Z$HY<};PWaU^l@ANXU(}IZ@=|%;Q#FXpjG{pVxnZOcYC>4i!ay; zQd!`ImNqTUHlT;kdF|^v;Hj2B>wa#w=t#NCHF?D+9|>PIeL!R@#2A!)u#%R04@93Z zcJjYq?G*L;vX<5Cd*8u&YI|bvD{uD9&cR<(JaN8@e51*i<!;TMpm~bFq5|GoqZH-D z$(NHB{Fd>HcUg5RmIaSjG}CdaMaH|E*c=O2RC58%X{F}4=QIf!JNT#+jA`N}uk;Di z-ZvSx;6G>wDp?%6dXK%;$H2f9#6gJGt}wdx%&v}ifVR(*Zrytb*Un`qixs3?OH1O{ zit57TyTFf(lk{e`k-y{*iT?_uVAIT;^hM}J(^s1=wm)_=NtXb2AiKq&Ll_&dn`Mzh z92?lp(#RpNCfH7?%#fuG65bNoq11-RYi?>7zQtmlYF59ojVZ3k)I9~!I!or7R<g%e z<l5E)+K9JcB^ZCfw(czQ1{eLUmx>lY?EDaU(?}1o-JKUk`?{kR&3{f%t?j>loRKFf zep%$+ZsfNyw=*~I19OzS5&L{C>U_d?yRqCAxZzeyBAU#86}Yi(9Z>VGD0#NkI`hj} z9e7tqpv8>6@W@yDY<cEW5p6f?y<Ij{k>L%*><)5GN^zVBF=-RS&hfyH*EPPy)2NTM zW>-g(gNv89ib-yJD_S1*LqF`Z@(p$)@zkaTXTJ7{GRrB#?v`tn7W{K=z6qF~HuL9O zmEwaDo#WyUTY2-=JcTBZb`p@PM%b``){j>Oq1+I}sHP3Ht_Fc>8n!QQ3DyD7nl(11 zTyk9@xi-2|ZkAUYx>;4OM{Q_6x3}n8mg-QuEYu_&G+h+;Y?xZqsglyJT*s@LyGf>5 zxJjs4c@<kV`z(-M{j#W4rQI&&rQt2(B~q~x1B^C}0!o`li*K6A0lQ7)CUd!oR~yWZ znXbyY#k}<B=JaFS&1uJ-O=?Fz8~jIM&1%P3S2Ax3S2}MhS8X4;&k5d=|CE1SF^eqp zC^}zR6=yuhAdQfc23kqd;}w!PbTS2oQ8l_d75j6aUrHc%%i%s}otoh6_mVfma?rco z<)#%??62f&q517Se#A#4DS+BkoL&AMuII+Z487MjGNq^?7phM%=*cK(<)F%ZKeRXm zvBOsS9r?_@ss1lE+-3vJqsDcZ#$05;_7@=!aOT|#!pNo|ksY{@yIA@-_aM#=D3rTf zTkwm&3lEyBBl*^_*FaDgI?j>LK5Z`0_mR*ZHy?}(AClI+vh}E#0TO=9;9EME5$8B} zD(4C^0RLl@iD(_OXY$_#Wy^N_!RLMOkp2!cL#qCID~MK<JoPS-v0LaUhTbXuU8?Qb zC&Y;D7gS~zTtx%>#H;5p?A^|X>jQV1s9FLRhF8r2yKh@u9PwQo`JI^{$ZP;dE;Oe% z)6`z0K4Ts%wL717|LK4zAAE}g`sE4q9-=Nx+#Qm8Y}&wN7fjDS`ru1fS8Q8j_kr*7 zJ8y@epMzLpo83d?CS}jz-N!=Ec?p^)V1AaGx75t%=16Pz!dLYugIC!(-pu>J=WucP z_rePJ!MA~eO}m@<*B=MHs|Y+^%<IJ@U%Y${eEBBuvK08SBJR@fLzrEeLQZ<MvR5Rm z{bH5@YV%<FB1ByoVsFl)pMMZpwIPB%a4iqi`)t0bGBsA_iq&E8ug$lVyW#WR$RqdF z7_+VW^1jTmN1G0Cy`VZDD_li6huwn9J6s}YZ*i^{#-&D~X1GkQS`KH}I4cqNh!+Mk zN-Klet9{;1FPSFU5d8D^7QaWXj$T?nex>ry-J8XG<z~03)T0ljX#&9~Qj@j@XmfJj z@oTCiZXP=)W0g#@%8Ioks$V%PV+9n;j%pLjA2_361$dm?*t9uxyg{SbPO)(xk2v4G z=^4UmU+b9F-q$pyd5ZQ9u)jk`FRx^Au4J|Mm(Di%c%Lg&Gvry$PdpkPlBaXMxv?7l z_|wBY-Uu&lq$v3Dn!PBVY}Jz8ZHn)^B@OJ#Liv$zjc?b*?ZUo1{M$3|<zKoDGk>cH zC3lDAnS}4(eMNMS;0OEOlS{nk2fevB+ZXah;oF}b?0wtaxB7z0KB}Fcx#w~{uruWH zgC@Uov;XCXzj_;I&;5;pf3Uk(^uhfRp4aF1fRAyTr;frujpRHMdVwUhXrh{5X&q3r zoWaq)Lw;{nrDGBJJrp7N?5*KhGjK)|yVL<I_=sR$!XA|B>GZddn?Mylh|v>zY>qe( zYgP2a?DvY?acqOH0sBTjJ~ZY{GEu%|Ax~4aCwPqhCPbUh0T;>SvDc}uozDn8$VIil zd{Nm9+nj)%RJanhKv$zgI4&e(CIUC2p_yP;8RAg4jNqkgI4=ZaD1y<jorDJ>_`Jg( z@2Blppa&8k!(5zSZgNvf6oACV$B4tvx#&F16)yqoZuSCcD<D$fXT(@vuw)QH36kV9 z*ut$<5ELvSAB2Lb+d>iz3S63G@XV#sf;m|^vg{1qY-y>L?e2yh{&@-UW#kl5Qri!R z)?7g(d<i7E5C$I<=jBBRFID0-@Gl@&E`ubMqB!zPn1S3sYmL~Kelkh#{1NYYG8|4= zLmoqYoZevBl)=m?_V?IB9#s-o8L}MA5N5VP9C6qja=E|E;P#J@Wd(vb<ghvXcz?%6 z*+W5^=>~C#Ws&5C1UH7;Yr|T8?q=pcnE;-mAdBnzS9t82PC}UXlohQ~5oSKX9CR&_ zW}pT%Bsidd#w(UsXpgp6MV3_v`eCUd7uo{>jj{4*Y-^dTSxcE#WvmyFW(q+Zc32#C zdB4n%_qD}1hG7r7HUXRt#QWBS*@<8dJ9bDj)4`27_LA5`oI8N_<|KPpL|Kg>4tzF9 zGx+^2I2`oDVKTTL>km(MT%)+YQIEJj^02+duwiuUz_%%VCg~HWpmCNAdKlBh@sCOU zlJu!wSksnqZwm$|=@aT84O=EX>?z5lw-No7^eI0W)0}Z{D+aZ!DL1gj9b;LHDX^rs z9euXUDR?laobhay^b462v7mKpCVtE*Sh9!4erwhYJs8uh@sCygmaM5-u*N}SU*>cz z=@Yl0_GM#P%qiKtcH@tc&>cL%ry3T6gZ!`^@b|M%LJ_$@X&(;h)zLm+Ug*@n?RBcN zK^IRNbxQR9UXP&iMQMG^o}68U^g-~CQu|Uqupd==Aq_ph1|O%_1a>1G-f20+cVjHx zbCioXk{POA|6eBDMJoJCS3d+Z><__A_x}r^{(t%9b=$>1C}4Zc(+4CnnN4S@O_y5h zhR;3;$7|&wMpDlJd$Wu&LE40%M3nwYhyLHU^5K49P^Cz251)L@qh>VUuWwh}h);i; z1?XWtNz3+vYY6rsE!P&kd&D1x1-Lk8peT?7H~Pn3kTE%B55j(gRJ-->=L!Py>kY-| zV3Hy~Xi}`US^-I!;V{!3fLWOix<c}FySEQPS(&`TMMPdF@A`FS4iYd?5tw-n#0_JJ z8DotpN>u}Cd4_RvJQ--In@8@_6>x1X^7|OfH8*{=TED0F?Tk3HErY*PD=?LZ_mPSV zS6#tyxSoA3s1}mx(%!wHGA3|MPQ4-4*qv&<@A0{(SZrg6)=-#!E~aH^HQc6oYb4~k zJD}9fIo_+6-OWKqoviKGDm-n@)!ygMh-Gu-hFqN4;S_JSabU-ay93Ac=cN=|(qfzj zU9a!NNq5ns6O}o<o+lHtk`5EQiuqS7URo)>?7~M7W)J_w2(-5%i%NI75Ga)(sd>ai zUB7lf<rJ%XMmrpPy4oI@6SS_0ZqVk`#VyzaS=VqEtXq2L9NYt)cjz09ckCOFcfcEw zcf=c$cgP!+cZ>&o&y4r)o^fyJp6RV1nG^0?ofEHHpA+y~p%bxNqZ9I5r4zIB+LBYx z&ja-TC%OC~UwKwU4FrVa`+xJ`w)b#0x3m4fvCEL&vZH9PoK81e$CKzpAoU};-l_2j z!32iT3GpD!QLlnyg%V2(6^bHJsfESMk+yox$t9>FQfaH_?_Dbw6<OD{)oRKwiQhlu za;s@Vq3`$i_Y1=hwe0u<E;F0WY;nIloWK1J1ImZ)R2jao@oyUnrP|3yR;TJ?`elpa zF)4CRhN`yqXEX(?2I+1Zc#EjdQo$?+$O^P=Ika`3>(>gjeP<-LH9{!1$T}J7O`U*I zm%uQ$%^V1O#MCs~l6~V}qbMM^h^|hREz2O)HpQbYV#jM#{VbqjBD+oyc?H6`e;{po z!{F9)i1<zWLVuC=3{c(5Uc+HK4vMI*l^xO|<IWJGI&J1~U&>zFU=8c0z<3=Z2wsC> z^M<+uRoj973GXPey~4dfKl(?4i-eTg#D~v9yoU)t8~n;e-Q)a~i@pa6`%QR&4jPgs zd>$^|O_SM6G^Ymoo+;i<2hnXX=y#x?@J_FATSDP3<!=Q1p*7fQ^9t8fx$ni*6Nhi^ zu004ZGB1YZTeVM)<y)~23Cq8D>jc}2z|w=VM=kJT1=~A+%U}53iseh*(6f3A2>o8Z z1&5WhaMv7U#`-GT*MRj~xHVIFLjUE9y2mbX=9cg-1o%?E%Z9b>dmt(eRD=m95fa2K zf|4e}%b<~`lNT|nD9eWwMqg)3fI_0|6bFTt7t41Mp%V7@1P+Fh*F#}JAdvPCC8|vT ziUGx<Q<MQQr~1SED-(K7(1?~5t)O1DP}3@=d0t&Bruh&R6;)5^RfQy)Ke?@CU_v8N zN5SDktwvQjTTdcjapRBw^B+hSWW|u4adG)5ejaCEhBIXvMn?eD57P`B6f+UHXA_vO zTwv1_nQ48G(k`q3qTKcmIGp7|+$ts;f*l*teoTv8aOsyF+(!S@`kATAswOq#{N}1{ z66_{frMMIMOeb<!bnwIm^tcPblUV{0DyhGae=M*wQhp<l4oEm!ekIU0NH`*as{b|c zBLab}e=hJNQhqDY9q=P!ek~9r@FQ}5FVJrgapm<tDWv7r@e^RgASScaRE}uLfZ0hW zq9v(uDvELHNVK)Su7OKVAB4w@8DKL7RS5$`!E}{eWsX74r5qU-Ymau&nWpS)Lo-NV zG9}_7T~h-CyufWs5(a@<07Yd!M>|0&LP3H`a=K2UmU{ddUB0G(k`&Y_2Q*VQsZu9V zQ`5N#`pGe8Ovmti`<v54A^1tEJnHxR_D3BCKg|mK#dX-z?cl*jU9PV>J%1HD?0o4< z&6hd5AIk`S%#&E>zarj`c@Dp(QvQue{HIf@k-SO_zZ%1j_Q<>c?i@&-WogB0Ex;4< zGMTupuxiYEXn-;oF-t}|LYqF91B6tlWLTN;S<wX0SP{=l;uVW$CiAXoCZ;m!mYCBY zsfWcDkH(A@^hk%4n>!MEI>;shBeR{Lqa?x5Q6WEV&gkUaOwnfmgz~#V=*HZqk--Z5 zRgu3UKJ=4j+NuhHCj`x{mnUhXW$DtnYlADe8t-E&p1MWOW~wk}h=^MYI<1P{`#d-~ zRRw}O35MJIG?E#qE5|qoi853USStR4&VaHAW&$w|QOsgc3eoV*LPScSy+uf5j9Zio zav%$9k@6EeO~n%mlkhVVJ6SrO>?JIb@H^eA*a}a|Nn&$4+FO>G=Okq0W^<tgoRY&z zNuxWMzUwz2EBf9O{2Dchmwp%}E0L3#8WYEp{0zo$PFhebKT8KpH960x2=FoHK!9R{ zl)%YiTDu|&2Y03GI|8rcCV{a&Q%=aS5eG^0!b{l2fbH<;W%d{DD-*GjkkZcoWh6GK zFbfxWBlck+%^M*YAvuMg5l4E>KPngpOW^cH6OWC~<lrIb)B?go_8$e?+x~rv_sd-y zXonf-2GxHNsrGPGZnZDkHUN_`0JA;-bNe^5Cy40~sOclj)L+ze#4!tLf>OqS>=6)0 zEad;{3@}*uG(ONQl88V(wVI&JP*1qRjiWvj4>hrk2wo7aP@Khkm1kOQYuCA6M&1FF ztT94dxx$QaxmLx&URpyu*BSA`6ocZLlTWeIX6i^i6B-!^NUQ`xlrr!jwu2&Sh_2ot zy0Rt1A``67gf=3&rV{mur&^j>(5RRcU0Sn9wKl>W_?s|j$`GD7;<wceom~~y0)6s? zNEowC2?m$2rX$Z+^x|F^hUb_xFuJm#S!k@XhceZYu+w|0tKL;18Q5G|<8)5Uj2t$* zvIWRA86m+nG)h=E<j5d;D6O*utD36)Y-F57vWB`62}48z(c>fv;WSbwN;WlGFb-e< z5|)bHu%hOtMqAQFnku}EaEcZ7H-D!)_<}RRQb|kSlG!SkV&v*`I5lGTyi39~@*??` zO(WVTO&V3$MrZEL{W*dG!9t)AgQ2dev*FAAf+K_h=Z0n>)-`{REV-$X&QobLVbK-o zOi5kY;sDWu!b)h?MLY_{3HcgRHT6bD37PcC4#DPVvJ@rZEzoNaDYQ+EBGF_PW#&u5 z$uTI+ilE}m;w=_M4HuWzjMxG#G1eX>6E&@kq?cfVo0(ZwWHwx`IHVO~=-dyE9m(>d z==Gr7(59(Vk=b0^oXo8RRE2WEtt?j8+GhRH;*P*Y<~MaMG~3!mh>(bZ=L7As#FfEF zqNy9M;+m3@8ywthsM&1D#99-n^M)-@;o76G;U1t)P*A7n!YB!PhyqrYo-5JeT>}H0 z8ja@DqQ>YaNwH=b9rMtK<H@bKiP^ac7G~^FniUa<lshf%ve(*7#dv5;q9k!htkNeI zwdIC9nwuF%#`0*CsjcbvQ{&FiK~u7ufjkP`eVlq6!^TC?=V(}%CZmvsXk<_f8vZAS zU6U3g^`LCR=DIPZ+^KbfMrVuJacImw$XW(w)az8-of+GPqp5*2mYR#{lw+b0hHDZ_ z>PDlgf(?hlzE%m6qcGeph~+K7(WszT!WG>>xFF#u`q32WM1AhR3Walp{3}5=6aZY1 za~l41z`{|s8qO?F+oB{muGz*^IMXb+mI0iFmH2?OnN0^OS!8OXYTQO)%MPG*;3<SY z%0IC{%%JI{e`<glLDPx<<O00`qd>@0^lAU9LCY8SH~b|Dl1|>o3Ot3b9{>cMFr^hd zZkjrLuoXhu2nAi}!-lwkicg)CqasgmkArS$S_NH?5XlSTeHnE&SAsE7)aKHlq~dE) zOfy*xQ<lr-!zR&Qa;_;+kRgO^XngE>;4M-?$2K2W<!vaHb7uOZeKkIeR!>w;XQ$6o z?VP>{STuCXjCE61ISrQN953PK-@P&pGciNuX3hp3HvXt}C^<@<TPKV&7L|e!6c?4~ z8D@#(k&CHIrfOkvc%^Yf>s)1&l3<BLkT~#GI-<!?Q`Xn0+5<w@%3)7q%VQagn#nwD zvJ8>m^pA`oPO89GjhB;A3M`>yk);=nJVx{6KtF}L30)ff?n^lFGp$FgPMA43sLBu) zreg#{zvj~`HZ1{wPq`LZMv8CW!z|K$=$CT1W!z`z%hq)!+W%Al%cCKH@y*-h-;`6c z6ysSWmBeV^I7Dk)j{xK@hpD?u+Ej0t%%@5YUaSWO_QtU@>5}FI`A@>8g}Vl-?HX)* zeb#23{PNJ2Fcpc(A6M{j&9jh@Av5z7z;FX28>3S;1a5^sTf1b-d3cNAq9gk<%vnj~ zOrT6B1IKK}4Gje(M@z>lcLYna`P@mauxs(qneIXTvTSJkxH2ti*1Q+jae}zJaU$d3 zbJfAYRz{PxH0GnL5}syqN?x8yvbtir-Y{2fB41oK2ahF9lOQUqepwN$W+2Un9Z=*r zD7&Gf4yEY;IQr~qu$rtwn|*6^TLLP3%Yi+$t>Lgtbz251d+Pz3>efOeaaCIiYHP~@ zo9fm|<fev$7xlINaDpn1$uJ!CwfS&PRa+yfTm6AKF&>aOw-0+DV=ye(y1VH5mIH#l z_oz?bbHLHxCUj%5)9yap{d-+`JoJS=^+4E|iE;g~eR+6Mgk0cheUcQ{Q9QKqmA=39 z{s-ooa22i9(_^?YC<~P2a9*kvyAJf`0Z*gypY_R$&|X?kNfctq&h|Wz8v=8qH@~&a z<vG{5Q-$m~mmHFXbf5@P&QpZU3Hl-D@W`-14rv3oX#x!b^+%yuW&^<(ava~?GvjV= zg=pjCzXK&Xm)r!3s36#Gkzh#Ie;@fnF;ntpy-qNnl+=oFL{5P2>t|*$FtWqG2o(MC zg)*muiZO*$VX>mg3{jiEw6s(;X1P!kX(TJuSoE2rsndXD%`#)Tuw#|_HBJ#>FQ0S* zXF=a&A3xLNJa(MyhM+nB*t7#})0Ld*FKEvvQO&QQ1LR^rIPQ!{J8o4z0wfI}6;G~5 zUq;?&36sSqF7_qqX$dsvHsNMrMS99V@I|5~-Au~o2DA~(jKRmyguE;BP7unE>i*pe zGzBj>bT3+R<9Ze-9V|RUl-EXm30LNHz9v67Ii3?4@;W#Unsf1P>w@pVjZGUoJ|%F4 zUgC$?ro7Pz_d)W!3~Cz$FCgDPp0mP#<dfFk?1PLV#4_!75v94!A{^-x=}ONJmx%xf z`UI{f;iN5)&=fiBiqoq8fmVmK(MNR-UT%_K?L%pcp{NRKugg7h<yKgSkkUt1*pOyz z=>uznz7F%U&u1|6pF=*6Xly2(^#qtxrCbgxV`+GEK1L)hgHXyc4&9gC5&hsM{wN#r z=8^@~;@kkozZZcdh~#bga+r_InaM)mv<M`Q;BEOj=|pzqjDi=Iq}|#AYQrTZTKQI| z#B=4Co1#)Bm@@K~r$O-?J4Y7!>DG+sWV37F62}bU7=>`UPnd86T>L-+w*(-Aa1a4G zbEvLD@N2)j_awyqyNwTXi3+aC2k%%Q&lxCJ8cB9eCB*6D|9%NH>lJ2-!3bCY`sP_s zc?$wKWPd<t!5<KM_=|5~0jVqTTuy)~71ZBiXlgDXP$=BE4mvi{JsdigL(uw|A$f>l z3KSd$i*UZUNw`g%vt>T<P&Jou+8EuM#R@b{5V>(mRnid#R~L?0nrRr1sd|E7xXege z%tuVT>2DO%qyZqRq7yQNLokq6+nGK{`346}=}EcB^J(%(vGnSP{J&MnY*{tm_=4Qt zm-!28C!psJj<m0X0WxY~$q%sj7ycYBH(ruMfPKd)vyRSUqL&!zCxiR}n>^Ucl0hD^ z;J2@L`}@cAte9W%9DQTUZ<OKnch*2&lU6qQqN;*LWLR5i`c(lX9MN;nZN>ot>90f7 zXf;M%X42IX6vJssf=Z<0nlW5Ln_vb=*rEXz1-Iln^t(vtQcukqilF(Ob`5!@3+JL{ zteR9I(JomCcyxKnuqk(~wkuL2w@COT5f{neB+(ekp!yw&rQq{u=1y6P5O@&J6zCl& zoRJ}D7^ANK@RPvl+|-Au)a1-Vh@3zF!Jw6sDx?9`?9NEPHoRbGeA<>Gq!=U9`sfPn zedwiYA}(6cR{iqu@cikLjS+&8mIP$c6bY;43lPue5QlAo2*Sxn86blUFgQbt#wn+M z1Z2Xp`@mK3Qsb1`0-7yg*!^JEFfRriZFP{BqiDwRngbVWcsu=Yw~Vd<%os8oYp95w z1+YeA{n4bS_28W54#7_Y<!jhZ40zD>_;h4SjnPd`uyDgM>7ktrxbXU5d{G&%jIqPB z4%(zTc;_o7S3V0Sj)p1pJ}w$h=S(9P7<PlN1WF4wQtLQQvQbhRsX~a9W|Y{c5IKt1 zY?v9vb+c86G$A^%bLH1a2H)?QH?;!nTjYx{ksND3MOwWJ_r^xL9$Isy4LVF1N(4}7 zaUy6REUXZ^**!`0#FQF3*L;>*v;OH4b3fAdY774&m$`+WIzSvdXRUYr>;3H(-|FuF zJiDicud5$#d4#X4(qENEI(!!fKDFcT1B&iTi06-H+iRX%U2d)JH@0^>+Xvm9!(O{l z`#LYDykfUCdj2oE%Sx>*a9Zg>Sc;Lb(lJuhB3Z=FWU#d`rXDf_xF+!zteKV39Y+te zj7XugYL3T`bEXpm4bFG21`##`ucjD|d;6{vdARsEc-|mHxV8z?h(wK@F03rG$=aMp zoq&$71!%Mdqh7Dzr3qqyXi0pc6yqAACISV3)>lyTC&ZAcHvU9UAqNsFSt&kVDZV!w z>i02At0w3Es>>uHz)6;nqo18Kz^Vk|cQCT;;IloehSjG0WD0h533D&0q<to<dg1 zYi%VGqkAzL8*HpsTO3P!o&}7nZgIb^k@D_Yxo@LJcYd;J95?+y(&}8Ywl1a3Ou<7$ z`t4n1^$AM_Eknh!d*=PVSwa8oZcE0Y+0piI+5Bm5BAb&W3+6n*%>(6)sZs&tslXEs zTq1k0M<H^Ufed@pnLtVoY&Jta>we(1NRc|&+JI7fM4SPueb6pA-Tq;F6g&T<HWW;{ z(NK3}w!xGp*xkTG2UgjEP4mMYf9PA;E<E<bm^M(mkxmLXYQE@~J!bVty8~Bm^cyq6 zR|IGwbgSsNhLW}{mr-(c9=`GSLtQqE$#n?t$mzaMYeK$3+tJf?Jnw*%!>CJY9wOF3 zwPMxR%q6rqN!;6X7NFgf&^@mO2yZ>C7<}==+h7)0{-o^J_T(@<N$6W@3r1hs?XX>m zf4AUgHaw)bqs)#7xhdfL^o~qlRHb`)j#$4v(2|aUM~)3k#-KB(=nY(sRH|yaQbWeD zHOjOn&L`m;!0s!n>OUZ@$nuP)+lMsoN2*wFhBj_7R$^xj6L|7O?%J!E=}os^u~ve1 zXAWL-s>pl8ehl9m-M?@y26qiUUt6pA`G=8EXTT`;t-}|RU{%2Cj7^}hYo?5eQ?S)L z8X{s;@Qe;qf~*7Yak9$12gs=P>L^pPa}8`u!TA_w&F#Z#7nS(?otU5=_*H2g1#0`4 z!c<(ZcF!C~{BvTlH4uhMgm6=TSFcOk*J=M9H627qg;&yGJgP^cF#G`&vf#7U0ws%N zpQGPBtd^p@#kM*65f?U?*scW0G>STAR2({B(7fD!Oye&+)rP@MpQLa#vKeA8HL=!R zSQ<#@{I?-!*Bs4fRsXoPAR(>U#1F0XQ?%fXG;9_G+XRPLD;3YfzC>RmTRCHUi>-!> zt`<bj3s`5EtZfxt5QwT3NnG1whT_tD+q7hac87#^r-b^@!+K%EdU3=4<HLFmV%frF zh~Ncozf_<w<~E@9g0VI0q=xkg_WElX?SZF)(<8J>gTJ%Ea==O{%MZaG4PSp1RD8#l z7o=^xCs4CZJhBqUui>>pB-v{gl2^5t)w8r$;xYmiaIA8yb8UYD6<RUkD)Rm;+u`8q zI{OyVg(yc&rE{{3GRO?ss*yVuqg(5M13J8r<35QW+4@oN(;zvZgh)f>2zw`VVM2E* zQF;xF6>zIm&$+LN<?S{PXi&eF(6hE#<g^Itd#HG%acB1g7F5*hB=pet@>K$6&vz?k zPygykUUlgoz6z0#{N%JUw0erYRlF2mi}MQsUx}ME5%UUgFX)zyPFSdULS;67BJ{)k z5qpNYk`5!t#Vvt-<3#KK>MvZ2s)F{4crq4K=kdxTt&3YzcMX&=$*ae_bV{A=(I38) zYDxE*&Nbatyt-Mdy!3L7&N05JTU<IIcMbiN@SBy$&PfYY4_W#n_?ApE*(;&VM^CAp zqHLQq;8C}f-I}I(XI{>FL)W|ysi>7p(tJo<4Cftlw3h{l{h%vH?$tY=!cXkD!&QX; z>SFQ7PeXb`U-<J?ojl~13`R)+tBPU~zMzU#A}leU;<||PVoOEKj0-7ow=Hu)+IAIw zXURU_Kx7{x803#&e0R5)0udWu6)$pZp9I~(C5R+MhB59M8($6xW36svQr~x|w{I8o zT^DYwB<*d|486n}$frgD{+FXa++8btJJtV|lgr7`yN$TO3TRE}8qAD+u=;Kp9J4kT ztRw;r1SH6Z!6jz0{1O60sOP~Y$`s>R6Hfo2>NuAKs0To2SkftIb*u}DEee_=*U2k& zHVc}rc})SlL^j5qfayy}3ux-JYXh<3u=TJ7xaW+=aF7Mr2&qo0>Y0SxRjc)t&aoSB zH8ZE#N%6ZLs)2`t%7UkpiBsAQ!A8wscQQmI19SV>jACq!j)WA2r^(tL)0R8Q=`d59 zU47ZkCCae?`^-RI7SOmwl=%A8+(6d_-@g>N{<c4AL{i@0zl((!1U=D4#Ao|a&VCNh zpTD61=mxpYAgSW?gE9-$b)ufQcuBDXhYP)X5@)pTvRq(d0KdVs1@7DGM_banQcqcp zIQ7yhV7<Gr1xo6ErwPe5u<0pw_JiT1dlG5ih*+KE#Fv2ysT6-9>z)O0l7K^!fVhHy zM@(U<JR!L=Y77z|*ui2u^PyeAo=2Tx1wgwPB4C~(Jho@v4TUWa-F;`;_2By=tSE{z z`Qygk*<t3W!hbN~Cg|~wPu5s(GUC#TGr@<JyrK4(C$^YDV<^p?f=j`acMMgFf!mb# z!mQRa_lX(*tCEima^3y$!-l%e<oVeoxi@PCUKN6-mWsZvi*4U=t_|mZFQeQ_zr5VV zUMx7Nl3cqW3TD=JW$OWSb@U-JFX*XB$-prCByiWq?;>yrbSL}o-QU5J4QMR8%?wzU zFZaq-0ZW!1XNQ63dWoyCv+?6SST;QMQLBT?Y56Hn?&@77tzkO{P8tJkNys%S8pEf2 zf#1!zcSFD;!^_7ECyKlCGGUcttN-ZVJo)2m-7>qjnU8KhAz}b|1cL9F8&bXTH!s+Y zQhp5#XE;_wIc7Ehs1@Cs*}@}H>-??cnE0%E1xF_~UEBVW3B)R8+d<bcn{^{c?iM-Q zS-3H{=jg4FZsJi%>1#UBabAF@WA>8pHECYTzp>M!p6qc*9`WnZi?Oq=T%J@@AK<tY z@_XHTl3WV86QSdB?-ZV#+O)<u+<TZF8Q1%NN7`Tc*|YHDA|Ey$c;B^M;`NhJDGYC( z#pPYX7S#01e{^fk?qxJ_JwjH*b<0^3ZdNiUH=8)#e5-pu{Mp2P<*_OG0VZScKQ60c z%`*40S9Bg}uDu`W&+*zNSMih0r^iAYQTGoUqxVu9tM`akfRBdf#*YeDSzj5m`wP$D z54r9fZ)Lf}-6itL(Z}`s-lz8a&G+j2&Udi4Zb`m-idmz0mWTXdzL%$jpzb&UzUl$` z*CnW)GbvbGO?=RyfU^pFH(eV+8J?xok>b#b_in?_)e}Qt+{Q`$n3v&o>%mUt7NOJx zhMKr&)Zmr(?PX~CAgyjU*}$sY1>u@fxT~$timTRC@XKr|UR_!LP@sDUh(!KiuKUv0 zm=Dg}<la7|``Xu{5AsGQW0&@+4u_e8wuy!I5i)!1tihmlN8LQ$A?ya+F2v38!FAuA zVB8a#b+Inaf6=XFO-rI)sT)yEbLNy1Pu^*nbg@NvyT94}J!I5rT9?UmDN$6C{5S_2 zs8P^V=5J6h^eFyPpvR)zxue6O-Ps&!udR0F#ccDUYjb<qzP6M<TUJTH0B=fn{mHtc zbKhPxt=RS1n_q4zdT$*rKRIKT?uNEy+#wAA#2fa}pZ-paH{EI&zk5tPYOmS+C%EcT z33z<j4sMgv&ON9m2yYGL>Y`mb#I;9t+tb`ZT)i{j8tObS%?*FK4`|DQ?+<&G-|7!L zWcCK>8B)6aft_|w%3l%jLrUMwKXOW$_b{bTGpg|LCktOW&<1M_yI<W?$H?mpyosca zlQh8ce&W<Etoic#Rh`JSW}ViYc+!0O9@bWQ@^X$q6%q2NLvAanX>XmU>V7!tDNx%B z;`zc<-XwIxo3NAp@s7bOGZyaDey*EjcDGi=uImEBwy+!#UOi^d{r_;(rO0Jg*ZUhx zi|nii`qZ&?h7J}soEY@2Fk1%0xYcb*sBSF>bSUUbI5zu`syqoNHwufZ%c&V@a37(Y zy)Y|YVVl!F^o$E$^!1*IB#|w6k}_Laio7=^&Ia}IDJk2hs!V(h#-PLhHOtUwTX&DN zPR1(>_~UwA0_2h5n~NPd1@(K?YWxZ)TD|bXo*HGJb7h{y@bRB<sXxp?cOQ$v*sGOP zZ)q#3=ozvrOxkc*=)@o{Um~CMszb`&c<7skT&{yOGiH>_woUXLF!hH-?v1(*+$2VS z909coBZ@EK{s*L{|8J1G+kLzH=m(@$;U~wolh_RTxx9tJUB;hean2#`+!QIRITIPo za}3;1i3FE{yAWcXexb}flTGahyUF!c!nA($1b>)*iE`q-L3ipx62HatgK_U|glRc| zphkN-uyVoN{iw4R$F#n8YV=gzEF`1nVAJLU*2!ePo9p0g??0H-*Aq+c#5K5f4IU1A z#Lc{V<Uz|Kz{`4g>w5)u3_(w%_NHaoiz3X{gQtCioeQH65%9(&dB8S+>4kKBrBWYQ zEgV@j!1d*RKE$@C*bS%jM%Ep^85;he>k6_<I=N@Ez@tw~z4cj;@#fDP$vbKPz|`%7 zzkB;&&>M=o8~)Jo1?Qi+Io`d!`tb7g&pRo7)%e2xj>tRZr>6QAslVe-*4Hg)QX?r& zBBGv;tQn$kEv`kXf>A!VoKBXn&Qa8JqJV8uCzXy;Ds0-3G^5oyD~VAuY<7{%ZV@>v z->!UI(3Z5jLL?Q~EGDs}rwnQ?nqatUViM%81eo_yoNaKD3Z*4W>nM<&XEI6H6-uvg zQ!YN<O*s4H94xU@a=x3IwD`6v=JS`MoXJs>zGF{#e^Q%7=oW05L#w84Vo|WK8>XbR z>`YWh(s`Gh?gR{a-hI~JVDgT2Fzsx7#*lF4z|}6UFI)|=J#y6xtdRFCPVT|gay2`* z+Wxh%S<*gf_uO&e4$dgwQC-jRI}Mm@E3euD6PVyCE3)?gH6e;ovh}Mmg}Xp}9hf?~ zb5Hdc&z`dQmW0vwPdogM5}totGB~w_L-gr;UvKp$wv~7B+LD)7(LDkC>X+v*Y212S zat)8P(T;%84(L-dFAHUykQoz`#RQ+YT5cfY#IN)koM4TKMUo()I!#V(i!P(>!{dr_ z)_acKyHIz$LP5H8eBT$ahhdFtP(f9jz^A)cRYW_7eo=mze^Q>38|=@8tX(Bh25uf0 ziA_vxoBv|p-CnrQ7kAv2^gLqzVF)dhIN;l2zU-&|cXL9Bx-czNf%vnA%@J28{(9MY zM%Von(Rx_wpSZ9b{*6nB8*^1xN(^XB_<Mlh9Ez28R7n2=ReND@DhwMO1*3W|reSS0 z@wEinX{dMv>>p}|P6`}42KV{as(&}T(Am0udYmiDtac01rksvDcmFB5fH<P89ax^Q zk}vFngidMQ<2tsXP}(76{>1aH?SeN;foD{I!$D4_cZj)%tx@|5!cIwYFLlIvq2NCZ zo3MM$xaamQ&mO%=hWe<b+SgDS(Nl(<E$8~pnjTVFu%N*z{Vroe@mbCVfNGA~QjbX> zUUF}5+z^XZ`8QFt?0c`?>_>{sIrCry^;QyLytOL4a@S+l0pA7RgPzGz(`tyA`VJ6T zL-LQZccK;2=iaq{LWNR!@)~|eKW|$G4WdQP)wdz#t*QnzJ_*rXZIRvFJn)YQV)%0* z1TK-36~Xl%pR0Fi;D%W(MYQSW1Y<8-w24d)RG&+4)yxclFY#;@oE*wNS<)y)+1Gl) zektjMk1mV23wEPXFAYnp*46^T)!I=NH2y@2dqL;zSBAT6+ZjxeH%aaxZ+KO>3u>K# z`kE=+(DM|qKI3`>%?^&asIKY%rwWF;EDxz_YKz`cJC&w^9_dhMhlf!k0O(kw-|XO3 z_#b;(Q{lU*EmR84z3$+<C-t*hpBUUOzIIl&x3`=h9gzvs(@%W!H66x&cxomc)LoCy zrY23ifnlMB<fyJ-BR-PBV#VxpU-8iD=`iB}rXAOMCcH!PVme#O<_F30h%8-R`tD4% zHnG68r$l*L{I#+ZiHdh_mq``p9Qp^ox^>TA3u&I?Vf{c24^rbZ^u*k~IOpZm`2`(F zndR(4^iOEw%4&lMF0g>gR>77Iyc(q&eYJ9}HIye?*UFBR?ed+$mWr2#uw}*PP{}aR zC&coM_p&9)ZCV%Q7xC?-(VrkDrv>dN`~|@$ku%RHQj20w;SLcW8O=((6g<T^3GQV- zsm|q>Vx}jdGm9tUGmj_av*`Eo$1qPpuqWpA8ec+q)!x+7vfc6Za|w@1Pf1^SURwUb z+=M)NzvRhfy`#@_{Ch3S5N~axd(IfAITShz*BYz-u2|Ku)y0i_Fin!1Dwl&hO*6hf z7Xzi{Ivy=6)eE^SI}b|+aUQxOzk0kBnR_1`v1dIvyI>@L+iHA-EIu5P<s>VbD}rry zJ731eqX>DZW}x0zl*OAVr(3B0C5nwK`D*jPIooF(ueE?r8jXArvAtp&lX{{q`9qB4 z>ISjk`3JX}eQEJsuqqYEr|B1ihE$-%2Eo`$=s@!ZgL(~YSoH>kyF4~zXS4EJW$|FA zCYX1jOrX++@=~+4b=h>EX(sYvbH<upmWl-(x%&yz>bn64zgVk4An{|5WbcSW@9W;| z$C5ENiD!=pVShS1JWLUdS4@LRDwfA|;x;0dg?Fvr++s(;X(LAGo0mNuSI0yy&7l_> zy0F*z<}|&YWfS!=!=)lQ2`*Or(8*lz(R?t9;O}aP4J&8@0WAnw8$=XyYW<8BBvmW+ zL9!opnwr+{pWW@ggAHz1g-xKJrQ3jm4RiKf%byTe_KA%Z$s~q(r;RmJnSr>Tq`7#q z{QxYoe!`v?hi{_bg8`bjXeM4J-0K~1r0#!zvUg9#dQ$%h+#K2>70ho79e{}pd%~Yp zZZ&3}<SYwZ%f7pFpIN#nQr|P?LViOZSxtYw8QET4-Ym~tU&nHJa!1;`Esbp^Xc^7! zS|T{V`8;5~*Liu;jk4Fe33x5U*#I1i0gf+86THGytx3wZ=;d2R3}TzGKPbO`!ZQcW z{DgkWGfCC_|KjVNqHGJYZPDE6%$>Gv?6kGhwr$(CZQHhO+qP}%Wxc9%+pRk1o{#yl zK31D8#)ug)qDLRSKlK@1lFPMz-q2hEbW~#pL^l@inqR_s6k`WzHyqQ6x&O*<^wy!d z6qK0J>cd|fXVq{A88)llzg)v~X@0`t&hhkVZ`gkcc*5td^bDvr!QGd=MC2^Z>|t0l zPE>G?J6=7-T|zwZ?<&JI;_{6m`~2<4-0fcOvT9NGU05{qY>RA8;|SRnf?F}uRY3j{ zR<z@emXjG^a0y1=UOaN~1$o}My(4w$OyBC=_v=!FxK`pxBg@>1i)Z8!S=_~s&>+qo zjQ)elb`zJc!WcqYHTpKI9%mmL=sxq3Zk!s~wgNf+JTRU7N_Ws!X=6T&)c3_!48S(~ z2p?|y<kto0?R^_SIXRN-3iuwFjjxn1K1k4f+Zeo@0Z|ewpIF2IQ&h~U5WzNloIa6J zN_WFvU+9r_bPMe!R>JT2!QkxLANavISaWw(x7vQ%u-5sHG5UK&v0Xy3UE?+Oi0w;X zXUe%ND#PVp>je*|N`>z%jE=c0d@fHgS&lBbva91gtzpf#LPooFe}@3}HYjKZ5S$rD z7lG#9Kb<g~xyyleo!p$2EI$2i`Yy7t!O4$DH`1LT9i`1d&X3GDzFWVz7YTRmI}tyG zuc5Zj>1>pKT0<UKEefCe3_4k&mfm-$I&uFj#@p0$1LH2w+jM6|kv>3uL~{rEdLjQ_ zF0MuM1U;|jSk>VQHaxFiq2g+u>r36MB^9T3r=N4)WfZmXmiH*_Go{8UI&me+@IaW- zFe%Z7wtOH6nG4q~;f9raFb7OAC-@47J|E5nQ|%_lhR@@|X6(af^1;qO=#or)Hw8^+ z_7N7Q7QR!RX8p0mWbi^%*9O+;PI~KrQ9B7Aq;XyRYpYyI_J=rZJY+9Yz?MxmLknnd zvoWtFjBHB+$r?YbJXEhKSdZpMU+VfZ9lrNAj@ztb0{{n?DN9}~H|H#0=tYLXOGUjK zI_=~<WGuq0gwcmIB+Ba-1!m|NN#0&X(%6=o%qpM46#)es4#h1>A__{PXCuaZ=ZwVm zk7tM5Nr76O)phLSmn=-4gAG!(?B3Ay)cJG#04`oA5BTFla8BhF!CJjp&gX=7&L`RI zmS}@B{N-@SlT}`(`sEAkve}39%u6;AdwqG~eFpDw;O`mNu#*c?cKfozd%emR*Ps(D z0(RHMIX1l+*F!*uEK+tFxXcf;(+;B<*L^^TD7ehzP$}L<ho~hn?rOwLmJli3MzwDv z>V_}Lxwqz!u?@3UHY1z+Cy<j4{*4ZChpMU{0pi9y`-~G05r?p!mv~hc+>_6;@j8T+ zCr;g}i5!c^O(_c$7N}Wqmm#xkBd~14Xa2nZbs)!n575C2kG(i#is|Qfhm!do)$D8N z$wYP1RB~h9J?89d<_T3v($sRJn)-356v(Wq3U%i9LQs^XpAj=Uqej4T+K+7at^1=7 zI@oUet#t46`_2L4o;tSg$MRn}i32boQKndVQ2I3iDa;WSL^gfAdWi#Jpi!pSdeFKR z0WbO(Vv@Uh-wN7TZKwky#Mi~YODQAPpmyb<A69th5(ltAs@4SF7$cyFY{qz)k_R2W z7WA=@K&}0M;h+xwAo2pWt_!62Zs-%l`EHmK)cIO4z+2%JlH{R{I90bBe6)pi0sB27 zH|Q+!fqgoiRBc0qzA1?;Hunp7f=$ff2D>@{s2AY|tUnm*mVXgk%xDwi-jj9Yd}DqU zcEjSH;`TSc9p8k1L65zORupIVqP)?p$bKWbufl<?Bc0u{!+mQ`?tKIOJIy!YSgPjp zhaXP$!w>)O3fKRg=KJ3n;;PpFQn;3iC$V%RF3dQjfV1D0QHqLJbJQdMzXh(}7F~9L zZgSziH|0{qIxel9jEtSBzCRv6!Qh!hk4#8~uYn7(x~YEzuE(BOQ>XF_ns6hd_K|)B zuGOq}TyxJjq)uMHvNjwI#H|Z~4GSwZx{DK05+D|GHkU@g$HxB#R@t?!sq%sxdc2^H zK!}|qKC;u47)UvD7N0*PL?Ht!KKyFh{;lAxL)l&3FUYHi807lak(0N+7mHw}!#?IE z+#WH;aNhyaac%wa0go(kB<-j;lVOh286x#whdYL6!*R4L?q}Du%~f88kAK65qB>*{ z^Ugh^((ClR@kAk{do6a~#T0>b?dV=~-uA`lTbb;bF>A+BRceBFm4#xh<D?RVCcJ)M z7^>N0D4lM3)*cZ}+TY?y8wSF3VB<t9)$yXvDZ5W&n<o{uXL?Wjh5@lQWQ;3WF;XB= znIFG;Y^(R#3|POwv_vMxt@<_G@50)TDx|)dd6tmJnBaRv_WL;H-p02Te3~J7hyET= zL$|6gd_vqN(iL4xS1WKiWqFs~9%xNx>3Q3r3tU^T3rbtJ3sPHu%deVY+sB%I+s~T8 zy5BkFy6-t9y=Kq@*Q@6P&THTU&8zPN$!q8X%d7VT!E5kC?fc<jsABsI^xvnF5~&M< z&Tjw!f7Jg;>-t|)iQn45P{Po~(C&}Eg|5AQqcVht!Xf;(blqyRtE(>&kuMR}FQoY7 z9=m)EF+dZYcru6?U}WZ9V$~HwD`vQ!b{E{oswN7R1%*m7NKA7DPPJ0Cb4}O<CG&7) zOLOz`N~Wof=Q>qp{5jliE3edR&-)+f_dffz%DCJ0g$^K|OuSc+0vxrR6*?KbRbj-i zRN{}aO&}zQa@!4%X*GgfV~n}LksAIoM61>y^h<6GX5dD_jxa^g?l8Smy`Q?m!5#ug za~Ya%dSI*M;OPp9y#=aW`i)nfPH-4qiyUk7?_(HzXR&7aL229Mn0Dli{2gP8Fq>+> zOvo#F8*d7+8gW5#9GROONbGjS7Ta2rD_MBKWHdLCk?BCriX8Qo=#rE`;lVTgzOC~g zgqs`xKvdRCOc2`(e^VRMRn6rc=|gOgkCQONIFR$WuX=Ff{?CWd8fu(x77n`WY+!PM z=W3v`hRb5$vYeY+)5Fd6cmmG*Fz&HU{kJ$sH}dMT;S|fkxg>}+`AYSUCCD|LLN|?x z0t-_kIy|5voLpyb2#*FP<SRtl@I^}@OK?mRJA#@uuzAGD*=PXWlaBt#H46q|mrTv% z<?n{KO~Wqma4agGz@3cq-){u>5cA=j=N*_GR^2Qs7geDFp1ntGKL*0L_Ndi(tYiG< z(0wwn92$!_CbWHxTcAAlbF0qM8c0!jkg?LgF)MRz3}jicAnTh2n>r1J^h;8)b-hs? z88IsFbl0ZQd#HDd)t!{w`gx7ug;wmkV%iB-)^K!X`!Q(+gCC)(89K}(Yepw8GuM!4 z%&pDpz#!ehIE8}Yt4wc$A{(1Ttp{iY<@|+&3zTFIM#97NQ)vBvDe1#Ez$f(h-K~Y4 zQT)o$a>(>eTRRL#Mbz-UI~yAlRBVJ2%NeR?uTn-|wg;t<s!&tyhX-52O)wRfy)7e# zu#hS-x60p^GPR49C|L?v>yI4L%Qi3!DHw;ch|}R4xe6TWTLKi}|E(6-VCsVU3%Wbr zig1bEB6PJT264ACBQQ;}H>5d#CguU<%`Z@^9@rSw?1gI!@vbX~X9oz{8|jV|Yvu+Y zhU`V8fA~e9znFfu_$44l*H^8HT<<|rH%`Q&CL>-S8UYeiG|i;Z{3egLKl?T{s9T3& zIS^gUec;$R`@qsXRAkfah4QOt*WO~W1|ps51N&R%CNRi5to)nLC&v3Ej2H`B8Bz%X zhKTel0NmA6R;A812ohnKqHJGC_$i&lN~J&fMXcz>d195dm$mj=1g2}q8`&d2HyG%k zGl<b*w}m`34*h7r!2BQwiCI!A5=nG170^Jgtt>XYJ%OSH-DFOrknt#%gh-R0Aq`xg z+PI95(!=i&(A&V4j0%1Th@YP^gLov{GR>)-34@|$-h~`Di_o8O_Z(x2j(7<5E@uq4 zEuGeEW>dPql~wv^WWk1eiZG&SptH&3yhucx>?EoZp3g`F1EaGy=OzqPnZCAabHS`( zaAAMv7`t~1%{BKvnQA<TrH8Ayxp5Kv4uKNeWc+-%&bb2k_AJN|>se>7N@Qg3W{u{I zh7?S|zC&HizPi05b3}CD^Dd^FtH-e92^%y3sef%g9QGQIP8!Hi|N1L){=|~OEJ6pf zIsrOp7?rM1i-%C;Q6nfq-t~i4csE+~zy(xg7)!`(MW<73tMqk51Dl!PayO^bxR~@} z#ne`lQg1Xnk>Z?k6g6y;NLXUqEZzQQRo?UFwy>^JEWdJceL@Heem<4c{Ru>|G0PBQ z72PWY{|~H`h<!nz<}Fo?)Vy63-HxX9ij^@fCH|jL#p*6B)QViBN{Z&%=-haO8zGF< zIs``Mw@C#KpdhTnCC<mWgz&MJyz3UtkeQIYJN`lrMX_y|enTlW<ha*xC2Ddl-&zk? zc5G3VNG6*bT<c{IOUXF<;C0Sb<%y<Mi{M+qCJ^qT^Ook2L-`i$LTCRov9_3nKm$(& zB$!UdFeI+&TCgcis=q4JjLS$_z>(EasVNhm<Y=L#oM*y4%xqD`QhQ6Ks5PnFnu`Zh zI=>lG5d}t)XpEyGu=1~i>M_MMQ8iRcWlM-<3j}jdWee`V;l6M&1cmZ?S5tgki+YvT zcaYX~qR^;bVIDz7gwXA$LP}{OU;ESERb(p!Vpl_VfzT$-7*YmR0K;F;ya~K%bh|l8 zmUP!`=%T}S9fsUebTT&sGX%WL(ALf5D=h&UHDocleb&e;nkE#&p>mk{7Vg?&vP+bH ztQ932ozy4&4eSeKj1vL5Tw#UIG=TCQgpu-B7to}ncX1*v>l0u}=My8=WGx=u(Z-zb zEf(%64UxqydW4!tleUe=<+vmda>ou{p|)A+*t2-K#t02?Gcvir4k*L&kHyCwS$Wsq zjXBz66_Srn_-?mWqd12V$yy=$+hoT&hGpw85!-1^tywlUqV?=hi!KgZ6_9i=qIylL zWK0XaIe#pEX)YOy=G1Hx@cm1vh-mnidt{mFgcyeB`)(_Ysd<VSdlqpGCY7oV7*sg= zkQbsLqw1q*xUnsId!Gy(Z<t1+K7{^2^qN2`+A_-Lr!ddwPQ>pNb6E3Ny~c)SVT;Vi z=cn}IA#DVVB0lFj7|bzO^~cIiRHUs$syZgU)w02?OGW8hqDF=5HF4X*MxBk10vFJ8 zp_;P7p0<QEhlID{RqZ7@Gac<=Oiej<Xlhu$o$qyE^^>)*jZt@U&j%(=Cm<i!kKeKN zcVg>5Aid5t+j{=^0nWd(Wws2*iET%Dm`iL%L2;Q|A>Ff{-gDTRPE4$T*>sR24nkze zaP?yk0%oSlCOGEd8<Fu(izLI#dzKC|R~nVjJw1TQSVg5Y&8>>Hni?9gpe&^V-BLFH z4u8TSAA|l-NWLiYJ?@|U=;;ci)W@XxzAPEA>}YecncSGd?8)@lZU2qBXQdJ4ZbN-# zIGV}nhHLM%i_aNCIve=ul4AY1`2rPv<9J6mHn8P|&d#8uXuYcF$gdGZpW#V9#>Pq) z&S7h@mtqy2`SLAbN^woM^D=jX6trW?jr(LvHLb&)bvSwFTGfw=UYLwlnB2;zeOTsE zsl8x4cxG3xnasbJe>7;|U3{WSDw=7_63kx_6J0?(t1@Y^Z+1#eLAoq)O+a<39uP>v zJb`KDmBJ}GeJ3Ehx;l?NKNY#yWVGl+I;Iy`sv5Wo;Vhw5FXlp9P#6`Bbm_(&@5_RA z$%1~_Oow%?gTy05y2B-O2SE6Rf31ysTlK;AXJ2{E@ddE?j<PZym#6&(S$SvKB@nz? zo}L>IjJpWQE0io@3N~?|B4aZ>vA}35tnbeTYIfp+>nKB}ZD=V55nUVA(UzN|lbjJ$ zGol{rbOXyT^U2{0yHBO(R6}sddD8mRsVojXBa|m2M=5P3(sfYSaRpDR)?ix47cJ;d z-14h*XURi(;7V@R<iUQ|0z-RJT-Y4Og4-d60Nkk5gg_6BAigmnI_O~qj6g_?$axbe zj8ZsmjBwh>ej$u#`%@E(LWq{Iu-bTsiy{P0u|k(Pl07!NeUP+>Pey3%S%-%is6WN2 z8dCLS$x-<pX_AO0IEu3#YNDjG7;1dnYGU|ZL=G~<nmvTcvP_$T#WPZBOVz;Bp_akb zE9<+Bx5O*%ddOBhz&+@JbtLXvO#^bU<Vj{>muzw=q_=Ir)W#{wv=ha72~zz~YLOUf z{_>&KhX?#2OS_PF`xuZ!0qHc;Ht$(YGhJKAMlCp^>Sd(H`9}uB8-T|!P>a9oYCjGt z1v0s^&!2HUxC$9!_;j<nq4UZ6P^NJQ_Qv|_R(erbY6mARY=67Ids;M7Pw7n`D$hi= zwFS#;2P(quxs=<Nt&&T(#LR&f%&Shc_IUJayiospg<fHmD+Ty-*vtKS{(Cd<e^%)K z?Wi}iDdqnc4rGU+(5F(V{IS>*sCtY64w(2Z9(+-}Zcj)Zf-wQ(-AwBRfIGo<shsK7 zs+)^pbkxJs+XFB~-)O&YC_(4N^lwfK?OmGNd}v!c>Y@?`r%-@sT}U25_x&e<*u47l zkaM+y0UXuxct4};8R7($Hn6XsXiX<$)F+X019(3bMFVbnasT-NzWmBQ>lY&I0$;tQ zI64)jXo}lpe8fS!#r=`u(yJ9U%YC8?Vt}}ndSet>JF&C#Qu|e5X{PrPgnr|$LY|k? z+;Acl$CcnoDQHUX-)zG=x0;nEqeNIn*wyzm*cHOb;0wY@{ioU^#3zCK(l*8^ukGXi zXsw16@0JbxiKG-D008>`X|2|CG_^3G;gwR5kRzh|=OM>ZR+9#Z7l|vsvE1CWaY0!I z$x<}=I7}c!ppI98^TD!>B%*@6U0u{WOnYZA9E=F(1As?tV^vIsr1g2K)81%`E%iBi znFT<xLWPzt&Ci$aw`&BfPG28Uk%UBg3KQM1jsPk>RTaa5Mil{%O`7FtHrqNF>6L9H zzT$Ps37^0m;YpDK{hHoL@>g$?G<qCIB|~qFQy~J_WqA>}l*@c^XfKzvhA>n(@pIg^ zop4hI*J-#~^L;D3^O-E(qHE=bPR&`R(+)&r4vANHnJ=>il0|_|YD#mhk6_T3N?2%K zBr#QdG|yZZCX`Oib0R`-)O5d0092~=QU6iljfloqG2>u$gO3O>RA`)&@i(UtTEcD> z)QKMD$w16dwQ#%BNL!1keKz>8m=z6is-UmeFp(<|lB#9o8Q#NLehr<#C+#Il$ueU3 z9iWn`C*L+<LnWi3KZT75n|~~gN8$`b+3TV)(N&D<I7#-bHyDF!w838P@fCb-J)JQO zLt0>wPz7N2zkdnJ#V<4mAOHZxKj+n-<0^ozm4k&H&Ht6Ve`YRIN!1=n5$TJ){$bJp zFBdT;1~{Esq6vK!FaQ`_H$13D0vsxYRh-lz<rJsg-A}fcdao;-?5g9Z^$br&ib@tI z_hEEfC(-aVhliJ|*}Z8(LaRbys`EJO(95{B_&C|ytK~Od$T|1JK3RXQ+Qr|MU^*;g zwBregpm=UILISB*nehCK3?r9>YGV%<C}VUS;}H6RpSCmzt3p}{S_%3LeVNudBxRoI zn1eYae-gfDUE;Y6&R!kb6piUUk04#O0TA4^TcqP`BbT6Ef^985m!w^`pks6`xLbmL zs(x{(WOOYfm%v@cpk*{IV;BEjNqFl}7j=N}^U{Vi1*l(hBMJ`e7-B+=qcSV>3YK=k z0Jaon5km4|0L{7QNdVQR1Beu*ELl}W*O$sni)-XP$R}u|`S@JCO^<|SMG;1Fbc1N& zLvaoSQWQ!1&Ezw(ld+^pvhfhV#DNH9C&e)E(_te|-R!`gF9>vi{roYQhx0|5=vdjA z?JQ`5l@^bXK-O`kk9J=B+=fCZ-xXnojMG8cAbEmnlK-wg@vd{HNXOy=t&s0w^K1>e z17e6dvcm8<`D?gaSbIh6#P}E<=3b6UNZ2S}?*sh`=ZBFRo-e>vwvibK_L|tEFr+4J ze7J`&Bw!`ap>~dAPH4y-MxI~z4VBz{^f^eaxI7W#+1hVoE1t@lC6z3qoFqPJFPmSo zGmQ5nBY2n<K=pU$8^27ygdw>(+9r|oT3?JIQ7B4Udc^Bu4??#9QCdh+-e+5=;0!;@ zrAmr<`38cQL+`|Nu*T@%t^x*1hU6fiDy6PSz3#5SOs<IMFe%%1Tu9ZCNH+CNE>yjZ zj=#7NS_jqO67<(kA4FOa8b4N)o*i)Z`z=Tp60Jf9VVV>rl3(FCUEqe){Z*VLDZQav z*i{T0JzLHxjK=E3z{wrVnKx<Z#<4PB)E7^-lh7fASS)$@S_frGXAAA0oF&nOPpAOA zMt#@f*s@9j9Z|v6(?(?{v98N;_8cAD<#^FScv*erjKBp2cJiDlc%lTAAUrC&mR_4E zYqHoNxiWMbJo3xazC_~3bkyBlwCR<P9AgP_(b-Q%)w@X|9rYZ$7KJQ@%)eS%^pQd` z&d9ilC{z6;97d<FfQ$*z`0mV#?3l;)Ou^gOXicu|vy$#Hb0>FXLB02K#cA&0nq3xO zIraAj?)IdkDu1P~>Nfo6O?KwY;3uNW=G{$m*4UJ0lS{L^f~?-;X2A<Isl8X9+Bll$ zY;qRGX(B+$W<3Wk`JgX-lBU?e<tC|Hx`N-Cf7FLjI-Zu?5kF+FNGW37b=YQ&7W6?r z8)FUtV2(0uqd4qE_nJWnt34Nl9ME7n!uV)3n##L5+Us<dce+*`!5U-PUQU*%&WLzo zsZb1STO?$<V{&xyd*cFu=lJ}F{Cb#X+<r?sSMUGj?H^=HLKr2dp|rxSX_l<SWUJq> zrC(c&7reKKym{=l9~5}fgP&E@QIT|16>i8pYtHg&1&-kZ`;#AEB#+v~%i_fk`<3&l z4IcYQ_=-g!j()(_p)i6!+#>Md2tx_uczh#9eR!jG-@BM;b7^6pw=O4B9Z@tHRa9xh zbe^Z;b#>OXdZZ_Di3Cv-s<$T5uEnTJ*`$y8xaM@yU_{mzzL0PAwK)0MOKYoD_ZENE z0ULcjgk2Fa;{^kYllOCDrxITs*-!><>4-Clu?#Jz-tM#3CfCSe5-k&5JxxHnW)E9& zd<Ce4O{|19^|5v0Pyk#ry?HT}S3W&|(HgvFG|l(bCjQZCjWov;CY0w+_JJ?9%DwkA z@6P@=ls$x-;tntIjjE7BEDfWt<?o~|$gnLk=?%8jp0I!oZt)F=l)QTeK5l-Xu;of5 zud@i(2RWE^z9QtTxYf;PKrq1{Q-0RHB<3JO98-DLy+r0<!n_7zEL}Nk*14U;CIsX{ zOM%peOq0q5)UL>)J2t#N{^q;vp~sSZI=hr9GaF!rhBuM=%^{y}fPdc@P`i_&<$gBw z10VnZ-2d1Z<Q?n`buH!fb?uD)3%|6KQ@2Kth5Ld@{$tU6sH9ew_mF2NT<IJWj3FsP z78#hbvkqA7NVz$9SvC8kDeZGi0vIakap7;>^{!rF4^Sw_yt-Qd4~%kq;`R1@-5Ed? z$q*RszAu_dcPVf+riQ#fG9AHcG{#0fr3DNEU9`ZUAQqm45}#Bb-kE44(I&b#7n>nq zJopTZsTjRAZmYJk%+T(UY<j1T+mV&u2Dn-A6Hhp$2p5X3-{iN%Vr5gR`HEV5VtH(I zO{-s#xl(K{T(;_~UFWzWLUrhV>nwqnw(7j=Ah(%KeG&88fo)oo6!RaygEHN8$uBv? zzcvFhmSsoWEcJfEyuh*`ya7m5_!T<nlu+diZ)^Kz;pqfk;kvKZJx!g`g)ZiPTgo>8 zu%bt`i}V)aeS{#<w*r0gAP@)0NPqdkKlN8UZ)<;a#*9uNv+%_ZP#3?J>HNLv)7RAb z)SzNl<&pOI5lt4hXU^eW^-Q3|ZwD$aUyD5pg1Va*n_8f6f1|fY@^3ZVg|Z|tbmo`N z*xJteq(HHVMppB4o2giKm8Y7;6AC#q{cT<mrKtqo%dLd!Za}MpaU)a#=|^TqKG`PL zivy}LC<7Cw-}GllJ?(Ym^9m~Omta{13DXEb<*xH8!^V5S$lDjw4v|+_;|Ofe`hXk; zus@U+d0YU<!d4P}-mO%giXoYB1<if|KIA^)(T|;~lE4*v{#br#nc@0g4J^($>v!gZ z`U_#Why55o$hk^8VE8+}3|S6|P*QzCG?tx0*FSH$#^14{kHk<Dm!kXjKMY7&epNaz zfB^u&!vX-H{Ks@uu(r1NXPFYI^sbJyjP4cOIYBGIyYyR+uqq7R3Dv|R&yh*!$IYfs z41|c1Zn6f7wrwJ2RW)INq%^HbG_7E=vnkRt9%a2CGQ}V_H%*I4^16BZt@+{9-6(kz zx<d5X^=TsG+GF{-J>zw!`&tWVCd#|ar0<j70iBSdEJkj(za*@ZwoEph4rHH#L`TV< zEqA9NjFALch2A3ZI7p=ki4!j?Dhx^kT@_@WLd{le$P^jcuk;s#o~w)vXTeT{&Ualz zaA2e`5+}uzHhfh^qOH`RD`(M8IYn1cb$I+RGAI7ND9E<VO+pSgb&|1xhx}mkO@*Jk zLeO2t3TL&Bh=mqhIx2Dp(Y_&ayMRdhjb*Jy%q=#^w&D#JNcBid$=)9{$S#^J9yr}E znci|pE%{ndo;VppW1;{zsgrp(VYTKVjyKKWhM{K>m1ME=REc`4R?}ivBJ(2QbTA7J z>fEk~cJZ5-);8}UJ5s1+2~qGXChGZ3(%$7cHwC}$aU3S1g~ybn*b%8Hv?(9%IFdo0 z(sY!|2B>OA8sJ0ne)RfGQHXVQB|C*A2qPo<D&E*eWC39Qo^WB>wtT0h$!;_l@?TZV z*<B4>fAH^SNno?2(B-R4)m_V7ONcDW4H^M8%(^oj<%aO(cVwt_EKwyeydw4y`o@6~ zn%qaG)ba)M5z@q{AlCKU*3rfpLdh5>_TqwYpu!53`;Bke0L_fos6FRmZV{n*2G23J zdZvjiCXF6!39nS4-ESJ)PpweB0v{7<$o7vhwg&L(wWnrN(N5S1bQ6WoZ%nZH#QNbM z7$D+}Ncf@p-WC*AoFLm6iRj4o>w?%cVr$v}%Mcpu7%;Z_)+-VYS8zt6BGI9qun!m~ z!b4Djz09dNGDeF?0#+MR=K_anYS<^}HG(RGtUSEP{pwnnHp2HYynLNqRpQt<?fOJ) zL8;7Mh^xd_6c`T!QE(7tlT;IJCHvi95`**sIbBB@gf8V%VNWN9`;;amY)r*XUzofI zleWc7sDzUug1A?+=dgvS_nk4kqR$C>Sr|KLw!ZM>K7W0QyvVf~u3D|IS{C$exGhPv z^DATo@j#S(MTm><+~>U8pue2ARhn{HMg<LHd)mo4_vs^r2mihZ#JDZXpCnP-)1Kr= z%Z5|5Yzpe$smAysfuw4{(#S0nYDscLcg<*h<@n-t2+{I;6t&zBS~oWk(4^0#u1q|V zXY&gzs?Jr(*0;B6VL-6@OfjM|yL0{QZZd`l=bqc-TyY=6qaY05C2}(LQ;d)Hm|>bH zs3y;97ivzlb)+=J!g+V$xnm+O0yM;8VK8VzWI@*%W;IvQ3Sy$bfAS7YwuYxr)^IPK zDVuNNK2zk`<|^2PNXK|qo?-3Kb4y(R@ziDXydE+CVfnLg<nI?TS!Nq>J2zKAdASgm z5(qpJuf<jzril;AZB%^9)FO=_J%roE&&b`@krUQ>$OW<FQ);p&vYji#5iiV<TO-jR zOZ3O-=dD(hT9o!YH7RhG*nCsr)^8mWQYDVw65Nl45W9)7xZ1LA32tOcJ7!;@p-d~? zc8WJ!g!@x$7Ki)I3tjrp2QlnRxd_U=suf{mJ6kSE9=7vJXJXkr{D?<v%hmd-Me8wi z+cw?VS3t(KguE1ml#Xwr;(0N7>{Aai^=|%&hE>5%6{aQV1Y$#wLy?(GW{V@nI>PYF zKEKp(&cSfD>5iY~_NdJv8lC3st);e`^oCzUF3C;9YG|DybtCA)?hG%HoXY<*ixPQQ zQ&!;gn+wQ^Foe}}%b$Hibn(3=3RhZkCECa#F5X#vE5ZS*j`a5W#Brn+Q-(124U5lS zjxX%J&;_r}XYsa&>M9Z}Kev&sqTL5N+$87nQEwgXkS7@W_lp5Roj`Y?fHl-njV+3# zZR=j?#C+4a3<eO(PPTdYYjqy^X}g~!iwr6xjgI{twMCj>Ou`pd)4*rs*APHz6Nx80 zLRxUZnU3sZlVQ+th%OK_!3519HQJD;M;3pS^IjUD#`7(fL}_2a5`Ceggb9~?YtX0# z-ms8Xp6-#sZ&0{FJQ$r2w}2v|tK&#k|9#f+O}3MdJ5kwZ;KpcO`281D2{rT_1@8QB zULPHxV^kY+>i{pSWQ5pe{9rXs6_z1C<=M1{K!Ts1DYCU}C;@amD!TA9wA6Kka1-gK z!x{KDr1P_;mhPHu__u~;SjIQ|mQK2!zy%H`P-9zha#9ZQnFiMpo1B?pL_wk_I;S3z z$6rgi{c%%pzEoEIrYH~o11C`W-YG7eeJZ$x7p`L2gQ7!TFwwH(vw8*B405vV#zae} zRR#_?*`vD7))(w&1KdZK`<?ZNg7wV@c<0d-nS=QpqDF}<K~IVI7TN=voLku@lsikJ z8+srsFi@f3<tlgStH7_|&VTpch)SjDmZj^dvvyza4_uO7J)<P=0n-l!jUI^6T+m^6 z0f~ddWSQja#2UVk9Rvj_QPQOzPpWC#QAJye;{wz~_Y}oCgv9E|YU7b9rI=;($UoZ0 z^R;sIQ6gIe#%jgb+malxK18sq<%cn|aQi{9GZ%LE?e8T&LvD$J`H6pSZhF!c98;+o zhLiT5Nf${uPwxK&68w(&^Gwy3TtM>833%-qKR4}HN^t_=hSW*>W0a7b(ysl6`|oAx z?HW{h(ht^T_EVN({+~KP-`c{$P~XAS+RC1WS6<<t#eiq*x)dNCTu^bC519-1&g+F6 zA#6_~U0MtrldsFJrf=Bd+@jTTN%T=5><&MA@uqHM*wvudXR)_&(ft1pGqDEXfw{A- z7{?rEPTfW-V1tVDW}25v6k<~luPFtwmtirbE&7Xts@}rcBYz&Z>B)#_IHIe9%4_fW zVN$k=K}!+}nAs389aI%wVUcSnep4~BdgbkB(Qcel_#+&OBBHkUWr-oGwpp^h5Jq!E zY%$y#VAd5DT<IyJndtfSQsJ~8Mt9`3Tq$8J?RX_ZO+UMo?(XCyowO~K2-`Yhm9-S3 zPqcK{RufOWHd^<CN1zlWRSCcPJ-y~Uadf-;jDE4E?Pkt!D@1f@mm+;yaGW)Bp+Zfa zVRv0i$k_XKK*w8x?tdEIWt2+bRL_9x&!ZH}<&Nxcz-a!eV6-V&`BwhCU!t}$M5jdq zd`@IwWf=j$6UIAFB|Hkv9{{w48sZ8cK#*{eLMYZ*vj;WeIu5xX0NEo*2u0tEJElKH z-lM4a!S{oXNe;IOtT^@}oo;x5+y4W8N*wGr$o@&=_|HS~|4OHzm7}Gho$f!<`!5`E zsvE|S7H;@<8y_&wKQum_km})A2A0F!v=5?sWh9?jIub2+y8l1Yx<1*f{^#|`ezcQk z8r27IA1xn^T-WaKa!RF@#ds9~R8<Qeff_fHCcrhxy7el-u#b#bP#JTxPSI5ZVQ%h0 zX+*LTE2Fh(=~GheN^<swgOuuP>x;E-LA<D?tERuymVy8d@CAbJ8G*0o5}!aBy!Kk8 z>)&UrSPEKp`p?h?ejbAVaftslKI?yRK{O*fA^T{t2ClcOO^_XI9)7JAx&jzy0)w$M zqxlyM0M9kNSio@mz!DeXfp6KcZ2XuCyx#)P=uFAbPk;wrcph`=DlWb&LHS|oR)5%7 zB|>5H87*?b-SMJ%;uk1-5+n#OyO%nxk@e}Bzo*|3ux>{H^r@}ra3)WsfX_}jeKg}! zeOp5U;`f#?hU1R-q`b2Hu33R2nMIWN58xM*_P*=oXGk7DA0*cQI5Y`UdxwAK%rUxC z>WBUnVC-L;dGn1(#4gqzit9rW7)u~1BaoNFF;zY=duXw0JWwxt1Hg%-N27uVZ#x+2 zz)=6bIefg%;R7)QKSihk_oN^TH#F)|sik0)plJj<ZN7BH>`4?*R<$aoGZMsNvAOVi zL$w)+DD+x>w3e7?NvMIa*ENq&72h@6I%m*&$-F_9ouH<nX4&Sq?oFEo++U;FmN-Ll zDuF^>RyFIPjDb?;y4n_64PTYuSTyQj7@@!=a-`XJx?LNPuATL6HhZf0CHa0I8uJ&e zC!02A5gcIlQ;T0<Z+H(hkKYx2SLYmS&!l{q6<#@MoU3Q`Kg1*%>wt$Re<DTv6EW=n zF=Fx#y87n-44I*nq<P<8I8S|jx%^6as!lhFKdZPi_K+a6{5|h&R3vRi{#FIulm0w8 zJY^2d!F-oJ9-S=rMqORiEC6gq@L7Zs5W0ounup-9rcb@KjnukXM&q3wBDx0ki07AD zl+QvT;nIcb%Iim1`1rt<&Q;(vr{B94{c2O@gN2t;V%^I^??a-FBcH6hip*0P0d+$+ zVamu{k|I}+;NduD8kPfNNttDk`O$5*-86x~eE?g2KGB3bezXE3E(fwx(Gd}F&l4{+ z{oK25KE?mBj4KplS+e}ZVDIN4{vYFDYH4HfkF}iF&Q90$pYaHc(G&-ig$vqNRc2Xc z>b}c|%H!DV={(OPh{5~mK|soFJFWO*Yp|K9=>Mh&A_TVpdm=1ok8(bCVstby;hOE7 zGF{ya3qXC5B9faRgrE*OMxhL)0KEYICc*6nd<GXs5H<jm>okwtyAhqCd-A?z^QT|u zsKNbHpYKcn)Xr<HPN<k|#{nfuCG&i&r(H!tgXZk_^05?Ogit{K5N^RyT33dICzC}v z^~(4~V7SRirug9a7nGX5Ee(}Hjb(2SXl}<+FCPYp?lmqZpVlpwHn8(lA;*z)hkHI- z4>vCP;PCw4v0&|jm~tsllwm66U=8z(@F&U<sgA$(=hr(GJi}>{O#V}~eYGPI6p$r9 z8|z2dZcVaY!UeIzyBWl#TDRdG@3hxjV9ISWd$@C}d<ZJJ*MIOF<&oPS_<nF5<R6|R z#s3=l|6G<L<us+|b&$Na8uQo5LekT7CL(VeVKtCve$x>JOavHAgyWCi3|TSC%rzFA zgNO1A|F-U!0p=qJMQgnmM$dL4(*s>AxOSaBzR$SNy5`~b{v|Usj}~-`7lv<uWS}2I zyGz+hW*sjpp}WRogfu}hA}kYvAC%`8=f?&D3)0tAZ|MLGskr$>rEJcYWZ1wtU(1oU zy4BnuX%?kk+iuyv=&FtYNAk_&>w8>e={647`Z2jG9w_<CHBkhxxva=?q3yD0*Xl$v z9K})jx`Lxh_M9&EE|A(c#1hM`5l^3LJ9<OR(_cZ)vG}|x0<}n+OlqBY_AbjSr@Y0# zE{qicu>N~BH#=T|&TpN9kyGwQWsnnr0;Ps5=0aQ$@4VksbGo4+P5!#ci85)H*`nHR zh5qT2)i;;&!y|<hP=2|l4S|vtA)(p9UD$nfL!Su#o&Gfu3C}Jm<D-XnCim|V?le(M z7u{c-nK_OvL1T|O%guQZgz9qddi_#^FIe+Udr9|TcOM9=W7-xla9dwCgBM)fkYWK2 z<7o!LOY{Rg5=Bm5GO=NBWNCaRG18c5_%DIzo=rUEr+gO@xI*GkSvMg%C)s1<a*>4j zLBgM=A!{W3Z?^znLbB_ek!yVM!h6{B!uwVRP|6X!@c=3kpjCf#n6Qmv=Zq!B%IA_t zye$GO7v*Z-kq;$;K~PWiJIp4AZ{*pz*J1eqjN4ws660iGl$r^<a1{uH=)YljJ0C~~ zE1N`}^AA%q98&J!r~k3{kJy*`ZbAV7c>mlP68^tuBA=;)yy3q#kxCVFn}kJlFR7<> z@g(Sg9y?Jd{Mhi(D-w7UphE<amOmuFpoLl$RO-^<HZF!Hg{%lb_!I{)^(b`|0WoMw zWbl9S{;3R8tCU)dYHG}v5)O`f5;o_^Je4@LpL#ZQt|uCartg29a-DwfI(Dr-w%B^T zE;j~9*x}-^FlpAua5Aual5g!$hj|{^)ndD7*yDcPG#vhP>G2qSAvJVbyT!w)+ta0V zT91vyR^rqXhFPmz(I1xKq(J3~@8e1CiymG5`CELy7aQlFVC|7z2sTdg;Nk<Do*<Z4 zE|Y$I4w4;H%B)&_PN$Jvd6?<3-PT_&I5Z>nFzYvY&@`i`<IGsKdnHKgy8SehjL7Uq zw=RQ0`pj6#W$hLxO?v^zq#zAq-*IZcc2P&tup=9WfMQ)V@itKCWu20I3Wu~+Rhg8l z7=NiR=DkuD256|aRB1698#)SJKH71`uPLz%s)Nuc(G(m!6p6@pX!IzkC=6Gw&gzKh z$SBGaDa<c*up_A>s9=)}YP5Ld>XAK+N0Y-rjnVblD(NEc2Iv<)&f2gl;93*(%oQCa z*_ay2cQ7MmD?M<%13FRM38Mr9J#wC<T`vj)D6Pq0n{-MF3-C`o?#kd5b<Kh|LQzwd zsbRJd%3#0<V2GnuYKcp7jv_!Y4e{X{(sY_aY;K`|&!bQEjkks;K^QOx?Xkq65KO1^ z9e#OPmhMwv>_ezV)}FKx%X$}ZZ;*JJn!<?koc%4GMKXmf-(Td!KqVvVfP{@@*u}Tc z)fUv%DX4rsGND>&BWlCLfH@PMDT^@ichLXVK{R8?15QGZBvw$@%RM^5&QMY3zg;Ve z%rLDyV_?M!V;ow3Ayk|d$!Aa8sI)8}b!MW=Z}cC*js`i44^r8m4O5}2;U%C^`%}+> zqls10O^qah&(PB3(!h*k9>!QStXTYmLIozvzZ+yMf#v&pKBfJ&&|+M|3K{0F?J7Ke zqS@3IdMGs(iRKN*KmqQ94&neKE(Ikn4z{zG_mGsvSzET1ua^2_mTy`6Hq$|(S_tG| zojihweUmQ)^BX%Q8U)5dFdm4K*b>6ZZpUbYV5duO0jmYRQK{pshdiTcj|psQr=n-2 zfVbYTc2Quz(UO{aR)rHOqrHoJfdCl-O1kcq@WF%#E(<e!G~oPNVN)M4|9!O>;}FPH zF(2sIX3Ljpu1tHk0SJ0-4z#sa1Y<Qq4J^;D35|ud28$9)CCm_}g3qUN;kXCX0>KBU z8#LZt#Vvti9Rq`p4oqtpGtMzTqtkQ{1ndVagJ}@StvD?Q>iv*mUBC((xG!zo@O8ey zlq&jdP;73{`g&KG=FHY!8m6HL)36IuB_`%}dk!698h2#ci3%$rR}OT`WI;G737=2- z;-1}}%Y<WQ6bNR(wkWKwBA3O@p4kl>cSft~o0KF&#H!p}lg&(i?SItc)&$fkXp<KX z@lsVr<)~awb!RYr=IktjYdDqx%W{heE?x(`5)3+Kguz=DqCFJff_Vpt`sB_I=|U{+ z-{X+7+Xt0k&mI443TkAl8CzF%;N~>u2D5B0zjU87>UYo)!?;8`eBO%D&vistk#(WE z2`9{kT(W0!47%eFGANd_26q$l$N3`5%D|;#SXXQeDxl+{dS4bXCNxy6YA7asfQy_( zVD!+m*J51Aa`E(+Cs~RFi2RGuD|~4<0^~;kf%ES>slVyFcUb<X6TenCT{UUP1I-1= zovGAONf)90J&qIXD{{`npmNpkPEqj7=VjEz6yz@Pq){u5Uo382+ha~S;(|<n5$*~n z-C@4R<9B4GFnS%6F>0}8_;?11|4wRu)(<FXQ%(?TYj+smbDA%l68CmYY)5tmt6TIU zInBGDYZhHuzM-1A@@?=!%Z=J!9%mR|;WxhFz;ql*{9O1;H)UgKWc4)BUbKGC+>wGZ zSoqLGFL#EZOG9eW8eg7c(tGOq?#SvIKnQ++Ey~I^HlU9G{sQMEOpxR72waqAQy4y^ z$wtdhr}LgP?uU4QmRAU^&<UzPJD{nB5OlWQLa8XNH)lY{s;E_{X&9N2T425y;f1>b zA^b>gKyx{?Q@=$>Q8`Sv35E_9<(H@*V3N;S5$JAvH6#<DbYza%nnXb}>VJLEi}E_b zB+0_b*x#5<TfkPB2$JglM8M;2l)7rV6}=1MRP5T1B3j?@d)6vR)@pj^#cOLfpcQ8b z(Bc$*MZ}(^ca-6-CY5A+5No5)Y;~ewdt{_R-VZg{_kf_22K%w(S@Pm3E7+3e>VAw< zvBg7ZEU|r@vA9X$cao{JPRoX!St0jlz43KnwPY}I`#aoFiKt(CLMbQ*bjw5JX-#$T zZ1NQA%5u0YhlN<0^5`~uPbZpBX2xY+{k8EFcaMi>47Lf&`7u1ZGwl8c*?tFVvp#N< zK94i*PfJ8tJGKQnkCEG{k+;<IxJ{$`)P=t))@_PdkvnGu|0vWn`aQ2GdtgRklND4c zooGw}D2EKGDjJHUx}uS-8fQfvVD!9P-#5~t5*I{pMq(;Q?5dUS>gTHHQO+w|5OQ|k zOd(FOke0nDONJ)eQdMkzJ?rXklsdE?ZDpg5zYa8WYsm-Jlo36$N(XdK^M63^fxSZF zA4bY8=!;V(i%nley8x!>+NT*VG*^b+RYr_sbuXb8$igc`q?;bII;^00eBl{1ioq62 z1ZboTT8mqh#}~#=G}%A7zB)dr@jIp~zI@ut6*9#h>t4s{F}BP3Cf(#(6dcPQ8qG3i z<owE-yI@`WgcrW)O3P)fPcqCMV*C<d=p`KCQgP*4&j`0oL>=7-UlSq^U@Zu;^%%bf zGV#u}l~wzy71(A>1{E&`2s=+RU+htCP#12AOQA!9n6qCA42KJP&`WntQVgDFIo1as zrk;=!JtxoaD4Dmy#Z0ADhR`Ax&**AX4~w*;w(lmo$$f?RbCQtIqs+PfFn4#@HJ{^c zSh06X%!gYDk}D@&x{ZH}%js5~F@NXWI1AiM6TG8ZmtDW?e{5$|%Ua6f(5|(3R=S?O zNxUuPt!;X%@SCqPIUa=yh1f~;HZdxz559MfrLPBejC;620Fh-;zpx9uj49_+ewrbn ztOOvd_6eEU@0mrQE9)1wAuB4t^zO=*TeVd0^=+7Gq=?d#!u+XoS^5iwxQa#z+D~dn z8@UZhm!J{*Jzhy9RMQ<X@HaLbzi&`~<3WHi*R4yoGXGu*wq)x5p+QHnm^)s5spR?& z16e;e)K-BVhj6eFjrf4Sg4lK+2@SSZqL602j+?rvZ~XQN_?--V&`S2=wBzm+dB1V# z{$VcOh_xE7y@T(mbj_Gnn655AzK^1E(BRD(lKfVHDjBmY<De7ZvSjqe2yCde<88pu zWug2n^lJVIs_2FER4PSuT50B2B9sOQNf_J4VKw}Ij=F2ag9U``VRn;ps!>YBG6MEo z?}v?Zt`1G4jcmJnY*`+Se4VOv%xg^;$Ow`b6zXp}HI3-ojQ4<uZT7C!hx&~mFhyo8 zQTv@ptk-+W!m|fqyD273wD>8F;uIG2iFGJUGrJ+BXFhGKobIXRKwD{@74nE<`9rlT zNc0~TD3W4v%*c5xk>UPnLY{mzKd*FXA{x~XH{;hq_+ko?Uy86=qKSgb730kX0nTc? z)hN38MgoMuy~`%KNPM_EFNG9enJE5i#+s-LgU&_C`fcK#g8{VwivDIpAMqX<;hM}3 zg`3XQQ7@mbNmZCc0<_L*8>FaH+3m?L;@zG0>I^quK7ZH)jF#DuMi@qJAzogu#!=5# zT274S;i#huc1pJMvS@})LWJpK38}xh4w0{+zRS7i&y~^V22gWLvS~Bo;2!q`!gD_j zPLJ9xoZ4Xj3gOd^;g95Uv~0g-DChft%lRc+AOxp}o?_iXQ|psni?3)}CW9!L{Ng<k zb{MWjse~@s37_hefq$uY@5RUDHevahi@aE@<N-8DuNDP6+L8ZF7(dlPF`Xc1KdmzX zS(cyxXK;%PPWwo`I@XWOazLVUUqRdG-gqU|_4F80T9i6LMqJp91tgzidYHa|O9ps* zNDbz1)@pdt(cAc}IXITt?YrV7!6NMNOJVuOSd8rSq>Nf&i95?_MX(=0mDu#ieeSG* zg0EL(()7oj<+h-~fneN}y1qd@bibamfcz1763j;2%t|)8m8h{oj=|mxS5V}aIL)tO zL2l#w>XL>{2@^y)IVbdYx&id1GgYTCdo-dcLg5aWVi*5XcVFy7>V%MHI{6NNvD-f! z<LVbw*ZE2wKA^W80)xR&SHdo09udm}*SBpiNZKJhd*-+3o83&eI<}aV^BLn{;%`ik zAj6h1-dQVO|ADP}BXh(D{hZSge#m+M%Q;=t%HXGo%s}Y}{r)fbFj7uk8j%<2t7u(L ztw|&7k&harwIP8|5eXiS4~`GI&mT0;`gi6|++~w#^T12G%Zz|nUT8JR7uh~bd%9l@ z8p9}?{ZYm>M>1Qtm-qWG9Tb{9w7=Y8rL25p12fU5WMQ@foccms(-iduR<MaK1rx(! z6Xf@y2-5i}(R-<Xn;Q%i*QDg}+AUY27Rj)esKjyDjV7&<Cd@V|E@#V_l7I<{G-Gi= z<kp9WLS@a^iWJxA({Qo&d*U9PsneTIE5J=&OSyb++$sq`-kK!UuNun0>TZ=l=3;3m zz57a*3pH17DBwm8xwOV>qQ%<5h9%k^J_Yghy%x;{3Pqf_#CEj2&g4=toysXNgU-Ub zUSb{CO-X^~K<P;^>eM)5v2`fGU$QQlCZ*@F`F;dg7Stm7TTRP`;tiSps@{^Ym(Q?U z?MMAR%C1-D<!6sWLqdZ}>5NhrITg|89k!=B8_`h-G<KxYRT!>AfTb<c$3g_$XCZno zXZQUo-`t#`=MgAxKGA&XhJ{M29KziNbVVE@Q+D-v$Kg|9np9VD6xoE%1r>5lUSi({ zacr`Ik$s7pY5#g*YhVa470}2(hnl5<+U1iWfdIIYH%ie-Aw5Tcc?~ds2q<B|?t38a za-iJ=J|v=?ie;T%n_s}$#A3wJskuSk)x+Fem^IbXdq*Yev>IVlr;M`+s{Y{0)=5|_ zanlRK+Z6h+2U|LH;+9TzNSE0qTsTuaglL|%XL5_R3n<WXh+3d<j8<2~{OL~s!Mi%r z<b^5+wsH2Dse;952lx~a;CP%I=-M{B?s8hg$JF!MAs%Ip=^=Tm5v-#R)u!{~K-ciz zK23acCL`VK9Qpk9?;v<4%DtP}57tNZGo$|(yie51K~C4o*zjMFvFy6o4`j@hUZgx9 z-q>VT-l&B~9mfgYMaE4A?whA0ctdB|Oia9)kn*Mp*#rW@(-VzgEKj3D7sF6re>^d@ z>iO;B3Z$dM6G)s8C!#Ca=Z1wzUP2~HMk*6)E8nMtwaD6po@cq`3=C9{Mxfz<u16YW z^P^iaM_ukUo|EOSITd5c?x!6UY<ac4Vwp@4+G7sVMfe5<(z%7T0^4-DmS;UxJ`7cw z#PY=P(HHyB@MCwlb`)e_Hj-Dw%df@{Y8tes{kht*yx$dseL+tagkR4EO-V+pU<u#S zwR)?O><l=J_*}$*)q3;{57oNuq<r}+b|m}H<-o-(8Kc@#<zVh{@Z1U5TVAgBX$kKZ zXU>dt5?;3i8uH8{zHo~~Ilr1PnGq&KjgTu~p=>JNod9tVr*0OGu$UqOv1k%LdVE$l z238=nZ>4gHGlKx;v`kUR;l4Z(S+oqd;N5MpHkE<+qZzBjE#ki?3t&|(^ZEynQT$2R z{{qZNNbnn4{EK+w89n`vR1I}o>g&&~EWJGwxLL@baQo~P?wHQ{&%Kjq8jL#;+ER8U zfx&bBgBJf%xP_Eq$eogE?cML;)#(k8qQ@f`;N`~*O6Q~x1(FvCqoz}m^d>4^{Mp$- zo>T;NoZ)(p1uT{L)Vo+$k+I*S^d-Bt=pQdO8DY=p^rxbES8hk=A(<g7p0ON7D5tuD zW%*oD_l!f6)oE_sOf>j9Ks*jMWkj9pS=og->|rVEYr$f13kjE&mqFn3HjDmzspv zgkXqS@rGEWR8xr!JCbyA8}DwEQjG>vTIe$N7gn780PgU`l|@LW^}okU19&!L|0h<w zKX;P<%Tg^N@n4AQ|GCKWlpFtttr%B)3!SY5uJ6r6ejpMSn4T6Uu%0|fE$w9<ID}Ia z13?vu(;?Vd^9{77Pl6l-(Ms)3KAf@4Kz_;XUc~X1{WX`pQP=-R*gHo_)+g)2UAAr8 zW|wW-wyiGPwr$(CZKF$FMpspTIcLtCnfJZt-Y?hMxiWL@e=>H&FCw0Zc;e6NBUt~p z+z{+qHNyf;Q5f6LwFbyba&}r3mmBO_>+{TYR>z@X*#IexV$DQomk+{O)t?~|O3c$m zq_f=?opro>dx=utkr`EzPk^tNBBqnnJ#j}AzeEg%G-a-POqOa)Xu;GzC{wpaTu7HN z1|%-VNyl?3DsZW}QXF%kl5=*g1GH!n?mZRuyO$nb0^0)00$*d=ST>I^rRv?1h~Z9_ zB-|^1e=*XRGQ%|o29$1T1Q{EHRgrtK>(Fj-Ruu%m0AKcTqk9&2Uz@Z+Qam^g1u5KI z;*-C#+gX0u!h&{|<=)qI09R3jK(l_yyoXH|EoPk(zgX;ufEx#_4tkTw;*6T&9tW@= z@pm~uykA4EQ{GW6K%B>&B2Gou70B_9?FciomL1>=w||l(>$rz5!k&;|5~T0PAYL+t z%NoI`He+2f3frIAzUzRkVMoQ-YcRu4h4n?HaiOe(>QhGHi7^~5cK_P&@mu>0FL5vT z6+2mBny%}Nt1H1|$u3C#f?au`INm;qxN-cEXN1q_oY8<>`vLk_Rk=@sU>O9c2??N; z?SC%@{#V^Y=HGR*7!_H09Cg4*A<L_AI-<}UG|>TxrPU~S8<8w9siiVu$fQDrNJ4() z=78Uba9D$N+|rd+#T&{s026GKC`K$MZ0S<_DSr`X;eE57Zjk?T@MWf(>vr3Du4nGY z*XO(XH|5u1A%xlz2Y5h{Oxk15s6C-y7RGT~ifNjZ(VB>?pYs&C-F9FUkIPHFo<QQ2 zF~A$jC%NAT7zWx5umC(Hp&KXIk4>HOcQ1Xg9#{EEcTQy9)Y)0f?Hm$jXKo$hi)%ev zD(W(`zMXdf#;z*kA_@Xj1_MUR;6^vb`O5ojX)T`vhwlxhT>{tp;+ySDLe|5M0nN+B zDf`3pL_@oF#kv2ts&ZevpCuBC_Fjja+36!=V7d{Y)WzX@3xXaDsLv-T2&7q<gL4E5 ztHN`0bl^{Tx~?IS^&XPm+9izCAt_`%`TJ{8oo<m=aMX8!nYE#CEn+1)1wbiYF{_vb z-5S;>UM=~z-iQ7vbKWfuQsFkR2Z1qsk6W1WjNuRLVoZe&cl=p|5aKqph5Ck%^|34W zT0II{HYyuVV}MSSYKIe*QI1KBLo%GH@pa6h_L%B$EWRg78pU%v4$*=?uMyyG`>$aw z^K?GKW5A#3-<r-tYlY?{;c%t%__9pwqvO9?Z{FD|`Ns_74(J{S{i(<w-qR1An-{HW z&GU;PqKACC<hl<xFRui-tT33MLXEEmeFl76LmHxd2=gRM>F=p@1|^aVvtgNP9Vs55 z@xsijEnbkhiH|K{2;xQ8&0di7=dOqv4!eWjSl)3dx(1es2TY#JFb^R}x}u7c&?GN| zGxYHm*kVbKwz?nH7h>Es)HA)YIBksJlhO@YORAQMI|!JY$}@?buMk{rNLqR!E;&4X zBWAmoJR~ARDRmPrnCG<L-ZkMIK+GMJ=(mY)VF6nbosJpmNPno8mnB>SsV7-)wv%*M zCG{Eq8vMl|A;-M-K*2P^*75$B*9ULXd=Gm^0GodH2Ik^)`kQku$OnI9F+oRN(|Krx zNsZiB=6XoaoM8?(GFF^G4Ra~oVvxZpWe5K5OB3gjMJ$Y-Js(De=o32yTdlF0Nc!!{ zbxr=9G4GD7V-P!9I5oHYCmi)hcC4)fc<;VkD;tnLJB0zakqi8(fXtcL@-MYIQ_%JD zawgnB3|n+d_G9bVPjvAv5o=zZA$FvoKXr@#j*V=1X>a692@ZO9_8&2=9Aa-s&c5!$ zUlmCVg6_Y`UUMma?90`rSao_{gUjI$KQHq;9p>Une$wX|d)(^(^#mx(EA-3-)ZTI+ z|DVqFKLdJSRc&_^!0?S6eGaMYZL>n6fK&rql2E(myk0(CO=>9yw#cM!CTx1<w23S^ zB=7HIdxwtHsZNiBg3e;s31r{rx>thb+i4k;@PIVu4fDL7zR&C1>5r#5`#PZP!B0pb z%s4`S7{gk6>Q{+b0_lffR(a}lB}TkaG97qB@<7e$i6I&!ty45w%2(1rJDvEUG9uc^ zw@Tbp;&UPPU{f#}0PlNcAX|WdU=v$F@74z0bwetZ<!I6L&(qZ0HVV*9X|0u9h6~f3 zda&U_fi05-%FQL<ujL4w?(gR4E&;VR3-jt$C$c-8wYI4iP{rsco?&Vg=VAr;h5S!{ zSQi<R*Qm96E%;r5S>ze@nc+sc;<*=~H8k8wW;vNKwBLhy^D6uI{gN|vX-!XKv^3jT zyDYF>E|+7hW){zWe&eR?vEf_Yi+f8IXs*0<CNYF<c5vo|REe6?kR&x<t?uqsNPcYI z+i$SUN#rQxj5OpTEt1#|7jSpZrZfr{uYm6?aS$Rbz;c_IJf2aC7^^PIq)MeJiN;ag z_aGU}K6V^wc5aaxX}0NM{6ku&evAjUR;VE!`*_SY#CTmi<hdB6R-@`7J@7=yHxxrT zYseZo=cr7$0?B8rxw#}-l+UkOvr&a$K9i|fzKRl`6ly)&8aZ0Du{jjhi8cZ*VL-_B zJtg^aOL2QZR}$y~nw%o3ED5;iw#Kn9tdy*7r^r7`%FXl@Jf)*dRhvOszf&~yea8%K zW*XaZL!`|5B;u3NJ_{^4ayuoOoT;6S3mD!yF|u2;z<*gy%EHiTdEvAdF<^a**)NIV z5ZgNCW#@)y%Y|-+VZ4jlfi}gLVW1jX_@fq-&;gTgcA1c05vW3O_PSZQ5jU(Ir!;K8 zx_l?$dw5>E33MzH{x^vEP`|UmdUwNYH_yeYn}M=-y}`OsKk<FCz?iNc8F1X=^&m!m zjqjMpJ4dhmQA`skSR}QTef<PJ^-+NK`k&zL0T6ANEIHO9m%;k)$clj_xCO4DMS7$i zNxyP_*Xb|cHgl~W;l5q*?u|imCya`wuBY%LP4bDK-Oq(Tw%!s`yDk2t=ib&b;ryWm zzxYhUy~GoJND>OKc6^F?03CfBB;_4SVLa@G4B~Se=8zekGvJwRYKLZtFvL=K|CA2$ z>K)xJv^GlPVt-XY(Hgb8+pCM~Fx$Q%`UfBUE8I7VWX2BS;uKH%c6}qq>l&n5*$H<P z6-k#kaZ2NG&n&zv2|t#InFtHIZ?FKak*R%2WCvJRZY4|4NMd6#s-YhQVw;`WNzaXa zfT7e<-bVO<wT4^=dh7!}!nkfiuP9@zTxOqIwSAahJ5_{ES%+r2SuC;k0N80doydaY zfkW@q^^b~9<O#&%MEzaU1p(66CPnU_-)-jnN9&?;H-{k?!|u6dQJlGiu<8b2KWTmq z?jc5Pjc57LwRQ9f4{V!$dE4yz>I8_nWQmla%we@Iji{1SQ<Y|TM2U^=El5B}aG!nK z6_bcTkqpWlD#l+YPG{JtVCLT@Cs#0hq4mnHvi`F8oZy}-(R|c*<el3HL-;$55(ZMB z8w4Q9a|Q%C|DLS<&;Gps3UK~;y!{{Xa7f~U^^yYWXy2B}jMmZSN=xl#=jIHZ>?m*~ zA$6|=SV5M7>HJ$`GmN%aW;83_?;k$DMj%3B0s=vPpAwMyanQLWF@d~nPr1*2<~YmG z-tzDL0ABC+Lf71$A`JSysKQ)+7{DrxZPnzFE{g36H-)Xn%8M*P(AC2k4VtPYhxj{T z2gWxq5d$1#>yqH@*$w%ZkbsAdz2`{@hQ}REK<8Z^PmC?llWY4K^s$!Sz8&0eU5@vC z7vBn8&Y&4ar>x#B_aG0#e9RcU0PO&8WO<PQu%ZQSmsq?l_dws@x-ao2tBJN@L*-|^ zccc}pa%-@mz8p>_SUC5QvAk-o=j}Dd@LX`#+_1+ktOn4_$UhmMeY|OG5WFFhl4p`~ zy-Bfv->SA56Gf!^+wWG=CJ7JsHo+p7hSi1MyjrWgNV0bBat4}te&(X^0K4<)trZnI zO4^PkU|c=K<&QRu2a*<ZGF`zRkAW{x>v&EtY42Y^k(kKL@`f?iuoTOjz)o^VO-pL~ zOKBJONS_lEnR=lsWPjUz=oDF<Q7-1L(ceb(<PCX;%6!MFG>Yl9(JFd^5wj|HkQ-2y zes+xQ2v#U)qZZGwir5(afMkhyd2{`^e`PgxE59l4s{UwTdw&PHkQ3w?yBcAwizqAB z@JPKn>LzQ{<m#F7nS<`BdaPaOlK38S|2L00MhzMY4p1pafJ)K*-}?mqs#5;~!~UvK zT9;btwz}7+o8-noqKIhv#ews(8UT$l+6<v1krm5~{p9C+Jq#Kg6&MKceTYNu%Tl2> zp6>tt;xyaQce|bRaQV_k@QuAbR}|fyWqd!EH3hb^onfXibdwj~BtcAfC^A$P4gqX& zY?csODBvXaT3pWp4tTC;3hpD}1U`<}nnKQlo=~Tjqx*jFY3IB|pyw@*rv?w`NwxkA z@|e5!)+Q#*m%_*V<@*I!y?B=3dGmMk^VbCl0n1i5FuT`TNmf^AT6XOm;os}6yjy#1 zyUz%cW^@~NjPMY%*6N9o5jtB02s!homcqO931gY?cpR>@gk=Q<MG@Jt=&%7=uz2FN z=C)uvcl!pF>wH+8;`e00Z&MnQtYFw{d|s(?gC~=kmohK*X0)SiO`0p#3s*7bab`V= zFIVH}?Vn$j@Mu|oJh~Lm-+zA)lsi&35<*eU!eoKGHSjk>tK+v}(*1f&$6}^1&lbi! z#Zn4&0zaYAT`r~*D4|=}C31;~XC{fFlmpu8rcZD^Laop{qu>z5moM-OF7*qnOi!B2 zIyLzW%)qA3R&rQ5{Jx+O4uvLG<rIHGr$~1YmL63!S9_S2w3NM2<gWhNKS_|0#IToe zgVyXktv~Go$4fLayyPM8B5l&-B&PnFt17mJY0KCt@&o$hZ_p|&-)w#o^tW%{0gWgB zZaOtFHF7m)5c$Wuxuu=CFu*wiCfw}o{x#tiqwZ;ddV=;N$;K^d=D2qp?`DP^F*a~q zl?YUF2UG?aQV)+^SOY-#l%$JX*;8RLl4T`W(V|f#M5nT@qS%1HT%}b5z_41aTGYJv z(w<*>Gp29k+<<>vWo5kd?A?0rz3jg1w#ol^>>m<gRjzbe>S*2*-E&X|-$@m=KF^}H zGk<E+aQ7d<qwSqJltUk)y)km+i1OYRz;#(50{0DLducrFl5yb-i=BVba3_c=qK$0` zZ^AUZ^KI?Q8v(K7mP6<~CnDz_H%55af<lk`b%vnxNXbuNd^xuB2%2-;K+t$2i7wx9 zeqrM^Dm(L7o#iJocenLG|IU=v(~r*3cuLy$8SKh%w>3rUH<`zOw4kohJ=wXY@sSPT zH$dZ+!@p;6M;@i$_=*<QrqMlfh=<;1c1Iueg83WA&pU6=Z_1wF*H&2f@?OXJ3;lag z)EA|qqsRidN{ww7cBI=FaY8+MO8G!paG_vLiTV!erL`u@s8NE5Cq~%d0vhiw(v2!v zBD+*_(MX_G*<u~Mgo;zIeO05bB@}f*Z|Y4sI^+`&8AAD|HEYWnqZ2)RFz`YNa*B5} z)|POBhKr}ogPE%Ka=RR{c$EReFEAl1^XeZ-l~0sef%B}<#6CacD_!js`>FeP6v--~ zZ5kH0whG{3DSay$7!g&4D^r7)*37Ut9CLmW%3DS?MZ@SIIlSwU89e2(YG(veb133T zE%%WD<s`yq8W|6~1h-WbDDNxVfcApF+O-gr0`Z5D?~i?vX>?c6wx$MFrFOUl7e?}b z*GvkTUR9|_3#<`W{*VN9tpKGe0zSGA69#GUBb6u(>)Wvv_G3ea6Nt**!JS`jRZv;! zG|Cp%%zbuaPYm&+L|j>M{opbyu-!^AfSuDTrgOl-N%+M!=rm2OMjb%7wNgqT7HSn( zwrj?F`ch@Zpnd#YF-XP7fSlsFiL;bb>7(IF0gn!Eq~A`lji<5#NeK)hIfmK=+{fZG z<<Q)}3cclLnnk?`%rlE}jzi13Kl}46+W1m!w^FhQ=vP>f;0gnKE7?2&R4Xk)e^@!B zP=<MRTJ;>dPL81pW}C-#U_iKV6`^~`@&KV68YXKCf4454vlrZF`jTelWldQfv!*SV z9+h!wk#b#Jj594ZY?NbSj|fMDi9>Cv6PWE%bA4)a4qgCI1BsPAjZ{WPv(eVQ%ea>) zj3I?6l5A}^{G3?pWEeX-(mS8wDXxgY8ZpTB&O!RAx;i*#2aPODZuwSS@cya{e3}f- zg^$Uf*OI)NFH&WWr}5_0)w?rMW?h-QRLKHa=C=xU@)Y)|WpQm2=y|n_Rz-zUKj?`^ zuy<med2_@EaW>Tpjx-wObYkYuj4$G)v-1b$&y=sz!oI0Tg!eKT>`&=Z$|%fF?NY&3 zY@>#t5if4}QaG2~s4tSGA5fRI(xiqw1YUIL0}axdS3g(@m(tFsn6HcL#vhS<r^#%( zJ;p6u5@}5(GUz9Wq%{+h8qz>$Iy|OByliBBd$J@&y4AaMlv-&|B<wUN!H`l&tCMiI zB)ig?<ES1?JArp4!FU~sKy@YcO)DXlQ5$rbw$P?r&@QFYyOP~aI3P}};3wH|ldZWZ z*BljU&+@nX1v`)g6DEtDGM**SJdQkH1SC*iugU$Yj%#cr<RV?LhIbf{RupwzwbFA{ zQkfgPmei6_5^g(m(6z-cIn$`<kAa#xNF<J){hW83hbV=8nU>KU#fsf}GNY(;bXK=I z_|UaJ195_+z9CTj9$jGx)8~HN41Z5KCn?Gp8m{TwMN$p(uVL-hTirOil$wR}&@p5I zwJ$Q%4WK@g)c!j2-jr8N9xDvi4^d<Dfv+s+Jx5=l^srBs5P>T|QZ4$3Gi2&vkXQaS z0-MVU!d}|gQBWv|N_tx|&sug#{miH8p=E34RG|AVl7*CE#)@J*S$llXOXNAZTxg?r z)v5BM9idGFwpa_5?0g!)&|kt;?-^!HZ1;4QD587ZKZ84h`XiFLJ@@cpUx_>yXSfN< zt$aEjW8XSK08!N=OHAS(zbqPV7ip4L44y$`6$w_-g~)^nHUgR|%BehjTLpeX1fzt+ zDL1j4G@=}pr2G|pL1ms%G4_R$EA#MJN?^w*KfAF482b?dN1_!?2}%Nu^_-kN9+##V zJYLIU-rI)Ij;0tt9^7KS!iKOzZJbnqTsWxL3?!i@zQSK72wZm_JkdPF<C|qL`1d97 zMEej{phZ|XY|37&#RzlqT-A`@7~Xh})Ec}pvGBv~;artRDn6jk8R3=DtP35L;}bvT z3Ty-X&`%a@hJD}<nbPQyxFRZnDi-_?)`5NQXaO5zsW+s_0&xl-DN|O4D|ipgd+W2r z=`-V8I6>OaFB(-eG-pAlgz6oT$1J)s7Bz|0t6Wo=2b7epe+^p>7HkTm7m^WbMV{n< z?Gv`jQDnx|Byl>s5;qu<OP8!<s5w;UGh2a-&0jdGXmZVhk5M}`2N{n6zG-vK0)-*q z;?4Vo(z9{?jG1->(op_>RuAO_{c|Ngt%R)>&w5)F<)W$7z3Fb*nOV+toNf=v@Yo;c zi7K`x#18M?`FnHwY6cY@)NkJDl$JOhcm)&u#_4t-<TNpo67!%~sHpB0lI41lIQwk! zRgEDppnVJ_ph#V()x%2jX<hT`r3sOw>M2;^Loo{(FRJ)#)u>@2t-<h#i8rh=s-fk1 zOP}kdq&9LUZrf3)T}%pi^%@OUc~-cwD2M25PS6gC18N!NDA;OYaL;%k7{q}P$Z4{{ z3fO(<5al!+xofdX^MelPC7HOSGGWfPWNS~7IsL6=8}5C)(g_&6(jO(OccoHczZmmM z=UtYB8K7Z^bT%M0_=pt(ud@QH&Rskf!e=sI^ws9+O>R<*ySGg}-Z<G~d$ygjGdWP_ zFbgv9%5~|a@gDF@V>dxmHm~TM2@@SNTl~s|vA<r23?~DtG)8b0&t(YC;Fp$**^(bD zoU{27>eDII5(4r$3K3_;khEh_xH>aKG(ZjluSRFl_NjS+I1VN}*bkw3Q80EoTv)DN zKpHS;Hp5PRV6^6HEa2KS)!aieFw?Li8aNX$ALttRjkl*Y7&Ea}!o97`w&AaVOh)lA zyC90(4<+D+wz?GFZ^R0COzxonK*83*V|(|`jEDcsMB-Ks&JJP}f{8L8wnUozLz|tg zxh}MX_ZS8y>Amftl}{#i&$&Q$s)_E%&>Xg)8*5+#TJ%!zlc2=Z1$GNt9HeKjF}!Me zk$H;JC&WTsT6869iQ>p5wdELZ%!oilfFRJV?K;LJqeU}UK#d=GW~G%Q@kDLB$e$N{ zh7Ispjpi6iKu*ZH25?gd+C3?uyr6T=bxiRLv?qAHc|phSvsmLIv?qN0SwY9ZvzSvW z+C4BKgOGC(;Qkb}dt^ce;ij-&GXXQ~cps3(S%^>N)%0HA?W%UqZu0sroBA`xRr8Tv z_$!?LUZ`u?)^+$%H?0PHpx^BEw*uZQzB~P1vNlf^aZ(+4m)5=*?JxNo)@BYR_5BQn zl^kg=3&JlMW+*Y_=^>!{wx*xoHa>}1+YtZov_Jj%E3$~@8gS<Z$dQV{{~uwkq@9DS zi;%0?{}4CCDC^4Oh@*bL)cxoHd(gEK8i%M)M+LD>B*$DFCZdYTDJF_s?pCqpZO_`Y zZq{4+O8E-xeJqd|Nztl^^F5EN^t$l~q6?Go%;<1F%XPl(a6jGq^Yww#&#hO=6tqPp za|EM#L+Zc*2eaiw8QDSt)CIMj^eKI}jd2;ELDqmD*+Q{O(ttm8pMv``^3EMV0hJ6l zT$NKqf`*w++vT?o3H|%ak-{fGXA9h{=gaX{<n2K4?6n;&7(BJ`HM7#~XHfY7BXhBf zK#8g{c=Vc##-k6zHXGxSPQ2q&3Q$#X(AZ>dU9MZEDq6Qo6`YsZww5hn`&EnZiS+ea z&I=j<;76f=*Y@jLB2BtD7ZKMh8kpHgQ}((o6L!V*iY~b6gl5P;m`QHZ@;l0H50N`( zgRWaPTu&4;?S3BWRk&BSTC`T*-iJ_SL8RHcC8Kt<UaT;FhMNYf+~8Kkn2dz@DLzNB zX;<aozvHBL8Hk{jv#;>|zL>-Lz4zwr38>PQY8e2twj~U8$7uT4>~BKA$_b$1IKK{$ zqUp5UQLSbahtc}pf<qYQZ=ZTj+2|yZ%HK_oBB$DNYP2|lShMFI;oyMTta}h)WDT~G ztpcUO(ZZuUCxC+--SVP<EXmnJ!mZU|<f`sDz<Ld5kT58ev>CT%CvqMgCIdxtl70VK z%t`G9ZONp6&Zm6N`Uk>*m^`NtEeZZS=laNQ$iNuAUGKDFI1cqFcj^xiiG2=Hsy<Ip z#vho~HkX)eBEL!N$Ybsxq}rljllVc*8rq66o5VCiC%L6tA};k8bQ#{)}WrU=r~ zbHgT*areipZS}?|(L$N3D3d!34Kyy7gj4k2SXe~Ut_fUZ)5XzDtMep!0z&HMN{zA$ zno_x@rZCCfG7F*8Ns^(LERyC3Yi<4S^u{5nqJ72tJmJ*3$94|#QgpgLk6T>qwV&$k zrw!<$`jLg=BK>v31;k&Yp67&2WO4A~bq*&FF|6A~O3DZ|WkelI)(Lc`GfPbDdlc#U z@b#6bNv0W2u_8e~U#p9VTMJiZ9wW!mi(=!>-ffDw@4&sAC0psdIOfFrkPeyxf0uDE z_WDOG5k1PrUZRh=XX$+vLiS)4jFBiNDLz*izT%PhO&xDN`i0Jsyskjv&z-%7hlO<x zrFBWq$$lc)eIoqTa)mx&z5X#GI0(3i{s-asTSBT}=;ZvbT$Ja@evJ<t9Q->ty&E{Z z8@QYp_|4;TV*X;bO5gCdiWs;eoV;va^>CxeXZCQn%jbS#;dHl)wHP>Ge&zo1wtwL= zYPeAC{>NhBu}a%CE}{4^8CwPGcf4{|!iI9r76}9sV3HsgBRxsE1V3mAB?4I}lAv#c z*nf(vmyeOz#lXeD$-xl~j0{Z-%nS?-zAaW0Vp9%*BbysQ{EbBh1T_a#7*HBV0^m3Q zrWgC?KNEE`wfpb64%_${xj_ZQkU3jvni79XLJ{5b$h=@a|IwI*;NWwi!QK!YC8el< z)M0lg<3stwL5N=k(PeF4BBl!&9c6nN8Qy!l`g%Z*^UVpuE1>~exdnEHV?x6H;r8~$ z{^v01V}hu|6u>R32B$T=9FK(+-WPMnoP1Vs<GHgGCR0I#i5L?t3>d<52o=j~nC}%s znUfyn;O8~$;u=$RO$$l_xr5^{C>^Nvb*B?Xv~xktCBChRirdm#-0K3nf>>GbG8({W z43R@2JPCfxu4rR9E5MSt!5N9RhPc0Kx%mA3Q@u1#G@1yCW|oLtV>Yf_@`!HGG!2?l zGJ7=z?`A3XN@`g!Q1>>x1D}nlEA&M(rGlqaqN<sX_?jff-0}1Ge6?lB)L!qr{<v-W z27kGiQE#m!o5TIF&WW~<w^!OQsxkciw<#|_L7GH8fZW9Za{o7b&p+iZ?rQ4n3_v*k zBL4w7z@%a5A6sb{TQDkMVuM0GDamsXi*8IdQV|5~8^CaWq874+Cp7~(bp!-Ke;D&D zdw6*1M#hHypC4vj1bOzi-@G`N3kv850UH~z3%TbjtgI|7Em)3&lIPA0aT)9Rf&jZL z4V`8cS|CvD4>}SsAZ}{-4~mYPSxgk@OO0n0u!EWUBnf=@x?VoQC9VmC^*N*cDb_BD z8g~kqMtzc~+{kGWalMcXL$i10()~DO%}M;wB9T_xPMijgiYZ1j<_*IYSQEqtM8Hxb zm}x^pF(?+M@tpbLw)N#g?@u*HlS#bLV(?=Gk#ou?6=ip*GMjnG=@r#-Zji62ly4N4 zSu!bHiIy<b-%-XNfijnD>4<D`V6n}SsSMpsEtJiSsvltA9O=|qG>S!kJe|?cV2p3o zOu1l0Ie~f8_@=eDM;)-HDP*tGIPsSnxv7vT$6zl<s97=;JcIq!*vHyin)v~bCK>Q( zNdIQ+|KXhlO$;4e{$=kW@&DBcC1CCq)w4$@s`6gS$4Zb7*+L0<7l^*cG1F{k%VC<d ze0wkXYXIR_(Xb>Pdn6eGS5i)PM$Ys<rf0vo6r==^F2h-1&a)ce5IGa4Jjx>_LWChe zR`gyX3T-4t)&^zBdJ$exncv4&ovT^MS27LG29PE5uapYAF|tEw!Cv?XPV&QNEf;4( zd}%UbC){*R!kBI6KXe^C)l|boB?wiG8H>!S3-J@FkYw<9rA`Vmvc|A_#zA&?bIc2O z#vcsVjH7)QpY~nciO>iKE+z`9Z!^qHiBy0xb*5fk?{1)AeMEZZSk_p4kW7$sB^>yD z!gk*X7wdzvw7*0zew@zd1?F>r5lm-x$}=%7WLMJqCK)`cPd7C!Oe9Cc6m_SSqZzq| zJ?+%JYNF=%)!Os%9=B?wmiFE1Z+Nn(79Z>?K=@LC&Pw9{`vdq7^KezRRz@~N_0y}R zscDn#1|_w^CKO85g>7;eAx2VOF138GACJVOhozl;RDTEYy%3&3on4mU&nH-MnH8EK z^jmk{eds>Re&I^{{5%_D_{MbQ%@`_<A8phTH*Aa!HL8Z`J!rHNQ-&|$K~6N`6(guR z*cpsUz=7#Qe*lJK$*w20Zj$3@JQY*z&si*whDobVecNKJOG7G812;s<O1H1p*3|J? zlPu7u#q_h(EFD6tqhKq72-GHnG%wiSn5Ls^!aU30n&XK(N7sBxZdGc6GNTH3SK(BI zXX(&%hH|v+f#SU&1Cl_YT#M>lgix9J(dLM?Ztc0*CnNq2AIOqzhUuozu5wIEwjUoF z#XICm#vRCIglzdw2e%OQ81)l=Z)|)@Tii`G@TCavvY!ky4Of#Ib0jcHfdfPtdM4tp zW9pdAf?h?V&D~~2+jQ%gB9fj|?j<;uQ6y$FCW<5an+eRZ;Aos*4IPwA<wwjn28ssF zJnl3wV|FmG&RBpQWcH@rgR#-Nw1`j7<%NQk<Vn%srXq}U_*|K$Dq^TGHrEMHa-+yM zFt3)mCtBV4XE-As9JXHd51lcJ$`xevHCih%fdZ^99Rz9G%afTFGq$(FDV@hfhC0`0 zMUFbIQB+!|Oj`69zROa2qBrCdP_L3OpdLt$Nmmo_JQB|;Vc%t+Wx{-;zF-E7i9NI8 zEeCBr<V?PB535@4h!XK(@Ip}{PYCROkL?q}V%C3<eEF{}1YZ-|eRGRyNZP%o7!8D2 zj)jXyFV0D@umAByaM&ooFPW)_pf28aSv*4GR{^}|zTQQXPEO8JZ29E%#?$#}KJg=# z_1a<UM}z~!MM3y&_UmgFDwf5dFH(iZi(zE6LaHaM5>a4UU5;TGGvn<^Ui@x$k^CL2 zBi&-~2U6nVA1FD~d@xvcrefH(St*pY6eMnrgU`hkf6NJpRZfDhza2~WOY2La0E@T= z0OM5uKUSga>fm7S^xwWaM9o@RSshh3jh8++N{Cbu(gL-H2=quBMr|Y<8xlyc0WeC{ zZoo=<F$2f9`EGGdaDidYy_CVMJfvY>S;WG<l(!)NiDtXj%Ry@SZA#{u%RA3^b;JC& zW$q-d@5gVvexQ$iL4-u=(eD=hA}G)Mjp33=%G9+U`NUL*m7Fr(7QLm1OJ)}7NRGP0 z=EQvJcOj7s-+vKrgyS&pq9#}kS4TVJHyi5ZyCA_3qpNNskGrsRI%=D_4`(Yj6cbnV z>yD$vaOnncIP$b)N17>ZjGVt-+4|1ns?6uko<^N^91aHBkuHKM&;1lDIMilc$~b5J z?hF`zwe|rla;mN{Fegr7V-a)F%cG+gJ953;E*c$8QdS=eMWb{CqifJ<HE^18p;lhT zo5n|FB@HzxrF4jelZ~D14ltC5*N>u@i#pABqt21dDnok}y0l;5nW<^m=DlraOPKvR zakyA*rz1IIW^q?`dUkYqTW(-)(X_tiL%V+((p(_DK0;Q=CCtRc9^ps_R`B}6f7LBd z8qEb}K-tmE=<`tzu*usgO5I2zfCe=xsz4FenCd7t8@ukC>`(Wl4NtHw3|Hr%bWaiQ za`&R26`{Qb=ONlFxT|6FTF>PJPQfMxL-T1)Q}3ack20E%o$;wA?kg+?mFaV5un+#( zWe1dE=MO}q;d4xIM2}YMQNGxGgMQ#@1ht{r?I(9Bp-Y@a25Wzkm4X5S!Iec6hnYRP zzN=D?uweNzrC>3mYo1ke`Pj?NWnJL@9@BTtWR7uhTM#3MGE;sKeDKpluxgL;Cca@= z-4~jLRFlF#6vf}S?pWi%?i~?^i~FT9gyK_XFlN@h-~gRx(H@S3l*Z~4R|f6Hm)zl0 zx|XQAL{N?7ZNOQ?py^{veeU*~3Ft;)n>?$nw1viGug5ZMeTNQ5+iDM?(cL=6E~%|% zv{6jYojPyL6uH9IoTn$K=Thd`%!#vKY~812VR|Dq6Tcj+*8BTv>=B)gbB2yu-JY5! zX->!^$c`0wuc2&b&IFP2uR|O=iw2z1#0NP2n#=W>vCc4r?8!Oc4SIw;#9izSVB9W5 zF@nAEaMQ~&zkIPcC4P+}f<nJ`G5$gMNMbxu&+JqnPD`+l169g{G>h~L?T{m`?1SDj zhZ>E#J18lJ&whrOq$V|+AcSiju86oP&L9U3&VXNa4t-<jLKQ4k7C!K88t+mTm4UVa z-3NX`w&E0S^V|a8aLz5b^4;v5xq)Mmc@4t^lIL~e=AjUPVN0Xb+{CdALm(U9Nq;5z z$U1;L=dHWlVVvB;{y0iln?Fv*u(0fBkx_l3D;%qQS6hfvc~V>O)+@9<CF|}!Ww-Z+ z>J@<UyLFS3T5pJqRbO#%Z_FhQg54)P(OmTmOzEA#<~Q?2^K6_v_%kgq^1Crn1w8v8 z186O4+`AmFwv8qMnOk32*69m&2E;BF??(OewtmlX`^5Pv4e=Ezz%Q>VxOVOQ^hO}8 zDL6-7ce3fnmkv?=M-yW6<c4jGpc1VH)C1!L&|-Cfh;srfe&VQfq-&xP5jZ|kj@%-R z7<P;UpW(teZK##inMPF(%RE_&vz<~GiU|M2CRD&I(t;SLT5Yd9qE5|#zd$>C0Hz4b z)UF-c*T*R04Rf$JN;pd}r!-{803&@eQ70EQZcWgS3L8i5QOvuyZ)v&&_q1t`ihDBm zvU$3B4SuO(Ec;hKwhnyIJj3#jT-=8%WB3<s(@w$Ms62ieXntuC1tuLdYkr<IiT&>W zZc*Glz9LO4lO4k>R2i4Z0EKRlT!B+$o~_1{>MN26nKk%q8?>_JRh=A-;t-g+Ahm^G zsH?VVGR70NyI9p#w?bi+n4N8OreDBj*h6ak2l%fsrnY~P*cjjtX9mQX|8BScXZZgg zG3GzIOill%!1?c_lFtp?&J7&j4O~wQykNRJa1ps|vAKDf`0S(maPc4Mr6^q9aCc%h z@n`aK@uG{bd@%A_<8n8$^$epJxE^T?Uu-n&hlJ1GaG{MDxFBgl{__2FH>w!;zcbE! zHe?C#-zMm3#iu3c7p7#XWX#OtNA(1y(FuaziWT@Nm>6{T_^D{vIzTP(8_Cn9%7zbB z{+W0Znt{LPg@hyogan|C8<-dbEnX>Pf{1{uI08$OgVX;l0lnAIRHy<-AsPUT{XZn3 zWcm+>_OEa|CUHRyTM#p3F1)i{NVS{}6|F%>L3SHrp0%P>R;IOvs`Lc}mJ_<kBz@&o z!)t-O=N#m*KxWRaS&0}5<M-T``CJ=|v)R}7pLaL|0#^bUkCxyy$~VfRn6St&ID{<V zsIX0o7d^ryj~88oFV3Ho0VxVNPh|Mb$={P|_)<>fOqMH}No>7<Q^Y7^F1PZFv>X{Y zn;L8Q^r(*D6Z24;u|{twZ`@M8^QD!RaRayfNl2oYLS<ww^61ZaFgAJ(u*SLMm-eQr zXD{_pUfXowo~x`?Epi6x!y0L=;kz)wDM@m?WNeh%_=NE!bN&_oRG%V@wuNuSb+un3 z;5wN}pc$|d4FA4u`m4pYVAGBp^=E>z8L-u^0xshpO7c$pQhgWHY%N=zB~3C22;dQO z6FaAL7hmC8B)Qt4h{90MTweK%HNvR{=}Y7;+1S9N!5jH-?OsO8)e)8HdU}!<1G<L{ zY1}0CJhnItgjR0Z2s-bujvj(>-i}WddE{AT&5R7ncuFPBoD9kYN@dNgjPm&Pe5Le^ zbz;R5rH?dIE>~U@g`6kT%-#3Dh4vHSvX#&PN(l=98`0l$D;XJUk$)BU{}W4zQHSzS zRz(NMQZ|c^lCHU=wFD@#*wPXVH34{1sdzJ0DpJOA8EV4XlU3H}UT9#$b=wgO4?|&j z0m<d6Jij=){2cI#W;tq)yF9=8-E04+<Ce|SQ!-M&_qMy+dG^Om2Y}|h7vt;qIf}?K zwOU7c628l#upIY(p`^>aDA;3t)NGM>w#&GvoK)(32kYoDV^iPku_C#+#ye)xSO)LF zF=Y}(2Jgr*4t;;F*@^k<Q`W~jZI)MUaIfeb%PkoBp4mMfIRo<>ebQ~i?n_4ZaUt9z z2u06yXs+1?jm^0#Mvqt>%Prh#&qXo8{R7=;_spMN!+ZL^-myQs=JzDz1dMO-6LA?I z!4vWsAJG$Y86Sa$eaAog4uABW{^&dS(RWhvW9;~4<PienGvP}`=tpTE>XN?hBgcCe z48tGF(jVLx`d7dEqAvKWKlJ_H^cx6yLnzUc5Zx8`QQ^}lQAOnrTq2DyY*EQZ21n+U z$f1)aMvS0=2`96SDwUIYL__i;%lXmOjq$ct>Tje)iW1W4$9GN;E(<iY6?PIaZ7ydP zEihQ$J{&~!hwg7A6wpZ7hYB=^i=SV^R@(C|&s=OD>|feKJ`M)h^YE7jg9NA?UE4WI z!DUNE1;z>DI3`E1PmE%8b%hsy5`G&U44kAZRbv58mGa>kdRJ3j0}iaLF?%N#w!(y| z{5sG{RE-D#YSnC(fw6vv7KE2KU)u1fPTiusTpYBLH}Z(WzI?EU3SikX1|Rx0+O~r5 zhi7OZ_-5&|bCZ5y<wz=(%}Elr4^}dSAM;A>$nj79X32;v+q7NBcdUZ8i7hO3`0N8| z0HNE2qY+klC2HkX9YkwsK}<(J7B_qM_BhioEN*0dh;Dhj&`R`u*m*!($z~+Sl9ZmT zWmT^2!Ru$h_GqT<=zXP>wX$Ii!zqFW?DRBiJW&d!IU#Z^MQ8#(7`~so>lI|VqAti9 zRcQe?cyszD((1~3C@6(uL78%H2k{#Z>yE+P@mh6{o6SoYvIlrVNx!X~kmZWxOm$54 zlQq$5)f}Bz=xA|HDDS-pVSc6HDkYvuiLwr$(?Jon<EJ}xv(E*x7#6(PJ8^G(rI?{m zlr}anFi4-S*2g1gBBq02Ql}dB(`rOGtaGI1Bn=`|$g)4IVHP_sTuaSjeKP%!E^Uf8 zv4w03lPhPV?hJMI1^AvGCYxF--2;nBYqcGt35rSe)^a)_LKzlyD<F5Q*cRq7Y6x#} z;wTRoC)7d)j+Y|uc$1QUmSp_VXlS0qkDj_9YTv?c5@ya~EephfB-^5b>Qt*nM#HOK zW+bRgFNjYf3Rv;tN|IPGe%>8;dg{b4F6{nB9HAkgTjgk|VjdTu7D{Qv9Yg%g&dF?S zONs<v3LLg5RrM%Ryol}EuW;B;Q>dgug<9B^ZlE-s?Qtk5twQq%bx+eA0t_3;+~F@N zQ@|+**f)=cU4RFDT?~WvPU<UFAirde`cCUBSHQ3k1MQnjuQUvct#%&e(nD-D>?o&L z70#_#H&13%DwM|5p~Fh)LT0TyVuF!GSOE>^56PjM+|Va?!_pvvnvx6cPi(eO5}8hS z$|+hze0pzYABg4Hou0O7(}tcFQUZR$q}7kVF#OKZ)SIT?1HCi&%M4NkM%w)$_T^Ws z{R!UQD9`Q`Pj8O94}=@-X_Q*XO)<j}!PuJ|;=<^k8?(l^8|8Bv7lfa|FO5ZPe1SuD z-;Gs;)<_J?I0cblES9Ozsf`ji73aALrgpS&Q``lCKWWcbNp3`RT&Iq>wUx!SwzZMD zt@rH?V@H=c;pb~Yc6buBZdP<@e0z6Od@r*PNkwVR%;ip#>JkPlQeN_}85c8|!!G^l z7ErN^YmV-$QzjNO0d!(J@<q_L#w$+3D@xqZa2sG^KvYH%oL~=>J*V$<Tl2^{Mis=H zBg`xcq2q}^RiEFPXNXw16is@&-dc;^gf~NQhnC^fIsp#5+Q6xjSPn%sF!d!=g+I{B z1*5GO?LZ{kHz2&Wi%DTHpavup8@jbU=5lS`a>!!1+sm3T5LS~4qeV@*mPR+D;M)Rc z*(&tJB0qf<h$iqpZuoGt<ME&mvp9%YAjKK%)Ond$u<0fB308-fPi<H8G8)2G#w+xA zTNc!Dx_(dv7A1E~1$`Ze9R6(%F9jZnAKX$+xbHp{S49;<M!)iUqa&?~l_wbf*0r+x zH;uu5JL6(CZ|<g-oL;|Z^`3kz4ZgTjqxEzTdiiz{E1fh=bs1-N4e@>0%K($v-uq@J ztJw^q^>S+>AED%6;;;Pbndr&8>*01$M~r-y!|@ofW(jQu-jx|7c0KtF8xgiid!pgB zf}4Hi18oF~P<&}nmuHWJv+QapvzeB3?tUigCjWY^&tT|v4Gp}DVIC=1E*1vkm^<DX zGa}26g>vjsyxJ4YqSZ~jP1~Pb==BvCmq<ZDXbbu+0XeKN`h{l+`44xJm-`12!3aO5 z#d+~~8;+d?_@X*oh15wB?YEeBLuu`2Uc)kAu}8IeXk`YQHnn-gM0ZJ!uU=vm?}z{k zeQ}A`fWkpV1!(dmR3t-KGbSsdD}NaaD=y75kHh@RKCrFDDOxnv$`ll>R{@e<Q6Ztz zjbBQ1l96sfmv&uLqAe?#7;9!-GO7SV*5Q$nc19wFSB`i=qPCP<OlDms18YJ&+1TGt zOoUJ}3u6Ul#=zCFyca0lBzpLE=N|;4fG^R3cL)|7hr3q78xPH6!be!MzweX+!8`-c z1r!gqzfYYC!Mp>n2|6CJzdsx59$L*vq^kTv|G=H7(g7Q$I`X<ns#<oZDj`&u<k&1- z9xOMIKqqPh=&^3Z2lWMdMDAR6F_EN(N@O+WkWG3Pu);4m`kAPb)ygCKlTN&)MgTY) zdfSv>MJi`!Qc6P;jHW7}E4x-gRl6XeF*HTWvZQvmIjQ)4;axGS03K5-3R)9lKLs+y z(1Hn=j1x7qz==J%k$LH6I-`Ce1krV9RFz;xENExcYyCVVrpdr~O}y!#b?euF7=euq z=!;e7X!C*reiur=W(y2~R6u0$g>3%XsY-56O*dAEhwdcLtON-}6012sS0}s#8N{~5 zw8NFouUTQfTm<@FTqP>n;xCixlTBec2pQDqO|{3M-S|KcnQ;{s$hI><Fu}VKBl0g` z&H=k*XO!Ho?eR!bJbiQdP@;Ze3;Cf`9gL3?L+s6vkHbxku@e>s$y_^4ahi3zB-X7& zZoFH+%%)|--kX98+S;~pZ7W=HE<Mxm72XXY;>MhI0oP?+;6$X%*wdA8J|+ab3Mg4K zq|Iq;m)NBRX!_Kx9MI~6lbO;q^(;NN%^n;4qPNAE(`KBSj_v00EhW2I(MOh@ZcsZt z=!p}D2k7y-kWtn6YoVhK>=akH%Aed>S#8CE8Edkj51`)7=(r@AFcc0CUhSSBq#T1Y zS%iIX*lhx>ICeJyS#5(eJ?tFrXLzzvS254<q|Z6~R}(y$a?Qdwz<{Ep9e^!cu2J{~ z$b^8i?F4Ysb-XuF2SRp_r})x@+xVw{bfB~M?n3i0yyv%gh=C50TMO<Hc&=~bf)2kN zZH2UC$5Bxllbu_3cK6_c(uO&)lh(WL4bqt0I`Do|){Fc5!ftmx7y+nntj6%co+S<P zfHCqu$XBxlS7SNqqIu#P*2)6B!Lxmv_l9QzWQ#_it35LDe$h7m;(}`DfSIRt`j!i^ z55`*MdtVQPxYU0z>6H#+Wjazh)a<q7m$~U2zpCOwYFTr{n4{MKzn%Lg8mDajV?dDm zh>N<4^MTRziC@P2s*Kpd=QB2FdFBH@Xpin~r}t|xs5$qo2mD9Raor2qMRiFmHiV4b zIm0jDUDy@$dS8v62z7oToZn;TSCO)k@9Q6=PZX9c+lFnkOgr5EbZAOcz;kmn^HT5A zGqnO>C_Ruj((!%ZF=+#yVDA3vj-tMJK^Jg3lzX73-}85cyghM<JR#oR=o7Df$NMs| zb(*G`l)?v|9KCt@1!(z)BlhB?7`a!39==g`he`4-y9PtQI|7zPQuA8DcMEZqEj^sU zJs1njuZ8nd<G=o`OISut=eib<L+=AFe8Bb3%}D>uq5qXQ3mH29_pG{X><o0E0BXpb zs`VtamFhgq`lzSBn_x{~VBu#uhq6hq<KuzW<G1fB#X|Fk4jp@+TxXx2z2Ab<p<aPe z0;miVlQZWgRWjtDF89lu>7r#gE0sOjs84-|Htje#0vUZcbiPB{%|CsWRLf3>RT~T* zrmLp1W#v?IPOBC{R{b&m<2=~C6(6!#!7Iu&mRf(MXxk+8oZA;f6tLgywDlM({)_S3 zCU>v}l;N^tbl+dmf(9IR05jgVZ%}}u2;txUsVtyYXlQQww`!EE9Izl_h<*^`2XrL; ze7!>$eL9GNO!NTS7b&vt3*!kVsJDddP>)VV`>${KlN#UUqOp<DKRdgAdaI_qzxsGX zF!uYwiC%fEKh59OmnrbY$lA=IMt&Z7htx!ol7_5uvb*&7z=u<Cr%M;(lZV=|l{G}5 z!v8k5y~_TK4>UcN*O0etCN>VM4Ig_PPv(n=vP`JQW1^^@|9#n6$hxw?p#PBNH*eEO z-_m6=q1+k0^DPILAK_^b8Ntk}1c$Pq+M&MGDwe7l?|iN$;v>sIOqph>?qJN(Y69^H z5==9}M(9~JQJXv5>;7`0M(6Pu?WZU{G}?j_x=Sjx71w5pvcvF?Y0J+tBaW%s0p11h z%&baPkv0xv)djUw8vw7RGzcgFMu&v_hN)H|5@lDvsSgmX9AN72?~3%_;{DHBlhT$P ziXy6RSzCr&nA+qBvFZ&cY{=oK5ZFRK`+yPj0Orw9Gj3)gw{5BNa^KyIIvQOBxt~9Q z>9#j!L+g{_ET8#x&#Inz-rL*d7Q(lw^?Al%FgVF{MJ@EV^n;_sKvOs*6V+;m?!kT4 z+K$r0&PW`e-ikwX3VRkm@c~`1Dqte@URSV0?XcB^lp0MpvaTa;)h;2flQ*%3cm`f{ zM9+X<W)1DSsNu(zZY#Pdm`vOfTP4DpZt57%68DC_`p~4Um94bRdTGT?)+tuOn7)v2 zyQ9?wD#cxwTsZ9L?_SnlRIg)VVIs-Y&(&Je>|kOse;yTg-Y+6rJDg_vH0SrTTb1p( zOy9~UcOmj7&6X<1XGko&rm9PfVKH1}jK#(n#XQoMm?EgG)^;uhFZTtwr_;-DzBgr; zx^RP0=>KdFW5c^_uQNtHo0!F!YKX`zh>#wu;K9O6V-&Q%lNzHXcPVbC1*}4tnYfu! zs!F_0CY{QmB7nj2?A02!VlD1rh`-?I#y?;Fs{BKHi@k`Wh_C!e0k=?xCE_nG&_$W` zVl){A4H_4*>c}mttm|(ytiv1dD#8=MT9X-O1xa$cqW^fwQjA+z?)_xuRT0y#ua@1| z|E=M0SQ=64;Vz?^kTP_J0n(4RNQBoRp3kdHPgx)7ik(g7o<wgYTE9<%lOs0chypSr zgMDx(S4jk$1gQ7rDx-`d`RJKu56ROJn5?1|iEV41kK`HOO6iZkgVR20l(Gc5h2@b> z+b65awBfFL&I4nn$1lu=c_#2Kd&E*C<~!zV5XQfg!KU>uqg4Sc{sM3j{qL6lucPjt zlpMBmOwfQv0kC;~>=<%rbo9V=>m&Srxp38Cp?R+rB9TEcGY+oo5Qtw2MuFh8w4n%j z93T%qI|ScSF<;MrL;3^<E4-#gMTs~OO`kTf)1$Z^C?}NDX;-1dO0nCua3Y2h_%0hM zB_Rg->Wyb`SdIqYrHxg%+GwPz>sk#y&W(g3im@qWut#j>)cUvuPuvQTtZh1_30SBu z)$Uq&f+FDMPuk_E-mZQ3`Wr_>xm23W4B(6t0pNgtH$pj6cNt4N)4v#@to#;$c{vMV zi-}wSn#fY<%`PW+G;O!s%VI@J0_nQ~5z+7fk+g{ku8GZi8K*y}m{rM_|5tgXeNJ-> zvR6ii?{Blync1(8r)vm*c3hMu55vJhs{k`u(MxW2nd1ga1L-$gQ$1{tlJ1(Kf+DK; zhaLgw@b5s^H5eWXJON}~&Nq5pvA5v9XU;D=xnh6~KTiCxUdOYp>5T;XE~c*|*Y6^e z@}yT4ussY#a+`$K9P2`T@6NLuR0RV2^H0W}WCkKZL6nbyz5Rtdm{pu2?qJhFg1EVp z^0`)>^$dNLS_E~bh%IPagS_apfaw&4;p`Ao6-v9t`QNWsGNF;%$ds|_nmn!bL2HxE zZ{!r{xkcm(jzQxHIk{J(zUJBTNJr`<(M3+oGd<nOg7OAqx%j4DoduM$8b?DPx9FGK zm$V%8@ro$Si<r(<o5=Dw!z|FYt@uPYN~bJZETVAqz47-L;veXDw4XAQ_Nyo+Uu0-u z>N1V_Ul{!0lSRX5UV?e{yCmKZ9HP>KB~kMHB^A&9SH-2sQ&q}ORDOZmq<u19%t-WR z!#{*|Tx))af1M*~Ny-~gYC=JiB{>FWY(a&nZgTsA)AarAG~O^-U`+?8`uzW*^8c*} ze^vQ^!{Pu;{2#qmZs7C)C_8!@xo_DiZ@L=*him>74li%F*0j=#XfeZ7aCGpqRCKD; zHiK7afK=I}Xlf^AV`!0JplP5@ND#!1f?_0#h6N@Redmhsym<eT)U22Q{D3@;Z9tua z9HqR0iG_)k?w^izZY72;296G{h8Pt9C&A2A5Arvho2#&&Tod46V4(ib=Fk5^J5`)a zP5%r3{0sJ}Hl>84j`*Df3iN*XGzRHa6qy!OY<7s02{fy$Mua!o1b0MkkWhEnpS37j ztTtKw4O!i7!vskkO9ib`N%O2oiR*h%LcA#k%=_-e*309?4GYQF=WSgdkW2yY0NZqk zBSYY~8}~!%(-GQm&EzIBrYR#e;>YjtJHkwoOnVaBZ8;K#s^3-zHPXss81X|IHUeBg zeaA)Sqs9*RBJ*+NhfPR7c$hSq_QLL1qs_73om9sZQ@ac~(NY|fH=AwMh25?8JnTp- z|3AXMF}%`kSvTm|>^L3Uwr$(C?R0G0wv&!++jgg8Cmr0m);{;%z548P?~m`9bN-v7 zzA>t5RK4$8H5$@IIz(>tg$8xTYMV02UR>>bChE3x5{p|)1qs-y%}s?_4_hQhX)|yu zP1Q}6<7jZ2ibB7uEYdHtLgcAAx`#~Wrm5gk6-$bjJ0mfTO2uc)tB`git}tW9$*LWf zNLbXS+<!pqd@(r(HK9><b4y-0Bfj7qCx0RH6j+j)o5jYqqYV-f#%y}5;S8*IP@Pw0 z+}z9w8NH?BP)RwE#NZ3MF#>(c(xI-%a!a9?Ix;lub6yzFM#970erK^TSsXn9)K=Y{ znOs2yOpTmZU81riHP5{!@s;N4pm7q7G{Nv^BGqe==@MEhWo4_=<^cl1RV2+yG|v}V z$dI^3tz+A4GCG@p;1`3<DSDG16MJ3%yl+T4D1G)UD9GC<!{FvDJ#k599V)Ph8$LrY zbKDXa1|O_rS@(04Dhum=E7G;xSc|NC_x3fSsEev3&j_I;#wX4k>4!^_{?9s+EtgM6 z-81PX%FLlxg7U>a>=~7vMoZPsfU?fi2j?=zY*PXj9MMT73FNc)geCghZl{<!d6i^n zi1DX_szu-qVVC97uI@%T79_H`jHjJ%XLY}#=6NW-C}Q4_jm%^r>N&TVp|4e#Q-x2L zGHt)h4|(SY2{j7_#13tj%qFPRS*JRD*UPhdI|D;PhI06djOIZVJg5>%+FuxbV-X(@ zTr+U9ht>4V0J4S^7z#PmEYt)LLoxRoGJ-p30yQthEyfl8Dmpu(tPlvJ|MtZ`++U!E z=q5ZKtN%n0M~DllBb=Ro&>$A4c^kR@Ks)S)bPx)`p@GEkqz$n&0}+M0OQbf|J-BkX zndSq_#xF<L<|!+8p47fW#QZnDO#VWXcQr>snwm&2wk)ylARqjxVD^$oZD0q^FIY~7 z3F1JcUbE-Tfz}0NqXO_Q%mX}zOBADSD5KXcZeH_Yb;4mr2Gwc(phGT~z#FO#@^}P| z$Dx(hd*pnz&5)Sc2L!*@rX}_tJo!8H?or$446hA5?<}y3^sTR4?So{%sYf1$w~#_E z;6{@$*53lfTK$<%68lWJOP+tM22-P7qas{S8lmswmS0f0PM<vVd#U&bgX@l*PB$pc zspRfnOWiM**K8%+-%h$5N^nmwgtW|%51Tc~h=OAtJzojr)E4ir(V{hu)TEt1eqf3+ zl|~)Qw&U8IC*^)Z-znuiNb}&iMW$PuzG4d5Pv=cL;`grnNeZ`G!11{R1YbP>zT{6d z;=kO{KkpX_Q?@7!h$AC3Q^$=G3+Nd^^8KNZI2jN?1S%?Cl2XEi>|EOft=66KD_VU< z4ubo=px5$Y^*`c@w5|<4@w|NReyrr=_H=&&`4hQohRB?PU6cEd0COA2yOSg{*J4^f z=JpubpAf^x3;2+u=@#8loI&M^HYq|G1rybvl$*kGz7wdC&VNTN{b@}<r@i|Vjq+|j zBZ-{<oweCT<c(SeeHmRj=9O4gg0s}aZp-+vA@LcdqF9BY5)*F$s^K~d`{o9Ji1r8d zwr+WA*p#CH>D{D>nNOcUz%T+9%D5^st)Y!<a}3M(%h#BbG-B_T+m+@h-<f7dw?$cd zSun*Y<`6}DA?jE~EFtij<*8wh``8PCTM<lJ)kHIG(d8n)0b&SR9Ziqa`n~n+VkaqD zG!TZSwOe-C=3XX?+`9CwJBQJ)_x)n2ZxLz+Fwji`A1pN#;BXUggf*t$*%qWwoyRV? zd6U8gg0Vd71Y{(;#Bn=>h+Y!GnSafXns0jEz^$r5mkEf&*v_RS<#|W9oNm+&%1l}g z#ex;7@Tn44_q8BU#V^07ZPo03y!5CCH~k!`DC+R75^X;jIp2Hw>=vFdvFkf4a@)(9 zsTT0u9XT)8oP9KqnTOweGUzDM;cF3l?Tx)i#A`ns*!kyW>1%=CM<XCK0|B<npWwWI zZ51IqTW80==KcKFv=o!r`oB_AVKWx2XlPbeLo<}jL(p^7>Mvk@A5oE{9JCE>&kpE- z8xo0bU7a`sHLRWK>eI;!2%^Cu(KW+01M!!!=tOUlDn~&s?JUT|gbM+Qu?CO2`jInV zx<TaQJz303lJ4ua_F)-gjneN%3KIPr%8iw;0>ApzDVj{f86V_>G#XE55QkaNtW0Wd zKC&G4hfAjhX=!M%Q)mNb9W6VqH1Ya`Anbp@>~I9>UKD=*fxI$sAQdJ<1_F|&`tME4 ze=Yg%%=90it7uIa?WB=rzEB<Y)pvJF%5S&y`|Wwp5jPTFw38uWKzQjHT6@W=`U5*6 z=ZIyj4HJ%SbZv|>hcjAOV@c=0sq3RjTaM?Lr@DUp?2uV6u~^@DEa|$i@v_U@{Cw$- z-Ll)$lK1m6olZ~x%u44tnM~Kw{eAuNHOw5i=dx&^s%UO1>v9*CY>izhjT*v?i$cWA z5r=z7!h(}&sjp2|(b+WPdnp%%l9?$x`-}t!XX4c^2-(ruq%=XWpeaY|sKiSZB!#Pe zcp`M0@~CyZHlfckd+Ve`@qB602`7O=q<hYH9@>nFqkiQu_wG0_LCRoi)CTcU!=DYp zqlyHn&>EzN4b0R=ZB-`0_gd*8!Bq)MRViyLkmZgyN1dwT&EKtx)T$@jW!pV*JGVtx zIt4~WAy(Q(C)6O<4tG7j+8lxt@DfA|X5e(LiNI~1@1lQYajcA^5p3af&y3V`?}%gl zs&WGlq4%@E#yk1D8|Skn*@Zqy@<#C{$zbj{uA(bvd31-doiag(NWJY`qZs;E@d2bu zhihH32m9JAvt02&!Pj6|$Tc!z;u93v0Sd7!Zt_-&PQ6vDLve&r1-vB8<uKQkaoCkH za2>jaSSYXWaoE8)$hQszY*1|)qXrN=`@34{iv923^JSAMN_}JfdU_gG@Xu?k&sPgw zMO7J!-5wy8UisMzz?bCHDAcZ)F`({MZSO<92tQ(U(cT$f-{Pn7ltyrrMyh+y5c1Vj zbFtumcTD+X#(#8K(#s;=x@CA72QPJ(#I2)|abn<5L07CSLhL)cSaNziRrWzHRC)T* z&tq4dD{_H%P-VX5*I`+PwFt2d%}$->;;;1dErxW<%KU_i(<;0Ow5IMo^^?&4L~lm0 z&Qs$2!ugKG!YZj($Y3e^R`$IwtY^V8O=*MIXf~=<pn48HfbDU@v5i+LQ{VLwf++uE zTbISSYjfS4%ah9z+lNLAt5aGV0#s0oJ&-`_z3Y1goI*6v=|i(;=0@g^MK6(lX^ZU( zmudw8WF<wP=0$7iF}S7bX6)el!rbAe-&k5Aag#~w@+-&}ae*$;w}n19aV%b$SeaTI zT~kxhQ-o5%>6i^ROH<vPJK*sp0#E36LQ0Kp*>$qcmKJwV8{OUQHM*(oX^djUG}TK} z)$QsA<1rCG7MDG{e%*&Sm!00(TGiIxSx8OzbN<5e*?ufJJ4QF!m#(5>UahQAf*|C% z9$gC1|E36L<`nBT=Ao5--u$j(zbef^w4<*FaW1ooi0r4f!kIY0h}M1(W7U*DjIYX4 zh7)BT<|bKU_#^oywnc2@WuM1(vz6guz12Eu!G@HzYShL+(V?(JM2sbE0M>iV(p)>2 z;XrF@j<oN&m3RF)9fNOL!H691X^<8-RE1pqV3Q48^)hF0;b6AGf7uc~&0hY=y*3v6 zU>z5-d_U#8PaS4Qhip(fA?ijv59F7QbZguA(#TEhsIvTH0fu^1H=S(OZ!%W&f_WXb zhD=VPTtu{TLRSu{-|rQhbRj^Hj3^C$RU!dzmQXY=plMW-b`0uRNpDdALvjTNtAM|P zds10}#G|t`Nd98Q-7@T6M20d5_nc@by9@_HhRxz_k8+?{*o4ALItB55M_QZE^g&{( z>xBya((m)yu!TMgC2E=>W_f1;Vdq{vw_OE)A4<3_U&cplnU>cH!HE=8hq*p?s5x2r z;sk4)$%ncKYnC!feaWH?MBagDQoo7oa_8Dx-&AuT?cK#UON9$lovB6m5eKfEl;=~| zsHD=-R4#aS8HaTlUaem>XM)Ky*(N1^@oT4cSZrQfhn-d(>(-&qzJeAX`}}rtpJ9%= z#zwk`a(;s}OmIjv7Rqn}wQC~Hf6sc3vG)Pkq5bFUc}8suEc|F6ZJdwNY34ms@brQM zR47W3;{1&k^p@DuKpyguJTwnKf+oliBUvzBft=)di?jjiE38jSx$~_ypiewknr^Bm z{82PJ;Orc=eylB?FLvq#y(RdA(iz(a1luwmj>;Rmkb>)&&IK}e%Tj!A;{|>#CzsqC zz#f^+c7`~&t5Tu#{$agKbzdPURuno!JA_Ode6{C==9v^jaZmc5DflV-nLlfFZxie* z&Zl_lb)O=*Q;JXS%w=%f5wuBks7v4m^TLg*_6*roJxljf4Z5qW-aEJd=?)Z{Zxn&! zIT6|~g0K2|;H@|9f+5s1cspN@+#5BdKNm@eBID3e<+<@KtUvcaO#cmvjwTrY$Ozgm zCsu=Sm?OS_<b@%)=i6bVVE14wfk$`QFO5BvH<OZv$PQmL->h8uX9)ti8x(0UltXD~ zzu;WeXH0^baZYGb@g!8<F~D>=QqX=0x8GisLR+m3-{Z~AL)@aG$63C2xJ4?Jx;%G8 z5J5mJ8V2`_&p=@Y)}virBA|)U89i|ahrTqe9`2xiU{xiGJ$nSt^nN)l-M@;BWboFR zc9gU(S;ym>hM)ijzhxU#*Oh;+y5}YnX39$q%37g;dHj&!yxg^uSb>4=snS}dnt#j@ z#2**NpBIDf83+7jmXDUeuYgIqWCJ-IP$iQT^p>*Uc^W|<C(G|awV4iN`f!>>c_xy$ ziAsN}3QSbpT2`*uS@ydBFkeH|Woii!h|;rV_#i~e9$o3|vdm3kJqlS0OWtp+Zcudk zda*A#U@p^E=UaHjq3CF4*Ry%4w3TwV@l*jZ$7k2163MmwZIbeEh1Sd5WX<0@e+1w5 zH1z27EVP-Y5BCzf0)lXkg@em$ak`6zV5#TpxcL<~aXe_Dg47I$6mrSdYoZc*LPc!+ z8=Xw_Q7#zzTD3(S))bx&X#HuNzUablJ#e!$QS+DivTqqaCL=ISvM+m3jM;68ov?<9 zC&4JC9G7D`Ul`Ib4-7;T%RwSB4Z{<tjHkcA(CGQsTg(gHP~=ulygAxGej%J=Zk)YU zzyN4tBfypkn9Ca^8^)mgys=5f5ZwAwT^{eN!?=tBtM4wzZeLB=Qmkd${A|Q+JZW(_ z0p;OpS7n<5p;UdUgOuACivU{K_8fz|UML0rV`Z_q#U1!)vGv$;2b|7TUpZrQy>;x@ z_q^ifw&@=NZ(`l`VUb<Ot9B1S@ohN6saSK;S}huK?@fh?lGKnIU<0_yf@}*0gp|d^ zV{V61m=YdM$mv0<+ZIV~m`7Wp9<d7BR!L$}$Q=2qgii~Shi;nTZ_-rp-WDW`T-Cx2 z#mVBf^3zGe!D)C4#(F@XA}F6E*JRRfseOF5`?)}$Md5zXZ)(zS3%j`tH#32J7W;Am zpB3SL@NaS9_~3r)gMM&tVc~vwZ<r{bF4sHsH+24dR{JvneshC8K?pTUi>ZPksMz-) zts|o`=moMf7KX7lVF}!3qsywk8RtStQJxWtxI#%0o*9eTLWhDn@t&`UCV4p&4^;%? zqC8?}N+ITyXKjkPtilUCM?%a8MUPus6So6j+W6^)79%O5Qxs@*z`twA-dTWs)DqKG z7fdx}xXxpp<xxfnvRaXI^N(SOH7(!a9CcO6<nFj;K!=da5g)CNIw`NpI|R&Ag;=Ec zs4YQBwy0Uyn3dI4Uo)e@Dc!WBu{MqpxF-oMm96v}uPA_3ho)ekI<AN5iibw8t;EZ0 z)EMq2pEjl%KCTHV6CzLghC>+3!t#hMJVGaBlINb4hhfd$a{7#b)KkOPOA|vOVJol# zJ1`+;&fS9htnfzx$swku_J}*-mu%iTF|RNQUJ~DmyM!G><%x;6#X%F?1yds`VrGsB z$<C^t&!CT&R40jT)C<`#XVwt2=>*@chof|2m9E4fx$~-5Sr}|)phpnzWxSDd)s@Ir zmBY}uN2-6LjS$i%P6!I?P;dpUhX@01+T}0`Xk~|Ys24{jycAi38RY#2J{R~S9&A5> zeUOAuB8=VN5g$>AAGQ$eiWX+D*da_xBmvO@@yPd^F6bbr`3uAQAiuV0>u=^Lx9kF` z3$THvNuxv_oRSGcc1&VDYCS1v9f+$=JjJ3r@L{d%UgIPmjAVz1lnv_^1I@mN&0UMT zuA&Z;@wYp&VpeIY83o^Wz}L~XdEQU&oOkONunf>*wU^`ASxeE`oS1Pe(ZLGKYh#ms z3p&1=IWG+ED-a6Bs98->>Slp>4dw9g$lV-8)p_LVMU|QY=~-;@Z1{Xv6xc_4(apf^ zAN_H51M_xb=53&~K4e+1wCqz`^m|0~Ex+yao<NUI?px}GYmtm4xou_?5`0pFL~QDp zz?fj_)nj!Y`D{n-v;7e9?hs{0hLoeM!jA+hg>JFUM{*qNcA+lBqCDq6O)R^m7h`9l zpPLSx=y+rI?_hb&=Dzy0LOxvW-|0PfM$d@FRS%ao?BgtrTExiPAZPDZVf4tlgIu8< ziJ9}bzkVCGL;S$K#_l7FmCwGm8-At=;`@5Q2K8wjRr~b=;~D&Vjpz{N1M*q)T1l)- z;#r8nxA7X3p<ClwXIHDYG)BJiT86<l^4f~Z+2jXw<Co}-UOD{yi~bp2AsZVrbBL_{ z@vO=a3$n?Vvn*HT5Q`Oy+uZ2v*w_+(-l#N>Bv%3v41Q00NT_}!Vu+DAEbhpO8=RT} zws`bTqTj;q6AK4fB65xlJVP))Ep&xu>_M~ld9`<_cU&=!8xY8-@ahA7THTIUQ`Vd= z>JDNKlGNg@@JnP@TV|B#@k@MGr^$Fd-8x-jD>Oo2;^W}N!Q%p9zm2rMNGZ4-4A&0I z^x%m0-P<l|{=i<=%-=9iH7Fbli9Tc9EZ(r6S8#L>k%*p3i}iqP6XbLZvKU2*h{v52 z@s)?SF40@?Dw#Ei4360XV<K@bB8J4R{pQ>W{pkfazcc$AT$H8Qvf5FDG`HX~kZEy2 z)jk7+dm+SU{lH=LT_5;~)BB7|{sIo}@(1{)Wbau2ol9#M7@9Ua!*pg+uofi(TjcKB zG*+pbW7ZY$3C*sz-oT3-s2Q65AUw2lR(D{;OWR|3fNvQ415s9AEKA-_=HnRNMyY;) zG3{z;L4?HpE5+kav(?gED|<is>KSw`y`F0ChIe0xU%$bYpQOY;!_th(Q+&Odj-H_} zu(T~fTHW%OYx9@Aur?vUwWI5GijP%5Y9KpU8Mc2jgNn)*;O^!YoGoFTCC8}A)s*q% zR3&|J?+Nww1KP%C>D<YPS-|6xP4po7@(T3(kqqY~7x0%fKp%9!%<2K%s{y^of-|=p zH4n#3wXD`lq&&M>ukj&@eyD-sG_Nj!?@r#JXCnU0rC;+?0QM;(cwh63es77ml~@kD z&KQz@$qG92)0?C?6OB*qHD8lm;7FHb7a8bC<H`I&pKNN6mE3?b-y`f)Mk1=pDnd)B z%?_GV1uL;c1B5Dh<UGCyEB;xLT?|x34|Ld<;2H5qfDH|&w3<kAtZN9ID1w;<r{l<+ z)*}MiK$9_nNspp0P4e|bkyh^e{Z%+UA*ZM&NEBx8D5xlJ(dR6+1bqtj%P#B~i2c)O zG~4Nzqa+qwTz~0s-Xw7_j0M(A;QePoNBiQeam67xtMxBmxfH2eQy3me@@Odw=$VlF zTogibD8yr+d{{^)g7=jm$e(~;z<r=Wju^i}M~9t*u<3Ol4NW){4Xlq@PRg44vfc^# z$Xis<&er;xA_RFjF!DjALv6(2w)vpGa2=0=OS00=o}YFW(;M%D8J|d=?+UIC5N3=; zmPe(|A}3L~m%mX+Gs`_CvZL<>7iB&P#QIigwvCdf0-(EvgNg_-9$0sb>Nh6WOGjyr zU}$%ej(3!rVfTqgk*-GVzoMv%RQ-Tg<uY;)S}3VE%XvmSDxhN(OXl1!T2R()$viWy zej=&~1WZ^^)&>KRWBQA|V=HqwkMo4v-~6f|L=p<@?vsaqt68@T&omqw_-?U!Q0efI z8l6y$_GQ+!daknQ9$QCtPfoF$aLQ^JW{K`H1Di3~U*n0<WBJ6gVX=!aUK$D7B03hv z2?_Gj9+uR1Y)g)H24{69GkRd7_hjF;Mw{Ni`;&>~uA7p4J(HxBt~ykacO*;d#FE?} zqwR@Q-=&^+Kqnc#0WAe(&+hFL((zTP@71U}pq7nl#Ae^>{Rs@8b8<Tn1vZV0YbIfs z)z$kGOcvk%nmjevliEJzj9m)l02as$-(K+cM`CY$EnmXwp8_G#8)$pofYO>Nptkl6 z@cHkEmVXtR{@MBRnU;bF7C;2w?dcld&<_qqlX8Ng66^<)tc)^fDk_!Gp6Un2k&If3 zLToORB-zm`AGvddpchD$Ct8Gp6HJ^XbPr<9FO=8Go>rY;juOuAFvgC|4z5Qba&0() zp}Jpd9eveW%L4sW0*E^uh*^X9)vramLKjx)jWK8lbu~4>v2aNg4qSCOxq7BX2&hhy z#Be<4>gB>4D$Y$rG@E2g#PW4_VvW46WRidd<46JoT?`qaOgg3V6Yg;;=>Az(JVq>y zV*;!@8UV!jlNs=@waXYd8=3#J4h>Kx01OZxDgB1(8jsKe$za(U0PzUSOgelD6)(Ks z)xl*5<t*{zS~o}f@0kV;?Z{uFj1k`Dxb8Azr%zUXLjc|9{p81c<iN3KKeQjrbEimV zR)f9GzC`(+ok=bX-rTLsu0H9#NVF$6b`TQZpFdl#Yy>`%-7Rlg(S`Uvw2Ezkw0nV^ z+*T*D$>C6T6%3_|(Zsf9fF;FLVTJj9v<Mz^#<zl*6&Grdh1V*I;*47q26s2RsgQL= zQ#;hqR{n|9kb+X)pYZzv%|ewtxC@MzQvUGvcfLM<&TJdNJjvBOK{%VyIYSG-CKK5d z&Ui=9>^Ku+m=n8R-Jkt=!kW@qti`a?&^B{p8vAsnOTm)prr1}eMkMo=tg58dCPuE$ zuUB?j68HF%BsRn>kKKRtT2myQ#d!fu$qRti^?xqr{%!PsYrH2b>!@L?pl*Rmm?Dds z6Xl1*N=j85U_n;D&nu!zN-CN2hnbf*%Z~Dc67(4dR`2Ye=v_~->3Pc=4QRHf@b%&! zIp&TLuM+s!o0#N!J#9S!gzh=qK0Z!jdw`-2ej~zm;`WnoLm^*6S3zx}xU21Ui*KWh zfd)K*Ne5K*wnu0~Zq+echi#$W=7)5K&|unHk(;l^8z^)pGoM>N^B<ecsWGoImX90D ziQ-$j6DN)kev0oJ1;~BjMSGSWI-%^A-<_eJCR>0`N($_irff`@B){HjW$CKQlbZZa zim5(ET{`asEePMmot+~^DStP_Q>k5lY7pIsyP)f5epJ>nbz5RW1xaU}?qyn_kIse? zxkh8P)jh2AG%1+u<=yfyTBuP!@v=|K5-{e?U?)crHW<^6p_5E5#qoNoG5WRI*@et1 znaQ+;-?U;XMEQ)|?S64_J;NQI@iq$E&(6AO3r;zny^oK^Jh)b&ZoSpS%sOce?wG3F zv}Ux5V=~*cTM%u+mgcviEJlCxm%ecWY0F}dXQeiWnUreHVwZNh6vxX&V@l}#`p;ze zDOwgtc(N53TMc)JaED@Lnp!QkyM*V_gt6xd*~u}UO7qxADcst<j2M#6@&jbrU#$^p zF4_XxBVe5c2L-*z-HY+V1u-5-JA#rUHUVIp3bQA0HYM%#2FXKATukRYuFp9!KHkMf z@NAgo7F^TJ##1<Q($EJ|bfzI_{39!AOAhc37OV3uDu?`2$2P|i>(~vgv39E)SzR$~ z#*fu8SM*Y6-7zMUrx=NmQ82_`NWV-+jtDfGe;p6cO0Kpg?IfTK`*8D!aVfvnz0Al3 zOE?Fg+|sE`ON?kPzeB2sPd0Vq-8PW`SARGAwSSSb+<2tpyb*<3`i#l&416vq&p4_e z@3^<>utKWMwYPp3a}n3h^;lrFh91+kU(+aL?v*G03z3Y2OQ!oft9}-j|1FgmbPb9S z{00mkVT|wil3vI#N&v5z9W1<vkAfdDq5_d7E^g@WjyZ`aM?XFu*f^779ekmtbCl=k zow*k&E2&-r69+6Nn<Cy?=d@8<OQMI*^Y|FVwIZ7$;M#j?hni~T2T8G)lT6Np@c=SN zcO^_S%3*W6A1jr*K7p@L>o2awo`JHpA0Q8kuHEOZp1Ep%;hq)<zPRf{2Ty0UigXtP z2r-p2b%R(Jm`30B`TR{`mywu<&mb}5`Ehkbg{y_w3c5LSxb9t%DIF5rv-Kh<aLkOd z^sQj)&xmBVQni+LPM{J_s`=)8o`87vj9hTo&LBU5Xx`rBu0y@Bg@wa-31peWzWNFQ zCab;o!!fgmu%Ys<Vf3hv*gJVkJ}=;`FznmZYi!#Gv)K$LI<vR9n87LN!I{0WbfT8+ zRcQ`PXu{PGSUoNTu;1JiVEJ+CO)-=-q|#~iX-#`+zyC37Ju)i9zZDSXr~q#NPwL;l zx%_{|y#I^#_;(WIW#C}J{vzSdV8S8npX|qXprEY(jrSk|#ZQ3mc|#83H+7&LL={j5 zt|R<Eq{l1(QUr?lyANZel;WLY<b4D31TrS(p~EVI((vdvAjPuW#I)3!tK6jI3|MAu z5DgURVkJWdN^BxfB2W}WCQzQ~{{GS4{$6Nfdd4~d3s>?f;DUfN_5flO(64`>LDXQV z<--Ay&HylG<UdFHe-a*x6aO9=Hu5PHKqEC#y-7DNq7Nh96^Skp*Q+Ez_~qchnQPaO zYh&^<;kur=ggE0F_)UJ8sUrcs<+ZmvEBz(c$=3-mW4(3<Ah@kQk`k`VecDHu0!y7K z{xcX#YUXym%DmCi5Do#Z3Y#3meQ>txr})T@p}58iO2{<s4?>JrsTfoUfokeS20Ar~ zvE{bgpmm4huZ!k9X34Ghl@;<xN4r(_7@o0PGlG}8kUzh&P~#pYwP1P{{^WhSkoy#e z_W?-qrbL0R*g?mrMUsDK3#Knq3vaJ{(<#;-qIYu2_1W`ylV*Mz6`jLxO^D$(O1l@1 zM#lLqA0A=klxyh0l2_kf=Z)fuiqJJ2<CQvp;#%nx%cTNWZ!2IJATutU<#_0Xw#>LR z{B^Yj5$%E{c9Vb2aAxjnYGnIwUhZ=FUng&YW^p390V9~)eM%t;)o2ykiUQpQvYl|U za>3)fm^o(GAau=Zqq}Ij*yN^l;cSbQ&v3d|ee{cG+^U<)hM7?b2QPw_C;U=ysl>~t zBJIFir{Wa%?6!Mxl6U3&eO4l#tua;dmFBhc7q`u+E58I4>6WWnx$qMUK)>1r_fX}+ zY<%juue%Wi8>~i*C<xccJiv<T)K(<KtkiU)ObYm!g}}aFP)9rK8UMCm5h5zAw>pA8 zhmk3BGwu*#5OGBm@)Ke+-x4^uS95;jKRZC<RO`;K47gkZj{={EyJv<n#jw(cwor5o zCnr^Kei^`!;2%R4!S`ZDGVv$>UKB-Aa2UoYJ?>68POdO4p5AK=GX6!u`9qm-ocZY2 z2s7?_hvFrQNlKCza|f464mnKGBxwOPvPpPSn=oo5xrgGh#dbjO9}w&go^S+W!0AQ* zACop^J1Z00Ka#cy*#UY)ky@>cdx;6DGC}`#D(Vab0CWJYim*(0XxkzrA%Qdb;J!zl zpnezhnS794xl?#4xc1_vjp@L{%g+OBc0d<R#JX+Owf?|Rt(PNK*_ifA#8x6#06;t_ zfqx+uRmZH+|6UxNLCn&iz?|F#t313{U?p{Ya2<wXlyqBsf<cE?Je?`Ch`}u8{+ogY ztC8Ia8_%Sk*cef{o!ra9!4sIa%u~iZM8KI%!cPVrk(Tf8_}#wbCn3&ulwTWSkZ}SE z(MVFt_$T^xsh0*jph}ooK}M*!eUq>hi{=CZPKJ#3_LALCB&%q5;61*wdcMNm3_^T> zR3<`H7YCjp+uTvA1JbqTkXO!06Pv1$@v2O{_vX75zdC3urkT0dKb%FHiE2U_z{02i zbjE+q(*Cyczh!AIivOjDqpsig5V8+Peg#5Uw5HNH%S<tE%50WVf&fzk8xjc`$@HG- z%a2b9V`f=`KO1Z5xosi^`dW9A<umP6bM-HPG6gq`J_Z{IMt?!Bp+rO`vR29}4TY_g zgBa)Kt391R&}F51yr+sMp176FkkHGWxQOUSZRKhlQmoJFy@6D(Q%UNt5dTqV_lHEu zt)?&9ZBhPqMs8+TM|U#&l_ZVE)lfl(ZAS0Xa;YwjY1>oy*kD#9zTfh!mEqG1+0+=L zvtK2)%PxPtFviEj1Fu=D4nIeRBs-k789Ah=h2t=H+^o=MOHLkFHv4t9Xc*ZskmXvc zJXTqbQA5KH@2ico&Y>}?!kCyLq8p3r*DBVcM^z_Sv)l{TF0Z;DRU6pmV3s5&P%sNS z$OyqYz!_mI(G!ZmHe#6;r6ukIUTY8oCH<nNYnQLHv9d`@Fg(ey-U*`w+{UP7T9QP| zO_H2|IhGRhwz;^z?zee7^|G|)*YJ34Vh%znG3NzJwS`d8Ze8ggw_vZe?YNU8!B;(8 zEQb@hIatT}{EW-pZI33brGQp~cjl)DLmwCRF$0zTSo56Y7_Q>)qZVsiho(5MlFsQK ziCgW(?ZG#&K{8E{gCt<=i$I8ssa*SK3e{`*r`0!MVk|{0d!6BjUYRv1S^V}nxugzP z!@|YD^~7h8r_de(U2L4ZtV?kf&2phPcSIYMpq~CM&OUN3%)*>slWLkTNVkQH+=8J! z(%Si#QbBa9az%Zk=AhjZqj?wjW`|!Ir5!yvz+=b8^claOdy&ogzhZtorG3WqR>C-g zHG{W@KQhl^pIfcJ&%@8#>hB)lZ|g(oO-!4qd!b96Yl$Gk$X;M}FzRjj!1p-D$p7lq zWxXOwXpkd)$NuLP&~xf~qzaG^+yb8eoDclH&;OYZxWoc@9rCC_Cu!vx0u!!tHLR~d z)s&VbsHhjUu831L4(}eV=zz{1nhs39OyodsmL2%<OFJKsJI3nin!U|E)Ig>@SfvYX z<k@)8Pin-5$t1tyx(I*_l-DF3H5<!>BLg2&mK~`&@}`h(dDst$lEwpkPVtBY5-K{h z=5Nv;Ni7%#i~hc(#^+c4Nrj3}?;)CwB+xC8Uxf6;t{9{P!)f!DER}z|9t?Q=Apuu) zYY>44aGrm$Iw%24{`cFyl8FuAr-hNcqlvMFk%9A{{Eolwy#OxDksYG^wb}QO;BZmn zK5qZvK@1%vl7QB$N$q-L@{)zUzX=||-sA__P#NUlUwM9Xy-!;>?eOXD0NvNC2_exS zY~Z<apCePAted+Dkh{uVK^0ee3<e$ZV|UA#0dLep8~$7@Y}?Ck2xmp<7jVmqimb+W zh?9M*S0T`&TWxKm9&CKm=kOptCj&74Lxm>d;geA$hsqbj>~EQjn<9L{mPPLtL%a(c zbDdRtC&YO;THebw%fQFW5M!1}>EMD?O>c}$NI!Jwk7ki#RyZLz9jsUP5y8@nV5NsO z6DVsVJRQ%(Ny?A5VNNwzgDT8P>`YVO7E{c%R0)WDjnbEUP&QsJ@YBfFdyoArROYJR z8eX9Oxv4f%2J}k-7DfU%PxAktmH*9!`Y2k+DG8wR2t6_SE03$nqtC4<mc#6W6v(6J zsuJ^ySKSO)am9&^Q(5S}sQAtbZwRCK`SXptA1i#3ItXo>NOv;3%xVJ+X#IrJhu2aV zyy4FbMS|7W%@pI*31jrEno2~>5k(qqq(^Voo8NW9r3t+eB%^a_C@5T_Z{XB`G2jV; z3po9doYvM_WBS1g7DO?dSk2C|;<)KksjbG#3f$1*w!AV~WojV|DI9@TYTV&EgaoOo zQmyN%k!#jq%+=CCjmYLGwp^Y}p*3xAtg|PMwl#Fv?a!x0K@rfMbx~IR>L8%<R3(@` zsvioXq&6yaWJ*_ahbi%hNzl5`o(gG~((GsMJ3tk)NbBxP<OlCjTL~2eyD;fBSf{n- zQrY4}POnc)*X$TVs~Ef`*`=wB-EzrVUl~)LptD(1k)YG0-RxU|<0iWzu{jvT3cyxk zBw&odg)_5~z!H-vrX4wL*r`|J<CIm<dXdm?zC4E`Ad~7!ZT3gSY|Gy_4cctZX~^!= zm_qs_;bcekqQ;V|F_Ea0-KE5kK}Ttm+9)PtWm;T-k;kHkLN9<<C!!oBeVHFt@u`t? zef$QUx~ukP$M%`KW&3gGp_FzAIl|%Z8>NpZlr?E!sxv7{?@1wNui#Es@_27>d81@b zmM(*IRe(@pnu(~_iJ4mv?P<;i5{Kv4K9n1R;CU@nzE)4#z7FGwB#e*bD_N<Zr8^6u zsJHj~J{9l2*H`mH9ipNqo3nQ)zHQ!hAKUvv2e#hk-CI_Tth*<hPtrG#H@bu70|Xy4 zFSZ!j!7mXvnnj&!oBy<cRrE$cLMTa0an@HAn#ZP^$&p*jjrS9D?@313a1Oj(32qeJ z)3D3TK@W6g`oK4O1cS}~-D%@j^V?IWT<0gmKR5d!0PtE2*yJC82LM+4f4h`_`ca>m zzxZ*85Z9kc7Hh>u&Zp>0Lq7ht0@*<z`M)c^SFM8oIva2~1@<g6=Yb5EHQ?3vWum{D zxdZ#w&)v)1OU*B?zT};{UU6>8u9n{9ZE3R9nt{^Nu{uRb<S3gdNGvqIj`zqWn8uBj zc%z{rt&X5yWjT={12|g9tbVnRX?3TqWks}uBs3h2K}T1Xbg>Plx%?Py7#;XyMDA(M zxZbH^klp`WZ9-MfCL6$kCIXK4e_O4Gt+RpA|Lj2(CL}=_P<bqDO6hET3@M;#lg<k6 zfFr&cs)@kRTr!O{mqe8tGlKC=B=7eBCD>?89?{YinU#6S?U?xYIMh@9+Cc6W5Nn84 zsJaRHPI=8WsSxkq_c;a^o`m7~+e#U>3#DO`aboow<>TQcylmm~L?NmjBhAq=<P?%( zd$aZeY)bQwo1tGq@L)+|VSkTBwrH!9yoMAZZz`r%rV$JMwj0!!ea>9TlEYNDt%|jv z*;OP6D>9?{E@An_CAp`6?+sHeflrGun<4iW3!0n}hwjSqSl`@T4#SBD`l^5dYQnx@ zb6qK%L<U@Jv`x=G_M*G!)RJJJw;EpCqy~L@yH|HBD4!XHpfO1yT_V%=uyem>(&&M# zKD{2sIA8#4S*<u3$F?dZ8FyK2!uu{dYV!^JpY{)(t0w+Sy5|mH|34M!l>VFj|IN3$ z#P8T5D*%Sk2AHhTZWz`VE0*1sE`edS-qb{Y#j+8{vI!)xi253O#NX0atTD}cQ+*GP zEaUCZt9+0}g9UPtV{Ga={nnkG-qrQ{0fHZ9gq2lc)>JRk5Q_vG9G;qc<s%pl!UR`^ zTDiHl*dc8gsgL^sRIiKRy!}LNU$kk25Tlvzp|+@0_KYX+#+ETI=)4VoG<NPsH!NS| zM;g-$gntYvYl-5+AbWz6;P}NLhm=e^<^6XggOO^wfTuN-z^!cId@{ag&5p%)Jn}t? zoes#O-lw31D?8&nO)TfS;3`%Q2)X)!?5gpu=nx^yvxL;3ej?2yI(Xea7kM!uF&Pja zm%2#qd{Ph=_zlptSoJ%DoaEHXY4>dkKQD(==ZDpj*6x%(fBW;Ana=Kz-`yUV>G8^+ zUyQ2Z^G{vzNaXkMJE7h&zIEZZ$URp_e8KOvW<JTw#X)LWTX$fMMy+b){ZUp+FcxZu zH8qbDuF@M44(p}+8%y5!TN|`BL!Q@OHLd?j7TII*4n6IO_|YWh0FyeC^`Ui)+34GI zt>JL<hV|1b+4cD!MS4Re6X(Ag6cT{9PW`8U`EPIh4+kU91r3l8&U*OTqhGGR8qRtQ z<Qk|NDA?=kqd|<EbKQW{nei7dZ6Agl5-D<v!qnB&4S!|>w-=`i=mIDkNT>f>ho(tk z_!>tz$^fO6tYSFS!q1TE656PvIQ)S!Vr`wlGs6}#*a_PBhJ}99`|lIcNZ~LoxY<r- z#ur3T2ady}W6D*nFX433X>U8Hg{1c|K4}d+AsYh{QLjopW_;r$X7k?=DZ48^c$Tp8 zLpXQqZ-(>uXV`pd^B(???@B)${XhcPU=#5CNmf&KG%)%zU911=#v9`IgV|zUP)q-t zAgpz8zK1^{agcrlkigI-v6wv?&LJ^c?NHF*-%xp{G7NG>h)*|Ozt6Rknc61=Ae8f0 zbE8wkL&J@s7=NdNrV3fG^@BpMfap6yk^q4sW}PKDhV=9(r<(hD!G&n%;`#L65B7xi zahWtlZL__}(I8s%qRMiceFwqgmX>bXuCg;S7dRdaN_?=ljsjLF9ZD@cmdi$E-bM?? zRG2j}h?w5(aWpA$ee-(yR8E-M0}hg8{yIUiiYoEMJ_1c{7K9PK*}c&%4V`UVd(;-s zH}IQrD895Mi-_g@KD`3q+7yxxLshR|45`gMc)uEKKf3A6Wk374m#a%gcK=BG$041} zHUKV!29TivWTE~MwEi~czk3d43poJ!mM7MBfl(d9yt&ClDUU|VVIVl70kul7Zyqt4 z!E_zIs0f`g8~L5h_bw7&xd~7V1AS8%zAG`2=p*fV+Pa(8+4i8jJGq+K0V;{VBM92y z)gHj5o6@l`C2^HAd@A<X?GwUBoum+#_!JKW)XUZTP{3dqb(6THpi@lZRO<*2R3tnp zWrn|-;c<VxPJ4)mukJxX!~`~z_~8t!#+fO1f>EMpdJA%PE6V!r>O}A(d8`JyRq4ob zE#oWX;PT_W5Rb-OWye@_e~v=a@&1Oi);b*~$VaoIN(wE8sV<#zSP-qm=rvg)cSlIG zwVT`EKF-hxyBlL>scXZ}s5NW7i_MzUz82kbY!*f%GB7kNzX`^PC7pn7^*8MUQcf|^ z3Uv$IU>=jD>i2dHX4P>=b-(S!NYU5XGR*}>jUmJk6={7%kuL^l@AK07G9n-jXbgj3 zffqLDzqq(UD4fi`G|6mLDMT;y3)QMr5mg$38c`NND(UoxaEwXOZ>Q2cVx?;RT0Mkg z@C;y}-7ZV(Z;Als=+BdeIa8@LB$X1)@6P15;-8wat5Ph)Dz&_5Gn6UceC-QRpn;Me zrag03Xg^Lr&TvclwCAty?@al;;~e9%h&JHuLELGF!BrHj;VjCz*Dd$IfY9`<I|^RR zaSfV-e8IiH92{gARIB+?v+!!IY_dh0=~p<EOR!&Z)$$T9&b$lTign69(Fp=ko!e=< zj#p5KVPzurGdPR&1~+D=l)@JKycoA9>CCzm{N)6u%|7HBfqi`jai948K78V3+SNDc zjhrXfG?H%urR}s?nB8+SfDo<(JPXc!+L49bB9wiHo-=((NO{z3sUqGCj>F^ZYm(Z? zwPiOrCkkBI&g=tHgzFKCc1BOQ3)^g=#gt2}_LIXF|E^Rfbm1E$i3iaXyb>$8Ge^wq z5x3y1OHk#-%KmX0UI~S;-FocN@*kD8k33<BLcn3z1U!E-a{fLP|8%Y<(|vzsZ{WLr zliJPjbLFRCX9WneG-Zj1%FcQ=h$67dDxNLye_eww&;@4=p3`$<4RUIKgYpN}^M6Bx zj)DYU$ymy-PODQVZCFl@pv!9U@K$6zurcfPbRm8Arn>(cGGbN9xQ*tT?yIfHoMEM^ zK*1%E_KAB2Y+xv%J;oXPWHFXbI_c{{$JSsF%WppkJ9!c#WzX<M+LKj=&Kltp?w`4X zo8EKYU)tv;fbJv4e>(L4MIP}<u(F$%#~Aqx)siYVI$%XYyKd<xec(;za2u0OL1eMj zD7b>=8K9LHxA^+b*?rS2+98a>=Z`=Bj5FRT-+=gW;X&JTr~P`j0+<VkwW?a@-w-8< zd{;)<8dxb<L*jtTModi+Cy!nLRSs27r9K=Xc*7RVY<!ArE73}`2QSp$AY<DBo4y?H zV13FnaCzocW3;wK>ajw-;kbfXpn2g>(85E{A=GZN_SUvy=VZ2H{xq6E@4+vT;CPZu z7DZBRvT8dsC$s(7{@QKi{5;J7#tbHPd_~O$sr(3@v#>Wq?I0d~kQGuUDuM?FUN%Zd zwpSD3)mpm`tV+VId;=Ma3B6!q=MfsZsW3N~5l2S3e52eS5+P#^r6?expih(x-Hb~) zXTXlnXqz!Si&kSey3`;_`y<%Sw;dHrI(9?n>B8N=gE=RD1y4rX!{!I8)$ym|HcGqP z7-+0%CPG1Vz(<0hj^wVW9`zUoe47npmAQfLbA&$cRQdJS3!-g@8R*olJ_|Jt8`GmT z%m)T>A&0ZIf&<J4+&oFWBM@`6`_NTpi>z&nr=mz_O+n*xsU^AIv-D9lVZOO|bdicU zlrTcp542C>i#Qo#m0x;@4@i-I{#b{;!tJzC4)`~p@|Yk%jEdrlXcWq)6GpB6^IzHo z#2qw_n2>h}x_AR{dJ`vjQSm8qYpxwG=^SDhgHqx|(_f8SF-jE1H!%k-GRhdGnl_(3 z)-TVBw&p30WqQYoBp{iMOu;N|;;B<lc>*W?WEh_naU^F0BDV)%{}KGL_iQYjjOYZE zltmp4Y)pt5{za<yQPh#b2GjzK3|TeQs^==Amy1}(UjwX!y)BT4l@aG336S&c63^qL zS0_WV!}Iwn5u$g$-?#Bq+)ry>L~_<WO~amSI$dT1s!EUWy}&IxhxN+--&bf;>i6}R zM9}T5$vM=W>iXiCc*-k7VXfe5q?5kno5!~I@t?`sFL!dwJ@b3(lQZ{FEue_HhTSRv z6q7Jn-@dYQ(S%s@z=I8V3sK&fFq=mnCj203Psf!)8$R$vwJL9iHR+i<S>fI_LJ70V zm$pv^;a&659Jd)REFzjVk@S=2sG~-}8^?pT$5rO;93UOoG-^XV+2g6eYmqMz&3(|W zX7KOpke4KW2(zML9(YZho)+X~CNvm*Ue^8T@te7`hW_ahGvzJ&w<=Lhd*6zyo-^#! z%2Iz*QOZx}h7UHa1*l@YVa+^2xwOz`)g~RqoB$oAdyll@JDdyFpVoGpTiA75UAbwm z@s7t7$K;^ELu%^Jp?n0+A&w4qfs=H`d{<_qY1_Hqo^sWS^uXAOAFzJnAU&n24=H;g z*;Qi^WG}*f{E?YSHn+gm1KukPAemtMf4*B8kG~k#N+#AOfNP?i?LYl#wDOkXf;{4f zEQJjAcmCpUAYk?UFiAj^gd(VvkeYGzutWzc>v-$*HuDmSNnUn7P<EZmm;+JM*Fe01 z2!)pt2G8*Y>0@i>Ia}|pJv<zIzCK(a^Z_oI2KS+}F~FEV7%=*A2Z>?F%tieW2LxkA z!-xpFMTZzkjc_CkG9d-g#*5TTh&PkziS~endMSRoS|{X_6=KS+DZ+58QB|OAO;<*) zRijB&UZV<;15}hrE>At6(^ufOH1xxUYr`b0nVuI+1DKjjoxj^HQgYbZShO)}B>7Zp zAN))(MfC_EK$<zX_`S}x<Xed?l6>Vfpzwowy0LTeF2)vXqW|zHsnK+5{0>d$(1If% z6Y&PRoxU;;6bT9eZIXb*K(~)bzB;>KfCeQm!-ZN<qvGPyQR?uH-rc~Kzt4y}zOGCk z$|9dzr7j8$Y6i8+P{!DMdRK~;+?`-iWm0mKUYf<2pvBj|COXQNYZI|f2hJ^t<-2iv z)f(#$%yn59zw`|vvygbdIG2n{3R?2WcZ4=r#dxmF3?;+UNU~|TK>|BEVe8WAr6itj zRnP?KERsk!{mNU)Y~e<sX~&wuARwB}<8T@G?mqKo5b=_4CKWRw`|a4OeX{~brpy~u z95$*IC3`M&NPL;KvKnU~*Yyw3yLm>-G+$BhRwnHa5@f>%DrU#Q6&y55H~MqjoiqZb zbcvfcujvi^Ki=sfGq&s4kBPYm@bJ5IS|vQ$eBcsjsc%mSR!>*eo_Q08?IV|gB;0d& zPI(?bf%tULd#BSPOCIR1{lxC32|x_SMC><3MuX4yGhl*~Qld*R{RVTnU&Hd5YF5Tr zFmL2?TU)xH8s&QY5<(+el%55?SX>aa>b4IQV2JXOme<3MsWtu1pk={-?Mx|XrOU`0 zb(KEAyZ)mN)FmO<BLNW7I0T%6KeLB_c)0)aZ^}AK3;d`&Qd-DDKw3u=2*PiYQUrvQ z@FJ)ntA;R^RO+*#vzPi=%mxYHP76OrQ(cFr*?BoX$VWQh$jO_Ty1cF~+n#cGI@a*{ zdc48t1K6Nx4Yd1%0^tF1R4PpwaR3)gL7D<%PzUn~b#tUC2m-o2FLDgifDzdg?S4N$ zii3eS;aYvTGtfyr&R|qMsgBr4Lq8WXF*(i%gWQ|kBkOD16ji_xr^f_B>i`cp%gL<y zYRQ#TE<sDY7PSc`28j!H%>hISN>%0~UM%9%6>Roe@n)iRIAKbO`Lbh`ehfkN(N6l6 z%ob}lZWo4oN@L=fQpLqjv=!d-vtM^ZillARh%B3wW~WnH@OoR7Hcqw1wj0bS)#)h% zv$ZzwT5`mcB5pI4*CtZ_9p#%1X3Nh(y%ntiXdz>DR>^i(7pE)}wWnfbzifmN!{snT zJ|zItN5_3lIX6G>^Y}aJMbbOz!O$wzi5y@rzicL6OAk49>bI`utP_JOqbexgAUDl4 z5-3+?Cigz@hV^3?%|te{^mhuTFTyZ{XjQhs6JT;iNuXtp!d%7BE5QocWHJtp;ab=j z8vpFAx>(n4YAZK{sl`MVTms$NA-j1<9!Tm|g4e{EtV^-mC<ANFdq3ed9;gtT0x>Lt z(WEh8B3pj;QdHr4_@-6t>FUn^HI)>^!FHdPL}>ijH!l*c-5`i(b7xE=But~4k+}JQ zqFHAp-!a{YOK-zhtV;{-AgSJfL&fcLMvcXjnvd8Uc}_CP8xOTQR+ypW$kC9r0BS?y zrWMovM&U>nsUtcHmJx|zTa)!ht?a)2NNbO+*oJh)AsO$x)IFTrtUDNyJ~L5)LPRZY zWbHz3xEB8-`jmH3YI)-D(V{wNRd|eJMZl;f%A6xgy<>ZT?6N;Iip&zh%wUM2(A;1; zXOc3C4oJoFTz15PS61<_(--Mv4CaQyxUubmGm3ltD2$@=6Lx1$0;c;%8Urk|xT2-F z5i(DlLT1I2ZAVbEJEM5v&X_^AEUKb0KKxgg`|z?)VdiTtOT)S>48r-Zsw0Ii+HaY1 zA?MUQB?uDH9Q(InogT*Z{vfc5rd7oXSOd(YqbQcTq&+azJAYJ5T$7xjm;w3i9024& z{GVcx<X;g8kZj1<8Jk%D>nH}R>?onAVem+?t|5ZV^DoNJh7|`PLgp0&CJPc{!S!Jc z!}GE?O3)f-Pt`Q8ed~06lj2nJxe0JxXFQYsi86i9_tWarzvaaCS%H3W?0jppW5;d! zW!mlO65p@qH(W0}G=VU~c8qQji}V);%s>PstQzNU{*_oYU<|l|h)RyWJYm>aw%`mX zf@CFuX*MG?-e`jth{xB>As%orSd7rhBP}{$C%5fK8M5uxnI+^MAvQ}3cSFe<U;$bo zCapiv?nz|BF+HTyqI8g;rw`$zP_dd5>{ag*#*%fr6g3=z)c2j3>=tzlpu_|S<NZqP zPBVYL!VGB2MZy`h{fyn`KHY7%XHprcBFC^bEtbjVm?$<=X2`^TahDM|5l|eqRj;C3 zCv+kf>x-JuK&x--eB{Hac49f^z1{pJ(}apdf98>2o8A8rRKrzZY8Qt7ac_NUDr9VP zl7Fenq;d>pnaO^cF~L2<jJYUDyaj`H5u${yA;e1Ls3+QJhPTlw4M`NjWso)C0rp)C zlB304hwUW$K{UErW0N}aq~QR%-*I3t+H=z~tz=Ty*oTHq6hmXvq%v0i1Xpawa(&A_ zbp?GjQ}Uf}wF}*4sFJhq!d>HW07(_&iCB8^pgH^aH2?_A0ik;j%d}npEB4V@0fnsi z<&C}xIMO{S5DbSlNlb_~#?y_zV`V``L{HiJt%3%d3@5HzW!7TLDy|uoE{g3^&7{R> zXg%>n&n$Hhp=9)f^Hf>t!icx(tWN`rccvz*Bj0vvTs2pVRYc8zcx|zxof%xI@3rb+ z>u*^vuMP|?#7x^c@-e{}35sz~OXEiDTR4jZOxIU}bnRQHF43SI^oh;iGe?t6_TdnU zsL<25ft#W@8!vnzyfL{>DF+-&!@v0*AtV)Fz-$WfXJ7ETm%`dXKW!b8r1%*51^7mI z@$|lx{V%@WF-VgrOcU)c+qS;4ZQHhOn_YHQmu=g&ZQHIcn_F}5%-xxdjeFw!%E-uw z6PfYmiw6-9{`uV9)1I}TLCW-hpx<j5bdgj!Bw^jL-Z*rHz4<P=>ZN)?<KL40&FvtP zM|A}k>x)L0W&ho^Ec5}-)7fd{E56$EUflWSA!2x>;WS>9>bZN%;WIjaBAj98WY;Ym zWUm9~=!nAe7KjtdgmseE2O@3_Cz0DgX`prJDjUhg<GW56k@?%6te9OLV5f<@A@rO& zqUT-~|5a1^cKr8C>J12~G*uYA`tKX1PKT&nv4nHhAse|v$Xp6Vxx~BWPDn|C*Q_G= z;vVq1oCcDT5?^C2$s?41>GzbEbG2x@tG(&7`~mYj*yi!Gd5lk{892JRdWh$hyjJq~ z^<AJdeB>q`{L4F-M`dpBCE@bQB6n|xbt&H~(|WU<^DE+rLGn7xR6RHTbzo?<YmWUR zF!Lje@=jbdA{GSq@e7TOc2Tt4i}B$C_9ev#iRkk{2nI>nhF`x~+-S`y2Nb-=E2j*( z1K?;c`V;zpR@QHkBs0Q488FyS<oW-NI`Rg#{}pwTl(ej{1W>+)G1OLUs?wR!k(Cy- zoeONQQ!t>y5hN9`<rVK*&k3-Xbu>oQzXiW#@>I-o|HE98lBWQTQZkR)EA>9h>6okK zKOiG+zdSNa!;GZ*nxXKUl?VSS*A^IJ!V4A_2CTyF=Pf=LuBzGR3MOP@!KoC+K?<fA zh(XmuIl}nvIZPwa>141Sixq6NWG3HMi|YFm+8c5tyARy3@))Hsggj7m$k?KrT7QIa z8Cq95X0QbvaRMr+S_irWkK-XCQ3enwG~j9;)?KcaCfjAgG+n%O19P+#!=shhtCne{ zLpMAma`$-eU@GpcQ+*6F+jJAW08YD4L14hK82L^rqopHQs<o1tMkIE~PAV`YGP{cw zYn^3#klB{*Atx|aOlr#5*;X5jkg#+&ihWeDH4f5oB9sYUiUpzo8L`#uxx+`@33IKj z5QYT4B_^i}6m7|gkf3&L=?Hys={Ig#yMQE_5o;N(mirkB@mTW`vWRApG97o@P%pz? zd-kpcR*GYv&vaA8R59a+_BCr-92_CmPdy>Hme$rr_nre!<t0&0rVd>{>EJW=6PQKp z@nC`P3Ve~4EeG6v8e=qnn6%*ONJ){1Z2nALl!6>pBX7e-3M-NoiFXh_AAS*h|Ff1G zo#<NTpq!WqH8En4Zo#=8{%}yEJi^6G_@JV6Tq1Ai=*(+nN1@H6RfITrPg+;Iu+tNU z888W4$}tRwN&>-3NbCJy8$o0is7ma^w9|E=j87DX3En>9|L1IofVV|p{6}K3@yAq< z;Q#yg**lupJK7ojNLJc8(uw_)*fs|L+2=`8^U>E*LH*uhwcveQw#BsuksJftSZ~xZ zAgI{l7gK8<Urug<VU_og(p}+C4<ZS6g_G~2ON9vQEhgF*6ZuWiyf%C&6bFYO@*5Nc z^f&0w0udP6@wf)qEUYMgjkd9!d`-8VWP9;mdF}eO>_F<5rC*GUwf2X?X;U0d2v#HA zp%SV=w~3B63A#e90S+q!yN~-;K2w9KKGgqQ7(c=Cl^ZYnUj(N%*g>@k-0Z}!wS2z7 zbzh7Sbd&knq10Wc?1Q&Tj85Tg5?$g$wJik_V%psk5!K>*&|i)at=S=pc8-p>YO(GR z*LL}C#`y4lV7NiFDSd4p4Q=Uu494c{<MH{1cm;Eu_xaLYC7gX4t^gB#I;HWD4}S`p z_B{0e9pFA3s_A@b(#J<zC9Z!d{kt=I)$_Q|K!^9d4;lB7g)SG7CkOf36}#_uvv1MI zbI^y+<F49=y5a>J9N}Vic5)8Oz|-B7$CMB;+)^!n<0@t(n$cEW^d2v2DI<CPZ%HX} z9EN1frR2>}RMX&=lP5d82&+F_eG<YfKis{Ya6Kc6rE!>8v<Gob+>}TpI$L;NyQp7! z-<o*aA`f*uo<it)3yDc}4W?@4bjz^N(NBj*A@E&w4I42_8qhDwnI+Crc@&=w^$cSV z%%?^q>c(s<jIwAN?8qZJ73ZJ)RVZsTnw24owP)^@XbR|mOYTn1#>&n0=six&E_Ntl z=8YRqz4$PDh<!g{qB)f$F=U=+75j3yk58I&XLjoBFFwD8PSCmNO^f@nU7bgs3Ww0q z>y9zAzCgxzIeW;!Knrgqqj6JF;o=zAWNC7T*q$XbOp1}$VDfK(S#YSjjY-8L?QGR- zEz*jf41e8a&ut&3@a6{5_{C@TuPvj7)H7snzi1PTYH*z6UnWAJiU$ueb;}9`PYeHG zy-4LbW5Eh?^fN}8xoDmRr<+Vm_)ETnC3ttrslt+yXn!K3Ci4~p?XU-a)ZP5U%RBq5 zKoy0gGOq>-8aozmvJ8=;Y}_L<<6I7&TMEk(6Z|Fz$|d>eodz16AC}tV@n*FS@_8Ux zRtJk6sR3?yu`}tLqJa?H^uU^|CZ*WQY@idfH;$R*Y_K&Vl4wat7=q9!7-0zn2WpAM z>98tnhJAWJA`?eK2+TZI_P{;X8$<41!b@UEq4m3hx3mzH1^idx-i&)+AUewjXo@8} z{E6iYmG0fH39KKof6oDG@T(HY-;jT;{6hHCDiG3`c>$by0~If!{hj@he0en;8@YAg zgI3gGRLt6>s?WPFunZ5LHz6T@dou9b^EY-5LmPtIeHkEhCK}0bwahjokBQSvUN`u# z->5I&%$-s>R6n};=Eucz!a`PFQhuwoR<r%Jc(G)R0=hOq-O_L%BPvU|<Zzbd80Z%4 zLQk79&@9dl#oFUl1_hIni6gd*0>@spVshZb3LLSBGaw6dRSrB0DU1PWcs#N?x^t*v zf&*vy_6>jWj*N8Rq%=yP^kz?IFmA&pCk$cQ>Iy8zYa~6)dy1J^q?Am`wUru{aDoG| zu>xF+=!yESl=InIm!O&mw#q5PQaMdfO=Gvj-;*0KIHNpy(h5;&7z$Fr71SAd^=M`z z#&9H}#?O$J%WYIyaSoJ$iYaJ_hT=6?c={=sjj9%{)W!4x5Qm=pdZbuZ=Hbte^OOy~ z^>`e#^iv*r7swO^fSMxaY3T8H6GOeaEq#{+ZqvHJYn&oU>Jq9&j`m>=JMxuF<$@iz zrKi{~@WZ%#GtYLUWHI!aQ5*}iWGIVotEg53Q5qlPWeJLCi@6nvhJsJ(X5=-RPbAlP zr;CEyZfEf49E7wi;IpVXtH;L}<p3TgCVE8ulue|AOkSR3+EWIOo(5zOz(Q35O<LT^ zAXhic=X|{6nE#>c{g~6?JIn#<yy7Y_ms69$+cWIH$IOzF{o^_9r7F|wx|~v-SJnmQ z1=15|t7>QGj7MwBBaVOG8cB%Y&78w$*2H)*fceB}uRO;$<drTlC}{|Dkk>MMM!u%w zUI6Z2rj$e-C+;CUwsqq7d=A_Cktx=1XD{vnytSLjxX)!A7q3mjSOaYII<cQijvRO( zLm?;tp2+X!0tnlf=)5iYynRFzND8!ls4~RX;6#YqpmWh(*rnKBbf{L*UHGM#T<5TQ zD6<6GKvB&pA2@&bB=Uj0)X3n?Ylvwy2h~6TL>^qz;IaY7ImKADxz>D?;W`iw8dgX% zzDb@>YLf-qxM(h932UU|muakxdSBHa;=MkFO#G>tDx=o^7-Oo+I@Ia>)|`AN(unt| zp`*t3IGk=0>biV{PX)<Y)(F(=AS?33qi4;3zG<)n4fsWbj>q$ai*A2@vEyMlhOdM$ z#9G}qu$%j2QAPezgR`xe+5bzb*4u=h1jU8;cP$Uft)P4i7pgU!!}@0HgdGHw1<F&6 zWb?P1ZoiEbwK*jus3e4rIOOd(`M60bJ9i|ps0X0<;^}H2Kn6ARdVuK7&VeR++E7A- zMFNeb^W<-v9a@tza}HLh0v7pLe)X79B#3ZtatG`qsg7khn}<v*TVx2S9s!xWL*b?U zA|7>vyarAeG9b{rw)eLl+6c_NCqpeWnbXe!N0HQdQTAh^na=`+<Sm;l)v#}VzgJhA ze*CI%Un1*`M1J+?3c+kjUfGWLCEE{FX?ECjJHCObf{mf4!=C-RG%2lVb-Z9|I&cOP z!}J=n$k40Z7Ubc`(ze2cZhJy2$AFdt*cSntwGuCX6|V>$EnQkIUUwj@TB~li@0Q#J zN*Wxp{FRgE;_bG+=SnU%G&jY>x|I&!fRym+F&{;|s0FblFiutqtV|W8E9;p}yr>7! z6_I#tirt=BM>ofpBfsO@`tt#w-pQd+Eic7DrZ9y5u}Yieav*Sx>zKMl>F)omCjJZ} zb~Yh=08`{GvoQ|{k<hLA8<f(@>zR`Fa)dgPrf`I%Xrp?lb~p}Xlv6gR+LLn>{%tkl z=uKDvieU`f9_QeQOtmm|xYZxPFu2+dD}%wx*3-NF0fnc=%H{|dP}W&e<%@Xo{NnRP zUyg>~gJ<w8!VrIuf?CWVlA`35R%A=F1A8kMn3zN!p5#u={`HiL<E6p)JU7XuzIkn6 zzipN7mS?kF_Yl1qn%U`~OgU3}iX~uVpwbx&-jh@G?|1Q7p!VKM{J;-&PuU(7KF${l zeQh?_H8F7%O(r<$9&ve0Y^-f{GEm}2hUH}>%r7%@hV#OXdXP`zL+Q|aS~^?8y$a!* z`F7^-J*e5|RPf75m|u3Ll>HgW2jOL4@C$mFUtA{c^qU&`z8=w+iDUO^l%7VIU+|0C zSQ~W;i^z~FbGa4C<}r0z7d8!&&r|`77bd1ci6*4CIxT@*;vZuLOtl+8(^i4H>P3)- z(bU$#O@3067w5}3kUL(-^7*f}Io)RLq}9rQ0u@u5JQ3xYxgV%)vC;^JVRRUw=9!gk zFRhYei`261zai69OzUKkRO9P?F)pTXj6uuBGFC~?Qne@+Q-m1wHcHqhheRxIws4#F zS3f{)hq>ohUaZ}-UZ274pJjBPw5$c}3WD`+y#4k)Rf0Mau?xyU;O`G!A&&+w%2BRw zfZ2PmcZSNfX%5KjnfL+<EUVWAwv(&{q4e^vh_t`_{%192aj!wY`csKj{>Z-m?`rJ- zmIsSkSpTO~eYA?rPY(#imo~^+8?6sQ6G1_q08-ylYXeI1Ldw02zf`zvwFS`DyFO*x zzNUWZ^-gyw&G)WiMzYSiaMto;ar=<c=ws^&iFE*zu;z5lbFz8Txt-AS{rL(1%j~8h zMkzJg;ObWhea$F%g!V#hE^&m0i@LJ0#E673s-4COL&az)XSI>YKSxg6-D08&EZ%uU zwN#3xZADHi%aq8y=9t*q@PK#a5wjQVI+@_M?HF#T2ys~Kab?+o;t(4D)ew^jKm$4G zKD66phv_<N*3?79wZ`;u;-5OeRKNr6k<Ww+2y;sztBHRc=)$cHU6z}T)^g!dqYCxf znMVmhi^(2oTD4fvYOxtwWbp_WLz@mG1uaAvi+|X4JF85PI7fCVewRK+G9L|ns=Mw@ zz0+7mQ0qS0spm<+(P)vRgN`SM(-x^18+7nmZ*6b5PGLNmRCY$nQT;`ckOORqmlEeZ zlTR8XPi7s8q?I7#<D{!Dn1fX<$U0jQpB6l2ocI+RDi$4B+tqOq>DrYOd6q+$4xJ#C zKNE2{DTjH;yl%2@arT+Gp$zEUSkPpb{6w~?JEgYn%vCZ++Nz%Yx#6T6Fot1eD=Hlw z@JL5C^g$G(#f?QK@*jUh7;JHa$zBT>=*;a{8ej<$m?)$EUXo&%%|3K6+TDDx4SvKJ z|BBT4T`cmwcz?R2D&puo-D+!VaYGMs>>CG#-P|csPNif(LiDaD7A4r#e!jl~3A49} zKK66si5~U~*pB7Pbno*^UvKP7c#@Y(AS6tuCWfi`OvmLLt|*0l>u~+%gLm_`FA%P2 z8A+DlaI(mmyw$@i7MNOz?(t%I`*Sizxm2R{5S_|Lum53%S0pX<{bh}3GMx%KzHPs$ zUCQEEajcEU1`RS3)(a(lcg-*?l;8&(OFSA)iJ~s+XBB#UgJaF*gy9WP3J=)c>odq( zMxopEzSGm47K&R46P4Qa^w=k>OT!AP#N<l44j9WW_Su%tB<fE60%nP#azRk;;*|wu zu9B9i$K0cFaZJC)K-%ins7;UVHu{LLx(tkCf6o556bj;_b!%j4sIt~tMH35VwYOGN zQcZ9LTpyThLih9nY~vj`Oi4C>;XVzQxlGd)K|I!ufYv!?eoHq0h5$87b0BbRDY<>J z^Dit5e1Q%~ca$vlVI4l%UG^=^++}QcCg!+8f3#}cvXQW8mAreaoxpjkegU`uLdWfX zj_jo-mFn>Z1>MMxfYAcwa;Soc7*IwygoE9Ec8)9+=V&#D(zzCcdBnlg03n#3*gklM z55$l!R~k&9>l-ih6Ct`-rz3X5*@rs=Txw0D>>t%*i~RNFQqPz~CvxR3tYKeGPzQYA z83Z#y_>qo^Q^*1Kej8LV{Fr})xRs#3*@)6}7Z#2sx4L2M!rZ|aGPp)*SPSl;HjNZF zytKh@3whu|d1s63Mve0%G|z*2UJ={9+!xznEED;YaZYKa(ameHKGAP0=3f4p6_3K7 zk{b%uA|dN<=!Un+;IoUmNwsvwr<UI+BWOv1p`snxxqcRc9xa><)urWPs3T;=U2!|~ z1orr!mTrQ(a+#Ud8K*WChVm4=FV{JcNuwd6qxHX&*Wgw(l2NlATc@gb4E-RD$?f_k zzyD`sq}cvZb^PI-iy{7ZR@488jN%q1js}iK<{tlVZ#+rO${j@w(>HYM(wa0O2uvIj zL0u9mV~bz14-HuodKAD4NddXLUj(-%QD4i|khLWb)HP?>)i`Upq#4otm|R|(TWf(` z^(a~8R<%6g_jzXbjj>~ATE9jul|REf^Z)e8d$QJAzV6pAezES_VQmK%EUktc0nGz3 z0#T#7Vrak;ZlZ@Ei^_`V3c-pVJ+=OMKe`M0!_dY~(V+x{H|zeM8v=ocL{GYF02{mO z42w5p1jI|^jE{QL`X?50WJF|~Oxas;2pLQDz#Kzv+><n_0V}(I!SN+ALT=(s8Y4&H zRs%I>VK&5!W$@Nx?mknTvt-``78|qy@kGU2V8GN{p%)rx8rof9NXo!lVj$%f6;%)R zz$*XC8RNj9lX{~j(qKpaRt6OvMcFNbOxmo+<^;9!l(o`(-C~B*bh!?EN_*OM{h3{q z)QCL`s*!hKOlDyjmc3XbLf*+Jjo6j5L|@`r;h=SnH(jo1;~A?huG4|UCcej#Jc-pq z@1G@R?Y~B#Ej0?V_@L(EN@d@SfH(6qkqZIPzAV@ILlL)eMlUfYF=;dY!+C1rw1;Tr zT1w6oc%l;95N|ihmzBvOB9b4x@4fJHZ83+FPVz`6$vH;`Yvtb4S7$<fh|b-O{J5m2 z|5@rrVVhAkT!x3-!m(ufaYN=@-XB9}+gCo5zdhU2$4bpf*tI-wNPb}doY!%j?KYIs ztlPULB<oY-!NVJe8mycZGL5hr25SCsGMIaEDtk)_+&e5tz(&JHVZ3%xEHGsD#nn}B z%4R@Ka-RXuEf45wcS4m%HcwX*vatCSJ#G|C=boLFQAutPxSpL3wYXgN+v0kGT%yiK z<AF|8<0GKeZP4|9;wD$D{90sQfQ3R+A@?(AEiHh)UUF#pBlS`pbG=s|Lq&d?+DpZ$ zoAmQ)^hSIiF5F=gD7$M8z}<C*;9WZX3uEy2MmT+miocah{X%js-0_h(tM_F<sZOfF zL8Fg2))+XMNkrA&Jz_HFZ=pMf+>6%Cu^mm9?O}?QhUi>Apn8^Xv9(oal?CQ_)dFh2 zRsHXF8|xFdt|%B1-qXAlmg#*6MLonJX9<7zAm4c50<-7l76qht#|P#_@$DjL`Qd5C zy^G-vtd<<ue3Yf0{C-chV8AGjqe#vVaG~Xlce+JfaIhvLYMS^f64DhW>QsfB9>I6v zF7`n8G-z{;d%CShWWM(3!9n_A6qG=3xb`YOf4EDZcG9yegX@RdMn(CeQfUGTZN}Js zJ*v=*r&Y?_+2!in!ea@Lk~V~P5C)h=uUcg^0Ui5YcwsKj(P~((MM(Q!C+5OKYo@oX zjMn0yi&4pj^SdV6T2o}HX4_@07;4stFr+GLBNZ&6irL5Yva}87G-eyHFc~G#sW!43 z9p84T*EuaP+?uXWrmAN5XA~Rl%0}rdn}?V}k`>XEx%V+}8XkIDk8G+WDjKDc-F?+@ zR}a-Ldd8}!ETyo5ogEQ*uJNU_;O?l*Jijqgk4QRas}b>|fm%_KROaIn5@)c`pb2XY zftTGyooA|Cd>XZNrrjbfovb#p@~N8kxg04dvg>)ztRL64Plkx_a%@awXxlzkW|yRG zLQQy}nzkv}X6}(s<M$v)fj<>{NVe2d+6-gFJaMP!Fa~3Ij7+YM$b2W^Or(DtZjQ;B z++@&`*ATi1cpz-K)b!k~Ij(ekCe4tj;X;X>^Y-)d&*d5Zu1hgOmNy(nrAGK!QA0Jk zl&s<MMBBNP;~@Qx|FSARoqGAKzBopmWDN6Ie}6(*O2NC-O{gPK=Vn{=>IHsjQn`Ur zKO|$ry_Wt7g-Xl~z@sEDm1@-L;|c0;0N!(aYsFYn58z}rL{!zMNJku!wC<x61q1*` zZ6H?mDKz%>O|gf&unR??&yB0`h+25}ca73}{{H&2bgTXwHlJ5^%V7nrUj&r;%HqIu zEDAHalt^1{H3rQ0f^MWrxjnqa8_lPV0V?T_6#Mz;Hb&0Bh~w?;5Y0{5NdcU@*SB!= zGY19PDbP*z-udmvntX{qC-XzowEoy=d9m8?ISpRk#~H@~PIa2BRzxia<f~jlx4UF~ z!tMZEWr8o-f)7+R1=OBV87H}nj%bCQ@ko<9*IHLs#_bNwYo4eN-R(QB(UcWIkNt=% zuJ&_SVN;Tz)&SJ9AKtM(XpCkovGVksm=At`7w-tij;R?^1u}ALnSso28d$cTfF^Bd z^_8hbntvAeMvLc43eHj)_|@jWtBPO_l<ZRESq3E!lj4Uaj2L<~x&AastFsxUyA<3Q zklOiMo%Dz!@4qdQ?1xJ<0``&B`TSvdtpAD!T&W_?>Gskjtfrc0^j39Ul=&`@u#$;C z(MpsdpxSFG{Y7uNA2pd^zdA3CkF<E^GS@{O)3h-9oplg4+1+FG^a)6B2_4wQ>)g<} zHnMP+wGrak>rxjdBf>EDB6)q@G$w{M;Nly8+Qm4-oi|laL-T`cYZyh$1~6~>7u2qy zIFfxje`buu>vy4SQc}?BYca6>z$%c=b*`87%)QU?H(4UD)k?l}&xf)e1j9(k+&m!j zn0~8~-a<pK`u^N-baWz*+A3ddZX+VXaHZB>$u(TE4XI0>LH*1mZ<I++#vvzLCyT$k z=^hsSMUVY~c>KkD|3yA<&pvPmVwZDx1><LS%j`$Diz&&3$w>z@rCpS~wU~(h(hxMT zaF7;#-XuJlHFTu3?;(26%|N_K$A8}QKhp|(3Ts=qpYfOFPto<ip)da<t&p?-55U)d z&f67r<QDWXc<fr5v?%m8`1^hXhq#*Hm!=5Ok@#vOh-Wg~)?=F_TmPGP{i2mI{x2-K zD{_2QU&ehW&$UPPNoI4;_s0upuKx)qn!;FLuYb@8=UzB>8df={vT}W`G0$W^sg;h9 zkdP9=zcpYn0zXd^zq$;cjSH3yg<a3CWPZvQ9H>fm-InXn!fmi8eSL7CBBhPUHvuOM z_JQ7OPJ>hMsWY1QMWYp`f)pUK<BwI4<7|Va*hcq#z1jV{vI`Eg0)Y`o-qkGLG{Kp0 z-I=rv){5tig;iIy5?aOdzgk7RpB=2|K@!leliwW6{eIZXNZWsuOZS{bSntRh|7<^r z39NV=j9WvW42(W@g<P`A_s01HsIk@K<olETRSrRy%}RQ(baXkHDICGF_c7t=U@i@n z^ojc(j3Ik&w^Hw?lNO?1Zl_jDcyKtkgZXJFMsZlywguCAwu!zcQRe4a<t)y)s~@J) zLG|b&ex#6ah4x_O8*K?H2dv0d|6x&7@QS`+dw>C|iG{R_7-MldQdaf!dwPMnGiBEe zQ7bVoxES^9w3bp6^I@$?#gjBF!e7W0($kZY!;933ioBxoN4YSGoy>G&*Pw`T{;mzn z#_OgnWh|<VB_=$UY5XL+oM~HH7c_VCM_+QKIkve+4MvB?hRL1093|?*>Z!1<!kb1a zwcr1TK8YeTkU=TR4@UWioeTKC&#>hG+d%6-lT<87XXT~G?Ps&QZ)xBD8_2)Efe8PQ zBm@x<=&O?i5rV`^WI{^uhbJ5&gOR1Nrx7$?X=z<_t5m6K8|et>2juTZSXDGNRY~cT zFRyP|+B8)?Y=3`ClMcYhPkTJ~yl;0*bX;%0UuE3Pv&HiM{>5~|0}j)l!uX-&@5dp~ zt0vpuV|rsp_5uEN5!7`Pja=L>0LILU>i>Hl1WGdi>De0QauC`HV|4J>Kkj0CxxMT_ zFIliQ7-h0!gKlK8+=*~vg@ZZ;Ml^N<q8L+S82DJ10CZ@NGOb|;ZfcAuGeYE6HIf5i zvcx?S%*ZVHm;}tkn^6?d63#vC%wqzy5&G0>eTvvbhMOC4j%UhL4M4)AevAsWO>xx7 zIQs--q<wrq!z)*4pF<@*JpnNFU>oCf!I3pR-LzTEh*M3vf8HAq7_>$&5!q&Jq((1f z6s>`L!LA~x6{>b|Zc0fqQ)z-jF!HhiPhb*^DucQH>}c;uZa4=UQwlQb0~N-uE%ZW- zs(m!_%04Hk7N*_|6E+IBL|;N%#~j=-pMmSSXqKI;@$Y36P2ya2;(Fs~Y6{+!)38Bt zI2U7Ur5hB`K&WP_)ja)@fcAh4luJeXh5$m)7IOFU00Ynt)Jp~W{2$g|2?d5qtz2Jf zz$cWg%8fH<3x#_~z>eb022^(0t_D<g)h-8AcEzp-RCdiSD3osLt_YNF<*pmbM|HrC z(hU-3&rC*F;*>Y$Gp(6DXdo4)_Ry{+*b04Xa-R#MF5LmVap&(o#LMvD0-88+3;`SZ zzm&sh1c%K-L?!1u-TE!tq4btQ1IfF~`YP<J3o58#B0@YmLRLVYl{TdPB#{DQBsj}l zhI!(0dMc$IY}!rCC<TCl6?`t33>KIS9+(U!7%p23RyPb*I}BEQfvW|h<73gp;;U+F z*nle5`LYFJp;EEuN4J)XxnzB>RMEp~5CvZgjdYoOPdgH<d(nb8^8V9#A)Ee8GJx^x zV~n_(To}#X)^gsn<A{2k*_{S<)Dr@t;B-F%jaC%BtGLYi(EOK7#=~iVCn;uvMF?3) z!rvcP3ohhvmI34hWaOzn^Bg=_YdF!z>9_3dFLeU6sI%ep&1&=74lWEGJj0AhS^0<f z<2mur?G^NJ)hdXyIsHbXdrW9X?EbV(mz*dzBs_+{{59MDwbaBDoJ!{b_14|WI}2rY z3tTI+`XrKK`==1#?{Djzk1`P5FyM~vT@!F6z!aM+I~8J98bE@-J%mCqYDM1H1QXzT zaGOP~otPaxbK2g$c?{Cq%?o={w23(MY3%{GsD0VfwX$EyD?aD7?hQ%FHtK1t-qu*W zRIoW&Au|#Ku~Gvk#e4Vj_E3x_24bs@dS#2N<^=Qj|7K-oFxN5-V==AyQ1OC&jB5$C zmKQMHKnFtZ0XkrLqx7dRKY~>HshutNQTwIasOOPqhc%R)a5d#OP#?lW8N0xkex>_U z?vYS@MFt;;-nsi#tvW*+5VNaRl-tt{d`9^zdnc6KV6heM;J*cT2>!U0yQ6Pc?f=>? z*pI!{#k^L!_4Vc-23PS86S<UkAY14G?h(K+%Wk2oCmjqgAjOe7pWeh%-P3WG8`5dj z8se!`!ue@An@GY^!u9_=`1iZYW@IdZG*3E){v)55z1dB7aUo-Dd21}q9R{y#o{Tj4 zdu6yY$cBnHki_QCTrooF)*^kerAV500L>dMN2v}aNA>o{#FtEh&(Na=>Y8cd<Q7y? zu=wH6woI11*f?Q~1Ux2_3n9up=6Qx-F>C~JMnqMRQssW+OMC=fL*>eCa^V;wC|Zqs zFp9yEZ$B$5+_wsELCI=V&EAai3ypVa|3c*>Q!V~kHaIv#MBL+ptmJdo+^ni2_jrHT z=f6GqP$>Mm)7ZVh!|ssqC#BAY%@vgo4ykw0KsJnz_`aG`nA??2FXSD?Jq<L9j6A)l zKd6-4Bjq14YbQ#(r%Z1T+xpDnViX4(l-+@cTGPf4=oL4R6;6L%51m1ba5K_iVfki= ztDWx^5oj~V@=k3ur$03o@sG5&W@nf8pFKCQ($iI!DsPsl3tDLy@>^?y1k=Sjznat6 zlix`3_xzWnJ}a<0ZKSZ%E!E<F$nx5Tg<3?2kAwXR`F4?KJXzfO(C*k5V}6?HsvbW6 z&HN25$rvmwOoVwfEMI8rYBB`!dM8%*H4q4De*Y}}gsA2cNoERy(lp5w`#ICi`ae>Z zU(QnlduYo_3P{RF-U^2CGRvSAwqYU{TDzLd>gqy*No+I?t%GDFc*=_XQ4+dfw?%7W zJvm^fSbS?@ml`-d9w*k*KWr*GtE@6U8ZY8P){9G<`E8<eU}%=-LyU9WY=pXIq<GLQ zYn{Nb)<gadqX<{&C>+>XmD=6DSz(Q$1JQhW>TS*bIfVTS`fuX=;#{N3MYZI#RwNm! zCsb~YYe!`de)F9;kdNVoDX@qBg(|Rz;RS}bNIJ7`OsRntRpK}zBt&T{;&<L91heSa zoTDh+O3VRVnV{mG5Uq-qx6*@rmIN3UWsCVmyM|ekN&7N9W*M7hHsatk`3#msw0?@p zv_rJnrtD!ZT)!3Z-j^*BZBBM+Z)Vw$?HJ-Yu~58u=^j;Uwg;3eA^M{dG;KNT<<_O~ zF(Xl$eXHi+;$kQBiE%kKypkS0YDx*kd=+Q%KC;379>uFS7nj=XXStXa=cEw@rYe_d z#dT>X>vbycL1Ij~F;m0@uTu%{#Vi*Wjf?mNT>iz0!P0qEF*YDGU!nN~l&PABQjJ5g zXgHZkWdi!?NzwN{<k7Y(l$wJl$xrDWZQiIak9d+;jIW9h<4Vd4K!R3TQn)GRqHC@c z1~cGh<HwExz~@h&V@yipKq1m$xC4mk`FZ6eosT5Oub5FwmMzF67e$lMaNU19Q=(bg z;^z?&+Z<P9ohGW2IAAxydAWb$mpGx=GRJS0rrkrP=p`S-&}Vy#x}-DCm)--@)sdEL z@K3dp1crX$*Kh>rirrOlFVh_n_R1}$o1=3`@;-hHyEKzxT&+wMJu2e^7LSXh0<D#^ zHIUDtn?n2ZFwEd02zqW|(*E9J_B(|<EIRJNloxbNfo$SL&vJ!w;5sRTPnA_U4~*Bd z&|`ub(5WcL^3y`lUjFW#Dr&kdQe1xFweZQQ@0QcrF{`|8SbpZX@alczweyY)`-Z+D z>Pvypf<cl1!Z=xjec?Xz9Dn`=$G^>s@PlE4X#V7SZNYI*%LQW%Sl|ya(g#UI9C5_T zBMTgg<WLfTa6N7!mPj^&QAI3toY!nexeQqi&t_kR=l|_D4tWTH2=4I<Medb={Ord& z{q$8H0$O~LC~(ILtw#l|=Zv(6C{PavXEAfpv8+re>V6)Rj(AwN{tIe-O)~v;ZH^+{ z?iM?4`dWDZgiJ&&A>Ya(NLL)K2h-Rty!$o#4l;1}jvI#f`46jbj@@K6S%J+TZuW3d zy-+>%My1Mzc%GwX0Sp%5L*|f;uu~MFRcy>)RAa<t0p~0dX||wG#)8_pvwl`&g;9bR zl?ZwRDB=JHjiBK0>WrYrUhx-}P6-s@NGoxhG*iED-pXb#YX^)9>k_3x*}R#8!9E>b z#88JM2MqjBNMP_Cw&YE-k978&^r^o<_Bd45KByNNVpW?$Geh~7@4upO{{;BZ*DdK! zov=eBJYjEY-&OrJdlG-LmIHm2c4(Ti;rf-H5yLwp-)9p$V2s7}qSO+76Yt2TAdSgx zeq#^cn|h8D%S8sa5cbSq9C+qHz9rGVM)8y#QkG1^s&M&h(EPb%VRFql!zuUIbkW>> zE()!`i#;ap$<Zv_%6#4CFReXQtSvaTfq(W)Khy339eez~EP8$oL$X^ulB*8#JGTU$ zXL<d>G03NWEzuXq_;=Q|jP14Lu9Ub%oOCb$e>NN7CRKsE77wj==J3UkI2(JC6Cbpp zESl;z_pNu3Yv4y!-e{fAw};=TOHWX&(ttqBBk<f*v!);G=1xSYaT~8)^#R#~=iW;H zz?LL@cK66SeO5Yl_aqK7OnNvc>nsO$Tlh&Dx*b@j1Nzu@VDJIF6^MymSNKQ?40m44 zRzvVL7I@dcph#%8C8xmkk-63uWE+PHXgDHXbopx(i4EiAR#PNgQ$;9>a<|)p*_#py zSo!7`B?PTu-uI^UJ6#XnTLMkrw4R1nc`XOLo`{#Ba^V~J3zhG*oo1S9Z|S0A7lU$R z&4<(KS%FK8s#K>&QXQP&doPyYs$6xPY-b~=A6~6TUA7Zm6Y-)c(N$(oIw|qocpWaP zv}TUvW~VPO91GMO9Lbs5mVm*Ec22g6KiY=+nRHpxKzc{NOZT&=t+&7<NA1w8$Oa9< zS-MEzSdKRJ#&cZ}lK<_1Z>vTm9t}gmMc>+v5G=k@Znb&ogNCMPTHyM0<sEnFlQ=J+ zVKt$mWxtTVMK0JEcu;c8XKAnsjdM|M8D}R6<&!VKjcJ<gh10blE53zu6r_<R^U$_y zZ6?{StqztC05FAi-%vavX}qf*rxuq<(<$T_KJ(_QFz&GGM-z_A;e`qaS>U>{&n(F% zm|^+n%$HoT4`F&+g~Vx<9d>u+*oT#4wQwWqOe5+fW9pC)(PK#rVOZMPe)E=eeu2I& z@cqCU0-(MN*LSHRLTe0wKCnsq{Bl7MlXGFuXW^n#fu~M`ejN*uIjja0>@rjTS#V&^ z3^v*o#DPx9#lGr;ydgmAlg)(baKPdYHMwC-9>7-rZMP5Oj$JVu(@+axc7T!@Smcg_ z7rBHnAo60P9c5;On;lwlV`)8naVy-3sdn(*3dh%{`oY8l-8~5Vg6g{KS1WaBpw4V0 zTsfrcz?e<SYM>l+1M{O5G^pX;&5llolyWe%@A;9v>Yoy!<DM3F(6o=(sdzb1F{tF; z<PKMZShMS5!LjG_(mM%>P)N7qw*V8k(8uDg%^|9c&g@AUBJD$z)}ATzkATT?%vrS` z^0yxZ+y`P*FPFf;KYA#;K*3I2(p_A7&}&KLPpy|(6dSK_(R&ISn?6zEt&(CA3tBRw zDLWIQ0Uo)$<J!%8W9XU1W5tT1<x7V)b280bP0T+=Jk@bgjr5F52lE&jQ{v0H<Ucl0 z3Z}w}GKL|e>Qbs=A;~tK03EehE0nsHDHj|D#<P0d_zl~=Gnx(dmOm_Zjf0;W_NkXV z$|L;5EFAzpKx#0wpO{jHkWEx@gDn+L^;}uY-CWqN;i&0tj>&)QER$Or;&PU?nt;M) zl|_<Bwcw$O!F?42G_AY1)IvQEBLa`3HF&=xfNe8_bpU&1m8+&&oI}@*%^`D5zNHI( z<-vwor<Tiva#^G5N!$IVb6!<R2EWTm8tM^Pcd&bZXNWB0IFH~I*T2KL7;FItC7Z^$ zVe+$Ph2R776MrSRsU(4lU8;DX`E=uQZCN>>-gkjrVEqAbf#J|z3A;jWZw&3$NJ9^{ zs6HO~pxAy+ZyeTr<k^^aff2J^Wp6a17aZYRk<}2ozO)y{%)pxd*B7T&Fh5YX{hB>h zZ|JY!9)G(V9bs>Hn-{OdTRHWx90NLEf2~`5cTzx?(+#$yc|d$pR1E}KH?8BXOy0g% zB8VRq)Qyosm|g@Cg9-|CY$`S7kTZi)VkA~T#*j54qLZ*P4&B=jkwcw2<rRvqLykJF zYXoPVRwYtkzC<Sh(7wtX(KbTG(1u~vi(qAfqi{tc*|HSz5ST?KyGA+*tE9<3ibV*7 z<h@8}qqwuA)DUTzuCqk6VFL<6*E|+t@^ZMXMZsy@x`;4T_`<y7rr6lS8$;^%^)C0c zgC-YXr7rxYwm$NRP<fHAOgxzq*0fG*^s&2wUSN+aNbrI{o<o?`{zin?BO{cD)Zs2G ze33>86;rnODk)QZNEKn<xi;K}Akt1Kn;ls+yrGw7I)u`J7l)4a5AtB}E-HE-r2|9I zAPWMT8h>mnlHoq(Drt3y(_oXu#y5N0C-m7wUKa>9OHUKUv+KcJIUC$gThVt1iaKvK zgyQG&>^2-;skG&F-ZNfUMlWsi0E7cJO4vppF<yYA1O6n!^MLj3uSsP1e#1IqnT{Pm z<3NK18`lc7H+y)#!-DRq;e@ShX3#{IC-^4NailFyQwBA6*H+>@<CK}^LXM40zZz8i z+qeOK?18jZs5eDpQrWWXb21I2mt3yoS&xL*`x!0-k?c03_;x)yY1l~VxhIe<nq1$% zeT!BxZeY1EvptGiEN&{_-*#awdpx&r-Xy-jdXap+enZ#0xi299_McA?a`L4Ldz5%3 zJg0oA%-f^-|H$fVOHQH`3I}o<CmgnAaT?>$WTN4QS~qjmt>KvG(~z=uq*~%2<jk3V z%VvDyID(-5-OtGl_Y=r_fg+8lF(`jwW0nB=*vB?U1UKN(;lc)h=){NESmS(`4Zl(3 z2Q&{&AJp?DZ&0H0%Q;m{&2^45J!B-_5{EFO-xYZXzlK&Oc4?5KBOD3le;BEbo1={b zgf)Z`{l+CRCj`#`<43};CzXj>4f53_<0`_hDV2#E_42HUCQJ%nEL2A=_43UKN0#{? zTB_qr4f4%MN1pi~)Ko`n8suz9CfF+DekEez0usRxB_h3cZR7Z%PFjF}o%|ItTzs>Z zE3^=e$L8o@nkN79`782uaLiqf%y$UMt#$yV<~zivv$TY#i`{bcY8{EW<vODDavhoa z-L9a0i0erpI_oMRVwPⅈ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 QGin|_fqUSNv#iel1NWwaUjP6A literal 0 HcmV?d00001 diff --git a/src/languages/de.evoal.languages.model.generator.dsl/.classpath b/src/languages/de.evoal.languages.model.generator.dsl/.classpath new file mode 100644 index 00000000..9891e069 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/.classpath @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src/"/> + <classpathentry kind="src" path="src-gen/"/> + <classpathentry kind="src" path="xtend-gen/"/> + <classpathentry kind="output" path="target/classes"/> +</classpath> diff --git a/src/languages/de.evoal.languages.model.generator.dsl/.project b/src/languages/de.evoal.languages.model.generator.dsl/.project new file mode 100644 index 00000000..2e3b1ae4 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/.project @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>de.evoal.languages.model.generator.dsl</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/src/languages/de.evoal.languages.model.generator.dsl/META-INF/MANIFEST.MF b/src/languages/de.evoal.languages.model.generator.dsl/META-INF/MANIFEST.MF new file mode 100644 index 00000000..0e631384 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/META-INF/MANIFEST.MF @@ -0,0 +1,32 @@ +Manifest-Version: 1.0 +Automatic-Module-Name: de.evoal.languages.model.generator.dsl +Bundle-ManifestVersion: 2 +Bundle-Name: de.evoal.languages.model.generator.dsl +Bundle-Vendor: EvoAl Project +Bundle-Version: 1.0.0.qualifier +Bundle-SymbolicName: de.evoal.languages.model.generator.dsl; singleton:=true +Bundle-ActivationPolicy: lazy +Require-Bundle: org.eclipse.xtext, + org.eclipse.xtext.xbase, + org.eclipse.equinox.common;bundle-version="3.5.0", + de.evoal.languages.model.instance.dsl;bundle-version="1.0.0";visibility:=reexport, + org.eclipse.emf.ecore, + org.eclipse.xtext.xbase.lib;bundle-version="2.14.0", + org.eclipse.xtext.util, + org.eclipse.emf.common, + org.antlr.runtime;bundle-version="[3.2.0,3.2.1)", + de.evoal.languages.model.dl;bundle-version="1.0.0", + de.evoal.languages.model.ddl;bundle-version="1.0.0" +Bundle-RequiredExecutionEnvironment: JavaSE-11 +Export-Package: de.evoal.languages.model.generator.dsl, + de.evoal.languages.model.generator.dsl.services, + de.evoal.languages.model.generator.dsl.validation, + de.evoal.languages.model.generator.dsl.parser.antlr.internal, + de.evoal.languages.model.generator.dsl.generatorDSL, + de.evoal.languages.model.generator.dsl.serializer, + de.evoal.languages.model.generator.dsl.generatorDSL.impl, + de.evoal.languages.model.generator.dsl.generatorDSL.util, + de.evoal.languages.model.generator.dsl.scoping, + de.evoal.languages.model.generator.dsl.generator, + de.evoal.languages.model.generator.dsl.parser.antlr +Import-Package: org.apache.log4j diff --git a/src/languages/de.evoal.languages.model.generator.dsl/build.properties b/src/languages/de.evoal.languages.model.generator.dsl/build.properties new file mode 100644 index 00000000..3e516cd4 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/build.properties @@ -0,0 +1,19 @@ +source.. = src/,\ + src-gen/,\ + xtend-gen/ +bin.includes = model/generated/,\ + .,\ + META-INF/,\ + plugin.xml +bin.excludes = **/*.mwe2,\ + **/*.xtend +additional.bundles = org.eclipse.xtext.xbase,\ + org.eclipse.xtext.common.types,\ + org.eclipse.xtext.xtext.generator,\ + org.eclipse.emf.codegen.ecore,\ + org.eclipse.emf.mwe.utils,\ + org.eclipse.emf.mwe2.launch,\ + org.eclipse.emf.mwe2.lib,\ + org.objectweb.asm,\ + org.apache.commons.logging,\ + org.apache.log4j diff --git a/src/languages/de.evoal.languages.model.generator.dsl/model/generated/GeneratorDSL.ecore b/src/languages/de.evoal.languages.model.generator.dsl/model/generated/GeneratorDSL.ecore new file mode 100644 index 00000000..d8f4f544 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/model/generated/GeneratorDSL.ecore @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="generatorDSL" nsURI="http://www.evoal.de/languages/model/generator/dsl/GeneratorDSL" + nsPrefix="generatorDSL"> + <eClassifiers xsi:type="ecore:EClass" name="Configuration"> + <eStructuralFeatures xsi:type="ecore:EReference" name="uses" upperBound="-1" eType="#//Use" + containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="generators" upperBound="-1" + eType="#//GeneratorDefinition" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="functions" upperBound="-1" + eType="#//ParametrizedFunctionDefinition" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1" + eType="#//Statement" containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Use"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="importURI" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ParametrizedFunctionDefinition"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="definition" eType="ecore:EClass platform:/resource/de.evoal.languages.model.instance/model/model.ecore#//Instance" + containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="GeneratorDefinition"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="definition" eType="ecore:EClass platform:/resource/de.evoal.languages.model.instance/model/model.ecore#//Instance" + containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Statement"/> + <eClassifiers xsi:type="ecore:EClass" name="ForStatement" eSuperTypes="#//Statement"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="range" eType="#//Range" + containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1" + eType="#//Statement" containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Range"/> + <eClassifiers xsi:type="ecore:EClass" name="CounterRange" eSuperTypes="#//Range"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="start" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="end" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Functions" eSuperTypes="#//Range"> + <eStructuralFeatures xsi:type="ecore:EReference" name="functionReferences" eType="#//FunctionReferences" + containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="FunctionReferences"> + <eStructuralFeatures xsi:type="ecore:EReference" name="functions" upperBound="-1" + eType="#//FunctionDefReference" containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="Generators" eSuperTypes="#//Range"> + <eStructuralFeatures xsi:type="ecore:EReference" name="generatorReferences" eType="#//GeneratorReferences" + containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="GeneratorReferences"> + <eStructuralFeatures xsi:type="ecore:EReference" name="generators" unique="false" + upperBound="-1" eType="#//GeneratorDefinition"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ApplyStatement" eSuperTypes="#//Statement"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="file" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="count" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="function" eType="#//FunctionReference" + containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="generator" eType="#//GeneratorReference" + containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="GeneratorReference"/> + <eClassifiers xsi:type="ecore:EClass" name="GeneratorDefinitionReference" eSuperTypes="#//GeneratorReference"> + <eStructuralFeatures xsi:type="ecore:EReference" name="definition" eType="#//GeneratorDefinition"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="FunctionReference"/> + <eClassifiers xsi:type="ecore:EClass" name="FunctionDefReference" eSuperTypes="#//FunctionReference"/> + <eClassifiers xsi:type="ecore:EClass" name="LoopVariable" eSuperTypes="#//GeneratorReference #//FunctionReference"> + <eStructuralFeatures xsi:type="ecore:EReference" name="definition" eType="#//ForStatement"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="FunctionDefinitionReference" eSuperTypes="#//FunctionDefReference"> + <eStructuralFeatures xsi:type="ecore:EReference" name="definition" eType="ecore:EClass platform:/resource/de.evoal.languages.model.dl/model/model.ecore#//FunctionDefinition"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ParametrizedFunctionDefinitionReference" + eSuperTypes="#//FunctionDefReference"> + <eStructuralFeatures xsi:type="ecore:EReference" name="definition" eType="#//FunctionDefinitionReference"/> + </eClassifiers> +</ecore:EPackage> diff --git a/src/languages/de.evoal.languages.model.generator.dsl/model/generated/GeneratorDSL.genmodel b/src/languages/de.evoal.languages.model.generator.dsl/model/generated/GeneratorDSL.genmodel new file mode 100644 index 00000000..f49274f5 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/model/generated/GeneratorDSL.genmodel @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> +<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" + xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext 2.25.0" modelDirectory="/de.evoal.languages.model.generator.dsl/src-gen" + modelPluginID="de.evoal.languages.model.generator.dsl" forceOverwrite="true" modelName="GeneratorDSL" + updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" + complianceLevel="8.0" copyrightFields="false" runtimeVersion="2.20" usedGenPackages="platform:/resource/de.evoal.languages.model.dl/model/model.genmodel#//dl platform:/resource/de.evoal.languages.model.instance/model/model.genmodel#//instance"> + <genPackages prefix="GeneratorDSL" basePackage="de.evoal.languages.model.generator.dsl" + disposableProviderFactory="true" fileExtensions="generator" ecorePackage="GeneratorDSL.ecore#/"> + <genClasses ecoreClass="GeneratorDSL.ecore#//Configuration"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//Configuration/uses"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//Configuration/generators"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//Configuration/functions"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//Configuration/statements"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//Use"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute GeneratorDSL.ecore#//Use/importURI"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//ParametrizedFunctionDefinition"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute GeneratorDSL.ecore#//ParametrizedFunctionDefinition/name"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//ParametrizedFunctionDefinition/definition"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//GeneratorDefinition"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute GeneratorDSL.ecore#//GeneratorDefinition/name"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//GeneratorDefinition/definition"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//Statement"/> + <genClasses ecoreClass="GeneratorDSL.ecore#//ForStatement"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute GeneratorDSL.ecore#//ForStatement/name"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//ForStatement/range"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//ForStatement/statements"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//Range"/> + <genClasses ecoreClass="GeneratorDSL.ecore#//CounterRange"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute GeneratorDSL.ecore#//CounterRange/start"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute GeneratorDSL.ecore#//CounterRange/end"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//Functions"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//Functions/functionReferences"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//FunctionReferences"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//FunctionReferences/functions"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//Generators"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//Generators/generatorReferences"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//GeneratorReferences"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//GeneratorReferences/generators"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//ApplyStatement"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute GeneratorDSL.ecore#//ApplyStatement/file"/> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute GeneratorDSL.ecore#//ApplyStatement/count"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//ApplyStatement/function"/> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//ApplyStatement/generator"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//GeneratorReference"/> + <genClasses ecoreClass="GeneratorDSL.ecore#//GeneratorDefinitionReference"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//GeneratorDefinitionReference/definition"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//FunctionReference"/> + <genClasses ecoreClass="GeneratorDSL.ecore#//FunctionDefReference"/> + <genClasses ecoreClass="GeneratorDSL.ecore#//LoopVariable"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//LoopVariable/definition"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//FunctionDefinitionReference"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//FunctionDefinitionReference/definition"/> + </genClasses> + <genClasses ecoreClass="GeneratorDSL.ecore#//ParametrizedFunctionDefinitionReference"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference GeneratorDSL.ecore#//ParametrizedFunctionDefinitionReference/definition"/> + </genClasses> + </genPackages> +</genmodel:GenModel> diff --git a/src/languages/de.evoal.languages.model.generator.dsl/plugin.xml b/src/languages/de.evoal.languages.model.generator.dsl/plugin.xml new file mode 100644 index 00000000..63eed0c8 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/plugin.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> +<plugin> + <extension point="org.eclipse.emf.ecore.generated_package"> + <package + uri = "http://www.evoal.de/languages/model/generator/dsl/GeneratorDSL" + class = "de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage" + genModel = "model/generated/GeneratorDSL.genmodel" /> + </extension> +</plugin> diff --git a/src/languages/de.evoal.languages.model.generator.dsl/pom.xml b/src/languages/de.evoal.languages.model.generator.dsl/pom.xml new file mode 100644 index 00000000..1ab65ed0 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/pom.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>de.evoal.languages</groupId> + <artifactId>de.evoal.languages.releng.parent</artifactId> + <version>1.0.0-SNAPSHOT</version> + <relativePath>../de.evoal.languages.releng.parent</relativePath> + </parent> + + <artifactId>de.evoal.languages.model.generator.dsl</artifactId> + <packaging>eclipse-plugin</packaging> +</project> diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/AbstractGeneratorDSLRuntimeModule.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/AbstractGeneratorDSLRuntimeModule.java new file mode 100644 index 00000000..c8aca8b4 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/AbstractGeneratorDSLRuntimeModule.java @@ -0,0 +1,201 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl; + +import com.google.inject.Binder; +import com.google.inject.Provider; +import com.google.inject.name.Names; +import de.evoal.languages.model.generator.dsl.generator.GeneratorDSLGenerator; +import de.evoal.languages.model.generator.dsl.parser.antlr.GeneratorDSLAntlrTokenFileProvider; +import de.evoal.languages.model.generator.dsl.parser.antlr.GeneratorDSLParser; +import de.evoal.languages.model.generator.dsl.parser.antlr.internal.InternalGeneratorDSLLexer; +import de.evoal.languages.model.generator.dsl.scoping.GeneratorDSLScopeProvider; +import de.evoal.languages.model.generator.dsl.serializer.GeneratorDSLSemanticSequencer; +import de.evoal.languages.model.generator.dsl.serializer.GeneratorDSLSyntacticSequencer; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; +import de.evoal.languages.model.generator.dsl.validation.GeneratorDSLConfigurableIssueCodesProvider; +import de.evoal.languages.model.generator.dsl.validation.GeneratorDSLValidator; +import java.util.Properties; +import org.eclipse.xtext.Constants; +import org.eclipse.xtext.IGrammarAccess; +import org.eclipse.xtext.generator.IGenerator2; +import org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider; +import org.eclipse.xtext.naming.IQualifiedNameProvider; +import org.eclipse.xtext.parser.IParser; +import org.eclipse.xtext.parser.ITokenToStringConverter; +import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider; +import org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter; +import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider; +import org.eclipse.xtext.parser.antlr.ITokenDefProvider; +import org.eclipse.xtext.parser.antlr.Lexer; +import org.eclipse.xtext.parser.antlr.LexerBindings; +import org.eclipse.xtext.parser.antlr.LexerProvider; +import org.eclipse.xtext.resource.IContainer; +import org.eclipse.xtext.resource.IResourceDescriptions; +import org.eclipse.xtext.resource.containers.IAllContainersState; +import org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider; +import org.eclipse.xtext.resource.containers.StateBasedContainerManager; +import org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider; +import org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions; +import org.eclipse.xtext.scoping.IGlobalScopeProvider; +import org.eclipse.xtext.scoping.IScopeProvider; +import org.eclipse.xtext.scoping.IgnoreCaseLinking; +import org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider; +import org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider; +import org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider; +import org.eclipse.xtext.serializer.ISerializer; +import org.eclipse.xtext.serializer.impl.Serializer; +import org.eclipse.xtext.serializer.sequencer.ISemanticSequencer; +import org.eclipse.xtext.serializer.sequencer.ISyntacticSequencer; +import org.eclipse.xtext.service.DefaultRuntimeModule; +import org.eclipse.xtext.service.SingletonBinding; +import org.eclipse.xtext.validation.ConfigurableIssueCodesProvider; + +/** + * Manual modifications go to {@link GeneratorDSLRuntimeModule}. + */ +@SuppressWarnings("all") +public abstract class AbstractGeneratorDSLRuntimeModule extends DefaultRuntimeModule { + + protected Properties properties = null; + + @Override + public void configure(Binder binder) { + properties = tryBindProperties(binder, "de/evoal/languages/model/generator/dsl/GeneratorDSL.properties"); + super.configure(binder); + } + + public void configureLanguageName(Binder binder) { + binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("de.evoal.languages.model.generator.dsl.GeneratorDSL"); + } + + public void configureFileExtensions(Binder binder) { + if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null) + binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("generator"); + } + + // contributed by org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2 + public ClassLoader bindClassLoaderToInstance() { + return getClass().getClassLoader(); + } + + // contributed by org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2 + public Class<? extends IGrammarAccess> bindIGrammarAccess() { + return GeneratorDSLGrammarAccess.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2 + public Class<? extends ISemanticSequencer> bindISemanticSequencer() { + return GeneratorDSLSemanticSequencer.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2 + public Class<? extends ISyntacticSequencer> bindISyntacticSequencer() { + return GeneratorDSLSyntacticSequencer.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2 + public Class<? extends ISerializer> bindISerializer() { + return Serializer.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends IParser> bindIParser() { + return GeneratorDSLParser.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends ITokenToStringConverter> bindITokenToStringConverter() { + return AntlrTokenToStringConverter.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() { + return GeneratorDSLAntlrTokenFileProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends Lexer> bindLexer() { + return InternalGeneratorDSLLexer.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class<? extends ITokenDefProvider> bindITokenDefProvider() { + return AntlrTokenDefProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Provider<? extends InternalGeneratorDSLLexer> provideInternalGeneratorDSLLexer() { + return LexerProvider.create(InternalGeneratorDSLLexer.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public void configureRuntimeLexer(Binder binder) { + binder.bind(Lexer.class) + .annotatedWith(Names.named(LexerBindings.RUNTIME)) + .to(InternalGeneratorDSLLexer.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2 + @SingletonBinding(eager=true) + public Class<? extends GeneratorDSLValidator> bindGeneratorDSLValidator() { + return GeneratorDSLValidator.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2 + public Class<? extends ConfigurableIssueCodesProvider> bindConfigurableIssueCodesProvider() { + return GeneratorDSLConfigurableIssueCodesProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2 + public Class<? extends IScopeProvider> bindIScopeProvider() { + return GeneratorDSLScopeProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2 + public void configureIScopeProviderDelegate(Binder binder) { + binder.bind(IScopeProvider.class).annotatedWith(Names.named(AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(ImportedNamespaceAwareLocalScopeProvider.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2 + public Class<? extends IGlobalScopeProvider> bindIGlobalScopeProvider() { + return DefaultGlobalScopeProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2 + public void configureIgnoreCaseLinking(Binder binder) { + binder.bindConstant().annotatedWith(IgnoreCaseLinking.class).to(false); + } + + // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2 + public Class<? extends IQualifiedNameProvider> bindIQualifiedNameProvider() { + return DefaultDeclarativeQualifiedNameProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public Class<? extends IContainer.Manager> bindIContainer$Manager() { + return StateBasedContainerManager.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public Class<? extends IAllContainersState.Provider> bindIAllContainersState$Provider() { + return ResourceSetBasedAllContainersStateProvider.class; + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public void configureIResourceDescriptions(Binder binder) { + binder.bind(IResourceDescriptions.class).to(ResourceSetBasedResourceDescriptions.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2 + public void configureIResourceDescriptionsPersisted(Binder binder) { + binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(ResourceSetBasedResourceDescriptions.class); + } + + // contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2 + public Class<? extends IGenerator2> bindIGenerator2() { + return GeneratorDSLGenerator.class; + } + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/GeneratorDSL.xtextbin b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/GeneratorDSL.xtextbin new file mode 100644 index 0000000000000000000000000000000000000000..dd12c1678a47743f9ad863dbf14bc71acad5cbd0 GIT binary patch literal 10005 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 DmOGU5 literal 0 HcmV?d00001 diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/GeneratorDSLStandaloneSetupGenerated.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/GeneratorDSLStandaloneSetupGenerated.java new file mode 100644 index 00000000..42254b14 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/GeneratorDSLStandaloneSetupGenerated.java @@ -0,0 +1,42 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl; + +import com.google.inject.Guice; +import com.google.inject.Injector; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.instance.dsl.InstanceLanguageStandaloneSetup; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.xtext.ISetup; +import org.eclipse.xtext.resource.IResourceFactory; +import org.eclipse.xtext.resource.IResourceServiceProvider; + +@SuppressWarnings("all") +public class GeneratorDSLStandaloneSetupGenerated implements ISetup { + + @Override + public Injector createInjectorAndDoEMFRegistration() { + InstanceLanguageStandaloneSetup.doSetup(); + + Injector injector = createInjector(); + register(injector); + return injector; + } + + public Injector createInjector() { + return Guice.createInjector(new GeneratorDSLRuntimeModule()); + } + + public void register(Injector injector) { + if (!EPackage.Registry.INSTANCE.containsKey("http://www.evoal.de/languages/model/generator/dsl/GeneratorDSL")) { + EPackage.Registry.INSTANCE.put("http://www.evoal.de/languages/model/generator/dsl/GeneratorDSL", GeneratorDSLPackage.eINSTANCE); + } + IResourceFactory resourceFactory = injector.getInstance(IResourceFactory.class); + IResourceServiceProvider serviceProvider = injector.getInstance(IResourceServiceProvider.class); + + Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("generator", resourceFactory); + IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("generator", serviceProvider); + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ApplyStatement.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ApplyStatement.java new file mode 100644 index 00000000..775dddf5 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ApplyStatement.java @@ -0,0 +1,116 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Apply Statement</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getFile <em>File</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getCount <em>Count</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getFunction <em>Function</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getGenerator <em>Generator</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getApplyStatement() + * @model + * @generated + */ +public interface ApplyStatement extends Statement +{ + /** + * Returns the value of the '<em><b>File</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>File</em>' attribute. + * @see #setFile(String) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getApplyStatement_File() + * @model + * @generated + */ + String getFile(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getFile <em>File</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>File</em>' attribute. + * @see #getFile() + * @generated + */ + void setFile(String value); + + /** + * Returns the value of the '<em><b>Count</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Count</em>' attribute. + * @see #setCount(int) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getApplyStatement_Count() + * @model + * @generated + */ + int getCount(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getCount <em>Count</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Count</em>' attribute. + * @see #getCount() + * @generated + */ + void setCount(int value); + + /** + * Returns the value of the '<em><b>Function</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Function</em>' containment reference. + * @see #setFunction(FunctionReference) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getApplyStatement_Function() + * @model containment="true" + * @generated + */ + FunctionReference getFunction(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getFunction <em>Function</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Function</em>' containment reference. + * @see #getFunction() + * @generated + */ + void setFunction(FunctionReference value); + + /** + * Returns the value of the '<em><b>Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Generator</em>' containment reference. + * @see #setGenerator(GeneratorReference) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getApplyStatement_Generator() + * @model containment="true" + * @generated + */ + GeneratorReference getGenerator(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getGenerator <em>Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Generator</em>' containment reference. + * @see #getGenerator() + * @generated + */ + void setGenerator(GeneratorReference value); + +} // ApplyStatement diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Configuration.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Configuration.java new file mode 100644 index 00000000..144dbe22 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Configuration.java @@ -0,0 +1,79 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Configuration</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getUses <em>Uses</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getGenerators <em>Generators</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getFunctions <em>Functions</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getStatements <em>Statements</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getConfiguration() + * @model + * @generated + */ +public interface Configuration extends EObject +{ + /** + * Returns the value of the '<em><b>Uses</b></em>' containment reference list. + * The list contents are of type {@link de.evoal.languages.model.generator.dsl.generatorDSL.Use}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Uses</em>' containment reference list. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getConfiguration_Uses() + * @model containment="true" + * @generated + */ + EList<Use> getUses(); + + /** + * Returns the value of the '<em><b>Generators</b></em>' containment reference list. + * The list contents are of type {@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Generators</em>' containment reference list. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getConfiguration_Generators() + * @model containment="true" + * @generated + */ + EList<GeneratorDefinition> getGenerators(); + + /** + * Returns the value of the '<em><b>Functions</b></em>' containment reference list. + * The list contents are of type {@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Functions</em>' containment reference list. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getConfiguration_Functions() + * @model containment="true" + * @generated + */ + EList<ParametrizedFunctionDefinition> getFunctions(); + + /** + * Returns the value of the '<em><b>Statements</b></em>' containment reference list. + * The list contents are of type {@link de.evoal.languages.model.generator.dsl.generatorDSL.Statement}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Statements</em>' containment reference list. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getConfiguration_Statements() + * @model containment="true" + * @generated + */ + EList<Statement> getStatements(); + +} // Configuration diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/CounterRange.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/CounterRange.java new file mode 100644 index 00000000..779c0c6e --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/CounterRange.java @@ -0,0 +1,70 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Counter Range</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange#getStart <em>Start</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange#getEnd <em>End</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getCounterRange() + * @model + * @generated + */ +public interface CounterRange extends Range +{ + /** + * Returns the value of the '<em><b>Start</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Start</em>' attribute. + * @see #setStart(int) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getCounterRange_Start() + * @model + * @generated + */ + int getStart(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange#getStart <em>Start</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Start</em>' attribute. + * @see #getStart() + * @generated + */ + void setStart(int value); + + /** + * Returns the value of the '<em><b>End</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>End</em>' attribute. + * @see #setEnd(int) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getCounterRange_End() + * @model + * @generated + */ + int getEnd(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange#getEnd <em>End</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>End</em>' attribute. + * @see #getEnd() + * @generated + */ + void setEnd(int value); + +} // CounterRange diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ForStatement.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ForStatement.java new file mode 100644 index 00000000..0e1b281f --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ForStatement.java @@ -0,0 +1,84 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>For Statement</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getName <em>Name</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getRange <em>Range</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getStatements <em>Statements</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getForStatement() + * @model + * @generated + */ +public interface ForStatement extends Statement +{ + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getForStatement_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the '<em><b>Range</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Range</em>' containment reference. + * @see #setRange(Range) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getForStatement_Range() + * @model containment="true" + * @generated + */ + Range getRange(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getRange <em>Range</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Range</em>' containment reference. + * @see #getRange() + * @generated + */ + void setRange(Range value); + + /** + * Returns the value of the '<em><b>Statements</b></em>' containment reference list. + * The list contents are of type {@link de.evoal.languages.model.generator.dsl.generatorDSL.Statement}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Statements</em>' containment reference list. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getForStatement_Statements() + * @model containment="true" + * @generated + */ + EList<Statement> getStatements(); + +} // ForStatement diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionDefReference.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionDefReference.java new file mode 100644 index 00000000..a02415bb --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionDefReference.java @@ -0,0 +1,19 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Function Def Reference</b></em>'. + * <!-- end-user-doc --> + * + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getFunctionDefReference() + * @model + * @generated + */ +public interface FunctionDefReference extends FunctionReference +{ +} // FunctionDefReference diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionDefinitionReference.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionDefinitionReference.java new file mode 100644 index 00000000..86a2725c --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionDefinitionReference.java @@ -0,0 +1,48 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import de.evoal.languages.model.dl.FunctionDefinition; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Function Definition Reference</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getFunctionDefinitionReference() + * @model + * @generated + */ +public interface FunctionDefinitionReference extends FunctionDefReference +{ + /** + * Returns the value of the '<em><b>Definition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Definition</em>' reference. + * @see #setDefinition(FunctionDefinition) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getFunctionDefinitionReference_Definition() + * @model + * @generated + */ + FunctionDefinition getDefinition(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference#getDefinition <em>Definition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Definition</em>' reference. + * @see #getDefinition() + * @generated + */ + void setDefinition(FunctionDefinition value); + +} // FunctionDefinitionReference diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionReference.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionReference.java new file mode 100644 index 00000000..8d016fff --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionReference.java @@ -0,0 +1,20 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Function Reference</b></em>'. + * <!-- end-user-doc --> + * + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getFunctionReference() + * @model + * @generated + */ +public interface FunctionReference extends EObject +{ +} // FunctionReference diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionReferences.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionReferences.java new file mode 100644 index 00000000..eb6b039d --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/FunctionReferences.java @@ -0,0 +1,40 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Function References</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences#getFunctions <em>Functions</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getFunctionReferences() + * @model + * @generated + */ +public interface FunctionReferences extends EObject +{ + /** + * Returns the value of the '<em><b>Functions</b></em>' containment reference list. + * The list contents are of type {@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefReference}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Functions</em>' containment reference list. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getFunctionReferences_Functions() + * @model containment="true" + * @generated + */ + EList<FunctionDefReference> getFunctions(); + +} // FunctionReferences diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Functions.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Functions.java new file mode 100644 index 00000000..31e213dd --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Functions.java @@ -0,0 +1,47 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Functions</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.Functions#getFunctionReferences <em>Function References</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getFunctions() + * @model + * @generated + */ +public interface Functions extends Range +{ + /** + * Returns the value of the '<em><b>Function References</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Function References</em>' containment reference. + * @see #setFunctionReferences(FunctionReferences) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getFunctions_FunctionReferences() + * @model containment="true" + * @generated + */ + FunctionReferences getFunctionReferences(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Functions#getFunctionReferences <em>Function References</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Function References</em>' containment reference. + * @see #getFunctionReferences() + * @generated + */ + void setFunctionReferences(FunctionReferences value); + +} // Functions diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDSLFactory.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDSLFactory.java new file mode 100644 index 00000000..bed22c22 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDSLFactory.java @@ -0,0 +1,215 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage + * @generated + */ +public interface GeneratorDSLFactory extends EFactory +{ + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + GeneratorDSLFactory eINSTANCE = de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Configuration</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Configuration</em>'. + * @generated + */ + Configuration createConfiguration(); + + /** + * Returns a new object of class '<em>Use</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Use</em>'. + * @generated + */ + Use createUse(); + + /** + * Returns a new object of class '<em>Parametrized Function Definition</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Parametrized Function Definition</em>'. + * @generated + */ + ParametrizedFunctionDefinition createParametrizedFunctionDefinition(); + + /** + * Returns a new object of class '<em>Generator Definition</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Generator Definition</em>'. + * @generated + */ + GeneratorDefinition createGeneratorDefinition(); + + /** + * Returns a new object of class '<em>Statement</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Statement</em>'. + * @generated + */ + Statement createStatement(); + + /** + * Returns a new object of class '<em>For Statement</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>For Statement</em>'. + * @generated + */ + ForStatement createForStatement(); + + /** + * Returns a new object of class '<em>Range</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Range</em>'. + * @generated + */ + Range createRange(); + + /** + * Returns a new object of class '<em>Counter Range</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Counter Range</em>'. + * @generated + */ + CounterRange createCounterRange(); + + /** + * Returns a new object of class '<em>Functions</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Functions</em>'. + * @generated + */ + Functions createFunctions(); + + /** + * Returns a new object of class '<em>Function References</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Function References</em>'. + * @generated + */ + FunctionReferences createFunctionReferences(); + + /** + * Returns a new object of class '<em>Generators</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Generators</em>'. + * @generated + */ + Generators createGenerators(); + + /** + * Returns a new object of class '<em>Generator References</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Generator References</em>'. + * @generated + */ + GeneratorReferences createGeneratorReferences(); + + /** + * Returns a new object of class '<em>Apply Statement</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Apply Statement</em>'. + * @generated + */ + ApplyStatement createApplyStatement(); + + /** + * Returns a new object of class '<em>Generator Reference</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Generator Reference</em>'. + * @generated + */ + GeneratorReference createGeneratorReference(); + + /** + * Returns a new object of class '<em>Generator Definition Reference</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Generator Definition Reference</em>'. + * @generated + */ + GeneratorDefinitionReference createGeneratorDefinitionReference(); + + /** + * Returns a new object of class '<em>Function Reference</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Function Reference</em>'. + * @generated + */ + FunctionReference createFunctionReference(); + + /** + * Returns a new object of class '<em>Function Def Reference</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Function Def Reference</em>'. + * @generated + */ + FunctionDefReference createFunctionDefReference(); + + /** + * Returns a new object of class '<em>Loop Variable</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Loop Variable</em>'. + * @generated + */ + LoopVariable createLoopVariable(); + + /** + * Returns a new object of class '<em>Function Definition Reference</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Function Definition Reference</em>'. + * @generated + */ + FunctionDefinitionReference createFunctionDefinitionReference(); + + /** + * Returns a new object of class '<em>Parametrized Function Definition Reference</em>'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return a new object of class '<em>Parametrized Function Definition Reference</em>'. + * @generated + */ + ParametrizedFunctionDefinitionReference createParametrizedFunctionDefinitionReference(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + GeneratorDSLPackage getGeneratorDSLPackage(); + +} //GeneratorDSLFactory diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDSLPackage.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDSLPackage.java new file mode 100644 index 00000000..668442cf --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDSLPackage.java @@ -0,0 +1,1594 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLFactory + * @model kind="package" + * @generated + */ +public interface GeneratorDSLPackage extends EPackage +{ + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "generatorDSL"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "http://www.evoal.de/languages/model/generator/dsl/GeneratorDSL"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "generatorDSL"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + GeneratorDSLPackage eINSTANCE = de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl.init(); + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ConfigurationImpl <em>Configuration</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ConfigurationImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getConfiguration() + * @generated + */ + int CONFIGURATION = 0; + + /** + * The feature id for the '<em><b>Uses</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CONFIGURATION__USES = 0; + + /** + * The feature id for the '<em><b>Generators</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CONFIGURATION__GENERATORS = 1; + + /** + * The feature id for the '<em><b>Functions</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CONFIGURATION__FUNCTIONS = 2; + + /** + * The feature id for the '<em><b>Statements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CONFIGURATION__STATEMENTS = 3; + + /** + * The number of structural features of the '<em>Configuration</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int CONFIGURATION_FEATURE_COUNT = 4; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.UseImpl <em>Use</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.UseImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getUse() + * @generated + */ + int USE = 1; + + /** + * The feature id for the '<em><b>Import URI</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int USE__IMPORT_URI = 0; + + /** + * The number of structural features of the '<em>Use</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int USE_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionImpl <em>Parametrized Function Definition</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getParametrizedFunctionDefinition() + * @generated + */ + int PARAMETRIZED_FUNCTION_DEFINITION = 2; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PARAMETRIZED_FUNCTION_DEFINITION__NAME = 0; + + /** + * The feature id for the '<em><b>Definition</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION = 1; + + /** + * The number of structural features of the '<em>Parametrized Function Definition</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PARAMETRIZED_FUNCTION_DEFINITION_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionImpl <em>Generator Definition</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGeneratorDefinition() + * @generated + */ + int GENERATOR_DEFINITION = 3; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATOR_DEFINITION__NAME = 0; + + /** + * The feature id for the '<em><b>Definition</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATOR_DEFINITION__DEFINITION = 1; + + /** + * The number of structural features of the '<em>Generator Definition</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATOR_DEFINITION_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.StatementImpl <em>Statement</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.StatementImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getStatement() + * @generated + */ + int STATEMENT = 4; + + /** + * The number of structural features of the '<em>Statement</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int STATEMENT_FEATURE_COUNT = 0; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ForStatementImpl <em>For Statement</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ForStatementImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getForStatement() + * @generated + */ + int FOR_STATEMENT = 5; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FOR_STATEMENT__NAME = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Range</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FOR_STATEMENT__RANGE = STATEMENT_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Statements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FOR_STATEMENT__STATEMENTS = STATEMENT_FEATURE_COUNT + 2; + + /** + * The number of structural features of the '<em>For Statement</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FOR_STATEMENT_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 3; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.RangeImpl <em>Range</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.RangeImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getRange() + * @generated + */ + int RANGE = 6; + + /** + * The number of structural features of the '<em>Range</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int RANGE_FEATURE_COUNT = 0; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.CounterRangeImpl <em>Counter Range</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.CounterRangeImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getCounterRange() + * @generated + */ + int COUNTER_RANGE = 7; + + /** + * The feature id for the '<em><b>Start</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COUNTER_RANGE__START = RANGE_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>End</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COUNTER_RANGE__END = RANGE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the '<em>Counter Range</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int COUNTER_RANGE_FEATURE_COUNT = RANGE_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionsImpl <em>Functions</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionsImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctions() + * @generated + */ + int FUNCTIONS = 8; + + /** + * The feature id for the '<em><b>Function References</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTIONS__FUNCTION_REFERENCES = RANGE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Functions</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTIONS_FEATURE_COUNT = RANGE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferencesImpl <em>Function References</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferencesImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctionReferences() + * @generated + */ + int FUNCTION_REFERENCES = 9; + + /** + * The feature id for the '<em><b>Functions</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTION_REFERENCES__FUNCTIONS = 0; + + /** + * The number of structural features of the '<em>Function References</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTION_REFERENCES_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorsImpl <em>Generators</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorsImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGenerators() + * @generated + */ + int GENERATORS = 10; + + /** + * The feature id for the '<em><b>Generator References</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATORS__GENERATOR_REFERENCES = RANGE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Generators</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATORS_FEATURE_COUNT = RANGE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferencesImpl <em>Generator References</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferencesImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGeneratorReferences() + * @generated + */ + int GENERATOR_REFERENCES = 11; + + /** + * The feature id for the '<em><b>Generators</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATOR_REFERENCES__GENERATORS = 0; + + /** + * The number of structural features of the '<em>Generator References</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATOR_REFERENCES_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ApplyStatementImpl <em>Apply Statement</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ApplyStatementImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getApplyStatement() + * @generated + */ + int APPLY_STATEMENT = 12; + + /** + * The feature id for the '<em><b>File</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLY_STATEMENT__FILE = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Count</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLY_STATEMENT__COUNT = STATEMENT_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Function</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLY_STATEMENT__FUNCTION = STATEMENT_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Generator</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLY_STATEMENT__GENERATOR = STATEMENT_FEATURE_COUNT + 3; + + /** + * The number of structural features of the '<em>Apply Statement</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int APPLY_STATEMENT_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 4; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferenceImpl <em>Generator Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGeneratorReference() + * @generated + */ + int GENERATOR_REFERENCE = 13; + + /** + * The number of structural features of the '<em>Generator Reference</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATOR_REFERENCE_FEATURE_COUNT = 0; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionReferenceImpl <em>Generator Definition Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGeneratorDefinitionReference() + * @generated + */ + int GENERATOR_DEFINITION_REFERENCE = 14; + + /** + * The feature id for the '<em><b>Definition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATOR_DEFINITION_REFERENCE__DEFINITION = GENERATOR_REFERENCE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Generator Definition Reference</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int GENERATOR_DEFINITION_REFERENCE_FEATURE_COUNT = GENERATOR_REFERENCE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferenceImpl <em>Function Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctionReference() + * @generated + */ + int FUNCTION_REFERENCE = 15; + + /** + * The number of structural features of the '<em>Function Reference</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTION_REFERENCE_FEATURE_COUNT = 0; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefReferenceImpl <em>Function Def Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctionDefReference() + * @generated + */ + int FUNCTION_DEF_REFERENCE = 16; + + /** + * The number of structural features of the '<em>Function Def Reference</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTION_DEF_REFERENCE_FEATURE_COUNT = FUNCTION_REFERENCE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.LoopVariableImpl <em>Loop Variable</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.LoopVariableImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getLoopVariable() + * @generated + */ + int LOOP_VARIABLE = 17; + + /** + * The feature id for the '<em><b>Definition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int LOOP_VARIABLE__DEFINITION = GENERATOR_REFERENCE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Loop Variable</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int LOOP_VARIABLE_FEATURE_COUNT = GENERATOR_REFERENCE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefinitionReferenceImpl <em>Function Definition Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefinitionReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctionDefinitionReference() + * @generated + */ + int FUNCTION_DEFINITION_REFERENCE = 18; + + /** + * The feature id for the '<em><b>Definition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTION_DEFINITION_REFERENCE__DEFINITION = FUNCTION_DEF_REFERENCE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Function Definition Reference</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int FUNCTION_DEFINITION_REFERENCE_FEATURE_COUNT = FUNCTION_DEF_REFERENCE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionReferenceImpl <em>Parametrized Function Definition Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getParametrizedFunctionDefinitionReference() + * @generated + */ + int PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE = 19; + + /** + * The feature id for the '<em><b>Definition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION = FUNCTION_DEF_REFERENCE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Parametrized Function Definition Reference</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE_FEATURE_COUNT = FUNCTION_DEF_REFERENCE_FEATURE_COUNT + 1; + + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration <em>Configuration</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Configuration</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Configuration + * @generated + */ + EClass getConfiguration(); + + /** + * Returns the meta object for the containment reference list '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getUses <em>Uses</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Uses</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getUses() + * @see #getConfiguration() + * @generated + */ + EReference getConfiguration_Uses(); + + /** + * Returns the meta object for the containment reference list '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getGenerators <em>Generators</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Generators</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getGenerators() + * @see #getConfiguration() + * @generated + */ + EReference getConfiguration_Generators(); + + /** + * Returns the meta object for the containment reference list '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getFunctions <em>Functions</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Functions</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getFunctions() + * @see #getConfiguration() + * @generated + */ + EReference getConfiguration_Functions(); + + /** + * Returns the meta object for the containment reference list '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getStatements <em>Statements</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Statements</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Configuration#getStatements() + * @see #getConfiguration() + * @generated + */ + EReference getConfiguration_Statements(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Use <em>Use</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Use</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Use + * @generated + */ + EClass getUse(); + + /** + * Returns the meta object for the attribute '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Use#getImportURI <em>Import URI</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Import URI</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Use#getImportURI() + * @see #getUse() + * @generated + */ + EAttribute getUse_ImportURI(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition <em>Parametrized Function Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Parametrized Function Definition</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition + * @generated + */ + EClass getParametrizedFunctionDefinition(); + + /** + * Returns the meta object for the attribute '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition#getName() + * @see #getParametrizedFunctionDefinition() + * @generated + */ + EAttribute getParametrizedFunctionDefinition_Name(); + + /** + * Returns the meta object for the containment reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition#getDefinition <em>Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Definition</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition#getDefinition() + * @see #getParametrizedFunctionDefinition() + * @generated + */ + EReference getParametrizedFunctionDefinition_Definition(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition <em>Generator Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Generator Definition</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition + * @generated + */ + EClass getGeneratorDefinition(); + + /** + * Returns the meta object for the attribute '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition#getName() + * @see #getGeneratorDefinition() + * @generated + */ + EAttribute getGeneratorDefinition_Name(); + + /** + * Returns the meta object for the containment reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition#getDefinition <em>Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Definition</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition#getDefinition() + * @see #getGeneratorDefinition() + * @generated + */ + EReference getGeneratorDefinition_Definition(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Statement <em>Statement</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Statement</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Statement + * @generated + */ + EClass getStatement(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement <em>For Statement</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>For Statement</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement + * @generated + */ + EClass getForStatement(); + + /** + * Returns the meta object for the attribute '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getName() + * @see #getForStatement() + * @generated + */ + EAttribute getForStatement_Name(); + + /** + * Returns the meta object for the containment reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getRange <em>Range</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Range</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getRange() + * @see #getForStatement() + * @generated + */ + EReference getForStatement_Range(); + + /** + * Returns the meta object for the containment reference list '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getStatements <em>Statements</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Statements</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement#getStatements() + * @see #getForStatement() + * @generated + */ + EReference getForStatement_Statements(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Range <em>Range</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Range</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Range + * @generated + */ + EClass getRange(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange <em>Counter Range</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Counter Range</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange + * @generated + */ + EClass getCounterRange(); + + /** + * Returns the meta object for the attribute '{@link de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange#getStart <em>Start</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Start</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange#getStart() + * @see #getCounterRange() + * @generated + */ + EAttribute getCounterRange_Start(); + + /** + * Returns the meta object for the attribute '{@link de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange#getEnd <em>End</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>End</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange#getEnd() + * @see #getCounterRange() + * @generated + */ + EAttribute getCounterRange_End(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Functions <em>Functions</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Functions</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Functions + * @generated + */ + EClass getFunctions(); + + /** + * Returns the meta object for the containment reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Functions#getFunctionReferences <em>Function References</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Function References</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Functions#getFunctionReferences() + * @see #getFunctions() + * @generated + */ + EReference getFunctions_FunctionReferences(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences <em>Function References</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Function References</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences + * @generated + */ + EClass getFunctionReferences(); + + /** + * Returns the meta object for the containment reference list '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences#getFunctions <em>Functions</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Functions</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences#getFunctions() + * @see #getFunctionReferences() + * @generated + */ + EReference getFunctionReferences_Functions(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Generators <em>Generators</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Generators</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Generators + * @generated + */ + EClass getGenerators(); + + /** + * Returns the meta object for the containment reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Generators#getGeneratorReferences <em>Generator References</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Generator References</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Generators#getGeneratorReferences() + * @see #getGenerators() + * @generated + */ + EReference getGenerators_GeneratorReferences(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences <em>Generator References</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Generator References</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences + * @generated + */ + EClass getGeneratorReferences(); + + /** + * Returns the meta object for the reference list '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences#getGenerators <em>Generators</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Generators</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences#getGenerators() + * @see #getGeneratorReferences() + * @generated + */ + EReference getGeneratorReferences_Generators(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement <em>Apply Statement</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Apply Statement</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement + * @generated + */ + EClass getApplyStatement(); + + /** + * Returns the meta object for the attribute '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getFile <em>File</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>File</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getFile() + * @see #getApplyStatement() + * @generated + */ + EAttribute getApplyStatement_File(); + + /** + * Returns the meta object for the attribute '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getCount <em>Count</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Count</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getCount() + * @see #getApplyStatement() + * @generated + */ + EAttribute getApplyStatement_Count(); + + /** + * Returns the meta object for the containment reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getFunction <em>Function</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Function</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getFunction() + * @see #getApplyStatement() + * @generated + */ + EReference getApplyStatement_Function(); + + /** + * Returns the meta object for the containment reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getGenerator <em>Generator</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Generator</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement#getGenerator() + * @see #getApplyStatement() + * @generated + */ + EReference getApplyStatement_Generator(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReference <em>Generator Reference</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Generator Reference</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReference + * @generated + */ + EClass getGeneratorReference(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference <em>Generator Definition Reference</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Generator Definition Reference</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference + * @generated + */ + EClass getGeneratorDefinitionReference(); + + /** + * Returns the meta object for the reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference#getDefinition <em>Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Definition</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference#getDefinition() + * @see #getGeneratorDefinitionReference() + * @generated + */ + EReference getGeneratorDefinitionReference_Definition(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReference <em>Function Reference</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Function Reference</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReference + * @generated + */ + EClass getFunctionReference(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefReference <em>Function Def Reference</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Function Def Reference</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefReference + * @generated + */ + EClass getFunctionDefReference(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable <em>Loop Variable</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Loop Variable</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable + * @generated + */ + EClass getLoopVariable(); + + /** + * Returns the meta object for the reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable#getDefinition <em>Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Definition</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable#getDefinition() + * @see #getLoopVariable() + * @generated + */ + EReference getLoopVariable_Definition(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference <em>Function Definition Reference</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Function Definition Reference</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference + * @generated + */ + EClass getFunctionDefinitionReference(); + + /** + * Returns the meta object for the reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference#getDefinition <em>Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Definition</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference#getDefinition() + * @see #getFunctionDefinitionReference() + * @generated + */ + EReference getFunctionDefinitionReference_Definition(); + + /** + * Returns the meta object for class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference <em>Parametrized Function Definition Reference</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>Parametrized Function Definition Reference</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference + * @generated + */ + EClass getParametrizedFunctionDefinitionReference(); + + /** + * Returns the meta object for the reference '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference#getDefinition <em>Definition</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Definition</em>'. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference#getDefinition() + * @see #getParametrizedFunctionDefinitionReference() + * @generated + */ + EReference getParametrizedFunctionDefinitionReference_Definition(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + GeneratorDSLFactory getGeneratorDSLFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals + { + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ConfigurationImpl <em>Configuration</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ConfigurationImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getConfiguration() + * @generated + */ + EClass CONFIGURATION = eINSTANCE.getConfiguration(); + + /** + * The meta object literal for the '<em><b>Uses</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference CONFIGURATION__USES = eINSTANCE.getConfiguration_Uses(); + + /** + * The meta object literal for the '<em><b>Generators</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference CONFIGURATION__GENERATORS = eINSTANCE.getConfiguration_Generators(); + + /** + * The meta object literal for the '<em><b>Functions</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference CONFIGURATION__FUNCTIONS = eINSTANCE.getConfiguration_Functions(); + + /** + * The meta object literal for the '<em><b>Statements</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference CONFIGURATION__STATEMENTS = eINSTANCE.getConfiguration_Statements(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.UseImpl <em>Use</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.UseImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getUse() + * @generated + */ + EClass USE = eINSTANCE.getUse(); + + /** + * The meta object literal for the '<em><b>Import URI</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute USE__IMPORT_URI = eINSTANCE.getUse_ImportURI(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionImpl <em>Parametrized Function Definition</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getParametrizedFunctionDefinition() + * @generated + */ + EClass PARAMETRIZED_FUNCTION_DEFINITION = eINSTANCE.getParametrizedFunctionDefinition(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute PARAMETRIZED_FUNCTION_DEFINITION__NAME = eINSTANCE.getParametrizedFunctionDefinition_Name(); + + /** + * The meta object literal for the '<em><b>Definition</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION = eINSTANCE.getParametrizedFunctionDefinition_Definition(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionImpl <em>Generator Definition</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGeneratorDefinition() + * @generated + */ + EClass GENERATOR_DEFINITION = eINSTANCE.getGeneratorDefinition(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute GENERATOR_DEFINITION__NAME = eINSTANCE.getGeneratorDefinition_Name(); + + /** + * The meta object literal for the '<em><b>Definition</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference GENERATOR_DEFINITION__DEFINITION = eINSTANCE.getGeneratorDefinition_Definition(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.StatementImpl <em>Statement</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.StatementImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getStatement() + * @generated + */ + EClass STATEMENT = eINSTANCE.getStatement(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ForStatementImpl <em>For Statement</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ForStatementImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getForStatement() + * @generated + */ + EClass FOR_STATEMENT = eINSTANCE.getForStatement(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute FOR_STATEMENT__NAME = eINSTANCE.getForStatement_Name(); + + /** + * The meta object literal for the '<em><b>Range</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference FOR_STATEMENT__RANGE = eINSTANCE.getForStatement_Range(); + + /** + * The meta object literal for the '<em><b>Statements</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference FOR_STATEMENT__STATEMENTS = eINSTANCE.getForStatement_Statements(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.RangeImpl <em>Range</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.RangeImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getRange() + * @generated + */ + EClass RANGE = eINSTANCE.getRange(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.CounterRangeImpl <em>Counter Range</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.CounterRangeImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getCounterRange() + * @generated + */ + EClass COUNTER_RANGE = eINSTANCE.getCounterRange(); + + /** + * The meta object literal for the '<em><b>Start</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute COUNTER_RANGE__START = eINSTANCE.getCounterRange_Start(); + + /** + * The meta object literal for the '<em><b>End</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute COUNTER_RANGE__END = eINSTANCE.getCounterRange_End(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionsImpl <em>Functions</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionsImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctions() + * @generated + */ + EClass FUNCTIONS = eINSTANCE.getFunctions(); + + /** + * The meta object literal for the '<em><b>Function References</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference FUNCTIONS__FUNCTION_REFERENCES = eINSTANCE.getFunctions_FunctionReferences(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferencesImpl <em>Function References</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferencesImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctionReferences() + * @generated + */ + EClass FUNCTION_REFERENCES = eINSTANCE.getFunctionReferences(); + + /** + * The meta object literal for the '<em><b>Functions</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference FUNCTION_REFERENCES__FUNCTIONS = eINSTANCE.getFunctionReferences_Functions(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorsImpl <em>Generators</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorsImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGenerators() + * @generated + */ + EClass GENERATORS = eINSTANCE.getGenerators(); + + /** + * The meta object literal for the '<em><b>Generator References</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference GENERATORS__GENERATOR_REFERENCES = eINSTANCE.getGenerators_GeneratorReferences(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferencesImpl <em>Generator References</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferencesImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGeneratorReferences() + * @generated + */ + EClass GENERATOR_REFERENCES = eINSTANCE.getGeneratorReferences(); + + /** + * The meta object literal for the '<em><b>Generators</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference GENERATOR_REFERENCES__GENERATORS = eINSTANCE.getGeneratorReferences_Generators(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ApplyStatementImpl <em>Apply Statement</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ApplyStatementImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getApplyStatement() + * @generated + */ + EClass APPLY_STATEMENT = eINSTANCE.getApplyStatement(); + + /** + * The meta object literal for the '<em><b>File</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute APPLY_STATEMENT__FILE = eINSTANCE.getApplyStatement_File(); + + /** + * The meta object literal for the '<em><b>Count</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute APPLY_STATEMENT__COUNT = eINSTANCE.getApplyStatement_Count(); + + /** + * The meta object literal for the '<em><b>Function</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference APPLY_STATEMENT__FUNCTION = eINSTANCE.getApplyStatement_Function(); + + /** + * The meta object literal for the '<em><b>Generator</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference APPLY_STATEMENT__GENERATOR = eINSTANCE.getApplyStatement_Generator(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferenceImpl <em>Generator Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGeneratorReference() + * @generated + */ + EClass GENERATOR_REFERENCE = eINSTANCE.getGeneratorReference(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionReferenceImpl <em>Generator Definition Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getGeneratorDefinitionReference() + * @generated + */ + EClass GENERATOR_DEFINITION_REFERENCE = eINSTANCE.getGeneratorDefinitionReference(); + + /** + * The meta object literal for the '<em><b>Definition</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference GENERATOR_DEFINITION_REFERENCE__DEFINITION = eINSTANCE.getGeneratorDefinitionReference_Definition(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferenceImpl <em>Function Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctionReference() + * @generated + */ + EClass FUNCTION_REFERENCE = eINSTANCE.getFunctionReference(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefReferenceImpl <em>Function Def Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctionDefReference() + * @generated + */ + EClass FUNCTION_DEF_REFERENCE = eINSTANCE.getFunctionDefReference(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.LoopVariableImpl <em>Loop Variable</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.LoopVariableImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getLoopVariable() + * @generated + */ + EClass LOOP_VARIABLE = eINSTANCE.getLoopVariable(); + + /** + * The meta object literal for the '<em><b>Definition</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference LOOP_VARIABLE__DEFINITION = eINSTANCE.getLoopVariable_Definition(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefinitionReferenceImpl <em>Function Definition Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefinitionReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getFunctionDefinitionReference() + * @generated + */ + EClass FUNCTION_DEFINITION_REFERENCE = eINSTANCE.getFunctionDefinitionReference(); + + /** + * The meta object literal for the '<em><b>Definition</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference FUNCTION_DEFINITION_REFERENCE__DEFINITION = eINSTANCE.getFunctionDefinitionReference_Definition(); + + /** + * The meta object literal for the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionReferenceImpl <em>Parametrized Function Definition Reference</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionReferenceImpl + * @see de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDSLPackageImpl#getParametrizedFunctionDefinitionReference() + * @generated + */ + EClass PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE = eINSTANCE.getParametrizedFunctionDefinitionReference(); + + /** + * The meta object literal for the '<em><b>Definition</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION = eINSTANCE.getParametrizedFunctionDefinitionReference_Definition(); + + } + +} //GeneratorDSLPackage diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDefinition.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDefinition.java new file mode 100644 index 00000000..0dcf7cce --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDefinition.java @@ -0,0 +1,73 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import de.evoal.languages.model.instance.Instance; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Generator Definition</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition#getName <em>Name</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGeneratorDefinition() + * @model + * @generated + */ +public interface GeneratorDefinition extends EObject +{ + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGeneratorDefinition_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the '<em><b>Definition</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Definition</em>' containment reference. + * @see #setDefinition(Instance) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGeneratorDefinition_Definition() + * @model containment="true" + * @generated + */ + Instance getDefinition(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition#getDefinition <em>Definition</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Definition</em>' containment reference. + * @see #getDefinition() + * @generated + */ + void setDefinition(Instance value); + +} // GeneratorDefinition diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDefinitionReference.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDefinitionReference.java new file mode 100644 index 00000000..101b0ab6 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorDefinitionReference.java @@ -0,0 +1,47 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Generator Definition Reference</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGeneratorDefinitionReference() + * @model + * @generated + */ +public interface GeneratorDefinitionReference extends GeneratorReference +{ + /** + * Returns the value of the '<em><b>Definition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Definition</em>' reference. + * @see #setDefinition(GeneratorDefinition) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGeneratorDefinitionReference_Definition() + * @model + * @generated + */ + GeneratorDefinition getDefinition(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference#getDefinition <em>Definition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Definition</em>' reference. + * @see #getDefinition() + * @generated + */ + void setDefinition(GeneratorDefinition value); + +} // GeneratorDefinitionReference diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorReference.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorReference.java new file mode 100644 index 00000000..56a48845 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorReference.java @@ -0,0 +1,20 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Generator Reference</b></em>'. + * <!-- end-user-doc --> + * + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGeneratorReference() + * @model + * @generated + */ +public interface GeneratorReference extends EObject +{ +} // GeneratorReference diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorReferences.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorReferences.java new file mode 100644 index 00000000..23982c23 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/GeneratorReferences.java @@ -0,0 +1,40 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Generator References</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences#getGenerators <em>Generators</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGeneratorReferences() + * @model + * @generated + */ +public interface GeneratorReferences extends EObject +{ + /** + * Returns the value of the '<em><b>Generators</b></em>' reference list. + * The list contents are of type {@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Generators</em>' reference list. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGeneratorReferences_Generators() + * @model + * @generated + */ + EList<GeneratorDefinition> getGenerators(); + +} // GeneratorReferences diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Generators.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Generators.java new file mode 100644 index 00000000..43e7c664 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Generators.java @@ -0,0 +1,47 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Generators</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.Generators#getGeneratorReferences <em>Generator References</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGenerators() + * @model + * @generated + */ +public interface Generators extends Range +{ + /** + * Returns the value of the '<em><b>Generator References</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Generator References</em>' containment reference. + * @see #setGeneratorReferences(GeneratorReferences) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getGenerators_GeneratorReferences() + * @model containment="true" + * @generated + */ + GeneratorReferences getGeneratorReferences(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Generators#getGeneratorReferences <em>Generator References</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Generator References</em>' containment reference. + * @see #getGeneratorReferences() + * @generated + */ + void setGeneratorReferences(GeneratorReferences value); + +} // Generators diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/LoopVariable.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/LoopVariable.java new file mode 100644 index 00000000..783d9ae7 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/LoopVariable.java @@ -0,0 +1,47 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Loop Variable</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getLoopVariable() + * @model + * @generated + */ +public interface LoopVariable extends GeneratorReference, FunctionReference +{ + /** + * Returns the value of the '<em><b>Definition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Definition</em>' reference. + * @see #setDefinition(ForStatement) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getLoopVariable_Definition() + * @model + * @generated + */ + ForStatement getDefinition(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable#getDefinition <em>Definition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Definition</em>' reference. + * @see #getDefinition() + * @generated + */ + void setDefinition(ForStatement value); + +} // LoopVariable diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ParametrizedFunctionDefinition.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ParametrizedFunctionDefinition.java new file mode 100644 index 00000000..228b2008 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ParametrizedFunctionDefinition.java @@ -0,0 +1,73 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import de.evoal.languages.model.instance.Instance; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Parametrized Function Definition</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition#getName <em>Name</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getParametrizedFunctionDefinition() + * @model + * @generated + */ +public interface ParametrizedFunctionDefinition extends EObject +{ + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getParametrizedFunctionDefinition_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the '<em><b>Definition</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Definition</em>' containment reference. + * @see #setDefinition(Instance) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getParametrizedFunctionDefinition_Definition() + * @model containment="true" + * @generated + */ + Instance getDefinition(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition#getDefinition <em>Definition</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Definition</em>' containment reference. + * @see #getDefinition() + * @generated + */ + void setDefinition(Instance value); + +} // ParametrizedFunctionDefinition diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ParametrizedFunctionDefinitionReference.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ParametrizedFunctionDefinitionReference.java new file mode 100644 index 00000000..ec87a200 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/ParametrizedFunctionDefinitionReference.java @@ -0,0 +1,47 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Parametrized Function Definition Reference</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getParametrizedFunctionDefinitionReference() + * @model + * @generated + */ +public interface ParametrizedFunctionDefinitionReference extends FunctionDefReference +{ + /** + * Returns the value of the '<em><b>Definition</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Definition</em>' reference. + * @see #setDefinition(FunctionDefinitionReference) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getParametrizedFunctionDefinitionReference_Definition() + * @model + * @generated + */ + FunctionDefinitionReference getDefinition(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference#getDefinition <em>Definition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Definition</em>' reference. + * @see #getDefinition() + * @generated + */ + void setDefinition(FunctionDefinitionReference value); + +} // ParametrizedFunctionDefinitionReference diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Range.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Range.java new file mode 100644 index 00000000..84f548f9 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Range.java @@ -0,0 +1,20 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Range</b></em>'. + * <!-- end-user-doc --> + * + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getRange() + * @model + * @generated + */ +public interface Range extends EObject +{ +} // Range diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Statement.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Statement.java new file mode 100644 index 00000000..52af2e57 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Statement.java @@ -0,0 +1,20 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Statement</b></em>'. + * <!-- end-user-doc --> + * + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getStatement() + * @model + * @generated + */ +public interface Statement extends EObject +{ +} // Statement diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Use.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Use.java new file mode 100644 index 00000000..eaea74d3 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/Use.java @@ -0,0 +1,48 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>Use</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.Use#getImportURI <em>Import URI</em>}</li> + * </ul> + * + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getUse() + * @model + * @generated + */ +public interface Use extends EObject +{ + /** + * Returns the value of the '<em><b>Import URI</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the value of the '<em>Import URI</em>' attribute. + * @see #setImportURI(String) + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#getUse_ImportURI() + * @model + * @generated + */ + String getImportURI(); + + /** + * Sets the value of the '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Use#getImportURI <em>Import URI</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Import URI</em>' attribute. + * @see #getImportURI() + * @generated + */ + void setImportURI(String value); + +} // Use diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ApplyStatementImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ApplyStatementImpl.java new file mode 100644 index 00000000..0745ba88 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ApplyStatementImpl.java @@ -0,0 +1,401 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement; +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReference; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Apply Statement</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ApplyStatementImpl#getFile <em>File</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ApplyStatementImpl#getCount <em>Count</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ApplyStatementImpl#getFunction <em>Function</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ApplyStatementImpl#getGenerator <em>Generator</em>}</li> + * </ul> + * + * @generated + */ +public class ApplyStatementImpl extends StatementImpl implements ApplyStatement +{ + /** + * The default value of the '{@link #getFile() <em>File</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFile() + * @generated + * @ordered + */ + protected static final String FILE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getFile() <em>File</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFile() + * @generated + * @ordered + */ + protected String file = FILE_EDEFAULT; + + /** + * The default value of the '{@link #getCount() <em>Count</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCount() + * @generated + * @ordered + */ + protected static final int COUNT_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getCount() <em>Count</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCount() + * @generated + * @ordered + */ + protected int count = COUNT_EDEFAULT; + + /** + * The cached value of the '{@link #getFunction() <em>Function</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFunction() + * @generated + * @ordered + */ + protected FunctionReference function; + + /** + * The cached value of the '{@link #getGenerator() <em>Generator</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getGenerator() + * @generated + * @ordered + */ + protected GeneratorReference generator; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ApplyStatementImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.APPLY_STATEMENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getFile() + { + return file; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFile(String newFile) + { + String oldFile = file; + file = newFile; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.APPLY_STATEMENT__FILE, oldFile, file)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getCount() + { + return count; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setCount(int newCount) + { + int oldCount = count; + count = newCount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.APPLY_STATEMENT__COUNT, oldCount, count)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FunctionReference getFunction() + { + return function; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetFunction(FunctionReference newFunction, NotificationChain msgs) + { + FunctionReference oldFunction = function; + function = newFunction; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION, oldFunction, newFunction); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFunction(FunctionReference newFunction) + { + if (newFunction != function) + { + NotificationChain msgs = null; + if (function != null) + msgs = ((InternalEObject)function).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION, null, msgs); + if (newFunction != null) + msgs = ((InternalEObject)newFunction).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION, null, msgs); + msgs = basicSetFunction(newFunction, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION, newFunction, newFunction)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorReference getGenerator() + { + return generator; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetGenerator(GeneratorReference newGenerator, NotificationChain msgs) + { + GeneratorReference oldGenerator = generator; + generator = newGenerator; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR, oldGenerator, newGenerator); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setGenerator(GeneratorReference newGenerator) + { + if (newGenerator != generator) + { + NotificationChain msgs = null; + if (generator != null) + msgs = ((InternalEObject)generator).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR, null, msgs); + if (newGenerator != null) + msgs = ((InternalEObject)newGenerator).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR, null, msgs); + msgs = basicSetGenerator(newGenerator, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR, newGenerator, newGenerator)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION: + return basicSetFunction(null, msgs); + case GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR: + return basicSetGenerator(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.APPLY_STATEMENT__FILE: + return getFile(); + case GeneratorDSLPackage.APPLY_STATEMENT__COUNT: + return getCount(); + case GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION: + return getFunction(); + case GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR: + return getGenerator(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.APPLY_STATEMENT__FILE: + setFile((String)newValue); + return; + case GeneratorDSLPackage.APPLY_STATEMENT__COUNT: + setCount((Integer)newValue); + return; + case GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION: + setFunction((FunctionReference)newValue); + return; + case GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR: + setGenerator((GeneratorReference)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.APPLY_STATEMENT__FILE: + setFile(FILE_EDEFAULT); + return; + case GeneratorDSLPackage.APPLY_STATEMENT__COUNT: + setCount(COUNT_EDEFAULT); + return; + case GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION: + setFunction((FunctionReference)null); + return; + case GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR: + setGenerator((GeneratorReference)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.APPLY_STATEMENT__FILE: + return FILE_EDEFAULT == null ? file != null : !FILE_EDEFAULT.equals(file); + case GeneratorDSLPackage.APPLY_STATEMENT__COUNT: + return count != COUNT_EDEFAULT; + case GeneratorDSLPackage.APPLY_STATEMENT__FUNCTION: + return function != null; + case GeneratorDSLPackage.APPLY_STATEMENT__GENERATOR: + return generator != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (file: "); + result.append(file); + result.append(", count: "); + result.append(count); + result.append(')'); + return result.toString(); + } + +} //ApplyStatementImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ConfigurationImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ConfigurationImpl.java new file mode 100644 index 00000000..84d00870 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ConfigurationImpl.java @@ -0,0 +1,289 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.Configuration; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition; +import de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition; +import de.evoal.languages.model.generator.dsl.generatorDSL.Statement; +import de.evoal.languages.model.generator.dsl.generatorDSL.Use; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Configuration</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ConfigurationImpl#getUses <em>Uses</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ConfigurationImpl#getGenerators <em>Generators</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ConfigurationImpl#getFunctions <em>Functions</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ConfigurationImpl#getStatements <em>Statements</em>}</li> + * </ul> + * + * @generated + */ +public class ConfigurationImpl extends MinimalEObjectImpl.Container implements Configuration +{ + /** + * The cached value of the '{@link #getUses() <em>Uses</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getUses() + * @generated + * @ordered + */ + protected EList<Use> uses; + + /** + * The cached value of the '{@link #getGenerators() <em>Generators</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getGenerators() + * @generated + * @ordered + */ + protected EList<GeneratorDefinition> generators; + + /** + * The cached value of the '{@link #getFunctions() <em>Functions</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFunctions() + * @generated + * @ordered + */ + protected EList<ParametrizedFunctionDefinition> functions; + + /** + * The cached value of the '{@link #getStatements() <em>Statements</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStatements() + * @generated + * @ordered + */ + protected EList<Statement> statements; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ConfigurationImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.CONFIGURATION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<Use> getUses() + { + if (uses == null) + { + uses = new EObjectContainmentEList<Use>(Use.class, this, GeneratorDSLPackage.CONFIGURATION__USES); + } + return uses; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<GeneratorDefinition> getGenerators() + { + if (generators == null) + { + generators = new EObjectContainmentEList<GeneratorDefinition>(GeneratorDefinition.class, this, GeneratorDSLPackage.CONFIGURATION__GENERATORS); + } + return generators; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<ParametrizedFunctionDefinition> getFunctions() + { + if (functions == null) + { + functions = new EObjectContainmentEList<ParametrizedFunctionDefinition>(ParametrizedFunctionDefinition.class, this, GeneratorDSLPackage.CONFIGURATION__FUNCTIONS); + } + return functions; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<Statement> getStatements() + { + if (statements == null) + { + statements = new EObjectContainmentEList<Statement>(Statement.class, this, GeneratorDSLPackage.CONFIGURATION__STATEMENTS); + } + return statements; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case GeneratorDSLPackage.CONFIGURATION__USES: + return ((InternalEList<?>)getUses()).basicRemove(otherEnd, msgs); + case GeneratorDSLPackage.CONFIGURATION__GENERATORS: + return ((InternalEList<?>)getGenerators()).basicRemove(otherEnd, msgs); + case GeneratorDSLPackage.CONFIGURATION__FUNCTIONS: + return ((InternalEList<?>)getFunctions()).basicRemove(otherEnd, msgs); + case GeneratorDSLPackage.CONFIGURATION__STATEMENTS: + return ((InternalEList<?>)getStatements()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.CONFIGURATION__USES: + return getUses(); + case GeneratorDSLPackage.CONFIGURATION__GENERATORS: + return getGenerators(); + case GeneratorDSLPackage.CONFIGURATION__FUNCTIONS: + return getFunctions(); + case GeneratorDSLPackage.CONFIGURATION__STATEMENTS: + return getStatements(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.CONFIGURATION__USES: + getUses().clear(); + getUses().addAll((Collection<? extends Use>)newValue); + return; + case GeneratorDSLPackage.CONFIGURATION__GENERATORS: + getGenerators().clear(); + getGenerators().addAll((Collection<? extends GeneratorDefinition>)newValue); + return; + case GeneratorDSLPackage.CONFIGURATION__FUNCTIONS: + getFunctions().clear(); + getFunctions().addAll((Collection<? extends ParametrizedFunctionDefinition>)newValue); + return; + case GeneratorDSLPackage.CONFIGURATION__STATEMENTS: + getStatements().clear(); + getStatements().addAll((Collection<? extends Statement>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.CONFIGURATION__USES: + getUses().clear(); + return; + case GeneratorDSLPackage.CONFIGURATION__GENERATORS: + getGenerators().clear(); + return; + case GeneratorDSLPackage.CONFIGURATION__FUNCTIONS: + getFunctions().clear(); + return; + case GeneratorDSLPackage.CONFIGURATION__STATEMENTS: + getStatements().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.CONFIGURATION__USES: + return uses != null && !uses.isEmpty(); + case GeneratorDSLPackage.CONFIGURATION__GENERATORS: + return generators != null && !generators.isEmpty(); + case GeneratorDSLPackage.CONFIGURATION__FUNCTIONS: + return functions != null && !functions.isEmpty(); + case GeneratorDSLPackage.CONFIGURATION__STATEMENTS: + return statements != null && !statements.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ConfigurationImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/CounterRangeImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/CounterRangeImpl.java new file mode 100644 index 00000000..ee6c2022 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/CounterRangeImpl.java @@ -0,0 +1,237 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Counter Range</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.CounterRangeImpl#getStart <em>Start</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.CounterRangeImpl#getEnd <em>End</em>}</li> + * </ul> + * + * @generated + */ +public class CounterRangeImpl extends RangeImpl implements CounterRange +{ + /** + * The default value of the '{@link #getStart() <em>Start</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStart() + * @generated + * @ordered + */ + protected static final int START_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getStart() <em>Start</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStart() + * @generated + * @ordered + */ + protected int start = START_EDEFAULT; + + /** + * The default value of the '{@link #getEnd() <em>End</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEnd() + * @generated + * @ordered + */ + protected static final int END_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getEnd() <em>End</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getEnd() + * @generated + * @ordered + */ + protected int end = END_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected CounterRangeImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.COUNTER_RANGE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getStart() + { + return start; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setStart(int newStart) + { + int oldStart = start; + start = newStart; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.COUNTER_RANGE__START, oldStart, start)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public int getEnd() + { + return end; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setEnd(int newEnd) + { + int oldEnd = end; + end = newEnd; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.COUNTER_RANGE__END, oldEnd, end)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.COUNTER_RANGE__START: + return getStart(); + case GeneratorDSLPackage.COUNTER_RANGE__END: + return getEnd(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.COUNTER_RANGE__START: + setStart((Integer)newValue); + return; + case GeneratorDSLPackage.COUNTER_RANGE__END: + setEnd((Integer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.COUNTER_RANGE__START: + setStart(START_EDEFAULT); + return; + case GeneratorDSLPackage.COUNTER_RANGE__END: + setEnd(END_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.COUNTER_RANGE__START: + return start != START_EDEFAULT; + case GeneratorDSLPackage.COUNTER_RANGE__END: + return end != END_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (start: "); + result.append(start); + result.append(", end: "); + result.append(end); + result.append(')'); + return result.toString(); + } + +} //CounterRangeImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ForStatementImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ForStatementImpl.java new file mode 100644 index 00000000..9af12664 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ForStatementImpl.java @@ -0,0 +1,317 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.Range; +import de.evoal.languages.model.generator.dsl.generatorDSL.Statement; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>For Statement</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ForStatementImpl#getName <em>Name</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ForStatementImpl#getRange <em>Range</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ForStatementImpl#getStatements <em>Statements</em>}</li> + * </ul> + * + * @generated + */ +public class ForStatementImpl extends StatementImpl implements ForStatement +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getRange() <em>Range</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getRange() + * @generated + * @ordered + */ + protected Range range; + + /** + * The cached value of the '{@link #getStatements() <em>Statements</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getStatements() + * @generated + * @ordered + */ + protected EList<Statement> statements; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ForStatementImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.FOR_STATEMENT; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.FOR_STATEMENT__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Range getRange() + { + return range; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetRange(Range newRange, NotificationChain msgs) + { + Range oldRange = range; + range = newRange; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.FOR_STATEMENT__RANGE, oldRange, newRange); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setRange(Range newRange) + { + if (newRange != range) + { + NotificationChain msgs = null; + if (range != null) + msgs = ((InternalEObject)range).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.FOR_STATEMENT__RANGE, null, msgs); + if (newRange != null) + msgs = ((InternalEObject)newRange).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.FOR_STATEMENT__RANGE, null, msgs); + msgs = basicSetRange(newRange, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.FOR_STATEMENT__RANGE, newRange, newRange)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<Statement> getStatements() + { + if (statements == null) + { + statements = new EObjectContainmentEList<Statement>(Statement.class, this, GeneratorDSLPackage.FOR_STATEMENT__STATEMENTS); + } + return statements; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case GeneratorDSLPackage.FOR_STATEMENT__RANGE: + return basicSetRange(null, msgs); + case GeneratorDSLPackage.FOR_STATEMENT__STATEMENTS: + return ((InternalEList<?>)getStatements()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.FOR_STATEMENT__NAME: + return getName(); + case GeneratorDSLPackage.FOR_STATEMENT__RANGE: + return getRange(); + case GeneratorDSLPackage.FOR_STATEMENT__STATEMENTS: + return getStatements(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.FOR_STATEMENT__NAME: + setName((String)newValue); + return; + case GeneratorDSLPackage.FOR_STATEMENT__RANGE: + setRange((Range)newValue); + return; + case GeneratorDSLPackage.FOR_STATEMENT__STATEMENTS: + getStatements().clear(); + getStatements().addAll((Collection<? extends Statement>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.FOR_STATEMENT__NAME: + setName(NAME_EDEFAULT); + return; + case GeneratorDSLPackage.FOR_STATEMENT__RANGE: + setRange((Range)null); + return; + case GeneratorDSLPackage.FOR_STATEMENT__STATEMENTS: + getStatements().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.FOR_STATEMENT__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case GeneratorDSLPackage.FOR_STATEMENT__RANGE: + return range != null; + case GeneratorDSLPackage.FOR_STATEMENT__STATEMENTS: + return statements != null && !statements.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //ForStatementImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionDefReferenceImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionDefReferenceImpl.java new file mode 100644 index 00000000..4c243206 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionDefReferenceImpl.java @@ -0,0 +1,41 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Function Def Reference</b></em>'. + * <!-- end-user-doc --> + * + * @generated + */ +public class FunctionDefReferenceImpl extends FunctionReferenceImpl implements FunctionDefReference +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected FunctionDefReferenceImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.FUNCTION_DEF_REFERENCE; + } + +} //FunctionDefReferenceImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionDefinitionReferenceImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionDefinitionReferenceImpl.java new file mode 100644 index 00000000..84ba008b --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionDefinitionReferenceImpl.java @@ -0,0 +1,176 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.dl.FunctionDefinition; + +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Function Definition Reference</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionDefinitionReferenceImpl#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @generated + */ +public class FunctionDefinitionReferenceImpl extends FunctionDefReferenceImpl implements FunctionDefinitionReference +{ + /** + * The cached value of the '{@link #getDefinition() <em>Definition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefinition() + * @generated + * @ordered + */ + protected FunctionDefinition definition; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected FunctionDefinitionReferenceImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.FUNCTION_DEFINITION_REFERENCE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FunctionDefinition getDefinition() + { + if (definition != null && definition.eIsProxy()) + { + InternalEObject oldDefinition = (InternalEObject)definition; + definition = (FunctionDefinition)eResolveProxy(oldDefinition); + if (definition != oldDefinition) + { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE__DEFINITION, oldDefinition, definition)); + } + } + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public FunctionDefinition basicGetDefinition() + { + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefinition(FunctionDefinition newDefinition) + { + FunctionDefinition oldDefinition = definition; + definition = newDefinition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE__DEFINITION, oldDefinition, definition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE__DEFINITION: + if (resolve) return getDefinition(); + return basicGetDefinition(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE__DEFINITION: + setDefinition((FunctionDefinition)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE__DEFINITION: + setDefinition((FunctionDefinition)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE__DEFINITION: + return definition != null; + } + return super.eIsSet(featureID); + } + +} //FunctionDefinitionReferenceImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionReferenceImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionReferenceImpl.java new file mode 100644 index 00000000..6747fa81 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionReferenceImpl.java @@ -0,0 +1,43 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Function Reference</b></em>'. + * <!-- end-user-doc --> + * + * @generated + */ +public class FunctionReferenceImpl extends MinimalEObjectImpl.Container implements FunctionReference +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected FunctionReferenceImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.FUNCTION_REFERENCE; + } + +} //FunctionReferenceImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionReferencesImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionReferencesImpl.java new file mode 100644 index 00000000..63f678a5 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionReferencesImpl.java @@ -0,0 +1,169 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Function References</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionReferencesImpl#getFunctions <em>Functions</em>}</li> + * </ul> + * + * @generated + */ +public class FunctionReferencesImpl extends MinimalEObjectImpl.Container implements FunctionReferences +{ + /** + * The cached value of the '{@link #getFunctions() <em>Functions</em>}' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFunctions() + * @generated + * @ordered + */ + protected EList<FunctionDefReference> functions; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected FunctionReferencesImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.FUNCTION_REFERENCES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<FunctionDefReference> getFunctions() + { + if (functions == null) + { + functions = new EObjectContainmentEList<FunctionDefReference>(FunctionDefReference.class, this, GeneratorDSLPackage.FUNCTION_REFERENCES__FUNCTIONS); + } + return functions; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_REFERENCES__FUNCTIONS: + return ((InternalEList<?>)getFunctions()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_REFERENCES__FUNCTIONS: + return getFunctions(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_REFERENCES__FUNCTIONS: + getFunctions().clear(); + getFunctions().addAll((Collection<? extends FunctionDefReference>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_REFERENCES__FUNCTIONS: + getFunctions().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTION_REFERENCES__FUNCTIONS: + return functions != null && !functions.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //FunctionReferencesImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionsImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionsImpl.java new file mode 100644 index 00000000..a063bcb8 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/FunctionsImpl.java @@ -0,0 +1,196 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences; +import de.evoal.languages.model.generator.dsl.generatorDSL.Functions; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Functions</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.FunctionsImpl#getFunctionReferences <em>Function References</em>}</li> + * </ul> + * + * @generated + */ +public class FunctionsImpl extends RangeImpl implements Functions +{ + /** + * The cached value of the '{@link #getFunctionReferences() <em>Function References</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getFunctionReferences() + * @generated + * @ordered + */ + protected FunctionReferences functionReferences; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected FunctionsImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.FUNCTIONS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FunctionReferences getFunctionReferences() + { + return functionReferences; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetFunctionReferences(FunctionReferences newFunctionReferences, NotificationChain msgs) + { + FunctionReferences oldFunctionReferences = functionReferences; + functionReferences = newFunctionReferences; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES, oldFunctionReferences, newFunctionReferences); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setFunctionReferences(FunctionReferences newFunctionReferences) + { + if (newFunctionReferences != functionReferences) + { + NotificationChain msgs = null; + if (functionReferences != null) + msgs = ((InternalEObject)functionReferences).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES, null, msgs); + if (newFunctionReferences != null) + msgs = ((InternalEObject)newFunctionReferences).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES, null, msgs); + msgs = basicSetFunctionReferences(newFunctionReferences, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES, newFunctionReferences, newFunctionReferences)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES: + return basicSetFunctionReferences(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES: + return getFunctionReferences(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES: + setFunctionReferences((FunctionReferences)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES: + setFunctionReferences((FunctionReferences)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.FUNCTIONS__FUNCTION_REFERENCES: + return functionReferences != null; + } + return super.eIsSet(featureID); + } + +} //FunctionsImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDSLFactoryImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDSLFactoryImpl.java new file mode 100644 index 00000000..b3159b5c --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDSLFactoryImpl.java @@ -0,0 +1,356 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class GeneratorDSLFactoryImpl extends EFactoryImpl implements GeneratorDSLFactory +{ + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static GeneratorDSLFactory init() + { + try + { + GeneratorDSLFactory theGeneratorDSLFactory = (GeneratorDSLFactory)EPackage.Registry.INSTANCE.getEFactory(GeneratorDSLPackage.eNS_URI); + if (theGeneratorDSLFactory != null) + { + return theGeneratorDSLFactory; + } + } + catch (Exception exception) + { + EcorePlugin.INSTANCE.log(exception); + } + return new GeneratorDSLFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public GeneratorDSLFactoryImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) + { + switch (eClass.getClassifierID()) + { + case GeneratorDSLPackage.CONFIGURATION: return createConfiguration(); + case GeneratorDSLPackage.USE: return createUse(); + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION: return createParametrizedFunctionDefinition(); + case GeneratorDSLPackage.GENERATOR_DEFINITION: return createGeneratorDefinition(); + case GeneratorDSLPackage.STATEMENT: return createStatement(); + case GeneratorDSLPackage.FOR_STATEMENT: return createForStatement(); + case GeneratorDSLPackage.RANGE: return createRange(); + case GeneratorDSLPackage.COUNTER_RANGE: return createCounterRange(); + case GeneratorDSLPackage.FUNCTIONS: return createFunctions(); + case GeneratorDSLPackage.FUNCTION_REFERENCES: return createFunctionReferences(); + case GeneratorDSLPackage.GENERATORS: return createGenerators(); + case GeneratorDSLPackage.GENERATOR_REFERENCES: return createGeneratorReferences(); + case GeneratorDSLPackage.APPLY_STATEMENT: return createApplyStatement(); + case GeneratorDSLPackage.GENERATOR_REFERENCE: return createGeneratorReference(); + case GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE: return createGeneratorDefinitionReference(); + case GeneratorDSLPackage.FUNCTION_REFERENCE: return createFunctionReference(); + case GeneratorDSLPackage.FUNCTION_DEF_REFERENCE: return createFunctionDefReference(); + case GeneratorDSLPackage.LOOP_VARIABLE: return createLoopVariable(); + case GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE: return createFunctionDefinitionReference(); + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE: return createParametrizedFunctionDefinitionReference(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Configuration createConfiguration() + { + ConfigurationImpl configuration = new ConfigurationImpl(); + return configuration; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Use createUse() + { + UseImpl use = new UseImpl(); + return use; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ParametrizedFunctionDefinition createParametrizedFunctionDefinition() + { + ParametrizedFunctionDefinitionImpl parametrizedFunctionDefinition = new ParametrizedFunctionDefinitionImpl(); + return parametrizedFunctionDefinition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorDefinition createGeneratorDefinition() + { + GeneratorDefinitionImpl generatorDefinition = new GeneratorDefinitionImpl(); + return generatorDefinition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Statement createStatement() + { + StatementImpl statement = new StatementImpl(); + return statement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ForStatement createForStatement() + { + ForStatementImpl forStatement = new ForStatementImpl(); + return forStatement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Range createRange() + { + RangeImpl range = new RangeImpl(); + return range; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public CounterRange createCounterRange() + { + CounterRangeImpl counterRange = new CounterRangeImpl(); + return counterRange; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Functions createFunctions() + { + FunctionsImpl functions = new FunctionsImpl(); + return functions; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FunctionReferences createFunctionReferences() + { + FunctionReferencesImpl functionReferences = new FunctionReferencesImpl(); + return functionReferences; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Generators createGenerators() + { + GeneratorsImpl generators = new GeneratorsImpl(); + return generators; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorReferences createGeneratorReferences() + { + GeneratorReferencesImpl generatorReferences = new GeneratorReferencesImpl(); + return generatorReferences; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ApplyStatement createApplyStatement() + { + ApplyStatementImpl applyStatement = new ApplyStatementImpl(); + return applyStatement; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorReference createGeneratorReference() + { + GeneratorReferenceImpl generatorReference = new GeneratorReferenceImpl(); + return generatorReference; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorDefinitionReference createGeneratorDefinitionReference() + { + GeneratorDefinitionReferenceImpl generatorDefinitionReference = new GeneratorDefinitionReferenceImpl(); + return generatorDefinitionReference; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FunctionReference createFunctionReference() + { + FunctionReferenceImpl functionReference = new FunctionReferenceImpl(); + return functionReference; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FunctionDefReference createFunctionDefReference() + { + FunctionDefReferenceImpl functionDefReference = new FunctionDefReferenceImpl(); + return functionDefReference; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public LoopVariable createLoopVariable() + { + LoopVariableImpl loopVariable = new LoopVariableImpl(); + return loopVariable; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FunctionDefinitionReference createFunctionDefinitionReference() + { + FunctionDefinitionReferenceImpl functionDefinitionReference = new FunctionDefinitionReferenceImpl(); + return functionDefinitionReference; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ParametrizedFunctionDefinitionReference createParametrizedFunctionDefinitionReference() + { + ParametrizedFunctionDefinitionReferenceImpl parametrizedFunctionDefinitionReference = new ParametrizedFunctionDefinitionReferenceImpl(); + return parametrizedFunctionDefinitionReference; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorDSLPackage getGeneratorDSLPackage() + { + return (GeneratorDSLPackage)getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static GeneratorDSLPackage getPackage() + { + return GeneratorDSLPackage.eINSTANCE; + } + +} //GeneratorDSLFactoryImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDSLPackageImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDSLPackageImpl.java new file mode 100644 index 00000000..e2e13fa9 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDSLPackageImpl.java @@ -0,0 +1,981 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.ddl.DdlPackage; + +import de.evoal.languages.model.dl.DlPackage; + +import de.evoal.languages.model.el.ELPackage; + +import de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement; +import de.evoal.languages.model.generator.dsl.generatorDSL.Configuration; +import de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange; +import de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement; +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences; +import de.evoal.languages.model.generator.dsl.generatorDSL.Functions; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLFactory; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences; +import de.evoal.languages.model.generator.dsl.generatorDSL.Generators; +import de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable; +import de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition; +import de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.Range; +import de.evoal.languages.model.generator.dsl.generatorDSL.Statement; +import de.evoal.languages.model.generator.dsl.generatorDSL.Use; + +import de.evoal.languages.model.instance.InstancePackage; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class GeneratorDSLPackageImpl extends EPackageImpl implements GeneratorDSLPackage +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass configurationEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass useEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass parametrizedFunctionDefinitionEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass generatorDefinitionEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass statementEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass forStatementEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass rangeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass counterRangeEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass functionsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass functionReferencesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass generatorsEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass generatorReferencesEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass applyStatementEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass generatorReferenceEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass generatorDefinitionReferenceEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass functionReferenceEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass functionDefReferenceEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass loopVariableEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass functionDefinitionReferenceEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass parametrizedFunctionDefinitionReferenceEClass = null; + + /** + * Creates an instance of the model <b>Package</b>, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + * <p>Note: the correct way to create the package is via the static + * factory method {@link #init init()}, which also performs + * initialization of the package, or returns the registered package, + * if one already exists. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage#eNS_URI + * @see #init() + * @generated + */ + private GeneratorDSLPackageImpl() + { + super(eNS_URI, GeneratorDSLFactory.eINSTANCE); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. + * + * <p>This method is used to initialize {@link GeneratorDSLPackage#eINSTANCE} when that field is accessed. + * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static GeneratorDSLPackage init() + { + if (isInited) return (GeneratorDSLPackage)EPackage.Registry.INSTANCE.getEPackage(GeneratorDSLPackage.eNS_URI); + + // Obtain or create and register package + Object registeredGeneratorDSLPackage = EPackage.Registry.INSTANCE.get(eNS_URI); + GeneratorDSLPackageImpl theGeneratorDSLPackage = registeredGeneratorDSLPackage instanceof GeneratorDSLPackageImpl ? (GeneratorDSLPackageImpl)registeredGeneratorDSLPackage : new GeneratorDSLPackageImpl(); + + isInited = true; + + // Initialize simple dependencies + DlPackage.eINSTANCE.eClass(); + InstancePackage.eINSTANCE.eClass(); + ELPackage.eINSTANCE.eClass(); + DdlPackage.eINSTANCE.eClass(); + + // Create package meta-data objects + theGeneratorDSLPackage.createPackageContents(); + + // Initialize created meta-data + theGeneratorDSLPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theGeneratorDSLPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(GeneratorDSLPackage.eNS_URI, theGeneratorDSLPackage); + return theGeneratorDSLPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getConfiguration() + { + return configurationEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getConfiguration_Uses() + { + return (EReference)configurationEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getConfiguration_Generators() + { + return (EReference)configurationEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getConfiguration_Functions() + { + return (EReference)configurationEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getConfiguration_Statements() + { + return (EReference)configurationEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getUse() + { + return useEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getUse_ImportURI() + { + return (EAttribute)useEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getParametrizedFunctionDefinition() + { + return parametrizedFunctionDefinitionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getParametrizedFunctionDefinition_Name() + { + return (EAttribute)parametrizedFunctionDefinitionEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getParametrizedFunctionDefinition_Definition() + { + return (EReference)parametrizedFunctionDefinitionEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getGeneratorDefinition() + { + return generatorDefinitionEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getGeneratorDefinition_Name() + { + return (EAttribute)generatorDefinitionEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getGeneratorDefinition_Definition() + { + return (EReference)generatorDefinitionEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getStatement() + { + return statementEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getForStatement() + { + return forStatementEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getForStatement_Name() + { + return (EAttribute)forStatementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getForStatement_Range() + { + return (EReference)forStatementEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getForStatement_Statements() + { + return (EReference)forStatementEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getRange() + { + return rangeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getCounterRange() + { + return counterRangeEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getCounterRange_Start() + { + return (EAttribute)counterRangeEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getCounterRange_End() + { + return (EAttribute)counterRangeEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getFunctions() + { + return functionsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getFunctions_FunctionReferences() + { + return (EReference)functionsEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getFunctionReferences() + { + return functionReferencesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getFunctionReferences_Functions() + { + return (EReference)functionReferencesEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getGenerators() + { + return generatorsEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getGenerators_GeneratorReferences() + { + return (EReference)generatorsEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getGeneratorReferences() + { + return generatorReferencesEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getGeneratorReferences_Generators() + { + return (EReference)generatorReferencesEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getApplyStatement() + { + return applyStatementEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getApplyStatement_File() + { + return (EAttribute)applyStatementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EAttribute getApplyStatement_Count() + { + return (EAttribute)applyStatementEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getApplyStatement_Function() + { + return (EReference)applyStatementEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getApplyStatement_Generator() + { + return (EReference)applyStatementEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getGeneratorReference() + { + return generatorReferenceEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getGeneratorDefinitionReference() + { + return generatorDefinitionReferenceEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getGeneratorDefinitionReference_Definition() + { + return (EReference)generatorDefinitionReferenceEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getFunctionReference() + { + return functionReferenceEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getFunctionDefReference() + { + return functionDefReferenceEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getLoopVariable() + { + return loopVariableEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getLoopVariable_Definition() + { + return (EReference)loopVariableEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getFunctionDefinitionReference() + { + return functionDefinitionReferenceEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getFunctionDefinitionReference_Definition() + { + return (EReference)functionDefinitionReferenceEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EClass getParametrizedFunctionDefinitionReference() + { + return parametrizedFunctionDefinitionReferenceEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EReference getParametrizedFunctionDefinitionReference_Definition() + { + return (EReference)parametrizedFunctionDefinitionReferenceEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorDSLFactory getGeneratorDSLFactory() + { + return (GeneratorDSLFactory)getEFactoryInstance(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void createPackageContents() + { + if (isCreated) return; + isCreated = true; + + // Create classes and their features + configurationEClass = createEClass(CONFIGURATION); + createEReference(configurationEClass, CONFIGURATION__USES); + createEReference(configurationEClass, CONFIGURATION__GENERATORS); + createEReference(configurationEClass, CONFIGURATION__FUNCTIONS); + createEReference(configurationEClass, CONFIGURATION__STATEMENTS); + + useEClass = createEClass(USE); + createEAttribute(useEClass, USE__IMPORT_URI); + + parametrizedFunctionDefinitionEClass = createEClass(PARAMETRIZED_FUNCTION_DEFINITION); + createEAttribute(parametrizedFunctionDefinitionEClass, PARAMETRIZED_FUNCTION_DEFINITION__NAME); + createEReference(parametrizedFunctionDefinitionEClass, PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION); + + generatorDefinitionEClass = createEClass(GENERATOR_DEFINITION); + createEAttribute(generatorDefinitionEClass, GENERATOR_DEFINITION__NAME); + createEReference(generatorDefinitionEClass, GENERATOR_DEFINITION__DEFINITION); + + statementEClass = createEClass(STATEMENT); + + forStatementEClass = createEClass(FOR_STATEMENT); + createEAttribute(forStatementEClass, FOR_STATEMENT__NAME); + createEReference(forStatementEClass, FOR_STATEMENT__RANGE); + createEReference(forStatementEClass, FOR_STATEMENT__STATEMENTS); + + rangeEClass = createEClass(RANGE); + + counterRangeEClass = createEClass(COUNTER_RANGE); + createEAttribute(counterRangeEClass, COUNTER_RANGE__START); + createEAttribute(counterRangeEClass, COUNTER_RANGE__END); + + functionsEClass = createEClass(FUNCTIONS); + createEReference(functionsEClass, FUNCTIONS__FUNCTION_REFERENCES); + + functionReferencesEClass = createEClass(FUNCTION_REFERENCES); + createEReference(functionReferencesEClass, FUNCTION_REFERENCES__FUNCTIONS); + + generatorsEClass = createEClass(GENERATORS); + createEReference(generatorsEClass, GENERATORS__GENERATOR_REFERENCES); + + generatorReferencesEClass = createEClass(GENERATOR_REFERENCES); + createEReference(generatorReferencesEClass, GENERATOR_REFERENCES__GENERATORS); + + applyStatementEClass = createEClass(APPLY_STATEMENT); + createEAttribute(applyStatementEClass, APPLY_STATEMENT__FILE); + createEAttribute(applyStatementEClass, APPLY_STATEMENT__COUNT); + createEReference(applyStatementEClass, APPLY_STATEMENT__FUNCTION); + createEReference(applyStatementEClass, APPLY_STATEMENT__GENERATOR); + + generatorReferenceEClass = createEClass(GENERATOR_REFERENCE); + + generatorDefinitionReferenceEClass = createEClass(GENERATOR_DEFINITION_REFERENCE); + createEReference(generatorDefinitionReferenceEClass, GENERATOR_DEFINITION_REFERENCE__DEFINITION); + + functionReferenceEClass = createEClass(FUNCTION_REFERENCE); + + functionDefReferenceEClass = createEClass(FUNCTION_DEF_REFERENCE); + + loopVariableEClass = createEClass(LOOP_VARIABLE); + createEReference(loopVariableEClass, LOOP_VARIABLE__DEFINITION); + + functionDefinitionReferenceEClass = createEClass(FUNCTION_DEFINITION_REFERENCE); + createEReference(functionDefinitionReferenceEClass, FUNCTION_DEFINITION_REFERENCE__DEFINITION); + + parametrizedFunctionDefinitionReferenceEClass = createEClass(PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE); + createEReference(parametrizedFunctionDefinitionReferenceEClass, PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void initializePackageContents() + { + if (isInitialized) return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Obtain other dependent packages + InstancePackage theInstancePackage = (InstancePackage)EPackage.Registry.INSTANCE.getEPackage(InstancePackage.eNS_URI); + DlPackage theDlPackage = (DlPackage)EPackage.Registry.INSTANCE.getEPackage(DlPackage.eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + forStatementEClass.getESuperTypes().add(this.getStatement()); + counterRangeEClass.getESuperTypes().add(this.getRange()); + functionsEClass.getESuperTypes().add(this.getRange()); + generatorsEClass.getESuperTypes().add(this.getRange()); + applyStatementEClass.getESuperTypes().add(this.getStatement()); + generatorDefinitionReferenceEClass.getESuperTypes().add(this.getGeneratorReference()); + functionDefReferenceEClass.getESuperTypes().add(this.getFunctionReference()); + loopVariableEClass.getESuperTypes().add(this.getGeneratorReference()); + loopVariableEClass.getESuperTypes().add(this.getFunctionReference()); + functionDefinitionReferenceEClass.getESuperTypes().add(this.getFunctionDefReference()); + parametrizedFunctionDefinitionReferenceEClass.getESuperTypes().add(this.getFunctionDefReference()); + + // Initialize classes and features; add operations and parameters + initEClass(configurationEClass, Configuration.class, "Configuration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getConfiguration_Uses(), this.getUse(), null, "uses", null, 0, -1, Configuration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getConfiguration_Generators(), this.getGeneratorDefinition(), null, "generators", null, 0, -1, Configuration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getConfiguration_Functions(), this.getParametrizedFunctionDefinition(), null, "functions", null, 0, -1, Configuration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getConfiguration_Statements(), this.getStatement(), null, "statements", null, 0, -1, Configuration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(useEClass, Use.class, "Use", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getUse_ImportURI(), ecorePackage.getEString(), "importURI", null, 0, 1, Use.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(parametrizedFunctionDefinitionEClass, ParametrizedFunctionDefinition.class, "ParametrizedFunctionDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getParametrizedFunctionDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, ParametrizedFunctionDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getParametrizedFunctionDefinition_Definition(), theInstancePackage.getInstance(), null, "definition", null, 0, 1, ParametrizedFunctionDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(generatorDefinitionEClass, GeneratorDefinition.class, "GeneratorDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getGeneratorDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, GeneratorDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getGeneratorDefinition_Definition(), theInstancePackage.getInstance(), null, "definition", null, 0, 1, GeneratorDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(statementEClass, Statement.class, "Statement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(forStatementEClass, ForStatement.class, "ForStatement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getForStatement_Name(), ecorePackage.getEString(), "name", null, 0, 1, ForStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getForStatement_Range(), this.getRange(), null, "range", null, 0, 1, ForStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getForStatement_Statements(), this.getStatement(), null, "statements", null, 0, -1, ForStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(rangeEClass, Range.class, "Range", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(counterRangeEClass, CounterRange.class, "CounterRange", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getCounterRange_Start(), ecorePackage.getEInt(), "start", null, 0, 1, CounterRange.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getCounterRange_End(), ecorePackage.getEInt(), "end", null, 0, 1, CounterRange.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(functionsEClass, Functions.class, "Functions", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getFunctions_FunctionReferences(), this.getFunctionReferences(), null, "functionReferences", null, 0, 1, Functions.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(functionReferencesEClass, FunctionReferences.class, "FunctionReferences", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getFunctionReferences_Functions(), this.getFunctionDefReference(), null, "functions", null, 0, -1, FunctionReferences.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(generatorsEClass, Generators.class, "Generators", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getGenerators_GeneratorReferences(), this.getGeneratorReferences(), null, "generatorReferences", null, 0, 1, Generators.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(generatorReferencesEClass, GeneratorReferences.class, "GeneratorReferences", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getGeneratorReferences_Generators(), this.getGeneratorDefinition(), null, "generators", null, 0, -1, GeneratorReferences.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(applyStatementEClass, ApplyStatement.class, "ApplyStatement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getApplyStatement_File(), ecorePackage.getEString(), "file", null, 0, 1, ApplyStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getApplyStatement_Count(), ecorePackage.getEInt(), "count", null, 0, 1, ApplyStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getApplyStatement_Function(), this.getFunctionReference(), null, "function", null, 0, 1, ApplyStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getApplyStatement_Generator(), this.getGeneratorReference(), null, "generator", null, 0, 1, ApplyStatement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(generatorReferenceEClass, GeneratorReference.class, "GeneratorReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(generatorDefinitionReferenceEClass, GeneratorDefinitionReference.class, "GeneratorDefinitionReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getGeneratorDefinitionReference_Definition(), this.getGeneratorDefinition(), null, "definition", null, 0, 1, GeneratorDefinitionReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(functionReferenceEClass, FunctionReference.class, "FunctionReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(functionDefReferenceEClass, FunctionDefReference.class, "FunctionDefReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(loopVariableEClass, LoopVariable.class, "LoopVariable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getLoopVariable_Definition(), this.getForStatement(), null, "definition", null, 0, 1, LoopVariable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(functionDefinitionReferenceEClass, FunctionDefinitionReference.class, "FunctionDefinitionReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getFunctionDefinitionReference_Definition(), theDlPackage.getFunctionDefinition(), null, "definition", null, 0, 1, FunctionDefinitionReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(parametrizedFunctionDefinitionReferenceEClass, ParametrizedFunctionDefinitionReference.class, "ParametrizedFunctionDefinitionReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getParametrizedFunctionDefinitionReference_Definition(), this.getFunctionDefinitionReference(), null, "definition", null, 0, 1, ParametrizedFunctionDefinitionReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + // Create resource + createResource(eNS_URI); + } + +} //GeneratorDSLPackageImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDefinitionImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDefinitionImpl.java new file mode 100644 index 00000000..4e72a2a2 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDefinitionImpl.java @@ -0,0 +1,271 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition; + +import de.evoal.languages.model.instance.Instance; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Generator Definition</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionImpl#getName <em>Name</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionImpl#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @generated + */ +public class GeneratorDefinitionImpl extends MinimalEObjectImpl.Container implements GeneratorDefinition +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getDefinition() <em>Definition</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefinition() + * @generated + * @ordered + */ + protected Instance definition; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected GeneratorDefinitionImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.GENERATOR_DEFINITION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.GENERATOR_DEFINITION__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Instance getDefinition() + { + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetDefinition(Instance newDefinition, NotificationChain msgs) + { + Instance oldDefinition = definition; + definition = newDefinition; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION, oldDefinition, newDefinition); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefinition(Instance newDefinition) + { + if (newDefinition != definition) + { + NotificationChain msgs = null; + if (definition != null) + msgs = ((InternalEObject)definition).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION, null, msgs); + if (newDefinition != null) + msgs = ((InternalEObject)newDefinition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION, null, msgs); + msgs = basicSetDefinition(newDefinition, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION, newDefinition, newDefinition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION: + return basicSetDefinition(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION__NAME: + return getName(); + case GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION: + return getDefinition(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION__NAME: + setName((String)newValue); + return; + case GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION: + setDefinition((Instance)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION__NAME: + setName(NAME_EDEFAULT); + return; + case GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION: + setDefinition((Instance)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case GeneratorDSLPackage.GENERATOR_DEFINITION__DEFINITION: + return definition != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //GeneratorDefinitionImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDefinitionReferenceImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDefinitionReferenceImpl.java new file mode 100644 index 00000000..388b7715 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorDefinitionReferenceImpl.java @@ -0,0 +1,175 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Generator Definition Reference</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorDefinitionReferenceImpl#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @generated + */ +public class GeneratorDefinitionReferenceImpl extends GeneratorReferenceImpl implements GeneratorDefinitionReference +{ + /** + * The cached value of the '{@link #getDefinition() <em>Definition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefinition() + * @generated + * @ordered + */ + protected GeneratorDefinition definition; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected GeneratorDefinitionReferenceImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.GENERATOR_DEFINITION_REFERENCE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorDefinition getDefinition() + { + if (definition != null && definition.eIsProxy()) + { + InternalEObject oldDefinition = (InternalEObject)definition; + definition = (GeneratorDefinition)eResolveProxy(oldDefinition); + if (definition != oldDefinition) + { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE__DEFINITION, oldDefinition, definition)); + } + } + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public GeneratorDefinition basicGetDefinition() + { + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefinition(GeneratorDefinition newDefinition) + { + GeneratorDefinition oldDefinition = definition; + definition = newDefinition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE__DEFINITION, oldDefinition, definition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE__DEFINITION: + if (resolve) return getDefinition(); + return basicGetDefinition(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE__DEFINITION: + setDefinition((GeneratorDefinition)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE__DEFINITION: + setDefinition((GeneratorDefinition)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE__DEFINITION: + return definition != null; + } + return super.eIsSet(featureID); + } + +} //GeneratorDefinitionReferenceImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorReferenceImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorReferenceImpl.java new file mode 100644 index 00000000..7f1ffc0e --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorReferenceImpl.java @@ -0,0 +1,43 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReference; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Generator Reference</b></em>'. + * <!-- end-user-doc --> + * + * @generated + */ +public class GeneratorReferenceImpl extends MinimalEObjectImpl.Container implements GeneratorReference +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected GeneratorReferenceImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.GENERATOR_REFERENCE; + } + +} //GeneratorReferenceImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorReferencesImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorReferencesImpl.java new file mode 100644 index 00000000..70b2adad --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorReferencesImpl.java @@ -0,0 +1,149 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences; + +import java.util.Collection; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Generator References</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorReferencesImpl#getGenerators <em>Generators</em>}</li> + * </ul> + * + * @generated + */ +public class GeneratorReferencesImpl extends MinimalEObjectImpl.Container implements GeneratorReferences +{ + /** + * The cached value of the '{@link #getGenerators() <em>Generators</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getGenerators() + * @generated + * @ordered + */ + protected EList<GeneratorDefinition> generators; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected GeneratorReferencesImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.GENERATOR_REFERENCES; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EList<GeneratorDefinition> getGenerators() + { + if (generators == null) + { + generators = new EObjectResolvingEList<GeneratorDefinition>(GeneratorDefinition.class, this, GeneratorDSLPackage.GENERATOR_REFERENCES__GENERATORS); + } + return generators; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_REFERENCES__GENERATORS: + return getGenerators(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_REFERENCES__GENERATORS: + getGenerators().clear(); + getGenerators().addAll((Collection<? extends GeneratorDefinition>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_REFERENCES__GENERATORS: + getGenerators().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATOR_REFERENCES__GENERATORS: + return generators != null && !generators.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //GeneratorReferencesImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorsImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorsImpl.java new file mode 100644 index 00000000..eb2180bb --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/GeneratorsImpl.java @@ -0,0 +1,196 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences; +import de.evoal.languages.model.generator.dsl.generatorDSL.Generators; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Generators</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.GeneratorsImpl#getGeneratorReferences <em>Generator References</em>}</li> + * </ul> + * + * @generated + */ +public class GeneratorsImpl extends RangeImpl implements Generators +{ + /** + * The cached value of the '{@link #getGeneratorReferences() <em>Generator References</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getGeneratorReferences() + * @generated + * @ordered + */ + protected GeneratorReferences generatorReferences; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected GeneratorsImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.GENERATORS; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public GeneratorReferences getGeneratorReferences() + { + return generatorReferences; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetGeneratorReferences(GeneratorReferences newGeneratorReferences, NotificationChain msgs) + { + GeneratorReferences oldGeneratorReferences = generatorReferences; + generatorReferences = newGeneratorReferences; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES, oldGeneratorReferences, newGeneratorReferences); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setGeneratorReferences(GeneratorReferences newGeneratorReferences) + { + if (newGeneratorReferences != generatorReferences) + { + NotificationChain msgs = null; + if (generatorReferences != null) + msgs = ((InternalEObject)generatorReferences).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES, null, msgs); + if (newGeneratorReferences != null) + msgs = ((InternalEObject)newGeneratorReferences).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES, null, msgs); + msgs = basicSetGeneratorReferences(newGeneratorReferences, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES, newGeneratorReferences, newGeneratorReferences)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES: + return basicSetGeneratorReferences(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES: + return getGeneratorReferences(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES: + setGeneratorReferences((GeneratorReferences)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES: + setGeneratorReferences((GeneratorReferences)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.GENERATORS__GENERATOR_REFERENCES: + return generatorReferences != null; + } + return super.eIsSet(featureID); + } + +} //GeneratorsImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/LoopVariableImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/LoopVariableImpl.java new file mode 100644 index 00000000..9d8c43aa --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/LoopVariableImpl.java @@ -0,0 +1,175 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Loop Variable</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.LoopVariableImpl#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @generated + */ +public class LoopVariableImpl extends GeneratorReferenceImpl implements LoopVariable +{ + /** + * The cached value of the '{@link #getDefinition() <em>Definition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefinition() + * @generated + * @ordered + */ + protected ForStatement definition; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected LoopVariableImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.LOOP_VARIABLE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public ForStatement getDefinition() + { + if (definition != null && definition.eIsProxy()) + { + InternalEObject oldDefinition = (InternalEObject)definition; + definition = (ForStatement)eResolveProxy(oldDefinition); + if (definition != oldDefinition) + { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, GeneratorDSLPackage.LOOP_VARIABLE__DEFINITION, oldDefinition, definition)); + } + } + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ForStatement basicGetDefinition() + { + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefinition(ForStatement newDefinition) + { + ForStatement oldDefinition = definition; + definition = newDefinition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.LOOP_VARIABLE__DEFINITION, oldDefinition, definition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.LOOP_VARIABLE__DEFINITION: + if (resolve) return getDefinition(); + return basicGetDefinition(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.LOOP_VARIABLE__DEFINITION: + setDefinition((ForStatement)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.LOOP_VARIABLE__DEFINITION: + setDefinition((ForStatement)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.LOOP_VARIABLE__DEFINITION: + return definition != null; + } + return super.eIsSet(featureID); + } + +} //LoopVariableImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ParametrizedFunctionDefinitionImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ParametrizedFunctionDefinitionImpl.java new file mode 100644 index 00000000..11bfbce6 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ParametrizedFunctionDefinitionImpl.java @@ -0,0 +1,271 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition; + +import de.evoal.languages.model.instance.Instance; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Parametrized Function Definition</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionImpl#getName <em>Name</em>}</li> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionImpl#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @generated + */ +public class ParametrizedFunctionDefinitionImpl extends MinimalEObjectImpl.Container implements ParametrizedFunctionDefinition +{ + /** + * The default value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getDefinition() <em>Definition</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefinition() + * @generated + * @ordered + */ + protected Instance definition; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ParametrizedFunctionDefinitionImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getName() + { + return name; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__NAME, oldName, name)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Instance getDefinition() + { + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public NotificationChain basicSetDefinition(Instance newDefinition, NotificationChain msgs) + { + Instance oldDefinition = definition; + definition = newDefinition; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION, oldDefinition, newDefinition); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefinition(Instance newDefinition) + { + if (newDefinition != definition) + { + NotificationChain msgs = null; + if (definition != null) + msgs = ((InternalEObject)definition).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION, null, msgs); + if (newDefinition != null) + msgs = ((InternalEObject)newDefinition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION, null, msgs); + msgs = basicSetDefinition(newDefinition, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION, newDefinition, newDefinition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION: + return basicSetDefinition(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__NAME: + return getName(); + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION: + return getDefinition(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__NAME: + setName((String)newValue); + return; + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION: + setDefinition((Instance)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__NAME: + setName(NAME_EDEFAULT); + return; + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION: + setDefinition((Instance)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION: + return definition != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //ParametrizedFunctionDefinitionImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ParametrizedFunctionDefinitionReferenceImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ParametrizedFunctionDefinitionReferenceImpl.java new file mode 100644 index 00000000..33ba6cb7 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/ParametrizedFunctionDefinitionReferenceImpl.java @@ -0,0 +1,175 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Parametrized Function Definition Reference</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.ParametrizedFunctionDefinitionReferenceImpl#getDefinition <em>Definition</em>}</li> + * </ul> + * + * @generated + */ +public class ParametrizedFunctionDefinitionReferenceImpl extends FunctionDefReferenceImpl implements ParametrizedFunctionDefinitionReference +{ + /** + * The cached value of the '{@link #getDefinition() <em>Definition</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefinition() + * @generated + * @ordered + */ + protected FunctionDefinitionReference definition; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected ParametrizedFunctionDefinitionReferenceImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public FunctionDefinitionReference getDefinition() + { + if (definition != null && definition.eIsProxy()) + { + InternalEObject oldDefinition = (InternalEObject)definition; + definition = (FunctionDefinitionReference)eResolveProxy(oldDefinition); + if (definition != oldDefinition) + { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION, oldDefinition, definition)); + } + } + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public FunctionDefinitionReference basicGetDefinition() + { + return definition; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setDefinition(FunctionDefinitionReference newDefinition) + { + FunctionDefinitionReference oldDefinition = definition; + definition = newDefinition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION, oldDefinition, definition)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION: + if (resolve) return getDefinition(); + return basicGetDefinition(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION: + setDefinition((FunctionDefinitionReference)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION: + setDefinition((FunctionDefinitionReference)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION: + return definition != null; + } + return super.eIsSet(featureID); + } + +} //ParametrizedFunctionDefinitionReferenceImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/RangeImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/RangeImpl.java new file mode 100644 index 00000000..6d3783e4 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/RangeImpl.java @@ -0,0 +1,43 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.Range; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Range</b></em>'. + * <!-- end-user-doc --> + * + * @generated + */ +public class RangeImpl extends MinimalEObjectImpl.Container implements Range +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected RangeImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.RANGE; + } + +} //RangeImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/StatementImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/StatementImpl.java new file mode 100644 index 00000000..47557eef --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/StatementImpl.java @@ -0,0 +1,43 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.Statement; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Statement</b></em>'. + * <!-- end-user-doc --> + * + * @generated + */ +public class StatementImpl extends MinimalEObjectImpl.Container implements Statement +{ + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected StatementImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.STATEMENT; + } + +} //StatementImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/UseImpl.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/UseImpl.java new file mode 100644 index 00000000..a1cd4ccf --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/impl/UseImpl.java @@ -0,0 +1,180 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.impl; + +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.Use; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Use</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * </p> + * <ul> + * <li>{@link de.evoal.languages.model.generator.dsl.generatorDSL.impl.UseImpl#getImportURI <em>Import URI</em>}</li> + * </ul> + * + * @generated + */ +public class UseImpl extends MinimalEObjectImpl.Container implements Use +{ + /** + * The default value of the '{@link #getImportURI() <em>Import URI</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getImportURI() + * @generated + * @ordered + */ + protected static final String IMPORT_URI_EDEFAULT = null; + + /** + * The cached value of the '{@link #getImportURI() <em>Import URI</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getImportURI() + * @generated + * @ordered + */ + protected String importURI = IMPORT_URI_EDEFAULT; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected UseImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() + { + return GeneratorDSLPackage.Literals.USE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String getImportURI() + { + return importURI; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void setImportURI(String newImportURI) + { + String oldImportURI = importURI; + importURI = newImportURI; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, GeneratorDSLPackage.USE__IMPORT_URI, oldImportURI, importURI)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case GeneratorDSLPackage.USE__IMPORT_URI: + return getImportURI(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case GeneratorDSLPackage.USE__IMPORT_URI: + setImportURI((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.USE__IMPORT_URI: + setImportURI(IMPORT_URI_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case GeneratorDSLPackage.USE__IMPORT_URI: + return IMPORT_URI_EDEFAULT == null ? importURI != null : !IMPORT_URI_EDEFAULT.equals(importURI); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (importURI: "); + result.append(importURI); + result.append(')'); + return result.toString(); + } + +} //UseImpl diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/util/GeneratorDSLAdapterFactory.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/util/GeneratorDSLAdapterFactory.java new file mode 100644 index 00000000..ed53c26e --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/util/GeneratorDSLAdapterFactory.java @@ -0,0 +1,513 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.util; + +import de.evoal.languages.model.generator.dsl.generatorDSL.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage + * @generated + */ +public class GeneratorDSLAdapterFactory extends AdapterFactoryImpl +{ + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static GeneratorDSLPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public GeneratorDSLAdapterFactory() + { + if (modelPackage == null) + { + modelPackage = GeneratorDSLPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) + { + if (object == modelPackage) + { + return true; + } + if (object instanceof EObject) + { + return ((EObject)object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected GeneratorDSLSwitch<Adapter> modelSwitch = + new GeneratorDSLSwitch<Adapter>() + { + @Override + public Adapter caseConfiguration(Configuration object) + { + return createConfigurationAdapter(); + } + @Override + public Adapter caseUse(Use object) + { + return createUseAdapter(); + } + @Override + public Adapter caseParametrizedFunctionDefinition(ParametrizedFunctionDefinition object) + { + return createParametrizedFunctionDefinitionAdapter(); + } + @Override + public Adapter caseGeneratorDefinition(GeneratorDefinition object) + { + return createGeneratorDefinitionAdapter(); + } + @Override + public Adapter caseStatement(Statement object) + { + return createStatementAdapter(); + } + @Override + public Adapter caseForStatement(ForStatement object) + { + return createForStatementAdapter(); + } + @Override + public Adapter caseRange(Range object) + { + return createRangeAdapter(); + } + @Override + public Adapter caseCounterRange(CounterRange object) + { + return createCounterRangeAdapter(); + } + @Override + public Adapter caseFunctions(Functions object) + { + return createFunctionsAdapter(); + } + @Override + public Adapter caseFunctionReferences(FunctionReferences object) + { + return createFunctionReferencesAdapter(); + } + @Override + public Adapter caseGenerators(Generators object) + { + return createGeneratorsAdapter(); + } + @Override + public Adapter caseGeneratorReferences(GeneratorReferences object) + { + return createGeneratorReferencesAdapter(); + } + @Override + public Adapter caseApplyStatement(ApplyStatement object) + { + return createApplyStatementAdapter(); + } + @Override + public Adapter caseGeneratorReference(GeneratorReference object) + { + return createGeneratorReferenceAdapter(); + } + @Override + public Adapter caseGeneratorDefinitionReference(GeneratorDefinitionReference object) + { + return createGeneratorDefinitionReferenceAdapter(); + } + @Override + public Adapter caseFunctionReference(FunctionReference object) + { + return createFunctionReferenceAdapter(); + } + @Override + public Adapter caseFunctionDefReference(FunctionDefReference object) + { + return createFunctionDefReferenceAdapter(); + } + @Override + public Adapter caseLoopVariable(LoopVariable object) + { + return createLoopVariableAdapter(); + } + @Override + public Adapter caseFunctionDefinitionReference(FunctionDefinitionReference object) + { + return createFunctionDefinitionReferenceAdapter(); + } + @Override + public Adapter caseParametrizedFunctionDefinitionReference(ParametrizedFunctionDefinitionReference object) + { + return createParametrizedFunctionDefinitionReferenceAdapter(); + } + @Override + public Adapter defaultCase(EObject object) + { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) + { + return modelSwitch.doSwitch((EObject)target); + } + + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Configuration <em>Configuration</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Configuration + * @generated + */ + public Adapter createConfigurationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Use <em>Use</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Use + * @generated + */ + public Adapter createUseAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition <em>Parametrized Function Definition</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition + * @generated + */ + public Adapter createParametrizedFunctionDefinitionAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition <em>Generator Definition</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition + * @generated + */ + public Adapter createGeneratorDefinitionAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Statement <em>Statement</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Statement + * @generated + */ + public Adapter createStatementAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement <em>For Statement</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement + * @generated + */ + public Adapter createForStatementAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Range <em>Range</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Range + * @generated + */ + public Adapter createRangeAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange <em>Counter Range</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange + * @generated + */ + public Adapter createCounterRangeAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Functions <em>Functions</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Functions + * @generated + */ + public Adapter createFunctionsAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences <em>Function References</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences + * @generated + */ + public Adapter createFunctionReferencesAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.Generators <em>Generators</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.Generators + * @generated + */ + public Adapter createGeneratorsAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences <em>Generator References</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences + * @generated + */ + public Adapter createGeneratorReferencesAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement <em>Apply Statement</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement + * @generated + */ + public Adapter createApplyStatementAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReference <em>Generator Reference</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReference + * @generated + */ + public Adapter createGeneratorReferenceAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference <em>Generator Definition Reference</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference + * @generated + */ + public Adapter createGeneratorDefinitionReferenceAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReference <em>Function Reference</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReference + * @generated + */ + public Adapter createFunctionReferenceAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefReference <em>Function Def Reference</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefReference + * @generated + */ + public Adapter createFunctionDefReferenceAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable <em>Loop Variable</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable + * @generated + */ + public Adapter createLoopVariableAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference <em>Function Definition Reference</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference + * @generated + */ + public Adapter createFunctionDefinitionReferenceAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference <em>Parametrized Function Definition Reference</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference + * @generated + */ + public Adapter createParametrizedFunctionDefinitionReferenceAdapter() + { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() + { + return null; + } + +} //GeneratorDSLAdapterFactory diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/util/GeneratorDSLSwitch.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/util/GeneratorDSLSwitch.java new file mode 100644 index 00000000..e7511d12 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/generatorDSL/util/GeneratorDSLSwitch.java @@ -0,0 +1,570 @@ +/** + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generatorDSL.util; + +import de.evoal.languages.model.generator.dsl.generatorDSL.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage + * @generated + */ +public class GeneratorDSLSwitch<T> extends Switch<T> +{ + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static GeneratorDSLPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public GeneratorDSLSwitch() + { + if (modelPackage == null) + { + modelPackage = GeneratorDSLPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) + { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) + { + switch (classifierID) + { + case GeneratorDSLPackage.CONFIGURATION: + { + Configuration configuration = (Configuration)theEObject; + T result = caseConfiguration(configuration); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.USE: + { + Use use = (Use)theEObject; + T result = caseUse(use); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION: + { + ParametrizedFunctionDefinition parametrizedFunctionDefinition = (ParametrizedFunctionDefinition)theEObject; + T result = caseParametrizedFunctionDefinition(parametrizedFunctionDefinition); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.GENERATOR_DEFINITION: + { + GeneratorDefinition generatorDefinition = (GeneratorDefinition)theEObject; + T result = caseGeneratorDefinition(generatorDefinition); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.STATEMENT: + { + Statement statement = (Statement)theEObject; + T result = caseStatement(statement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.FOR_STATEMENT: + { + ForStatement forStatement = (ForStatement)theEObject; + T result = caseForStatement(forStatement); + if (result == null) result = caseStatement(forStatement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.RANGE: + { + Range range = (Range)theEObject; + T result = caseRange(range); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.COUNTER_RANGE: + { + CounterRange counterRange = (CounterRange)theEObject; + T result = caseCounterRange(counterRange); + if (result == null) result = caseRange(counterRange); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.FUNCTIONS: + { + Functions functions = (Functions)theEObject; + T result = caseFunctions(functions); + if (result == null) result = caseRange(functions); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.FUNCTION_REFERENCES: + { + FunctionReferences functionReferences = (FunctionReferences)theEObject; + T result = caseFunctionReferences(functionReferences); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.GENERATORS: + { + Generators generators = (Generators)theEObject; + T result = caseGenerators(generators); + if (result == null) result = caseRange(generators); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.GENERATOR_REFERENCES: + { + GeneratorReferences generatorReferences = (GeneratorReferences)theEObject; + T result = caseGeneratorReferences(generatorReferences); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.APPLY_STATEMENT: + { + ApplyStatement applyStatement = (ApplyStatement)theEObject; + T result = caseApplyStatement(applyStatement); + if (result == null) result = caseStatement(applyStatement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.GENERATOR_REFERENCE: + { + GeneratorReference generatorReference = (GeneratorReference)theEObject; + T result = caseGeneratorReference(generatorReference); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE: + { + GeneratorDefinitionReference generatorDefinitionReference = (GeneratorDefinitionReference)theEObject; + T result = caseGeneratorDefinitionReference(generatorDefinitionReference); + if (result == null) result = caseGeneratorReference(generatorDefinitionReference); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.FUNCTION_REFERENCE: + { + FunctionReference functionReference = (FunctionReference)theEObject; + T result = caseFunctionReference(functionReference); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.FUNCTION_DEF_REFERENCE: + { + FunctionDefReference functionDefReference = (FunctionDefReference)theEObject; + T result = caseFunctionDefReference(functionDefReference); + if (result == null) result = caseFunctionReference(functionDefReference); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.LOOP_VARIABLE: + { + LoopVariable loopVariable = (LoopVariable)theEObject; + T result = caseLoopVariable(loopVariable); + if (result == null) result = caseGeneratorReference(loopVariable); + if (result == null) result = caseFunctionReference(loopVariable); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE: + { + FunctionDefinitionReference functionDefinitionReference = (FunctionDefinitionReference)theEObject; + T result = caseFunctionDefinitionReference(functionDefinitionReference); + if (result == null) result = caseFunctionDefReference(functionDefinitionReference); + if (result == null) result = caseFunctionReference(functionDefinitionReference); + if (result == null) result = defaultCase(theEObject); + return result; + } + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE: + { + ParametrizedFunctionDefinitionReference parametrizedFunctionDefinitionReference = (ParametrizedFunctionDefinitionReference)theEObject; + T result = caseParametrizedFunctionDefinitionReference(parametrizedFunctionDefinitionReference); + if (result == null) result = caseFunctionDefReference(parametrizedFunctionDefinitionReference); + if (result == null) result = caseFunctionReference(parametrizedFunctionDefinitionReference); + if (result == null) result = defaultCase(theEObject); + return result; + } + default: return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Configuration</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Configuration</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseConfiguration(Configuration object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Use</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Use</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseUse(Use object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Parametrized Function Definition</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Parametrized Function Definition</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseParametrizedFunctionDefinition(ParametrizedFunctionDefinition object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Generator Definition</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Generator Definition</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseGeneratorDefinition(GeneratorDefinition object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Statement</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Statement</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseStatement(Statement object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>For Statement</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>For Statement</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseForStatement(ForStatement object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Range</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Range</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseRange(Range object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Counter Range</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Counter Range</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCounterRange(CounterRange object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Functions</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Functions</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunctions(Functions object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Function References</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Function References</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunctionReferences(FunctionReferences object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Generators</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Generators</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseGenerators(Generators object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Generator References</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Generator References</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseGeneratorReferences(GeneratorReferences object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Apply Statement</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Apply Statement</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseApplyStatement(ApplyStatement object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Generator Reference</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Generator Reference</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseGeneratorReference(GeneratorReference object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Generator Definition Reference</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Generator Definition Reference</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseGeneratorDefinitionReference(GeneratorDefinitionReference object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Function Reference</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Function Reference</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunctionReference(FunctionReference object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Function Def Reference</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Function Def Reference</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunctionDefReference(FunctionDefReference object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Loop Variable</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Loop Variable</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLoopVariable(LoopVariable object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Function Definition Reference</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Function Definition Reference</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunctionDefinitionReference(FunctionDefinitionReference object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Parametrized Function Definition Reference</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Parametrized Function Definition Reference</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseParametrizedFunctionDefinitionReference(ParametrizedFunctionDefinitionReference object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) + { + return null; + } + +} //GeneratorDSLSwitch diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/GeneratorDSLAntlrTokenFileProvider.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/GeneratorDSLAntlrTokenFileProvider.java new file mode 100644 index 00000000..9d6fadfb --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/GeneratorDSLAntlrTokenFileProvider.java @@ -0,0 +1,16 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.parser.antlr; + +import java.io.InputStream; +import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider; + +public class GeneratorDSLAntlrTokenFileProvider implements IAntlrTokenFileProvider { + + @Override + public InputStream getAntlrTokenFile() { + ClassLoader classLoader = getClass().getClassLoader(); + return classLoader.getResourceAsStream("de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.tokens"); + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/GeneratorDSLParser.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/GeneratorDSLParser.java new file mode 100644 index 00000000..8d2d28cf --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/GeneratorDSLParser.java @@ -0,0 +1,40 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.parser.antlr; + +import com.google.inject.Inject; +import de.evoal.languages.model.generator.dsl.parser.antlr.internal.InternalGeneratorDSLParser; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; +import org.eclipse.xtext.parser.antlr.AbstractAntlrParser; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; + +public class GeneratorDSLParser extends AbstractAntlrParser { + + @Inject + private GeneratorDSLGrammarAccess grammarAccess; + + @Override + protected void setInitialHiddenTokens(XtextTokenStream tokenStream) { + tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); + } + + + @Override + protected InternalGeneratorDSLParser createParser(XtextTokenStream stream) { + return new InternalGeneratorDSLParser(stream, getGrammarAccess()); + } + + @Override + protected String getDefaultRuleName() { + return "ConfigurationRule"; + } + + public GeneratorDSLGrammarAccess getGrammarAccess() { + return this.grammarAccess; + } + + public void setGrammarAccess(GeneratorDSLGrammarAccess grammarAccess) { + this.grammarAccess = grammarAccess; + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.g b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.g new file mode 100644 index 00000000..9e611936 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.g @@ -0,0 +1,3012 @@ +/* + * generated by Xtext 2.25.0 + */ +grammar InternalGeneratorDSL; + +options { + superClass=AbstractInternalAntlrParser; +} + +@lexer::header { +package de.evoal.languages.model.generator.dsl.parser.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.parser.antlr.Lexer; +} + +@parser::header { +package de.evoal.languages.model.generator.dsl.parser.antlr.internal; + +import org.eclipse.xtext.*; +import org.eclipse.xtext.parser.*; +import org.eclipse.xtext.parser.impl.*; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.common.util.Enumerator; +import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; +import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; + +} + +@parser::members { + + private GeneratorDSLGrammarAccess grammarAccess; + + public InternalGeneratorDSLParser(TokenStream input, GeneratorDSLGrammarAccess grammarAccess) { + this(input); + this.grammarAccess = grammarAccess; + registerRules(grammarAccess.getGrammar()); + } + + @Override + protected String getFirstRuleName() { + return "ConfigurationRule"; + } + + @Override + protected GeneratorDSLGrammarAccess getGrammarAccess() { + return grammarAccess; + } + +} + +@rulecatch { + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } +} + +// Entry rule entryRuleConfigurationRule +entryRuleConfigurationRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getConfigurationRuleRule()); } + iv_ruleConfigurationRule=ruleConfigurationRule + { $current=$iv_ruleConfigurationRule.current; } + EOF; + +// Rule ConfigurationRule +ruleConfigurationRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getConfigurationRuleAccess().getUsesUseRuleParserRuleCall_0_0()); + } + lv_uses_0_0=ruleUseRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getConfigurationRuleRule()); + } + add( + $current, + "uses", + lv_uses_0_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.UseRule"); + afterParserOrEnumRuleCall(); + } + ) + )* + ( + ( + { + newCompositeNode(grammarAccess.getConfigurationRuleAccess().getGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0()); + } + lv_generators_1_0=ruleGeneratorDefinitionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getConfigurationRuleRule()); + } + add( + $current, + "generators", + lv_generators_1_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorDefinitionRule"); + afterParserOrEnumRuleCall(); + } + ) + )* + ( + ( + { + newCompositeNode(grammarAccess.getConfigurationRuleAccess().getFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0()); + } + lv_functions_2_0=ruleParametrizedFunctionDefinitionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getConfigurationRuleRule()); + } + add( + $current, + "functions", + lv_functions_2_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.ParametrizedFunctionDefinitionRule"); + afterParserOrEnumRuleCall(); + } + ) + )* + ( + ( + { + newCompositeNode(grammarAccess.getConfigurationRuleAccess().getStatementsStatementRuleParserRuleCall_3_0()); + } + lv_statements_3_0=ruleStatementRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getConfigurationRuleRule()); + } + add( + $current, + "statements", + lv_statements_3_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.StatementRule"); + afterParserOrEnumRuleCall(); + } + ) + )* + ) +; + +// Entry rule entryRuleUseRule +entryRuleUseRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getUseRuleRule()); } + iv_ruleUseRule=ruleUseRule + { $current=$iv_ruleUseRule.current; } + EOF; + +// Rule UseRule +ruleUseRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='use' + { + newLeafNode(otherlv_0, grammarAccess.getUseRuleAccess().getUseKeyword_0()); + } + ( + ( + lv_importURI_1_0=RULE_STRING + { + newLeafNode(lv_importURI_1_0, grammarAccess.getUseRuleAccess().getImportURISTRINGTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getUseRuleRule()); + } + setWithLastConsumed( + $current, + "importURI", + lv_importURI_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.STRING"); + } + ) + ) + otherlv_2=';' + { + newLeafNode(otherlv_2, grammarAccess.getUseRuleAccess().getSemicolonKeyword_2()); + } + ) +; + +// Entry rule entryRuleParametrizedFunctionDefinitionRule +entryRuleParametrizedFunctionDefinitionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); } + iv_ruleParametrizedFunctionDefinitionRule=ruleParametrizedFunctionDefinitionRule + { $current=$iv_ruleParametrizedFunctionDefinitionRule.current; } + EOF; + +// Rule ParametrizedFunctionDefinitionRule +ruleParametrizedFunctionDefinitionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='function' + { + newLeafNode(otherlv_0, grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getFunctionKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); + } + lv_name_1_0=ruleStringOrId + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); + } + set( + $current, + "name", + lv_name_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.StringOrId"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_2='using' + { + newLeafNode(otherlv_2, grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getUsingKeyword_2()); + } + ( + ( + { + newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); + } + lv_definition_3_0=ruleInstanceRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); + } + set( + $current, + "definition", + lv_definition_3_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.InstanceRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_4=';' + { + newLeafNode(otherlv_4, grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getSemicolonKeyword_4()); + } + ) +; + +// Entry rule entryRuleGeneratorDefinitionRule +entryRuleGeneratorDefinitionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGeneratorDefinitionRuleRule()); } + iv_ruleGeneratorDefinitionRule=ruleGeneratorDefinitionRule + { $current=$iv_ruleGeneratorDefinitionRule.current; } + EOF; + +// Rule GeneratorDefinitionRule +ruleGeneratorDefinitionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='generator' + { + newLeafNode(otherlv_0, grammarAccess.getGeneratorDefinitionRuleAccess().getGeneratorKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGeneratorDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); + } + lv_name_1_0=ruleStringOrId + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGeneratorDefinitionRuleRule()); + } + set( + $current, + "name", + lv_name_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.StringOrId"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_2='using' + { + newLeafNode(otherlv_2, grammarAccess.getGeneratorDefinitionRuleAccess().getUsingKeyword_2()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); + } + lv_definition_3_0=ruleInstanceRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGeneratorDefinitionRuleRule()); + } + set( + $current, + "definition", + lv_definition_3_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.InstanceRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_4=';' + { + newLeafNode(otherlv_4, grammarAccess.getGeneratorDefinitionRuleAccess().getSemicolonKeyword_4()); + } + ) +; + +// Entry rule entryRuleStatementRule +entryRuleStatementRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getStatementRuleRule()); } + iv_ruleStatementRule=ruleStatementRule + { $current=$iv_ruleStatementRule.current; } + EOF; + +// Rule StatementRule +ruleStatementRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getStatementRuleAccess().getForStatementRuleParserRuleCall_0()); + } + this_ForStatementRule_0=ruleForStatementRule + { + $current = $this_ForStatementRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementRuleAccess().getApplyStatementRuleParserRuleCall_1()); + } + this_ApplyStatementRule_1=ruleApplyStatementRule + { + $current = $this_ApplyStatementRule_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleForStatementRule +entryRuleForStatementRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getForStatementRuleRule()); } + iv_ruleForStatementRule=ruleForStatementRule + { $current=$iv_ruleForStatementRule.current; } + EOF; + +// Rule ForStatementRule +ruleForStatementRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='for' + { + newLeafNode(otherlv_0, grammarAccess.getForStatementRuleAccess().getForKeyword_0()); + } + ( + ( + lv_name_1_0=RULE_ID + { + newLeafNode(lv_name_1_0, grammarAccess.getForStatementRuleAccess().getNameIDTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getForStatementRuleRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + } + ) + ) + otherlv_2='in' + { + newLeafNode(otherlv_2, grammarAccess.getForStatementRuleAccess().getInKeyword_2()); + } + ( + ( + { + newCompositeNode(grammarAccess.getForStatementRuleAccess().getRangeRangeRuleParserRuleCall_3_0()); + } + lv_range_3_0=ruleRangeRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getForStatementRuleRule()); + } + set( + $current, + "range", + lv_range_3_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.RangeRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_4='loop' + { + newLeafNode(otherlv_4, grammarAccess.getForStatementRuleAccess().getLoopKeyword_4()); + } + ( + ( + { + newCompositeNode(grammarAccess.getForStatementRuleAccess().getStatementsStatementRuleParserRuleCall_5_0()); + } + lv_statements_5_0=ruleStatementRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getForStatementRuleRule()); + } + add( + $current, + "statements", + lv_statements_5_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.StatementRule"); + afterParserOrEnumRuleCall(); + } + ) + )* + otherlv_6='end' + { + newLeafNode(otherlv_6, grammarAccess.getForStatementRuleAccess().getEndKeyword_6()); + } + ) +; + +// Entry rule entryRuleRangeRule +entryRuleRangeRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getRangeRuleRule()); } + iv_ruleRangeRule=ruleRangeRule + { $current=$iv_ruleRangeRule.current; } + EOF; + +// Rule RangeRule +ruleRangeRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getRangeRuleAccess().getFunctionsRuleParserRuleCall_0()); + } + this_FunctionsRule_0=ruleFunctionsRule + { + $current = $this_FunctionsRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getRangeRuleAccess().getGeneratorsRuleParserRuleCall_1()); + } + this_GeneratorsRule_1=ruleGeneratorsRule + { + $current = $this_GeneratorsRule_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getRangeRuleAccess().getCounterRangeRuleParserRuleCall_2()); + } + this_CounterRangeRule_2=ruleCounterRangeRule + { + $current = $this_CounterRangeRule_2.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleCounterRangeRule +entryRuleCounterRangeRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getCounterRangeRuleRule()); } + iv_ruleCounterRangeRule=ruleCounterRangeRule + { $current=$iv_ruleCounterRangeRule.current; } + EOF; + +// Rule CounterRangeRule +ruleCounterRangeRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='[' + { + newLeafNode(otherlv_0, grammarAccess.getCounterRangeRuleAccess().getLeftSquareBracketKeyword_0()); + } + ( + ( + lv_start_1_0=RULE_INT + { + newLeafNode(lv_start_1_0, grammarAccess.getCounterRangeRuleAccess().getStartINTTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getCounterRangeRuleRule()); + } + setWithLastConsumed( + $current, + "start", + lv_start_1_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) + otherlv_2='to' + { + newLeafNode(otherlv_2, grammarAccess.getCounterRangeRuleAccess().getToKeyword_2()); + } + ( + ( + lv_end_3_0=RULE_INT + { + newLeafNode(lv_end_3_0, grammarAccess.getCounterRangeRuleAccess().getEndINTTerminalRuleCall_3_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getCounterRangeRuleRule()); + } + setWithLastConsumed( + $current, + "end", + lv_end_3_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) + otherlv_4=']' + { + newLeafNode(otherlv_4, grammarAccess.getCounterRangeRuleAccess().getRightSquareBracketKeyword_4()); + } + ) +; + +// Entry rule entryRuleFunctionsRule +entryRuleFunctionsRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFunctionsRuleRule()); } + iv_ruleFunctionsRule=ruleFunctionsRule + { $current=$iv_ruleFunctionsRule.current; } + EOF; + +// Rule FunctionsRule +ruleFunctionsRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getFunctionsRuleAccess().getFunctionsAction_0(), + $current); + } + ) + otherlv_1='functions' + { + newLeafNode(otherlv_1, grammarAccess.getFunctionsRuleAccess().getFunctionsKeyword_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0()); + } + lv_functionReferences_2_0=ruleFunctionReferencesRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getFunctionsRuleRule()); + } + set( + $current, + "functionReferences", + lv_functionReferences_2_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionReferencesRule"); + afterParserOrEnumRuleCall(); + } + ) + )? + ) +; + +// Entry rule entryRuleFunctionReferencesRule +entryRuleFunctionReferencesRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFunctionReferencesRuleRule()); } + iv_ruleFunctionReferencesRule=ruleFunctionReferencesRule + { $current=$iv_ruleFunctionReferencesRule.current; } + EOF; + +// Rule FunctionReferencesRule +ruleFunctionReferencesRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='[' + { + newLeafNode(otherlv_0, grammarAccess.getFunctionReferencesRuleAccess().getLeftSquareBracketKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_1_0()); + } + lv_functions_1_0=ruleFunctionDefReferenceRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getFunctionReferencesRuleRule()); + } + add( + $current, + "functions", + lv_functions_1_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionDefReferenceRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_2=',' + { + newLeafNode(otherlv_2, grammarAccess.getFunctionReferencesRuleAccess().getCommaKeyword_2_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0()); + } + lv_functions_3_0=ruleFunctionDefReferenceRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getFunctionReferencesRuleRule()); + } + add( + $current, + "functions", + lv_functions_3_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionDefReferenceRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + otherlv_4=']' + { + newLeafNode(otherlv_4, grammarAccess.getFunctionReferencesRuleAccess().getRightSquareBracketKeyword_3()); + } + ) +; + +// Entry rule entryRuleGeneratorsRule +entryRuleGeneratorsRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGeneratorsRuleRule()); } + iv_ruleGeneratorsRule=ruleGeneratorsRule + { $current=$iv_ruleGeneratorsRule.current; } + EOF; + +// Rule GeneratorsRule +ruleGeneratorsRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getGeneratorsRuleAccess().getGeneratorsAction_0(), + $current); + } + ) + otherlv_1='generators' + { + newLeafNode(otherlv_1, grammarAccess.getGeneratorsRuleAccess().getGeneratorsKeyword_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0()); + } + lv_generatorReferences_2_0=ruleGeneratorReferencesRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getGeneratorsRuleRule()); + } + set( + $current, + "generatorReferences", + lv_generatorReferences_2_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorReferencesRule"); + afterParserOrEnumRuleCall(); + } + ) + )? + ) +; + +// Entry rule entryRuleGeneratorReferencesRule +entryRuleGeneratorReferencesRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGeneratorReferencesRuleRule()); } + iv_ruleGeneratorReferencesRule=ruleGeneratorReferencesRule + { $current=$iv_ruleGeneratorReferencesRule.current; } + EOF; + +// Rule GeneratorReferencesRule +ruleGeneratorReferencesRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='[' + { + newLeafNode(otherlv_0, grammarAccess.getGeneratorReferencesRuleAccess().getLeftSquareBracketKeyword_0()); + } + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getGeneratorReferencesRuleRule()); + } + } + { + newCompositeNode(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_1_0()); + } + ruleStringOrId + { + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_2=',' + { + newLeafNode(otherlv_2, grammarAccess.getGeneratorReferencesRuleAccess().getCommaKeyword_2_0()); + } + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getGeneratorReferencesRuleRule()); + } + } + { + newCompositeNode(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_2_1_0()); + } + ruleStringOrId + { + afterParserOrEnumRuleCall(); + } + ) + ) + )* + otherlv_4=']' + { + newLeafNode(otherlv_4, grammarAccess.getGeneratorReferencesRuleAccess().getRightSquareBracketKeyword_3()); + } + ) +; + +// Entry rule entryRuleApplyStatementRule +entryRuleApplyStatementRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getApplyStatementRuleRule()); } + iv_ruleApplyStatementRule=ruleApplyStatementRule + { $current=$iv_ruleApplyStatementRule.current; } + EOF; + +// Rule ApplyStatementRule +ruleApplyStatementRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='write' + { + newLeafNode(otherlv_0, grammarAccess.getApplyStatementRuleAccess().getWriteKeyword_0()); + } + ( + ( + lv_file_1_0=RULE_STRING + { + newLeafNode(lv_file_1_0, grammarAccess.getApplyStatementRuleAccess().getFileSTRINGTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getApplyStatementRuleRule()); + } + setWithLastConsumed( + $current, + "file", + lv_file_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.STRING"); + } + ) + ) + otherlv_2='with' + { + newLeafNode(otherlv_2, grammarAccess.getApplyStatementRuleAccess().getWithKeyword_2()); + } + ( + ( + lv_count_3_0=RULE_INT + { + newLeafNode(lv_count_3_0, grammarAccess.getApplyStatementRuleAccess().getCountINTTerminalRuleCall_3_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getApplyStatementRuleRule()); + } + setWithLastConsumed( + $current, + "count", + lv_count_3_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) + otherlv_4='samples' + { + newLeafNode(otherlv_4, grammarAccess.getApplyStatementRuleAccess().getSamplesKeyword_4()); + } + otherlv_5='from' + { + newLeafNode(otherlv_5, grammarAccess.getApplyStatementRuleAccess().getFromKeyword_5()); + } + otherlv_6='applying' + { + newLeafNode(otherlv_6, grammarAccess.getApplyStatementRuleAccess().getApplyingKeyword_6()); + } + ( + ( + { + newCompositeNode(grammarAccess.getApplyStatementRuleAccess().getFunctionFunctionReferenceRuleParserRuleCall_7_0()); + } + lv_function_7_0=ruleFunctionReferenceRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getApplyStatementRuleRule()); + } + set( + $current, + "function", + lv_function_7_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionReferenceRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_8='on' + { + newLeafNode(otherlv_8, grammarAccess.getApplyStatementRuleAccess().getOnKeyword_8()); + } + ( + ( + { + newCompositeNode(grammarAccess.getApplyStatementRuleAccess().getGeneratorGeneratorReferenceRuleParserRuleCall_9_0()); + } + lv_generator_9_0=ruleGeneratorReferenceRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getApplyStatementRuleRule()); + } + set( + $current, + "generator", + lv_generator_9_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorReferenceRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_10=';' + { + newLeafNode(otherlv_10, grammarAccess.getApplyStatementRuleAccess().getSemicolonKeyword_10()); + } + ) +; + +// Entry rule entryRuleGeneratorReferenceRule +entryRuleGeneratorReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGeneratorReferenceRuleRule()); } + iv_ruleGeneratorReferenceRule=ruleGeneratorReferenceRule + { $current=$iv_ruleGeneratorReferenceRule.current; } + EOF; + +// Rule GeneratorReferenceRule +ruleGeneratorReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getGeneratorReferenceRuleAccess().getGeneratorDefinitionReferenceRuleParserRuleCall_0()); + } + this_GeneratorDefinitionReferenceRule_0=ruleGeneratorDefinitionReferenceRule + { + $current = $this_GeneratorDefinitionReferenceRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getGeneratorReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); + } + this_LoopVariableReference_1=ruleLoopVariableReference + { + $current = $this_LoopVariableReference_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleGeneratorDefinitionReferenceRule +entryRuleGeneratorDefinitionReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getGeneratorDefinitionReferenceRuleRule()); } + iv_ruleGeneratorDefinitionReferenceRule=ruleGeneratorDefinitionReferenceRule + { $current=$iv_ruleGeneratorDefinitionReferenceRule.current; } + EOF; + +// Rule GeneratorDefinitionReferenceRule +ruleGeneratorDefinitionReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='generator' + { + newLeafNode(otherlv_0, grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGeneratorKeyword_0()); + } + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getGeneratorDefinitionReferenceRuleRule()); + } + } + { + newCompositeNode(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionCrossReference_1_0()); + } + ruleStringOrId + { + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleFunctionReferenceRule +entryRuleFunctionReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFunctionReferenceRuleRule()); } + iv_ruleFunctionReferenceRule=ruleFunctionReferenceRule + { $current=$iv_ruleFunctionReferenceRule.current; } + EOF; + +// Rule FunctionReferenceRule +ruleFunctionReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getFunctionReferenceRuleAccess().getFunctionDefReferenceRuleParserRuleCall_0()); + } + this_FunctionDefReferenceRule_0=ruleFunctionDefReferenceRule + { + $current = $this_FunctionDefReferenceRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getFunctionReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); + } + this_LoopVariableReference_1=ruleLoopVariableReference + { + $current = $this_LoopVariableReference_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleFunctionDefReferenceRule +entryRuleFunctionDefReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFunctionDefReferenceRuleRule()); } + iv_ruleFunctionDefReferenceRule=ruleFunctionDefReferenceRule + { $current=$iv_ruleFunctionDefReferenceRule.current; } + EOF; + +// Rule FunctionDefReferenceRule +ruleFunctionDefReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getFunctionDefReferenceRuleAccess().getFunctionDefinitionReferenceRuleParserRuleCall_0()); + } + this_FunctionDefinitionReferenceRule_0=ruleFunctionDefinitionReferenceRule + { + $current = $this_FunctionDefinitionReferenceRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getFunctionDefReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1()); + } + this_ParametrizedFunctionDefinitionReferenceRule_1=ruleParametrizedFunctionDefinitionReferenceRule + { + $current = $this_ParametrizedFunctionDefinitionReferenceRule_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleLoopVariableReference +entryRuleLoopVariableReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getLoopVariableReferenceRule()); } + iv_ruleLoopVariableReference=ruleLoopVariableReference + { $current=$iv_ruleLoopVariableReference.current; } + EOF; + +// Rule LoopVariableReference +ruleLoopVariableReference returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getLoopVariableReferenceAccess().getLoopVariableAction_0(), + $current); + } + ) + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getLoopVariableReferenceRule()); + } + } + otherlv_1=RULE_ID + { + newLeafNode(otherlv_1, grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementCrossReference_1_0()); + } + ) + ) + ) +; + +// Entry rule entryRuleFunctionDefinitionReferenceRule +entryRuleFunctionDefinitionReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFunctionDefinitionReferenceRuleRule()); } + iv_ruleFunctionDefinitionReferenceRule=ruleFunctionDefinitionReferenceRule + { $current=$iv_ruleFunctionDefinitionReferenceRule.current; } + EOF; + +// Rule FunctionDefinitionReferenceRule +ruleFunctionDefinitionReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getFunctionDefinitionReferenceRuleAccess().getFunctionDefinitionReferenceAction_0(), + $current); + } + ) + otherlv_1='definition' + { + newLeafNode(otherlv_1, grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionKeyword_1()); + } + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getFunctionDefinitionReferenceRuleRule()); + } + } + { + newCompositeNode(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionCrossReference_2_0()); + } + ruleStringOrId + { + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleParametrizedFunctionDefinitionReferenceRule +entryRuleParametrizedFunctionDefinitionReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleRule()); } + iv_ruleParametrizedFunctionDefinitionReferenceRule=ruleParametrizedFunctionDefinitionReferenceRule + { $current=$iv_ruleParametrizedFunctionDefinitionReferenceRule.current; } + EOF; + +// Rule ParametrizedFunctionDefinitionReferenceRule +ruleParametrizedFunctionDefinitionReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceAction_0(), + $current); + } + ) + otherlv_1='function' + { + newLeafNode(otherlv_1, grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getFunctionKeyword_1()); + } + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleRule()); + } + } + { + newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceCrossReference_2_0()); + } + ruleStringOrId + { + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleInstanceRule +entryRuleInstanceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getInstanceRuleRule()); } + iv_ruleInstanceRule=ruleInstanceRule + { $current=$iv_ruleInstanceRule.current; } + EOF; + +// Rule InstanceRule +ruleInstanceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getInstanceRuleRule()); + } + } + { + newCompositeNode(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionCrossReference_0_0()); + } + ruleStringOrId + { + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_1='{' + { + newLeafNode(otherlv_1, grammarAccess.getInstanceRuleAccess().getLeftCurlyBracketKeyword_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getInstanceRuleAccess().getAttributesAttributeRuleParserRuleCall_1_1_0()); + } + lv_attributes_2_0=ruleAttributeRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getInstanceRuleRule()); + } + add( + $current, + "attributes", + lv_attributes_2_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.AttributeRule"); + afterParserOrEnumRuleCall(); + } + ) + )* + otherlv_3='}' + { + newLeafNode(otherlv_3, grammarAccess.getInstanceRuleAccess().getRightCurlyBracketKeyword_1_2()); + } + )? + ) +; + +// Entry rule entryRuleAttributeRule +entryRuleAttributeRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getAttributeRuleRule()); } + iv_ruleAttributeRule=ruleAttributeRule + { $current=$iv_ruleAttributeRule.current; } + EOF; + +// Rule AttributeRule +ruleAttributeRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getAttributeRuleAccess().getNameNameOrMiscRuleParserRuleCall_0_0()); + } + lv_name_0_0=ruleNameOrMiscRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAttributeRuleRule()); + } + set( + $current, + "name", + lv_name_0_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.NameOrMiscRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_1=':=' + { + newLeafNode(otherlv_1, grammarAccess.getAttributeRuleAccess().getColonEqualsSignKeyword_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getAttributeRuleAccess().getValueValueRuleParserRuleCall_2_0()); + } + lv_value_2_0=ruleValueRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAttributeRuleRule()); + } + set( + $current, + "value", + lv_value_2_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.ValueRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_3=';' + { + newLeafNode(otherlv_3, grammarAccess.getAttributeRuleAccess().getSemicolonKeyword_3()); + } + ) +; + +// Entry rule entryRuleNameOrMiscRule +entryRuleNameOrMiscRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getNameOrMiscRuleRule()); } + iv_ruleNameOrMiscRule=ruleNameOrMiscRule + { $current=$iv_ruleNameOrMiscRule.current; } + EOF; + +// Rule NameOrMiscRule +ruleNameOrMiscRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getNameOrMiscRuleAccess().getNameRuleParserRuleCall_0()); + } + this_NameRule_0=ruleNameRule + { + $current = $this_NameRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getNameOrMiscRuleAccess().getMiscRuleParserRuleCall_1()); + } + this_MiscRule_1=ruleMiscRule + { + $current = $this_MiscRule_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleNameRule +entryRuleNameRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getNameRuleRule()); } + iv_ruleNameRule=ruleNameRule + { $current=$iv_ruleNameRule.current; } + EOF; + +// Rule NameRule +ruleNameRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getNameRuleRule()); + } + } + { + newCompositeNode(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionCrossReference_0()); + } + ruleStringOrId + { + afterParserOrEnumRuleCall(); + } + ) + ) +; + +// Entry rule entryRuleMiscRule +entryRuleMiscRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getMiscRuleRule()); } + iv_ruleMiscRule=ruleMiscRule + { $current=$iv_ruleMiscRule.current; } + EOF; + +// Rule MiscRule +ruleMiscRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + lv_name_0_0=RULE_STRING + { + newLeafNode(lv_name_0_0, grammarAccess.getMiscRuleAccess().getNameSTRINGTerminalRuleCall_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getMiscRuleRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.STRING"); + } + ) + ) +; + +// Entry rule entryRuleValueRule +entryRuleValueRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getValueRuleRule()); } + iv_ruleValueRule=ruleValueRule + { $current=$iv_ruleValueRule.current; } + EOF; + +// Rule ValueRule +ruleValueRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getValueRuleAccess().getArrayRuleParserRuleCall_0()); + } + this_ArrayRule_0=ruleArrayRule + { + $current = $this_ArrayRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getValueRuleAccess().getDataReferenceRuleParserRuleCall_1()); + } + this_DataReferenceRule_1=ruleDataReferenceRule + { + $current = $this_DataReferenceRule_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getValueRuleAccess().getInstanceRuleParserRuleCall_2()); + } + this_InstanceRule_2=ruleInstanceRule + { + $current = $this_InstanceRule_2.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getValueRuleAccess().getLiteralValueRuleParserRuleCall_3()); + } + this_LiteralValueRule_3=ruleLiteralValueRule + { + $current = $this_LiteralValueRule_3.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleArrayRule +entryRuleArrayRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getArrayRuleRule()); } + iv_ruleArrayRule=ruleArrayRule + { $current=$iv_ruleArrayRule.current; } + EOF; + +// Rule ArrayRule +ruleArrayRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getArrayRuleAccess().getArrayAction_0(), + $current); + } + ) + otherlv_1='[' + { + newLeafNode(otherlv_1, grammarAccess.getArrayRuleAccess().getLeftSquareBracketKeyword_1()); + } + ( + ( + ( + { + newCompositeNode(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_0_0()); + } + lv_values_2_0=ruleValueRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getArrayRuleRule()); + } + add( + $current, + "values", + lv_values_2_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.ValueRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_3=',' + { + newLeafNode(otherlv_3, grammarAccess.getArrayRuleAccess().getCommaKeyword_2_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_1_1_0()); + } + lv_values_4_0=ruleValueRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getArrayRuleRule()); + } + add( + $current, + "values", + lv_values_4_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.ValueRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + )? + otherlv_5=']' + { + newLeafNode(otherlv_5, grammarAccess.getArrayRuleAccess().getRightSquareBracketKeyword_3()); + } + ) +; + +// Entry rule entryRuleLiteralValueRule +entryRuleLiteralValueRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getLiteralValueRuleRule()); } + iv_ruleLiteralValueRule=ruleLiteralValueRule + { $current=$iv_ruleLiteralValueRule.current; } + EOF; + +// Rule LiteralValueRule +ruleLiteralValueRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + newCompositeNode(grammarAccess.getLiteralValueRuleAccess().getLiteralLiteralRuleParserRuleCall_0()); + } + lv_literal_0_0=ruleLiteralRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getLiteralValueRuleRule()); + } + set( + $current, + "literal", + lv_literal_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.LiteralRule"); + afterParserOrEnumRuleCall(); + } + ) + ) +; + +// Entry rule entryRuleDataReferenceRule +entryRuleDataReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getDataReferenceRuleRule()); } + iv_ruleDataReferenceRule=ruleDataReferenceRule + { $current=$iv_ruleDataReferenceRule.current; } + EOF; + +// Rule DataReferenceRule +ruleDataReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getDataReferenceRuleAccess().getDataReferenceAction_0(), + $current); + } + ) + otherlv_1='data' + { + newLeafNode(otherlv_1, grammarAccess.getDataReferenceRuleAccess().getDataKeyword_1()); + } + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getDataReferenceRuleRule()); + } + } + { + newCompositeNode(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionCrossReference_2_0()); + } + ruleStringOrId + { + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleExpressionRule +entryRuleExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getExpressionRuleRule()); } + iv_ruleExpressionRule=ruleExpressionRule + { $current=$iv_ruleExpressionRule.current; } + EOF; + +// Rule ExpressionRule +ruleExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + { + newCompositeNode(grammarAccess.getExpressionRuleAccess().getOrExpressionRuleParserRuleCall()); + } + this_OrExpressionRule_0=ruleOrExpressionRule + { + $current = $this_OrExpressionRule_0.current; + afterParserOrEnumRuleCall(); + } +; + +// Entry rule entryRuleOrExpressionRule +entryRuleOrExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getOrExpressionRuleRule()); } + iv_ruleOrExpressionRule=ruleOrExpressionRule + { $current=$iv_ruleOrExpressionRule.current; } + EOF; + +// Rule OrExpressionRule +ruleOrExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_0_0()); + } + lv_subExpressions_0_0=ruleXorExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getOrExpressionRuleRule()); + } + add( + $current, + "subExpressions", + lv_subExpressions_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.XorExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_1='OR' + { + newLeafNode(otherlv_1, grammarAccess.getOrExpressionRuleAccess().getORKeyword_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_1_1_0()); + } + lv_subExpressions_2_0=ruleXorExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getOrExpressionRuleRule()); + } + add( + $current, + "subExpressions", + lv_subExpressions_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.XorExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + ) +; + +// Entry rule entryRuleXorExpressionRule +entryRuleXorExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getXorExpressionRuleRule()); } + iv_ruleXorExpressionRule=ruleXorExpressionRule + { $current=$iv_ruleXorExpressionRule.current; } + EOF; + +// Rule XorExpressionRule +ruleXorExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_0_0()); + } + lv_subExpressions_0_0=ruleAndExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getXorExpressionRuleRule()); + } + add( + $current, + "subExpressions", + lv_subExpressions_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AndExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_1='XOR' + { + newLeafNode(otherlv_1, grammarAccess.getXorExpressionRuleAccess().getXORKeyword_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_1_1_0()); + } + lv_subExpressions_2_0=ruleAndExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getXorExpressionRuleRule()); + } + add( + $current, + "subExpressions", + lv_subExpressions_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AndExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + ) +; + +// Entry rule entryRuleAndExpressionRule +entryRuleAndExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getAndExpressionRuleRule()); } + iv_ruleAndExpressionRule=ruleAndExpressionRule + { $current=$iv_ruleAndExpressionRule.current; } + EOF; + +// Rule AndExpressionRule +ruleAndExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_0_0()); + } + lv_subExpressions_0_0=ruleNotExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAndExpressionRuleRule()); + } + add( + $current, + "subExpressions", + lv_subExpressions_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.NotExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_1='AND' + { + newLeafNode(otherlv_1, grammarAccess.getAndExpressionRuleAccess().getANDKeyword_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_1_1_0()); + } + lv_subExpressions_2_0=ruleNotExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAndExpressionRuleRule()); + } + add( + $current, + "subExpressions", + lv_subExpressions_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.NotExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + ) +; + +// Entry rule entryRuleNotExpressionRule +entryRuleNotExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getNotExpressionRuleRule()); } + iv_ruleNotExpressionRule=ruleNotExpressionRule + { $current=$iv_ruleNotExpressionRule.current; } + EOF; + +// Rule NotExpressionRule +ruleNotExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + lv_negated_0_0='!' + { + newLeafNode(lv_negated_0_0, grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getNotExpressionRuleRule()); + } + setWithLastConsumed($current, "negated", lv_negated_0_0 != null, "!"); + } + ) + )? + ( + ( + { + newCompositeNode(grammarAccess.getNotExpressionRuleAccess().getOperandComparisonExpressionRuleParserRuleCall_1_0()); + } + lv_operand_1_0=ruleComparisonExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getNotExpressionRuleRule()); + } + set( + $current, + "operand", + lv_operand_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ComparisonExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleComparisonExpressionRule +entryRuleComparisonExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getComparisonExpressionRuleRule()); } + iv_ruleComparisonExpressionRule=ruleComparisonExpressionRule + { $current=$iv_ruleComparisonExpressionRule.current; } + EOF; + +// Rule ComparisonExpressionRule +ruleComparisonExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAddOrSubtractExpressionRuleParserRuleCall_0_0()); + } + lv_leftOperand_0_0=ruleAddOrSubtractExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getComparisonExpressionRuleRule()); + } + set( + $current, + "leftOperand", + lv_leftOperand_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AddOrSubtractExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getComparisonExpressionRuleAccess().getComparisonPartialComparisonExpressionRuleParserRuleCall_1_0()); + } + lv_comparison_1_0=rulePartialComparisonExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getComparisonExpressionRuleRule()); + } + add( + $current, + "comparison", + lv_comparison_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.PartialComparisonExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + )* + ) +; + +// Entry rule entryRulePartialComparisonExpressionRule +entryRulePartialComparisonExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPartialComparisonExpressionRuleRule()); } + iv_rulePartialComparisonExpressionRule=rulePartialComparisonExpressionRule + { $current=$iv_rulePartialComparisonExpressionRule.current; } + EOF; + +// Rule PartialComparisonExpressionRule +rulePartialComparisonExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorComparisonOperatorRuleEnumRuleCall_0_0()); + } + lv_operator_0_0=ruleComparisonOperatorRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPartialComparisonExpressionRuleRule()); + } + set( + $current, + "operator", + lv_operator_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ComparisonOperatorRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAddOrSubtractExpressionRuleParserRuleCall_1_0()); + } + lv_subExpression_1_0=ruleAddOrSubtractExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPartialComparisonExpressionRuleRule()); + } + set( + $current, + "subExpression", + lv_subExpression_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AddOrSubtractExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleAddOrSubtractExpressionRule +entryRuleAddOrSubtractExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getAddOrSubtractExpressionRuleRule()); } + iv_ruleAddOrSubtractExpressionRule=ruleAddOrSubtractExpressionRule + { $current=$iv_ruleAddOrSubtractExpressionRule.current; } + EOF; + +// Rule AddOrSubtractExpressionRule +ruleAddOrSubtractExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandMultiplyDivideModuloExpressionRuleParserRuleCall_0_0()); + } + lv_leftOperand_0_0=ruleMultiplyDivideModuloExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAddOrSubtractExpressionRuleRule()); + } + set( + $current, + "leftOperand", + lv_leftOperand_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.MultiplyDivideModuloExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + ( + { + newCompositeNode(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_1_0_0()); + } + lv_operators_1_0=ruleAddOrSubtractOperatorRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAddOrSubtractExpressionRuleRule()); + } + add( + $current, + "operators", + lv_operators_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AddOrSubtractOperatorRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsMultiplyDivideModuloExpressionRuleParserRuleCall_1_1_0()); + } + lv_operands_2_0=ruleMultiplyDivideModuloExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAddOrSubtractExpressionRuleRule()); + } + add( + $current, + "operands", + lv_operands_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.MultiplyDivideModuloExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + ) +; + +// Entry rule entryRuleMultiplyDivideModuloExpressionRule +entryRuleMultiplyDivideModuloExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); } + iv_ruleMultiplyDivideModuloExpressionRule=ruleMultiplyDivideModuloExpressionRule + { $current=$iv_ruleMultiplyDivideModuloExpressionRule.current; } + EOF; + +// Rule MultiplyDivideModuloExpressionRule +ruleMultiplyDivideModuloExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandPowerOfExpressionRuleParserRuleCall_0_0()); + } + lv_leftOperand_0_0=rulePowerOfExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + } + set( + $current, + "leftOperand", + lv_leftOperand_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.PowerOfExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + ( + { + newCompositeNode(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsMultiplyDivideModuloOperatorRuleEnumRuleCall_1_0_0()); + } + lv_operators_1_0=ruleMultiplyDivideModuloOperatorRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + } + add( + $current, + "operators", + lv_operators_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.MultiplyDivideModuloOperatorRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsPowerOfExpressionRuleParserRuleCall_1_1_0()); + } + lv_operands_2_0=rulePowerOfExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + } + add( + $current, + "operands", + lv_operands_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.PowerOfExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + ) +; + +// Entry rule entryRulePowerOfExpressionRule +entryRulePowerOfExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPowerOfExpressionRuleRule()); } + iv_rulePowerOfExpressionRule=rulePowerOfExpressionRule + { $current=$iv_rulePowerOfExpressionRule.current; } + EOF; + +// Rule PowerOfExpressionRule +rulePowerOfExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandUnaryAddOrSubtractExpressionRuleParserRuleCall_0_0()); + } + lv_leftOperand_0_0=ruleUnaryAddOrSubtractExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPowerOfExpressionRuleRule()); + } + set( + $current, + "leftOperand", + lv_leftOperand_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.UnaryAddOrSubtractExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_1='^' + { + newLeafNode(otherlv_1, grammarAccess.getPowerOfExpressionRuleAccess().getCircumflexAccentKeyword_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandPowerOfExpressionRuleParserRuleCall_1_1_0()); + } + lv_rightOperand_2_0=rulePowerOfExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getPowerOfExpressionRuleRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.PowerOfExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )? + ) +; + +// Entry rule entryRuleUnaryAddOrSubtractExpressionRule +entryRuleUnaryAddOrSubtractExpressionRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); } + iv_ruleUnaryAddOrSubtractExpressionRule=ruleUnaryAddOrSubtractExpressionRule + { $current=$iv_ruleUnaryAddOrSubtractExpressionRule.current; } + EOF; + +// Rule UnaryAddOrSubtractExpressionRule +ruleUnaryAddOrSubtractExpressionRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_0_0()); + } + lv_operators_0_0=ruleAddOrSubtractOperatorRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); + } + add( + $current, + "operators", + lv_operators_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AddOrSubtractOperatorRule"); + afterParserOrEnumRuleCall(); + } + ) + )* + ( + ( + { + newCompositeNode(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionLiteralOrReferenceRuleParserRuleCall_1_0()); + } + lv_subExpression_1_0=ruleLiteralOrReferenceRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); + } + set( + $current, + "subExpression", + lv_subExpression_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.LiteralOrReferenceRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) +; + +// Entry rule entryRuleLiteralOrReferenceRule +entryRuleLiteralOrReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getLiteralOrReferenceRuleRule()); } + iv_ruleLiteralOrReferenceRule=ruleLiteralOrReferenceRule + { $current=$iv_ruleLiteralOrReferenceRule.current; } + EOF; + +// Rule LiteralOrReferenceRule +ruleLiteralOrReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleAccess().getCallRuleParserRuleCall_0()); + } + this_CallRule_0=ruleCallRule + { + $current = $this_CallRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleAccess().getLiteralRuleParserRuleCall_1()); + } + this_LiteralRule_1=ruleLiteralRule + { + $current = $this_LiteralRule_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleAccess().getParanthesesRuleParserRuleCall_2()); + } + this_ParanthesesRule_2=ruleParanthesesRule + { + $current = $this_ParanthesesRule_2.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleAccess().getValueReferenceRuleParserRuleCall_3()); + } + this_ValueReferenceRule_3=ruleValueReferenceRule + { + $current = $this_ValueReferenceRule_3.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleParanthesesRule +entryRuleParanthesesRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getParanthesesRuleRule()); } + iv_ruleParanthesesRule=ruleParanthesesRule + { $current=$iv_ruleParanthesesRule.current; } + EOF; + +// Rule ParanthesesRule +ruleParanthesesRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0='(' + { + newLeafNode(otherlv_0, grammarAccess.getParanthesesRuleAccess().getLeftParenthesisKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getParanthesesRuleAccess().getSubExpressionExpressionRuleParserRuleCall_1_0()); + } + lv_subExpression_1_0=ruleExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getParanthesesRuleRule()); + } + set( + $current, + "subExpression", + lv_subExpression_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_2=')' + { + newLeafNode(otherlv_2, grammarAccess.getParanthesesRuleAccess().getRightParenthesisKeyword_2()); + } + ) +; + +// Entry rule entryRuleCallRule +entryRuleCallRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getCallRuleRule()); } + iv_ruleCallRule=ruleCallRule + { $current=$iv_ruleCallRule.current; } + EOF; + +// Rule CallRule +ruleCallRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + { + newCompositeNode(grammarAccess.getCallRuleAccess().getFunctionFunctionNameRuleParserRuleCall_0_0()); + } + lv_function_0_0=ruleFunctionNameRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getCallRuleRule()); + } + set( + $current, + "function", + lv_function_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.FunctionNameRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_1='(' + { + newLeafNode(otherlv_1, grammarAccess.getCallRuleAccess().getLeftParenthesisKeyword_1()); + } + ( + ( + ( + { + newCompositeNode(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_0_0()); + } + lv_parameters_2_0=ruleExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getCallRuleRule()); + } + add( + $current, + "parameters", + lv_parameters_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_3=',' + { + newLeafNode(otherlv_3, grammarAccess.getCallRuleAccess().getCommaKeyword_2_1_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_1_1_0()); + } + lv_parameters_4_0=ruleExpressionRule + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getCallRuleRule()); + } + add( + $current, + "parameters", + lv_parameters_4_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ExpressionRule"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + )? + otherlv_5=')' + { + newLeafNode(otherlv_5, grammarAccess.getCallRuleAccess().getRightParenthesisKeyword_3()); + } + ) +; + +// Entry rule entryRuleFunctionNameRule +entryRuleFunctionNameRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFunctionNameRuleRule()); } + iv_ruleFunctionNameRule=ruleFunctionNameRule + { $current=$iv_ruleFunctionNameRule.current; } + EOF; + +// Rule FunctionNameRule +ruleFunctionNameRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getFunctionNameRuleAccess().getFunctionNameAction_0(), + $current); + } + ) + otherlv_1='call' + { + newLeafNode(otherlv_1, grammarAccess.getFunctionNameRuleAccess().getCallKeyword_1()); + } + ) +; + +// Entry rule entryRuleValueReferenceRule +entryRuleValueReferenceRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getValueReferenceRuleRule()); } + iv_ruleValueReferenceRule=ruleValueReferenceRule + { $current=$iv_ruleValueReferenceRule.current; } + EOF; + +// Rule ValueReferenceRule +ruleValueReferenceRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getValueReferenceRuleAccess().getValueReferenceAction_0(), + $current); + } + ) + otherlv_1='value' + { + newLeafNode(otherlv_1, grammarAccess.getValueReferenceRuleAccess().getValueKeyword_1()); + } + ) +; + +// Entry rule entryRuleLiteralRule +entryRuleLiteralRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getLiteralRuleRule()); } + iv_ruleLiteralRule=ruleLiteralRule + { $current=$iv_ruleLiteralRule.current; } + EOF; + +// Rule LiteralRule +ruleLiteralRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getLiteralRuleAccess().getNumberLiteralRuleParserRuleCall_0()); + } + this_NumberLiteralRule_0=ruleNumberLiteralRule + { + $current = $this_NumberLiteralRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getLiteralRuleAccess().getStringLiteralRuleParserRuleCall_1()); + } + this_StringLiteralRule_1=ruleStringLiteralRule + { + $current = $this_StringLiteralRule_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getLiteralRuleAccess().getBooleanLiteralRuleParserRuleCall_2()); + } + this_BooleanLiteralRule_2=ruleBooleanLiteralRule + { + $current = $this_BooleanLiteralRule_2.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleNumberLiteralRule +entryRuleNumberLiteralRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getNumberLiteralRuleRule()); } + iv_ruleNumberLiteralRule=ruleNumberLiteralRule + { $current=$iv_ruleNumberLiteralRule.current; } + EOF; + +// Rule NumberLiteralRule +ruleNumberLiteralRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getNumberLiteralRuleAccess().getDoubleLiteralRuleParserRuleCall_0()); + } + this_DoubleLiteralRule_0=ruleDoubleLiteralRule + { + $current = $this_DoubleLiteralRule_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getNumberLiteralRuleAccess().getIntegerLiteralRuleParserRuleCall_1()); + } + this_IntegerLiteralRule_1=ruleIntegerLiteralRule + { + $current = $this_IntegerLiteralRule_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleDoubleLiteralRule +entryRuleDoubleLiteralRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getDoubleLiteralRuleRule()); } + iv_ruleDoubleLiteralRule=ruleDoubleLiteralRule + { $current=$iv_ruleDoubleLiteralRule.current; } + EOF; + +// Rule DoubleLiteralRule +ruleDoubleLiteralRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + newCompositeNode(grammarAccess.getDoubleLiteralRuleAccess().getValueDOUBLEParserRuleCall_0()); + } + lv_value_0_0=ruleDOUBLE + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getDoubleLiteralRuleRule()); + } + set( + $current, + "value", + lv_value_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.DOUBLE"); + afterParserOrEnumRuleCall(); + } + ) + ) +; + +// Entry rule entryRuleIntegerLiteralRule +entryRuleIntegerLiteralRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getIntegerLiteralRuleRule()); } + iv_ruleIntegerLiteralRule=ruleIntegerLiteralRule + { $current=$iv_ruleIntegerLiteralRule.current; } + EOF; + +// Rule IntegerLiteralRule +ruleIntegerLiteralRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + lv_value_0_0=RULE_INT + { + newLeafNode(lv_value_0_0, grammarAccess.getIntegerLiteralRuleAccess().getValueINTTerminalRuleCall_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getIntegerLiteralRuleRule()); + } + setWithLastConsumed( + $current, + "value", + lv_value_0_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) +; + +// Entry rule entryRuleStringLiteralRule +entryRuleStringLiteralRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getStringLiteralRuleRule()); } + iv_ruleStringLiteralRule=ruleStringLiteralRule + { $current=$iv_ruleStringLiteralRule.current; } + EOF; + +// Rule StringLiteralRule +ruleStringLiteralRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + lv_value_0_0=RULE_STRING + { + newLeafNode(lv_value_0_0, grammarAccess.getStringLiteralRuleAccess().getValueSTRINGTerminalRuleCall_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getStringLiteralRuleRule()); + } + setWithLastConsumed( + $current, + "value", + lv_value_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.STRING"); + } + ) + ) +; + +// Entry rule entryRuleBooleanLiteralRule +entryRuleBooleanLiteralRule returns [EObject current=null]: + { newCompositeNode(grammarAccess.getBooleanLiteralRuleRule()); } + iv_ruleBooleanLiteralRule=ruleBooleanLiteralRule + { $current=$iv_ruleBooleanLiteralRule.current; } + EOF; + +// Rule BooleanLiteralRule +ruleBooleanLiteralRule returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + { + $current = forceCreateModelElement( + grammarAccess.getBooleanLiteralRuleAccess().getBooleanLiteralAction_0(), + $current); + } + ) + ( + ( + ( + lv_value_1_0='true' + { + newLeafNode(lv_value_1_0, grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getBooleanLiteralRuleRule()); + } + setWithLastConsumed($current, "value", lv_value_1_0 != null, "true"); + } + ) + ) + | + otherlv_2='false' + { + newLeafNode(otherlv_2, grammarAccess.getBooleanLiteralRuleAccess().getFalseKeyword_1_1()); + } + ) + ) +; + +// Entry rule entryRuleStringOrId +entryRuleStringOrId returns [String current=null]: + { newCompositeNode(grammarAccess.getStringOrIdRule()); } + iv_ruleStringOrId=ruleStringOrId + { $current=$iv_ruleStringOrId.current.getText(); } + EOF; + +// Rule StringOrId +ruleStringOrId returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + this_QUOTED_ID_0=RULE_QUOTED_ID + { + $current.merge(this_QUOTED_ID_0); + } + { + newLeafNode(this_QUOTED_ID_0, grammarAccess.getStringOrIdAccess().getQUOTED_IDTerminalRuleCall_0()); + } + | + this_ID_1=RULE_ID + { + $current.merge(this_ID_1); + } + { + newLeafNode(this_ID_1, grammarAccess.getStringOrIdAccess().getIDTerminalRuleCall_1()); + } + ) +; + +// Entry rule entryRuleDOUBLE +entryRuleDOUBLE returns [String current=null]: + { newCompositeNode(grammarAccess.getDOUBLERule()); } + iv_ruleDOUBLE=ruleDOUBLE + { $current=$iv_ruleDOUBLE.current.getText(); } + EOF; + +// Rule DOUBLE +ruleDOUBLE returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + this_INT_0=RULE_INT + { + $current.merge(this_INT_0); + } + { + newLeafNode(this_INT_0, grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_0()); + } + kw='.' + { + $current.merge(kw); + newLeafNode(kw, grammarAccess.getDOUBLEAccess().getFullStopKeyword_1()); + } + this_INT_2=RULE_INT + { + $current.merge(this_INT_2); + } + { + newLeafNode(this_INT_2, grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_2()); + } + ) +; + +// Rule ComparisonOperatorRule +ruleComparisonOperatorRule returns [Enumerator current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + enumLiteral_0='>=' + { + $current = grammarAccess.getComparisonOperatorRuleAccess().getGreaterThanEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getComparisonOperatorRuleAccess().getGreaterThanEnumLiteralDeclaration_0()); + } + ) + | + ( + enumLiteral_1='>' + { + $current = grammarAccess.getComparisonOperatorRuleAccess().getGreaterEqualEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getComparisonOperatorRuleAccess().getGreaterEqualEnumLiteralDeclaration_1()); + } + ) + | + ( + enumLiteral_2='=' + { + $current = grammarAccess.getComparisonOperatorRuleAccess().getEqualEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getComparisonOperatorRuleAccess().getEqualEnumLiteralDeclaration_2()); + } + ) + | + ( + enumLiteral_3='!=' + { + $current = grammarAccess.getComparisonOperatorRuleAccess().getUnequalEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getComparisonOperatorRuleAccess().getUnequalEnumLiteralDeclaration_3()); + } + ) + | + ( + enumLiteral_4='<' + { + $current = grammarAccess.getComparisonOperatorRuleAccess().getLessEqualEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_4, grammarAccess.getComparisonOperatorRuleAccess().getLessEqualEnumLiteralDeclaration_4()); + } + ) + | + ( + enumLiteral_5='<=' + { + $current = grammarAccess.getComparisonOperatorRuleAccess().getLessThanEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_5, grammarAccess.getComparisonOperatorRuleAccess().getLessThanEnumLiteralDeclaration_5()); + } + ) + ) +; + +// Rule AddOrSubtractOperatorRule +ruleAddOrSubtractOperatorRule returns [Enumerator current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + enumLiteral_0='+' + { + $current = grammarAccess.getAddOrSubtractOperatorRuleAccess().getAddEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getAddOrSubtractOperatorRuleAccess().getAddEnumLiteralDeclaration_0()); + } + ) + | + ( + enumLiteral_1='-' + { + $current = grammarAccess.getAddOrSubtractOperatorRuleAccess().getSubtractEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getAddOrSubtractOperatorRuleAccess().getSubtractEnumLiteralDeclaration_1()); + } + ) + ) +; + +// Rule MultiplyDivideModuloOperatorRule +ruleMultiplyDivideModuloOperatorRule returns [Enumerator current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + enumLiteral_0='*' + { + $current = grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getMultiplyEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getMultiplyEnumLiteralDeclaration_0()); + } + ) + | + ( + enumLiteral_1='/' + { + $current = grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getDivideEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getDivideEnumLiteralDeclaration_1()); + } + ) + | + ( + enumLiteral_2='%' + { + $current = grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getModuloEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getModuloEnumLiteralDeclaration_2()); + } + ) + ) +; + +RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"'; + +RULE_QUOTED_ID : '\'' ('\\' .|~(('\\'|'\'')))* '\''; + +RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; + +RULE_INT : ('0'..'9')+; + +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/'; + +RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?; + +RULE_WS : (' '|'\t'|'\r'|'\n')+; + +RULE_ANY_OTHER : .; diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.tokens b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.tokens new file mode 100644 index 00000000..337ca219 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSL.tokens @@ -0,0 +1,106 @@ +'!'=41 +'!='=53 +'%'=60 +'('=43 +')'=44 +'*'=58 +'+'=56 +','=25 +'-'=57 +'.'=49 +'/'=59 +':='=36 +';'=13 +'<'=54 +'<='=55 +'='=52 +'>'=51 +'>='=50 +'AND'=40 +'OR'=38 +'XOR'=39 +'['=21 +']'=23 +'^'=42 +'applying'=31 +'call'=45 +'data'=37 +'definition'=33 +'end'=20 +'false'=48 +'for'=17 +'from'=30 +'function'=14 +'functions'=24 +'generator'=16 +'generators'=26 +'in'=18 +'loop'=19 +'on'=32 +'samples'=29 +'to'=22 +'true'=47 +'use'=12 +'using'=15 +'value'=46 +'with'=28 +'write'=27 +'{'=34 +'}'=35 +RULE_ANY_OTHER=11 +RULE_ID=5 +RULE_INT=6 +RULE_ML_COMMENT=8 +RULE_QUOTED_ID=7 +RULE_SL_COMMENT=9 +RULE_STRING=4 +RULE_WS=10 +T__12=12 +T__13=13 +T__14=14 +T__15=15 +T__16=16 +T__17=17 +T__18=18 +T__19=19 +T__20=20 +T__21=21 +T__22=22 +T__23=23 +T__24=24 +T__25=25 +T__26=26 +T__27=27 +T__28=28 +T__29=29 +T__30=30 +T__31=31 +T__32=32 +T__33=33 +T__34=34 +T__35=35 +T__36=36 +T__37=37 +T__38=38 +T__39=39 +T__40=40 +T__41=41 +T__42=42 +T__43=43 +T__44=44 +T__45=45 +T__46=46 +T__47=47 +T__48=48 +T__49=49 +T__50=50 +T__51=51 +T__52=52 +T__53=53 +T__54=54 +T__55=55 +T__56=56 +T__57=57 +T__58=58 +T__59=59 +T__60=60 diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSLLexer.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSLLexer.java new file mode 100644 index 00000000..dde89f05 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSLLexer.java @@ -0,0 +1,2351 @@ +package de.evoal.languages.model.generator.dsl.parser.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.parser.antlr.Lexer; + + +import org.antlr.runtime.*; +import java.util.Stack; +import java.util.List; +import java.util.ArrayList; + +@SuppressWarnings("all") +public class InternalGeneratorDSLLexer extends Lexer { + public static final int T__50=50; + public static final int T__19=19; + public static final int T__15=15; + public static final int T__59=59; + public static final int T__16=16; + public static final int T__17=17; + public static final int T__18=18; + public static final int T__55=55; + public static final int T__12=12; + public static final int T__56=56; + public static final int T__13=13; + public static final int T__57=57; + public static final int T__14=14; + public static final int T__58=58; + public static final int T__51=51; + public static final int T__52=52; + public static final int T__53=53; + public static final int T__54=54; + public static final int T__60=60; + public static final int RULE_ID=5; + public static final int RULE_QUOTED_ID=7; + public static final int T__26=26; + public static final int T__27=27; + public static final int T__28=28; + public static final int RULE_INT=6; + public static final int T__29=29; + public static final int T__22=22; + public static final int RULE_ML_COMMENT=8; + public static final int T__23=23; + public static final int T__24=24; + public static final int T__25=25; + public static final int T__20=20; + public static final int T__21=21; + public static final int RULE_STRING=4; + public static final int RULE_SL_COMMENT=9; + public static final int T__37=37; + public static final int T__38=38; + public static final int T__39=39; + public static final int T__33=33; + public static final int T__34=34; + public static final int T__35=35; + public static final int T__36=36; + public static final int EOF=-1; + public static final int T__30=30; + public static final int T__31=31; + public static final int T__32=32; + public static final int RULE_WS=10; + public static final int RULE_ANY_OTHER=11; + public static final int T__48=48; + public static final int T__49=49; + public static final int T__44=44; + public static final int T__45=45; + public static final int T__46=46; + public static final int T__47=47; + public static final int T__40=40; + public static final int T__41=41; + public static final int T__42=42; + public static final int T__43=43; + + // delegates + // delegators + + public InternalGeneratorDSLLexer() {;} + public InternalGeneratorDSLLexer(CharStream input) { + this(input, new RecognizerSharedState()); + } + public InternalGeneratorDSLLexer(CharStream input, RecognizerSharedState state) { + super(input,state); + + } + public String getGrammarFileName() { return "InternalGeneratorDSL.g"; } + + // $ANTLR start "T__12" + public final void mT__12() throws RecognitionException { + try { + int _type = T__12; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:11:7: ( 'use' ) + // InternalGeneratorDSL.g:11:9: 'use' + { + match("use"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__12" + + // $ANTLR start "T__13" + public final void mT__13() throws RecognitionException { + try { + int _type = T__13; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:12:7: ( ';' ) + // InternalGeneratorDSL.g:12:9: ';' + { + match(';'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__13" + + // $ANTLR start "T__14" + public final void mT__14() throws RecognitionException { + try { + int _type = T__14; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:13:7: ( 'function' ) + // InternalGeneratorDSL.g:13:9: 'function' + { + match("function"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__14" + + // $ANTLR start "T__15" + public final void mT__15() throws RecognitionException { + try { + int _type = T__15; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:14:7: ( 'using' ) + // InternalGeneratorDSL.g:14:9: 'using' + { + match("using"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__15" + + // $ANTLR start "T__16" + public final void mT__16() throws RecognitionException { + try { + int _type = T__16; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:15:7: ( 'generator' ) + // InternalGeneratorDSL.g:15:9: 'generator' + { + match("generator"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__16" + + // $ANTLR start "T__17" + public final void mT__17() throws RecognitionException { + try { + int _type = T__17; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:16:7: ( 'for' ) + // InternalGeneratorDSL.g:16:9: 'for' + { + match("for"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__17" + + // $ANTLR start "T__18" + public final void mT__18() throws RecognitionException { + try { + int _type = T__18; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:17:7: ( 'in' ) + // InternalGeneratorDSL.g:17:9: 'in' + { + match("in"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__18" + + // $ANTLR start "T__19" + public final void mT__19() throws RecognitionException { + try { + int _type = T__19; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:18:7: ( 'loop' ) + // InternalGeneratorDSL.g:18:9: 'loop' + { + match("loop"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__19" + + // $ANTLR start "T__20" + public final void mT__20() throws RecognitionException { + try { + int _type = T__20; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:19:7: ( 'end' ) + // InternalGeneratorDSL.g:19:9: 'end' + { + match("end"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__20" + + // $ANTLR start "T__21" + public final void mT__21() throws RecognitionException { + try { + int _type = T__21; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:20:7: ( '[' ) + // InternalGeneratorDSL.g:20:9: '[' + { + match('['); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__21" + + // $ANTLR start "T__22" + public final void mT__22() throws RecognitionException { + try { + int _type = T__22; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:21:7: ( 'to' ) + // InternalGeneratorDSL.g:21:9: 'to' + { + match("to"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__22" + + // $ANTLR start "T__23" + public final void mT__23() throws RecognitionException { + try { + int _type = T__23; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:22:7: ( ']' ) + // InternalGeneratorDSL.g:22:9: ']' + { + match(']'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__23" + + // $ANTLR start "T__24" + public final void mT__24() throws RecognitionException { + try { + int _type = T__24; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:23:7: ( 'functions' ) + // InternalGeneratorDSL.g:23:9: 'functions' + { + match("functions"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__24" + + // $ANTLR start "T__25" + public final void mT__25() throws RecognitionException { + try { + int _type = T__25; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:24:7: ( ',' ) + // InternalGeneratorDSL.g:24:9: ',' + { + match(','); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__25" + + // $ANTLR start "T__26" + public final void mT__26() throws RecognitionException { + try { + int _type = T__26; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:25:7: ( 'generators' ) + // InternalGeneratorDSL.g:25:9: 'generators' + { + match("generators"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__26" + + // $ANTLR start "T__27" + public final void mT__27() throws RecognitionException { + try { + int _type = T__27; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:26:7: ( 'write' ) + // InternalGeneratorDSL.g:26:9: 'write' + { + match("write"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__27" + + // $ANTLR start "T__28" + public final void mT__28() throws RecognitionException { + try { + int _type = T__28; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:27:7: ( 'with' ) + // InternalGeneratorDSL.g:27:9: 'with' + { + match("with"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__28" + + // $ANTLR start "T__29" + public final void mT__29() throws RecognitionException { + try { + int _type = T__29; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:28:7: ( 'samples' ) + // InternalGeneratorDSL.g:28:9: 'samples' + { + match("samples"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__29" + + // $ANTLR start "T__30" + public final void mT__30() throws RecognitionException { + try { + int _type = T__30; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:29:7: ( 'from' ) + // InternalGeneratorDSL.g:29:9: 'from' + { + match("from"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__30" + + // $ANTLR start "T__31" + public final void mT__31() throws RecognitionException { + try { + int _type = T__31; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:30:7: ( 'applying' ) + // InternalGeneratorDSL.g:30:9: 'applying' + { + match("applying"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__31" + + // $ANTLR start "T__32" + public final void mT__32() throws RecognitionException { + try { + int _type = T__32; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:31:7: ( 'on' ) + // InternalGeneratorDSL.g:31:9: 'on' + { + match("on"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__32" + + // $ANTLR start "T__33" + public final void mT__33() throws RecognitionException { + try { + int _type = T__33; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:32:7: ( 'definition' ) + // InternalGeneratorDSL.g:32:9: 'definition' + { + match("definition"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__33" + + // $ANTLR start "T__34" + public final void mT__34() throws RecognitionException { + try { + int _type = T__34; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:33:7: ( '{' ) + // InternalGeneratorDSL.g:33:9: '{' + { + match('{'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__34" + + // $ANTLR start "T__35" + public final void mT__35() throws RecognitionException { + try { + int _type = T__35; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:34:7: ( '}' ) + // InternalGeneratorDSL.g:34:9: '}' + { + match('}'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__35" + + // $ANTLR start "T__36" + public final void mT__36() throws RecognitionException { + try { + int _type = T__36; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:35:7: ( ':=' ) + // InternalGeneratorDSL.g:35:9: ':=' + { + match(":="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__36" + + // $ANTLR start "T__37" + public final void mT__37() throws RecognitionException { + try { + int _type = T__37; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:36:7: ( 'data' ) + // InternalGeneratorDSL.g:36:9: 'data' + { + match("data"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__37" + + // $ANTLR start "T__38" + public final void mT__38() throws RecognitionException { + try { + int _type = T__38; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:37:7: ( 'OR' ) + // InternalGeneratorDSL.g:37:9: 'OR' + { + match("OR"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__38" + + // $ANTLR start "T__39" + public final void mT__39() throws RecognitionException { + try { + int _type = T__39; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:38:7: ( 'XOR' ) + // InternalGeneratorDSL.g:38:9: 'XOR' + { + match("XOR"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__39" + + // $ANTLR start "T__40" + public final void mT__40() throws RecognitionException { + try { + int _type = T__40; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:39:7: ( 'AND' ) + // InternalGeneratorDSL.g:39:9: 'AND' + { + match("AND"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__40" + + // $ANTLR start "T__41" + public final void mT__41() throws RecognitionException { + try { + int _type = T__41; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:40:7: ( '!' ) + // InternalGeneratorDSL.g:40:9: '!' + { + match('!'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__41" + + // $ANTLR start "T__42" + public final void mT__42() throws RecognitionException { + try { + int _type = T__42; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:41:7: ( '^' ) + // InternalGeneratorDSL.g:41:9: '^' + { + match('^'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__42" + + // $ANTLR start "T__43" + public final void mT__43() throws RecognitionException { + try { + int _type = T__43; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:42:7: ( '(' ) + // InternalGeneratorDSL.g:42:9: '(' + { + match('('); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__43" + + // $ANTLR start "T__44" + public final void mT__44() throws RecognitionException { + try { + int _type = T__44; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:43:7: ( ')' ) + // InternalGeneratorDSL.g:43:9: ')' + { + match(')'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__44" + + // $ANTLR start "T__45" + public final void mT__45() throws RecognitionException { + try { + int _type = T__45; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:44:7: ( 'call' ) + // InternalGeneratorDSL.g:44:9: 'call' + { + match("call"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__45" + + // $ANTLR start "T__46" + public final void mT__46() throws RecognitionException { + try { + int _type = T__46; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:45:7: ( 'value' ) + // InternalGeneratorDSL.g:45:9: 'value' + { + match("value"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__46" + + // $ANTLR start "T__47" + public final void mT__47() throws RecognitionException { + try { + int _type = T__47; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:46:7: ( 'true' ) + // InternalGeneratorDSL.g:46:9: 'true' + { + match("true"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__47" + + // $ANTLR start "T__48" + public final void mT__48() throws RecognitionException { + try { + int _type = T__48; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:47:7: ( 'false' ) + // InternalGeneratorDSL.g:47:9: 'false' + { + match("false"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__48" + + // $ANTLR start "T__49" + public final void mT__49() throws RecognitionException { + try { + int _type = T__49; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:48:7: ( '.' ) + // InternalGeneratorDSL.g:48:9: '.' + { + match('.'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__49" + + // $ANTLR start "T__50" + public final void mT__50() throws RecognitionException { + try { + int _type = T__50; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:49:7: ( '>=' ) + // InternalGeneratorDSL.g:49:9: '>=' + { + match(">="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__50" + + // $ANTLR start "T__51" + public final void mT__51() throws RecognitionException { + try { + int _type = T__51; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:50:7: ( '>' ) + // InternalGeneratorDSL.g:50:9: '>' + { + match('>'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__51" + + // $ANTLR start "T__52" + public final void mT__52() throws RecognitionException { + try { + int _type = T__52; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:51:7: ( '=' ) + // InternalGeneratorDSL.g:51:9: '=' + { + match('='); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__52" + + // $ANTLR start "T__53" + public final void mT__53() throws RecognitionException { + try { + int _type = T__53; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:52:7: ( '!=' ) + // InternalGeneratorDSL.g:52:9: '!=' + { + match("!="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__53" + + // $ANTLR start "T__54" + public final void mT__54() throws RecognitionException { + try { + int _type = T__54; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:53:7: ( '<' ) + // InternalGeneratorDSL.g:53:9: '<' + { + match('<'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__54" + + // $ANTLR start "T__55" + public final void mT__55() throws RecognitionException { + try { + int _type = T__55; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:54:7: ( '<=' ) + // InternalGeneratorDSL.g:54:9: '<=' + { + match("<="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__55" + + // $ANTLR start "T__56" + public final void mT__56() throws RecognitionException { + try { + int _type = T__56; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:55:7: ( '+' ) + // InternalGeneratorDSL.g:55:9: '+' + { + match('+'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__56" + + // $ANTLR start "T__57" + public final void mT__57() throws RecognitionException { + try { + int _type = T__57; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:56:7: ( '-' ) + // InternalGeneratorDSL.g:56:9: '-' + { + match('-'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__57" + + // $ANTLR start "T__58" + public final void mT__58() throws RecognitionException { + try { + int _type = T__58; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:57:7: ( '*' ) + // InternalGeneratorDSL.g:57:9: '*' + { + match('*'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__58" + + // $ANTLR start "T__59" + public final void mT__59() throws RecognitionException { + try { + int _type = T__59; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:58:7: ( '/' ) + // InternalGeneratorDSL.g:58:9: '/' + { + match('/'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__59" + + // $ANTLR start "T__60" + public final void mT__60() throws RecognitionException { + try { + int _type = T__60; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:59:7: ( '%' ) + // InternalGeneratorDSL.g:59:9: '%' + { + match('%'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__60" + + // $ANTLR start "RULE_STRING" + public final void mRULE_STRING() throws RecognitionException { + try { + int _type = RULE_STRING; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:2998:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' ) + // InternalGeneratorDSL.g:2998:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' + { + match('\"'); + // InternalGeneratorDSL.g:2998:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* + loop1: + do { + int alt1=3; + int LA1_0 = input.LA(1); + + if ( (LA1_0=='\\') ) { + alt1=1; + } + else if ( ((LA1_0>='\u0000' && LA1_0<='!')||(LA1_0>='#' && LA1_0<='[')||(LA1_0>=']' && LA1_0<='\uFFFF')) ) { + alt1=2; + } + + + switch (alt1) { + case 1 : + // InternalGeneratorDSL.g:2998:20: '\\\\' . + { + match('\\'); + matchAny(); + + } + break; + case 2 : + // InternalGeneratorDSL.g:2998:27: ~ ( ( '\\\\' | '\"' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop1; + } + } while (true); + + match('\"'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_STRING" + + // $ANTLR start "RULE_QUOTED_ID" + public final void mRULE_QUOTED_ID() throws RecognitionException { + try { + int _type = RULE_QUOTED_ID; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:3000:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) + // InternalGeneratorDSL.g:3000:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' + { + match('\''); + // InternalGeneratorDSL.g:3000:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* + loop2: + do { + int alt2=3; + int LA2_0 = input.LA(1); + + if ( (LA2_0=='\\') ) { + alt2=1; + } + else if ( ((LA2_0>='\u0000' && LA2_0<='&')||(LA2_0>='(' && LA2_0<='[')||(LA2_0>=']' && LA2_0<='\uFFFF')) ) { + alt2=2; + } + + + switch (alt2) { + case 1 : + // InternalGeneratorDSL.g:3000:24: '\\\\' . + { + match('\\'); + matchAny(); + + } + break; + case 2 : + // InternalGeneratorDSL.g:3000:31: ~ ( ( '\\\\' | '\\'' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop2; + } + } while (true); + + match('\''); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_QUOTED_ID" + + // $ANTLR start "RULE_ID" + public final void mRULE_ID() throws RecognitionException { + try { + int _type = RULE_ID; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:3002:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) + // InternalGeneratorDSL.g:3002:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + { + // InternalGeneratorDSL.g:3002:11: ( '^' )? + int alt3=2; + int LA3_0 = input.LA(1); + + if ( (LA3_0=='^') ) { + alt3=1; + } + switch (alt3) { + case 1 : + // InternalGeneratorDSL.g:3002:11: '^' + { + match('^'); + + } + break; + + } + + if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + // InternalGeneratorDSL.g:3002:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + loop4: + do { + int alt4=2; + int LA4_0 = input.LA(1); + + if ( ((LA4_0>='0' && LA4_0<='9')||(LA4_0>='A' && LA4_0<='Z')||LA4_0=='_'||(LA4_0>='a' && LA4_0<='z')) ) { + alt4=1; + } + + + switch (alt4) { + case 1 : + // InternalGeneratorDSL.g: + { + if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop4; + } + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ID" + + // $ANTLR start "RULE_INT" + public final void mRULE_INT() throws RecognitionException { + try { + int _type = RULE_INT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:3004:10: ( ( '0' .. '9' )+ ) + // InternalGeneratorDSL.g:3004:12: ( '0' .. '9' )+ + { + // InternalGeneratorDSL.g:3004:12: ( '0' .. '9' )+ + int cnt5=0; + loop5: + do { + int alt5=2; + int LA5_0 = input.LA(1); + + if ( ((LA5_0>='0' && LA5_0<='9')) ) { + alt5=1; + } + + + switch (alt5) { + case 1 : + // InternalGeneratorDSL.g:3004:13: '0' .. '9' + { + matchRange('0','9'); + + } + break; + + default : + if ( cnt5 >= 1 ) break loop5; + EarlyExitException eee = + new EarlyExitException(5, input); + throw eee; + } + cnt5++; + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_INT" + + // $ANTLR start "RULE_ML_COMMENT" + public final void mRULE_ML_COMMENT() throws RecognitionException { + try { + int _type = RULE_ML_COMMENT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:3006:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // InternalGeneratorDSL.g:3006:19: '/*' ( options {greedy=false; } : . )* '*/' + { + match("/*"); + + // InternalGeneratorDSL.g:3006:24: ( options {greedy=false; } : . )* + loop6: + do { + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0=='*') ) { + int LA6_1 = input.LA(2); + + if ( (LA6_1=='/') ) { + alt6=2; + } + else if ( ((LA6_1>='\u0000' && LA6_1<='.')||(LA6_1>='0' && LA6_1<='\uFFFF')) ) { + alt6=1; + } + + + } + else if ( ((LA6_0>='\u0000' && LA6_0<=')')||(LA6_0>='+' && LA6_0<='\uFFFF')) ) { + alt6=1; + } + + + switch (alt6) { + case 1 : + // InternalGeneratorDSL.g:3006:52: . + { + matchAny(); + + } + break; + + default : + break loop6; + } + } while (true); + + match("*/"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ML_COMMENT" + + // $ANTLR start "RULE_SL_COMMENT" + public final void mRULE_SL_COMMENT() throws RecognitionException { + try { + int _type = RULE_SL_COMMENT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:3008:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) + // InternalGeneratorDSL.g:3008:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? + { + match("//"); + + // InternalGeneratorDSL.g:3008:24: (~ ( ( '\\n' | '\\r' ) ) )* + loop7: + do { + int alt7=2; + int LA7_0 = input.LA(1); + + if ( ((LA7_0>='\u0000' && LA7_0<='\t')||(LA7_0>='\u000B' && LA7_0<='\f')||(LA7_0>='\u000E' && LA7_0<='\uFFFF')) ) { + alt7=1; + } + + + switch (alt7) { + case 1 : + // InternalGeneratorDSL.g:3008:24: ~ ( ( '\\n' | '\\r' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop7; + } + } while (true); + + // InternalGeneratorDSL.g:3008:40: ( ( '\\r' )? '\\n' )? + int alt9=2; + int LA9_0 = input.LA(1); + + if ( (LA9_0=='\n'||LA9_0=='\r') ) { + alt9=1; + } + switch (alt9) { + case 1 : + // InternalGeneratorDSL.g:3008:41: ( '\\r' )? '\\n' + { + // InternalGeneratorDSL.g:3008:41: ( '\\r' )? + int alt8=2; + int LA8_0 = input.LA(1); + + if ( (LA8_0=='\r') ) { + alt8=1; + } + switch (alt8) { + case 1 : + // InternalGeneratorDSL.g:3008:41: '\\r' + { + match('\r'); + + } + break; + + } + + match('\n'); + + } + break; + + } + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_SL_COMMENT" + + // $ANTLR start "RULE_WS" + public final void mRULE_WS() throws RecognitionException { + try { + int _type = RULE_WS; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:3010:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // InternalGeneratorDSL.g:3010:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + { + // InternalGeneratorDSL.g:3010:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + int cnt10=0; + loop10: + do { + int alt10=2; + int LA10_0 = input.LA(1); + + if ( ((LA10_0>='\t' && LA10_0<='\n')||LA10_0=='\r'||LA10_0==' ') ) { + alt10=1; + } + + + switch (alt10) { + case 1 : + // InternalGeneratorDSL.g: + { + if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + if ( cnt10 >= 1 ) break loop10; + EarlyExitException eee = + new EarlyExitException(10, input); + throw eee; + } + cnt10++; + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_WS" + + // $ANTLR start "RULE_ANY_OTHER" + public final void mRULE_ANY_OTHER() throws RecognitionException { + try { + int _type = RULE_ANY_OTHER; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalGeneratorDSL.g:3012:16: ( . ) + // InternalGeneratorDSL.g:3012:18: . + { + matchAny(); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ANY_OTHER" + + public void mTokens() throws RecognitionException { + // InternalGeneratorDSL.g:1:8: ( T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | RULE_STRING | RULE_QUOTED_ID | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) + int alt11=57; + alt11 = dfa11.predict(input); + switch (alt11) { + case 1 : + // InternalGeneratorDSL.g:1:10: T__12 + { + mT__12(); + + } + break; + case 2 : + // InternalGeneratorDSL.g:1:16: T__13 + { + mT__13(); + + } + break; + case 3 : + // InternalGeneratorDSL.g:1:22: T__14 + { + mT__14(); + + } + break; + case 4 : + // InternalGeneratorDSL.g:1:28: T__15 + { + mT__15(); + + } + break; + case 5 : + // InternalGeneratorDSL.g:1:34: T__16 + { + mT__16(); + + } + break; + case 6 : + // InternalGeneratorDSL.g:1:40: T__17 + { + mT__17(); + + } + break; + case 7 : + // InternalGeneratorDSL.g:1:46: T__18 + { + mT__18(); + + } + break; + case 8 : + // InternalGeneratorDSL.g:1:52: T__19 + { + mT__19(); + + } + break; + case 9 : + // InternalGeneratorDSL.g:1:58: T__20 + { + mT__20(); + + } + break; + case 10 : + // InternalGeneratorDSL.g:1:64: T__21 + { + mT__21(); + + } + break; + case 11 : + // InternalGeneratorDSL.g:1:70: T__22 + { + mT__22(); + + } + break; + case 12 : + // InternalGeneratorDSL.g:1:76: T__23 + { + mT__23(); + + } + break; + case 13 : + // InternalGeneratorDSL.g:1:82: T__24 + { + mT__24(); + + } + break; + case 14 : + // InternalGeneratorDSL.g:1:88: T__25 + { + mT__25(); + + } + break; + case 15 : + // InternalGeneratorDSL.g:1:94: T__26 + { + mT__26(); + + } + break; + case 16 : + // InternalGeneratorDSL.g:1:100: T__27 + { + mT__27(); + + } + break; + case 17 : + // InternalGeneratorDSL.g:1:106: T__28 + { + mT__28(); + + } + break; + case 18 : + // InternalGeneratorDSL.g:1:112: T__29 + { + mT__29(); + + } + break; + case 19 : + // InternalGeneratorDSL.g:1:118: T__30 + { + mT__30(); + + } + break; + case 20 : + // InternalGeneratorDSL.g:1:124: T__31 + { + mT__31(); + + } + break; + case 21 : + // InternalGeneratorDSL.g:1:130: T__32 + { + mT__32(); + + } + break; + case 22 : + // InternalGeneratorDSL.g:1:136: T__33 + { + mT__33(); + + } + break; + case 23 : + // InternalGeneratorDSL.g:1:142: T__34 + { + mT__34(); + + } + break; + case 24 : + // InternalGeneratorDSL.g:1:148: T__35 + { + mT__35(); + + } + break; + case 25 : + // InternalGeneratorDSL.g:1:154: T__36 + { + mT__36(); + + } + break; + case 26 : + // InternalGeneratorDSL.g:1:160: T__37 + { + mT__37(); + + } + break; + case 27 : + // InternalGeneratorDSL.g:1:166: T__38 + { + mT__38(); + + } + break; + case 28 : + // InternalGeneratorDSL.g:1:172: T__39 + { + mT__39(); + + } + break; + case 29 : + // InternalGeneratorDSL.g:1:178: T__40 + { + mT__40(); + + } + break; + case 30 : + // InternalGeneratorDSL.g:1:184: T__41 + { + mT__41(); + + } + break; + case 31 : + // InternalGeneratorDSL.g:1:190: T__42 + { + mT__42(); + + } + break; + case 32 : + // InternalGeneratorDSL.g:1:196: T__43 + { + mT__43(); + + } + break; + case 33 : + // InternalGeneratorDSL.g:1:202: T__44 + { + mT__44(); + + } + break; + case 34 : + // InternalGeneratorDSL.g:1:208: T__45 + { + mT__45(); + + } + break; + case 35 : + // InternalGeneratorDSL.g:1:214: T__46 + { + mT__46(); + + } + break; + case 36 : + // InternalGeneratorDSL.g:1:220: T__47 + { + mT__47(); + + } + break; + case 37 : + // InternalGeneratorDSL.g:1:226: T__48 + { + mT__48(); + + } + break; + case 38 : + // InternalGeneratorDSL.g:1:232: T__49 + { + mT__49(); + + } + break; + case 39 : + // InternalGeneratorDSL.g:1:238: T__50 + { + mT__50(); + + } + break; + case 40 : + // InternalGeneratorDSL.g:1:244: T__51 + { + mT__51(); + + } + break; + case 41 : + // InternalGeneratorDSL.g:1:250: T__52 + { + mT__52(); + + } + break; + case 42 : + // InternalGeneratorDSL.g:1:256: T__53 + { + mT__53(); + + } + break; + case 43 : + // InternalGeneratorDSL.g:1:262: T__54 + { + mT__54(); + + } + break; + case 44 : + // InternalGeneratorDSL.g:1:268: T__55 + { + mT__55(); + + } + break; + case 45 : + // InternalGeneratorDSL.g:1:274: T__56 + { + mT__56(); + + } + break; + case 46 : + // InternalGeneratorDSL.g:1:280: T__57 + { + mT__57(); + + } + break; + case 47 : + // InternalGeneratorDSL.g:1:286: T__58 + { + mT__58(); + + } + break; + case 48 : + // InternalGeneratorDSL.g:1:292: T__59 + { + mT__59(); + + } + break; + case 49 : + // InternalGeneratorDSL.g:1:298: T__60 + { + mT__60(); + + } + break; + case 50 : + // InternalGeneratorDSL.g:1:304: RULE_STRING + { + mRULE_STRING(); + + } + break; + case 51 : + // InternalGeneratorDSL.g:1:316: RULE_QUOTED_ID + { + mRULE_QUOTED_ID(); + + } + break; + case 52 : + // InternalGeneratorDSL.g:1:331: RULE_ID + { + mRULE_ID(); + + } + break; + case 53 : + // InternalGeneratorDSL.g:1:339: RULE_INT + { + mRULE_INT(); + + } + break; + case 54 : + // InternalGeneratorDSL.g:1:348: RULE_ML_COMMENT + { + mRULE_ML_COMMENT(); + + } + break; + case 55 : + // InternalGeneratorDSL.g:1:364: RULE_SL_COMMENT + { + mRULE_SL_COMMENT(); + + } + break; + case 56 : + // InternalGeneratorDSL.g:1:380: RULE_WS + { + mRULE_WS(); + + } + break; + case 57 : + // InternalGeneratorDSL.g:1:388: RULE_ANY_OTHER + { + mRULE_ANY_OTHER(); + + } + break; + + } + + } + + + protected DFA11 dfa11 = new DFA11(this); + static final String DFA11_eotS = + "\1\uffff\1\55\1\uffff\5\55\1\uffff\1\55\2\uffff\5\55\2\uffff\1\53\3\55\1\112\1\113\2\uffff\2\55\1\uffff\1\122\1\uffff\1\125\3\uffff\1\133\1\uffff\2\53\4\uffff\1\55\2\uffff\5\55\1\150\2\55\1\uffff\1\153\1\55\2\uffff\4\55\1\161\2\55\3\uffff\1\164\2\55\5\uffff\2\55\21\uffff\1\171\2\55\1\174\3\55\1\uffff\1\55\1\u0081\1\uffff\5\55\1\uffff\2\55\1\uffff\1\u0089\1\u008a\2\55\1\uffff\2\55\1\uffff\1\u008f\2\55\1\u0092\1\uffff\1\u0093\1\55\1\u0095\3\55\1\u0099\2\uffff\1\u009a\1\55\1\u009c\1\55\1\uffff\1\u009e\1\55\2\uffff\1\u00a0\1\uffff\3\55\2\uffff\1\u00a4\1\uffff\1\55\1\uffff\1\55\1\uffff\3\55\1\uffff\2\55\1\u00ac\2\55\1\u00b0\1\55\1\uffff\1\u00b2\1\55\1\u00b4\1\uffff\1\u00b6\1\uffff\1\55\1\uffff\1\u00b8\1\uffff\1\u00b9\2\uffff"; + static final String DFA11_eofS = + "\u00ba\uffff"; + static final String DFA11_minS = + "\1\0\1\163\1\uffff\1\141\1\145\1\156\1\157\1\156\1\uffff\1\157\2\uffff\1\151\1\141\1\160\1\156\1\141\2\uffff\1\75\1\122\1\117\1\116\1\75\1\101\2\uffff\2\141\1\uffff\1\75\1\uffff\1\75\3\uffff\1\52\1\uffff\2\0\4\uffff\1\145\2\uffff\1\156\1\162\1\157\1\154\1\156\1\60\1\157\1\144\1\uffff\1\60\1\165\2\uffff\1\151\1\164\1\155\1\160\1\60\1\146\1\164\3\uffff\1\60\1\122\1\104\5\uffff\2\154\21\uffff\1\60\1\156\1\143\1\60\1\155\1\163\1\145\1\uffff\1\160\1\60\1\uffff\1\145\1\164\1\150\1\160\1\154\1\uffff\1\151\1\141\1\uffff\2\60\1\154\1\165\1\uffff\1\147\1\164\1\uffff\1\60\1\145\1\162\1\60\1\uffff\1\60\1\145\1\60\1\154\1\171\1\156\1\60\2\uffff\1\60\1\145\1\60\1\151\1\uffff\1\60\1\141\2\uffff\1\60\1\uffff\1\145\2\151\2\uffff\1\60\1\uffff\1\157\1\uffff\1\164\1\uffff\1\163\1\156\1\164\1\uffff\1\156\1\157\1\60\1\147\1\151\1\60\1\162\1\uffff\1\60\1\157\1\60\1\uffff\1\60\1\uffff\1\156\1\uffff\1\60\1\uffff\1\60\2\uffff"; + static final String DFA11_maxS = + "\1\uffff\1\163\1\uffff\1\165\1\145\1\156\1\157\1\156\1\uffff\1\162\2\uffff\1\162\1\141\1\160\1\156\1\145\2\uffff\1\75\1\122\1\117\1\116\1\75\1\172\2\uffff\2\141\1\uffff\1\75\1\uffff\1\75\3\uffff\1\57\1\uffff\2\uffff\4\uffff\1\151\2\uffff\1\156\1\162\1\157\1\154\1\156\1\172\1\157\1\144\1\uffff\1\172\1\165\2\uffff\1\151\1\164\1\155\1\160\1\172\1\146\1\164\3\uffff\1\172\1\122\1\104\5\uffff\2\154\21\uffff\1\172\1\156\1\143\1\172\1\155\1\163\1\145\1\uffff\1\160\1\172\1\uffff\1\145\1\164\1\150\1\160\1\154\1\uffff\1\151\1\141\1\uffff\2\172\1\154\1\165\1\uffff\1\147\1\164\1\uffff\1\172\1\145\1\162\1\172\1\uffff\1\172\1\145\1\172\1\154\1\171\1\156\1\172\2\uffff\1\172\1\145\1\172\1\151\1\uffff\1\172\1\141\2\uffff\1\172\1\uffff\1\145\2\151\2\uffff\1\172\1\uffff\1\157\1\uffff\1\164\1\uffff\1\163\1\156\1\164\1\uffff\1\156\1\157\1\172\1\147\1\151\1\172\1\162\1\uffff\1\172\1\157\1\172\1\uffff\1\172\1\uffff\1\156\1\uffff\1\172\1\uffff\1\172\2\uffff"; + static final String DFA11_acceptS = + "\2\uffff\1\2\5\uffff\1\12\1\uffff\1\14\1\16\5\uffff\1\27\1\30\6\uffff\1\40\1\41\2\uffff\1\46\1\uffff\1\51\1\uffff\1\55\1\56\1\57\1\uffff\1\61\2\uffff\1\64\1\65\1\70\1\71\1\uffff\1\64\1\2\10\uffff\1\12\2\uffff\1\14\1\16\7\uffff\1\27\1\30\1\31\3\uffff\1\52\1\36\1\37\1\40\1\41\2\uffff\1\46\1\47\1\50\1\51\1\54\1\53\1\55\1\56\1\57\1\66\1\67\1\60\1\61\1\62\1\63\1\65\1\70\7\uffff\1\7\2\uffff\1\13\5\uffff\1\25\2\uffff\1\33\4\uffff\1\1\2\uffff\1\6\4\uffff\1\11\7\uffff\1\34\1\35\4\uffff\1\23\2\uffff\1\10\1\44\1\uffff\1\21\3\uffff\1\32\1\42\1\uffff\1\4\1\uffff\1\45\1\uffff\1\20\3\uffff\1\43\7\uffff\1\22\3\uffff\1\3\1\uffff\1\24\1\uffff\1\15\1\uffff\1\5\1\uffff\1\17\1\26"; + static final String DFA11_specialS = + "\1\1\45\uffff\1\2\1\0\u0092\uffff}>"; + static final String[] DFA11_transitionS = { + "\11\53\2\52\2\53\1\52\22\53\1\52\1\27\1\46\2\53\1\45\1\53\1\47\1\31\1\32\1\43\1\41\1\13\1\42\1\35\1\44\12\51\1\23\1\2\1\40\1\37\1\36\2\53\1\26\15\50\1\24\10\50\1\25\2\50\1\10\1\53\1\12\1\30\1\50\1\53\1\16\1\50\1\33\1\20\1\7\1\3\1\4\1\50\1\5\2\50\1\6\2\50\1\17\3\50\1\15\1\11\1\1\1\34\1\14\3\50\1\21\1\53\1\22\uff82\53", + "\1\54", + "", + "\1\62\15\uffff\1\60\2\uffff\1\61\2\uffff\1\57", + "\1\63", + "\1\64", + "\1\65", + "\1\66", + "", + "\1\70\2\uffff\1\71", + "", + "", + "\1\75\10\uffff\1\74", + "\1\76", + "\1\77", + "\1\100", + "\1\102\3\uffff\1\101", + "", + "", + "\1\105", + "\1\106", + "\1\107", + "\1\110", + "\1\111", + "\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "", + "\1\116", + "\1\117", + "", + "\1\121", + "", + "\1\124", + "", + "", + "", + "\1\131\4\uffff\1\132", + "", + "\0\135", + "\0\136", + "", + "", + "", + "", + "\1\141\3\uffff\1\142", + "", + "", + "\1\143", + "\1\144", + "\1\145", + "\1\146", + "\1\147", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\151", + "\1\152", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\154", + "", + "", + "\1\155", + "\1\156", + "\1\157", + "\1\160", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\162", + "\1\163", + "", + "", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\165", + "\1\166", + "", + "", + "", + "", + "", + "\1\167", + "\1\170", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\172", + "\1\173", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\175", + "\1\176", + "\1\177", + "", + "\1\u0080", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "\1\u0082", + "\1\u0083", + "\1\u0084", + "\1\u0085", + "\1\u0086", + "", + "\1\u0087", + "\1\u0088", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u008b", + "\1\u008c", + "", + "\1\u008d", + "\1\u008e", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u0090", + "\1\u0091", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u0094", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u0096", + "\1\u0097", + "\1\u0098", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u009b", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u009d", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u009f", + "", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "\1\u00a1", + "\1\u00a2", + "\1\u00a3", + "", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "\1\u00a5", + "", + "\1\u00a6", + "", + "\1\u00a7", + "\1\u00a8", + "\1\u00a9", + "", + "\1\u00aa", + "\1\u00ab", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u00ad", + "\1\u00ae", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\22\55\1\u00af\7\55", + "\1\u00b1", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "\1\u00b3", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\22\55\1\u00b5\7\55", + "", + "\1\u00b7", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32\55", + "", + "" + }; + + static final short[] DFA11_eot = DFA.unpackEncodedString(DFA11_eotS); + static final short[] DFA11_eof = DFA.unpackEncodedString(DFA11_eofS); + static final char[] DFA11_min = DFA.unpackEncodedStringToUnsignedChars(DFA11_minS); + static final char[] DFA11_max = DFA.unpackEncodedStringToUnsignedChars(DFA11_maxS); + static final short[] DFA11_accept = DFA.unpackEncodedString(DFA11_acceptS); + static final short[] DFA11_special = DFA.unpackEncodedString(DFA11_specialS); + static final short[][] DFA11_transition; + + static { + int numStates = DFA11_transitionS.length; + DFA11_transition = new short[numStates][]; + for (int i=0; i<numStates; i++) { + DFA11_transition[i] = DFA.unpackEncodedString(DFA11_transitionS[i]); + } + } + + class DFA11 extends DFA { + + public DFA11(BaseRecognizer recognizer) { + this.recognizer = recognizer; + this.decisionNumber = 11; + this.eot = DFA11_eot; + this.eof = DFA11_eof; + this.min = DFA11_min; + this.max = DFA11_max; + this.accept = DFA11_accept; + this.special = DFA11_special; + this.transition = DFA11_transition; + } + public String getDescription() { + return "1:1: Tokens : ( T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | RULE_STRING | RULE_QUOTED_ID | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );"; + } + public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { + IntStream input = _input; + int _s = s; + switch ( s ) { + case 0 : + int LA11_39 = input.LA(1); + + s = -1; + if ( ((LA11_39>='\u0000' && LA11_39<='\uFFFF')) ) {s = 94;} + + else s = 43; + + if ( s>=0 ) return s; + break; + case 1 : + int LA11_0 = input.LA(1); + + s = -1; + if ( (LA11_0=='u') ) {s = 1;} + + else if ( (LA11_0==';') ) {s = 2;} + + else if ( (LA11_0=='f') ) {s = 3;} + + else if ( (LA11_0=='g') ) {s = 4;} + + else if ( (LA11_0=='i') ) {s = 5;} + + else if ( (LA11_0=='l') ) {s = 6;} + + else if ( (LA11_0=='e') ) {s = 7;} + + else if ( (LA11_0=='[') ) {s = 8;} + + else if ( (LA11_0=='t') ) {s = 9;} + + else if ( (LA11_0==']') ) {s = 10;} + + else if ( (LA11_0==',') ) {s = 11;} + + else if ( (LA11_0=='w') ) {s = 12;} + + else if ( (LA11_0=='s') ) {s = 13;} + + else if ( (LA11_0=='a') ) {s = 14;} + + else if ( (LA11_0=='o') ) {s = 15;} + + else if ( (LA11_0=='d') ) {s = 16;} + + else if ( (LA11_0=='{') ) {s = 17;} + + else if ( (LA11_0=='}') ) {s = 18;} + + else if ( (LA11_0==':') ) {s = 19;} + + else if ( (LA11_0=='O') ) {s = 20;} + + else if ( (LA11_0=='X') ) {s = 21;} + + else if ( (LA11_0=='A') ) {s = 22;} + + else if ( (LA11_0=='!') ) {s = 23;} + + else if ( (LA11_0=='^') ) {s = 24;} + + else if ( (LA11_0=='(') ) {s = 25;} + + else if ( (LA11_0==')') ) {s = 26;} + + else if ( (LA11_0=='c') ) {s = 27;} + + else if ( (LA11_0=='v') ) {s = 28;} + + else if ( (LA11_0=='.') ) {s = 29;} + + else if ( (LA11_0=='>') ) {s = 30;} + + else if ( (LA11_0=='=') ) {s = 31;} + + else if ( (LA11_0=='<') ) {s = 32;} + + else if ( (LA11_0=='+') ) {s = 33;} + + else if ( (LA11_0=='-') ) {s = 34;} + + else if ( (LA11_0=='*') ) {s = 35;} + + else if ( (LA11_0=='/') ) {s = 36;} + + else if ( (LA11_0=='%') ) {s = 37;} + + else if ( (LA11_0=='\"') ) {s = 38;} + + else if ( (LA11_0=='\'') ) {s = 39;} + + else if ( ((LA11_0>='B' && LA11_0<='N')||(LA11_0>='P' && LA11_0<='W')||(LA11_0>='Y' && LA11_0<='Z')||LA11_0=='_'||LA11_0=='b'||LA11_0=='h'||(LA11_0>='j' && LA11_0<='k')||(LA11_0>='m' && LA11_0<='n')||(LA11_0>='p' && LA11_0<='r')||(LA11_0>='x' && LA11_0<='z')) ) {s = 40;} + + else if ( ((LA11_0>='0' && LA11_0<='9')) ) {s = 41;} + + else if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {s = 42;} + + else if ( ((LA11_0>='\u0000' && LA11_0<='\b')||(LA11_0>='\u000B' && LA11_0<='\f')||(LA11_0>='\u000E' && LA11_0<='\u001F')||(LA11_0>='#' && LA11_0<='$')||LA11_0=='&'||(LA11_0>='?' && LA11_0<='@')||LA11_0=='\\'||LA11_0=='`'||LA11_0=='|'||(LA11_0>='~' && LA11_0<='\uFFFF')) ) {s = 43;} + + if ( s>=0 ) return s; + break; + case 2 : + int LA11_38 = input.LA(1); + + s = -1; + if ( ((LA11_38>='\u0000' && LA11_38<='\uFFFF')) ) {s = 93;} + + else s = 43; + + if ( s>=0 ) return s; + break; + } + NoViableAltException nvae = + new NoViableAltException(getDescription(), 11, _s, input); + error(nvae); + throw nvae; + } + } + + +} \ No newline at end of file diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSLParser.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSLParser.java new file mode 100644 index 00000000..d371eeec --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/parser/antlr/internal/InternalGeneratorDSLParser.java @@ -0,0 +1,8231 @@ +package de.evoal.languages.model.generator.dsl.parser.antlr.internal; + +import org.eclipse.xtext.*; +import org.eclipse.xtext.parser.*; +import org.eclipse.xtext.parser.impl.*; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.common.util.Enumerator; +import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; +import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; + + + +import org.antlr.runtime.*; +import java.util.Stack; +import java.util.List; +import java.util.ArrayList; + +@SuppressWarnings("all") +public class InternalGeneratorDSLParser extends AbstractInternalAntlrParser { + public static final String[] tokenNames = new String[] { + "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_QUOTED_ID", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'use'", "';'", "'function'", "'using'", "'generator'", "'for'", "'in'", "'loop'", "'end'", "'['", "'to'", "']'", "'functions'", "','", "'generators'", "'write'", "'with'", "'samples'", "'from'", "'applying'", "'on'", "'definition'", "'{'", "'}'", "':='", "'data'", "'OR'", "'XOR'", "'AND'", "'!'", "'^'", "'('", "')'", "'call'", "'value'", "'true'", "'false'", "'.'", "'>='", "'>'", "'='", "'!='", "'<'", "'<='", "'+'", "'-'", "'*'", "'/'", "'%'" + }; + public static final int T__50=50; + public static final int T__19=19; + public static final int T__15=15; + public static final int T__59=59; + public static final int T__16=16; + public static final int T__17=17; + public static final int T__18=18; + public static final int T__55=55; + public static final int T__12=12; + public static final int T__56=56; + public static final int T__13=13; + public static final int T__57=57; + public static final int T__14=14; + public static final int T__58=58; + public static final int T__51=51; + public static final int T__52=52; + public static final int T__53=53; + public static final int T__54=54; + public static final int T__60=60; + public static final int RULE_ID=5; + public static final int RULE_QUOTED_ID=7; + public static final int T__26=26; + public static final int T__27=27; + public static final int T__28=28; + public static final int RULE_INT=6; + public static final int T__29=29; + public static final int T__22=22; + public static final int RULE_ML_COMMENT=8; + public static final int T__23=23; + public static final int T__24=24; + public static final int T__25=25; + public static final int T__20=20; + public static final int T__21=21; + public static final int RULE_STRING=4; + public static final int RULE_SL_COMMENT=9; + public static final int T__37=37; + public static final int T__38=38; + public static final int T__39=39; + public static final int T__33=33; + public static final int T__34=34; + public static final int T__35=35; + public static final int T__36=36; + public static final int EOF=-1; + public static final int T__30=30; + public static final int T__31=31; + public static final int T__32=32; + public static final int RULE_WS=10; + public static final int RULE_ANY_OTHER=11; + public static final int T__48=48; + public static final int T__49=49; + public static final int T__44=44; + public static final int T__45=45; + public static final int T__46=46; + public static final int T__47=47; + public static final int T__40=40; + public static final int T__41=41; + public static final int T__42=42; + public static final int T__43=43; + + // delegates + // delegators + + + public InternalGeneratorDSLParser(TokenStream input) { + this(input, new RecognizerSharedState()); + } + public InternalGeneratorDSLParser(TokenStream input, RecognizerSharedState state) { + super(input, state); + + } + + + public String[] getTokenNames() { return InternalGeneratorDSLParser.tokenNames; } + public String getGrammarFileName() { return "InternalGeneratorDSL.g"; } + + + + private GeneratorDSLGrammarAccess grammarAccess; + + public InternalGeneratorDSLParser(TokenStream input, GeneratorDSLGrammarAccess grammarAccess) { + this(input); + this.grammarAccess = grammarAccess; + registerRules(grammarAccess.getGrammar()); + } + + @Override + protected String getFirstRuleName() { + return "ConfigurationRule"; + } + + @Override + protected GeneratorDSLGrammarAccess getGrammarAccess() { + return grammarAccess; + } + + + + + // $ANTLR start "entryRuleConfigurationRule" + // InternalGeneratorDSL.g:65:1: entryRuleConfigurationRule returns [EObject current=null] : iv_ruleConfigurationRule= ruleConfigurationRule EOF ; + public final EObject entryRuleConfigurationRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleConfigurationRule = null; + + + try { + // InternalGeneratorDSL.g:65:58: (iv_ruleConfigurationRule= ruleConfigurationRule EOF ) + // InternalGeneratorDSL.g:66:2: iv_ruleConfigurationRule= ruleConfigurationRule EOF + { + newCompositeNode(grammarAccess.getConfigurationRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleConfigurationRule=ruleConfigurationRule(); + + state._fsp--; + + current =iv_ruleConfigurationRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleConfigurationRule" + + + // $ANTLR start "ruleConfigurationRule" + // InternalGeneratorDSL.g:72:1: ruleConfigurationRule returns [EObject current=null] : ( ( (lv_uses_0_0= ruleUseRule ) )* ( (lv_generators_1_0= ruleGeneratorDefinitionRule ) )* ( (lv_functions_2_0= ruleParametrizedFunctionDefinitionRule ) )* ( (lv_statements_3_0= ruleStatementRule ) )* ) ; + public final EObject ruleConfigurationRule() throws RecognitionException { + EObject current = null; + + EObject lv_uses_0_0 = null; + + EObject lv_generators_1_0 = null; + + EObject lv_functions_2_0 = null; + + EObject lv_statements_3_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:78:2: ( ( ( (lv_uses_0_0= ruleUseRule ) )* ( (lv_generators_1_0= ruleGeneratorDefinitionRule ) )* ( (lv_functions_2_0= ruleParametrizedFunctionDefinitionRule ) )* ( (lv_statements_3_0= ruleStatementRule ) )* ) ) + // InternalGeneratorDSL.g:79:2: ( ( (lv_uses_0_0= ruleUseRule ) )* ( (lv_generators_1_0= ruleGeneratorDefinitionRule ) )* ( (lv_functions_2_0= ruleParametrizedFunctionDefinitionRule ) )* ( (lv_statements_3_0= ruleStatementRule ) )* ) + { + // InternalGeneratorDSL.g:79:2: ( ( (lv_uses_0_0= ruleUseRule ) )* ( (lv_generators_1_0= ruleGeneratorDefinitionRule ) )* ( (lv_functions_2_0= ruleParametrizedFunctionDefinitionRule ) )* ( (lv_statements_3_0= ruleStatementRule ) )* ) + // InternalGeneratorDSL.g:80:3: ( (lv_uses_0_0= ruleUseRule ) )* ( (lv_generators_1_0= ruleGeneratorDefinitionRule ) )* ( (lv_functions_2_0= ruleParametrizedFunctionDefinitionRule ) )* ( (lv_statements_3_0= ruleStatementRule ) )* + { + // InternalGeneratorDSL.g:80:3: ( (lv_uses_0_0= ruleUseRule ) )* + loop1: + do { + int alt1=2; + int LA1_0 = input.LA(1); + + if ( (LA1_0==12) ) { + alt1=1; + } + + + switch (alt1) { + case 1 : + // InternalGeneratorDSL.g:81:4: (lv_uses_0_0= ruleUseRule ) + { + // InternalGeneratorDSL.g:81:4: (lv_uses_0_0= ruleUseRule ) + // InternalGeneratorDSL.g:82:5: lv_uses_0_0= ruleUseRule + { + + newCompositeNode(grammarAccess.getConfigurationRuleAccess().getUsesUseRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_3); + lv_uses_0_0=ruleUseRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigurationRuleRule()); + } + add( + current, + "uses", + lv_uses_0_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.UseRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop1; + } + } while (true); + + // InternalGeneratorDSL.g:99:3: ( (lv_generators_1_0= ruleGeneratorDefinitionRule ) )* + loop2: + do { + int alt2=2; + int LA2_0 = input.LA(1); + + if ( (LA2_0==16) ) { + alt2=1; + } + + + switch (alt2) { + case 1 : + // InternalGeneratorDSL.g:100:4: (lv_generators_1_0= ruleGeneratorDefinitionRule ) + { + // InternalGeneratorDSL.g:100:4: (lv_generators_1_0= ruleGeneratorDefinitionRule ) + // InternalGeneratorDSL.g:101:5: lv_generators_1_0= ruleGeneratorDefinitionRule + { + + newCompositeNode(grammarAccess.getConfigurationRuleAccess().getGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0()); + + pushFollow(FOLLOW_4); + lv_generators_1_0=ruleGeneratorDefinitionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigurationRuleRule()); + } + add( + current, + "generators", + lv_generators_1_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorDefinitionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop2; + } + } while (true); + + // InternalGeneratorDSL.g:118:3: ( (lv_functions_2_0= ruleParametrizedFunctionDefinitionRule ) )* + loop3: + do { + int alt3=2; + int LA3_0 = input.LA(1); + + if ( (LA3_0==14) ) { + alt3=1; + } + + + switch (alt3) { + case 1 : + // InternalGeneratorDSL.g:119:4: (lv_functions_2_0= ruleParametrizedFunctionDefinitionRule ) + { + // InternalGeneratorDSL.g:119:4: (lv_functions_2_0= ruleParametrizedFunctionDefinitionRule ) + // InternalGeneratorDSL.g:120:5: lv_functions_2_0= ruleParametrizedFunctionDefinitionRule + { + + newCompositeNode(grammarAccess.getConfigurationRuleAccess().getFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0()); + + pushFollow(FOLLOW_5); + lv_functions_2_0=ruleParametrizedFunctionDefinitionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigurationRuleRule()); + } + add( + current, + "functions", + lv_functions_2_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.ParametrizedFunctionDefinitionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop3; + } + } while (true); + + // InternalGeneratorDSL.g:137:3: ( (lv_statements_3_0= ruleStatementRule ) )* + loop4: + do { + int alt4=2; + int LA4_0 = input.LA(1); + + if ( (LA4_0==17||LA4_0==27) ) { + alt4=1; + } + + + switch (alt4) { + case 1 : + // InternalGeneratorDSL.g:138:4: (lv_statements_3_0= ruleStatementRule ) + { + // InternalGeneratorDSL.g:138:4: (lv_statements_3_0= ruleStatementRule ) + // InternalGeneratorDSL.g:139:5: lv_statements_3_0= ruleStatementRule + { + + newCompositeNode(grammarAccess.getConfigurationRuleAccess().getStatementsStatementRuleParserRuleCall_3_0()); + + pushFollow(FOLLOW_6); + lv_statements_3_0=ruleStatementRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getConfigurationRuleRule()); + } + add( + current, + "statements", + lv_statements_3_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.StatementRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop4; + } + } while (true); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleConfigurationRule" + + + // $ANTLR start "entryRuleUseRule" + // InternalGeneratorDSL.g:160:1: entryRuleUseRule returns [EObject current=null] : iv_ruleUseRule= ruleUseRule EOF ; + public final EObject entryRuleUseRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleUseRule = null; + + + try { + // InternalGeneratorDSL.g:160:48: (iv_ruleUseRule= ruleUseRule EOF ) + // InternalGeneratorDSL.g:161:2: iv_ruleUseRule= ruleUseRule EOF + { + newCompositeNode(grammarAccess.getUseRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleUseRule=ruleUseRule(); + + state._fsp--; + + current =iv_ruleUseRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleUseRule" + + + // $ANTLR start "ruleUseRule" + // InternalGeneratorDSL.g:167:1: ruleUseRule returns [EObject current=null] : (otherlv_0= 'use' ( (lv_importURI_1_0= RULE_STRING ) ) otherlv_2= ';' ) ; + public final EObject ruleUseRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_importURI_1_0=null; + Token otherlv_2=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:173:2: ( (otherlv_0= 'use' ( (lv_importURI_1_0= RULE_STRING ) ) otherlv_2= ';' ) ) + // InternalGeneratorDSL.g:174:2: (otherlv_0= 'use' ( (lv_importURI_1_0= RULE_STRING ) ) otherlv_2= ';' ) + { + // InternalGeneratorDSL.g:174:2: (otherlv_0= 'use' ( (lv_importURI_1_0= RULE_STRING ) ) otherlv_2= ';' ) + // InternalGeneratorDSL.g:175:3: otherlv_0= 'use' ( (lv_importURI_1_0= RULE_STRING ) ) otherlv_2= ';' + { + otherlv_0=(Token)match(input,12,FOLLOW_7); + + newLeafNode(otherlv_0, grammarAccess.getUseRuleAccess().getUseKeyword_0()); + + // InternalGeneratorDSL.g:179:3: ( (lv_importURI_1_0= RULE_STRING ) ) + // InternalGeneratorDSL.g:180:4: (lv_importURI_1_0= RULE_STRING ) + { + // InternalGeneratorDSL.g:180:4: (lv_importURI_1_0= RULE_STRING ) + // InternalGeneratorDSL.g:181:5: lv_importURI_1_0= RULE_STRING + { + lv_importURI_1_0=(Token)match(input,RULE_STRING,FOLLOW_8); + + newLeafNode(lv_importURI_1_0, grammarAccess.getUseRuleAccess().getImportURISTRINGTerminalRuleCall_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getUseRuleRule()); + } + setWithLastConsumed( + current, + "importURI", + lv_importURI_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.STRING"); + + + } + + + } + + otherlv_2=(Token)match(input,13,FOLLOW_2); + + newLeafNode(otherlv_2, grammarAccess.getUseRuleAccess().getSemicolonKeyword_2()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleUseRule" + + + // $ANTLR start "entryRuleParametrizedFunctionDefinitionRule" + // InternalGeneratorDSL.g:205:1: entryRuleParametrizedFunctionDefinitionRule returns [EObject current=null] : iv_ruleParametrizedFunctionDefinitionRule= ruleParametrizedFunctionDefinitionRule EOF ; + public final EObject entryRuleParametrizedFunctionDefinitionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleParametrizedFunctionDefinitionRule = null; + + + try { + // InternalGeneratorDSL.g:205:75: (iv_ruleParametrizedFunctionDefinitionRule= ruleParametrizedFunctionDefinitionRule EOF ) + // InternalGeneratorDSL.g:206:2: iv_ruleParametrizedFunctionDefinitionRule= ruleParametrizedFunctionDefinitionRule EOF + { + newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleParametrizedFunctionDefinitionRule=ruleParametrizedFunctionDefinitionRule(); + + state._fsp--; + + current =iv_ruleParametrizedFunctionDefinitionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleParametrizedFunctionDefinitionRule" + + + // $ANTLR start "ruleParametrizedFunctionDefinitionRule" + // InternalGeneratorDSL.g:212:1: ruleParametrizedFunctionDefinitionRule returns [EObject current=null] : (otherlv_0= 'function' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' ) ; + public final EObject ruleParametrizedFunctionDefinitionRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + AntlrDatatypeRuleToken lv_name_1_0 = null; + + EObject lv_definition_3_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:218:2: ( (otherlv_0= 'function' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' ) ) + // InternalGeneratorDSL.g:219:2: (otherlv_0= 'function' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' ) + { + // InternalGeneratorDSL.g:219:2: (otherlv_0= 'function' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' ) + // InternalGeneratorDSL.g:220:3: otherlv_0= 'function' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' + { + otherlv_0=(Token)match(input,14,FOLLOW_9); + + newLeafNode(otherlv_0, grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getFunctionKeyword_0()); + + // InternalGeneratorDSL.g:224:3: ( (lv_name_1_0= ruleStringOrId ) ) + // InternalGeneratorDSL.g:225:4: (lv_name_1_0= ruleStringOrId ) + { + // InternalGeneratorDSL.g:225:4: (lv_name_1_0= ruleStringOrId ) + // InternalGeneratorDSL.g:226:5: lv_name_1_0= ruleStringOrId + { + + newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); + + pushFollow(FOLLOW_10); + lv_name_1_0=ruleStringOrId(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); + } + set( + current, + "name", + lv_name_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.StringOrId"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_2=(Token)match(input,15,FOLLOW_9); + + newLeafNode(otherlv_2, grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getUsingKeyword_2()); + + // InternalGeneratorDSL.g:247:3: ( (lv_definition_3_0= ruleInstanceRule ) ) + // InternalGeneratorDSL.g:248:4: (lv_definition_3_0= ruleInstanceRule ) + { + // InternalGeneratorDSL.g:248:4: (lv_definition_3_0= ruleInstanceRule ) + // InternalGeneratorDSL.g:249:5: lv_definition_3_0= ruleInstanceRule + { + + newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); + + pushFollow(FOLLOW_8); + lv_definition_3_0=ruleInstanceRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getParametrizedFunctionDefinitionRuleRule()); + } + set( + current, + "definition", + lv_definition_3_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.InstanceRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_4=(Token)match(input,13,FOLLOW_2); + + newLeafNode(otherlv_4, grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getSemicolonKeyword_4()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleParametrizedFunctionDefinitionRule" + + + // $ANTLR start "entryRuleGeneratorDefinitionRule" + // InternalGeneratorDSL.g:274:1: entryRuleGeneratorDefinitionRule returns [EObject current=null] : iv_ruleGeneratorDefinitionRule= ruleGeneratorDefinitionRule EOF ; + public final EObject entryRuleGeneratorDefinitionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGeneratorDefinitionRule = null; + + + try { + // InternalGeneratorDSL.g:274:64: (iv_ruleGeneratorDefinitionRule= ruleGeneratorDefinitionRule EOF ) + // InternalGeneratorDSL.g:275:2: iv_ruleGeneratorDefinitionRule= ruleGeneratorDefinitionRule EOF + { + newCompositeNode(grammarAccess.getGeneratorDefinitionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleGeneratorDefinitionRule=ruleGeneratorDefinitionRule(); + + state._fsp--; + + current =iv_ruleGeneratorDefinitionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGeneratorDefinitionRule" + + + // $ANTLR start "ruleGeneratorDefinitionRule" + // InternalGeneratorDSL.g:281:1: ruleGeneratorDefinitionRule returns [EObject current=null] : (otherlv_0= 'generator' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' ) ; + public final EObject ruleGeneratorDefinitionRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + AntlrDatatypeRuleToken lv_name_1_0 = null; + + EObject lv_definition_3_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:287:2: ( (otherlv_0= 'generator' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' ) ) + // InternalGeneratorDSL.g:288:2: (otherlv_0= 'generator' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' ) + { + // InternalGeneratorDSL.g:288:2: (otherlv_0= 'generator' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' ) + // InternalGeneratorDSL.g:289:3: otherlv_0= 'generator' ( (lv_name_1_0= ruleStringOrId ) ) otherlv_2= 'using' ( (lv_definition_3_0= ruleInstanceRule ) ) otherlv_4= ';' + { + otherlv_0=(Token)match(input,16,FOLLOW_9); + + newLeafNode(otherlv_0, grammarAccess.getGeneratorDefinitionRuleAccess().getGeneratorKeyword_0()); + + // InternalGeneratorDSL.g:293:3: ( (lv_name_1_0= ruleStringOrId ) ) + // InternalGeneratorDSL.g:294:4: (lv_name_1_0= ruleStringOrId ) + { + // InternalGeneratorDSL.g:294:4: (lv_name_1_0= ruleStringOrId ) + // InternalGeneratorDSL.g:295:5: lv_name_1_0= ruleStringOrId + { + + newCompositeNode(grammarAccess.getGeneratorDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0()); + + pushFollow(FOLLOW_10); + lv_name_1_0=ruleStringOrId(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGeneratorDefinitionRuleRule()); + } + set( + current, + "name", + lv_name_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.StringOrId"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_2=(Token)match(input,15,FOLLOW_9); + + newLeafNode(otherlv_2, grammarAccess.getGeneratorDefinitionRuleAccess().getUsingKeyword_2()); + + // InternalGeneratorDSL.g:316:3: ( (lv_definition_3_0= ruleInstanceRule ) ) + // InternalGeneratorDSL.g:317:4: (lv_definition_3_0= ruleInstanceRule ) + { + // InternalGeneratorDSL.g:317:4: (lv_definition_3_0= ruleInstanceRule ) + // InternalGeneratorDSL.g:318:5: lv_definition_3_0= ruleInstanceRule + { + + newCompositeNode(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0()); + + pushFollow(FOLLOW_8); + lv_definition_3_0=ruleInstanceRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGeneratorDefinitionRuleRule()); + } + set( + current, + "definition", + lv_definition_3_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.InstanceRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_4=(Token)match(input,13,FOLLOW_2); + + newLeafNode(otherlv_4, grammarAccess.getGeneratorDefinitionRuleAccess().getSemicolonKeyword_4()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGeneratorDefinitionRule" + + + // $ANTLR start "entryRuleStatementRule" + // InternalGeneratorDSL.g:343:1: entryRuleStatementRule returns [EObject current=null] : iv_ruleStatementRule= ruleStatementRule EOF ; + public final EObject entryRuleStatementRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleStatementRule = null; + + + try { + // InternalGeneratorDSL.g:343:54: (iv_ruleStatementRule= ruleStatementRule EOF ) + // InternalGeneratorDSL.g:344:2: iv_ruleStatementRule= ruleStatementRule EOF + { + newCompositeNode(grammarAccess.getStatementRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleStatementRule=ruleStatementRule(); + + state._fsp--; + + current =iv_ruleStatementRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleStatementRule" + + + // $ANTLR start "ruleStatementRule" + // InternalGeneratorDSL.g:350:1: ruleStatementRule returns [EObject current=null] : (this_ForStatementRule_0= ruleForStatementRule | this_ApplyStatementRule_1= ruleApplyStatementRule ) ; + public final EObject ruleStatementRule() throws RecognitionException { + EObject current = null; + + EObject this_ForStatementRule_0 = null; + + EObject this_ApplyStatementRule_1 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:356:2: ( (this_ForStatementRule_0= ruleForStatementRule | this_ApplyStatementRule_1= ruleApplyStatementRule ) ) + // InternalGeneratorDSL.g:357:2: (this_ForStatementRule_0= ruleForStatementRule | this_ApplyStatementRule_1= ruleApplyStatementRule ) + { + // InternalGeneratorDSL.g:357:2: (this_ForStatementRule_0= ruleForStatementRule | this_ApplyStatementRule_1= ruleApplyStatementRule ) + int alt5=2; + int LA5_0 = input.LA(1); + + if ( (LA5_0==17) ) { + alt5=1; + } + else if ( (LA5_0==27) ) { + alt5=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 5, 0, input); + + throw nvae; + } + switch (alt5) { + case 1 : + // InternalGeneratorDSL.g:358:3: this_ForStatementRule_0= ruleForStatementRule + { + + newCompositeNode(grammarAccess.getStatementRuleAccess().getForStatementRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_ForStatementRule_0=ruleForStatementRule(); + + state._fsp--; + + + current = this_ForStatementRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:367:3: this_ApplyStatementRule_1= ruleApplyStatementRule + { + + newCompositeNode(grammarAccess.getStatementRuleAccess().getApplyStatementRuleParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_ApplyStatementRule_1=ruleApplyStatementRule(); + + state._fsp--; + + + current = this_ApplyStatementRule_1; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleStatementRule" + + + // $ANTLR start "entryRuleForStatementRule" + // InternalGeneratorDSL.g:379:1: entryRuleForStatementRule returns [EObject current=null] : iv_ruleForStatementRule= ruleForStatementRule EOF ; + public final EObject entryRuleForStatementRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleForStatementRule = null; + + + try { + // InternalGeneratorDSL.g:379:57: (iv_ruleForStatementRule= ruleForStatementRule EOF ) + // InternalGeneratorDSL.g:380:2: iv_ruleForStatementRule= ruleForStatementRule EOF + { + newCompositeNode(grammarAccess.getForStatementRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleForStatementRule=ruleForStatementRule(); + + state._fsp--; + + current =iv_ruleForStatementRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleForStatementRule" + + + // $ANTLR start "ruleForStatementRule" + // InternalGeneratorDSL.g:386:1: ruleForStatementRule returns [EObject current=null] : (otherlv_0= 'for' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= 'in' ( (lv_range_3_0= ruleRangeRule ) ) otherlv_4= 'loop' ( (lv_statements_5_0= ruleStatementRule ) )* otherlv_6= 'end' ) ; + public final EObject ruleForStatementRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_name_1_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + Token otherlv_6=null; + EObject lv_range_3_0 = null; + + EObject lv_statements_5_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:392:2: ( (otherlv_0= 'for' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= 'in' ( (lv_range_3_0= ruleRangeRule ) ) otherlv_4= 'loop' ( (lv_statements_5_0= ruleStatementRule ) )* otherlv_6= 'end' ) ) + // InternalGeneratorDSL.g:393:2: (otherlv_0= 'for' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= 'in' ( (lv_range_3_0= ruleRangeRule ) ) otherlv_4= 'loop' ( (lv_statements_5_0= ruleStatementRule ) )* otherlv_6= 'end' ) + { + // InternalGeneratorDSL.g:393:2: (otherlv_0= 'for' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= 'in' ( (lv_range_3_0= ruleRangeRule ) ) otherlv_4= 'loop' ( (lv_statements_5_0= ruleStatementRule ) )* otherlv_6= 'end' ) + // InternalGeneratorDSL.g:394:3: otherlv_0= 'for' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= 'in' ( (lv_range_3_0= ruleRangeRule ) ) otherlv_4= 'loop' ( (lv_statements_5_0= ruleStatementRule ) )* otherlv_6= 'end' + { + otherlv_0=(Token)match(input,17,FOLLOW_11); + + newLeafNode(otherlv_0, grammarAccess.getForStatementRuleAccess().getForKeyword_0()); + + // InternalGeneratorDSL.g:398:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalGeneratorDSL.g:399:4: (lv_name_1_0= RULE_ID ) + { + // InternalGeneratorDSL.g:399:4: (lv_name_1_0= RULE_ID ) + // InternalGeneratorDSL.g:400:5: lv_name_1_0= RULE_ID + { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_12); + + newLeafNode(lv_name_1_0, grammarAccess.getForStatementRuleAccess().getNameIDTerminalRuleCall_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getForStatementRuleRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + + + } + + + } + + otherlv_2=(Token)match(input,18,FOLLOW_13); + + newLeafNode(otherlv_2, grammarAccess.getForStatementRuleAccess().getInKeyword_2()); + + // InternalGeneratorDSL.g:420:3: ( (lv_range_3_0= ruleRangeRule ) ) + // InternalGeneratorDSL.g:421:4: (lv_range_3_0= ruleRangeRule ) + { + // InternalGeneratorDSL.g:421:4: (lv_range_3_0= ruleRangeRule ) + // InternalGeneratorDSL.g:422:5: lv_range_3_0= ruleRangeRule + { + + newCompositeNode(grammarAccess.getForStatementRuleAccess().getRangeRangeRuleParserRuleCall_3_0()); + + pushFollow(FOLLOW_14); + lv_range_3_0=ruleRangeRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getForStatementRuleRule()); + } + set( + current, + "range", + lv_range_3_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.RangeRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_4=(Token)match(input,19,FOLLOW_15); + + newLeafNode(otherlv_4, grammarAccess.getForStatementRuleAccess().getLoopKeyword_4()); + + // InternalGeneratorDSL.g:443:3: ( (lv_statements_5_0= ruleStatementRule ) )* + loop6: + do { + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0==17||LA6_0==27) ) { + alt6=1; + } + + + switch (alt6) { + case 1 : + // InternalGeneratorDSL.g:444:4: (lv_statements_5_0= ruleStatementRule ) + { + // InternalGeneratorDSL.g:444:4: (lv_statements_5_0= ruleStatementRule ) + // InternalGeneratorDSL.g:445:5: lv_statements_5_0= ruleStatementRule + { + + newCompositeNode(grammarAccess.getForStatementRuleAccess().getStatementsStatementRuleParserRuleCall_5_0()); + + pushFollow(FOLLOW_15); + lv_statements_5_0=ruleStatementRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getForStatementRuleRule()); + } + add( + current, + "statements", + lv_statements_5_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.StatementRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop6; + } + } while (true); + + otherlv_6=(Token)match(input,20,FOLLOW_2); + + newLeafNode(otherlv_6, grammarAccess.getForStatementRuleAccess().getEndKeyword_6()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleForStatementRule" + + + // $ANTLR start "entryRuleRangeRule" + // InternalGeneratorDSL.g:470:1: entryRuleRangeRule returns [EObject current=null] : iv_ruleRangeRule= ruleRangeRule EOF ; + public final EObject entryRuleRangeRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleRangeRule = null; + + + try { + // InternalGeneratorDSL.g:470:50: (iv_ruleRangeRule= ruleRangeRule EOF ) + // InternalGeneratorDSL.g:471:2: iv_ruleRangeRule= ruleRangeRule EOF + { + newCompositeNode(grammarAccess.getRangeRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleRangeRule=ruleRangeRule(); + + state._fsp--; + + current =iv_ruleRangeRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleRangeRule" + + + // $ANTLR start "ruleRangeRule" + // InternalGeneratorDSL.g:477:1: ruleRangeRule returns [EObject current=null] : (this_FunctionsRule_0= ruleFunctionsRule | this_GeneratorsRule_1= ruleGeneratorsRule | this_CounterRangeRule_2= ruleCounterRangeRule ) ; + public final EObject ruleRangeRule() throws RecognitionException { + EObject current = null; + + EObject this_FunctionsRule_0 = null; + + EObject this_GeneratorsRule_1 = null; + + EObject this_CounterRangeRule_2 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:483:2: ( (this_FunctionsRule_0= ruleFunctionsRule | this_GeneratorsRule_1= ruleGeneratorsRule | this_CounterRangeRule_2= ruleCounterRangeRule ) ) + // InternalGeneratorDSL.g:484:2: (this_FunctionsRule_0= ruleFunctionsRule | this_GeneratorsRule_1= ruleGeneratorsRule | this_CounterRangeRule_2= ruleCounterRangeRule ) + { + // InternalGeneratorDSL.g:484:2: (this_FunctionsRule_0= ruleFunctionsRule | this_GeneratorsRule_1= ruleGeneratorsRule | this_CounterRangeRule_2= ruleCounterRangeRule ) + int alt7=3; + switch ( input.LA(1) ) { + case 24: + { + alt7=1; + } + break; + case 26: + { + alt7=2; + } + break; + case 21: + { + alt7=3; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 7, 0, input); + + throw nvae; + } + + switch (alt7) { + case 1 : + // InternalGeneratorDSL.g:485:3: this_FunctionsRule_0= ruleFunctionsRule + { + + newCompositeNode(grammarAccess.getRangeRuleAccess().getFunctionsRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_FunctionsRule_0=ruleFunctionsRule(); + + state._fsp--; + + + current = this_FunctionsRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:494:3: this_GeneratorsRule_1= ruleGeneratorsRule + { + + newCompositeNode(grammarAccess.getRangeRuleAccess().getGeneratorsRuleParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_GeneratorsRule_1=ruleGeneratorsRule(); + + state._fsp--; + + + current = this_GeneratorsRule_1; + afterParserOrEnumRuleCall(); + + + } + break; + case 3 : + // InternalGeneratorDSL.g:503:3: this_CounterRangeRule_2= ruleCounterRangeRule + { + + newCompositeNode(grammarAccess.getRangeRuleAccess().getCounterRangeRuleParserRuleCall_2()); + + pushFollow(FOLLOW_2); + this_CounterRangeRule_2=ruleCounterRangeRule(); + + state._fsp--; + + + current = this_CounterRangeRule_2; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleRangeRule" + + + // $ANTLR start "entryRuleCounterRangeRule" + // InternalGeneratorDSL.g:515:1: entryRuleCounterRangeRule returns [EObject current=null] : iv_ruleCounterRangeRule= ruleCounterRangeRule EOF ; + public final EObject entryRuleCounterRangeRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleCounterRangeRule = null; + + + try { + // InternalGeneratorDSL.g:515:57: (iv_ruleCounterRangeRule= ruleCounterRangeRule EOF ) + // InternalGeneratorDSL.g:516:2: iv_ruleCounterRangeRule= ruleCounterRangeRule EOF + { + newCompositeNode(grammarAccess.getCounterRangeRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleCounterRangeRule=ruleCounterRangeRule(); + + state._fsp--; + + current =iv_ruleCounterRangeRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleCounterRangeRule" + + + // $ANTLR start "ruleCounterRangeRule" + // InternalGeneratorDSL.g:522:1: ruleCounterRangeRule returns [EObject current=null] : (otherlv_0= '[' ( (lv_start_1_0= RULE_INT ) ) otherlv_2= 'to' ( (lv_end_3_0= RULE_INT ) ) otherlv_4= ']' ) ; + public final EObject ruleCounterRangeRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_start_1_0=null; + Token otherlv_2=null; + Token lv_end_3_0=null; + Token otherlv_4=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:528:2: ( (otherlv_0= '[' ( (lv_start_1_0= RULE_INT ) ) otherlv_2= 'to' ( (lv_end_3_0= RULE_INT ) ) otherlv_4= ']' ) ) + // InternalGeneratorDSL.g:529:2: (otherlv_0= '[' ( (lv_start_1_0= RULE_INT ) ) otherlv_2= 'to' ( (lv_end_3_0= RULE_INT ) ) otherlv_4= ']' ) + { + // InternalGeneratorDSL.g:529:2: (otherlv_0= '[' ( (lv_start_1_0= RULE_INT ) ) otherlv_2= 'to' ( (lv_end_3_0= RULE_INT ) ) otherlv_4= ']' ) + // InternalGeneratorDSL.g:530:3: otherlv_0= '[' ( (lv_start_1_0= RULE_INT ) ) otherlv_2= 'to' ( (lv_end_3_0= RULE_INT ) ) otherlv_4= ']' + { + otherlv_0=(Token)match(input,21,FOLLOW_16); + + newLeafNode(otherlv_0, grammarAccess.getCounterRangeRuleAccess().getLeftSquareBracketKeyword_0()); + + // InternalGeneratorDSL.g:534:3: ( (lv_start_1_0= RULE_INT ) ) + // InternalGeneratorDSL.g:535:4: (lv_start_1_0= RULE_INT ) + { + // InternalGeneratorDSL.g:535:4: (lv_start_1_0= RULE_INT ) + // InternalGeneratorDSL.g:536:5: lv_start_1_0= RULE_INT + { + lv_start_1_0=(Token)match(input,RULE_INT,FOLLOW_17); + + newLeafNode(lv_start_1_0, grammarAccess.getCounterRangeRuleAccess().getStartINTTerminalRuleCall_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getCounterRangeRuleRule()); + } + setWithLastConsumed( + current, + "start", + lv_start_1_0, + "org.eclipse.xtext.common.Terminals.INT"); + + + } + + + } + + otherlv_2=(Token)match(input,22,FOLLOW_16); + + newLeafNode(otherlv_2, grammarAccess.getCounterRangeRuleAccess().getToKeyword_2()); + + // InternalGeneratorDSL.g:556:3: ( (lv_end_3_0= RULE_INT ) ) + // InternalGeneratorDSL.g:557:4: (lv_end_3_0= RULE_INT ) + { + // InternalGeneratorDSL.g:557:4: (lv_end_3_0= RULE_INT ) + // InternalGeneratorDSL.g:558:5: lv_end_3_0= RULE_INT + { + lv_end_3_0=(Token)match(input,RULE_INT,FOLLOW_18); + + newLeafNode(lv_end_3_0, grammarAccess.getCounterRangeRuleAccess().getEndINTTerminalRuleCall_3_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getCounterRangeRuleRule()); + } + setWithLastConsumed( + current, + "end", + lv_end_3_0, + "org.eclipse.xtext.common.Terminals.INT"); + + + } + + + } + + otherlv_4=(Token)match(input,23,FOLLOW_2); + + newLeafNode(otherlv_4, grammarAccess.getCounterRangeRuleAccess().getRightSquareBracketKeyword_4()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleCounterRangeRule" + + + // $ANTLR start "entryRuleFunctionsRule" + // InternalGeneratorDSL.g:582:1: entryRuleFunctionsRule returns [EObject current=null] : iv_ruleFunctionsRule= ruleFunctionsRule EOF ; + public final EObject entryRuleFunctionsRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFunctionsRule = null; + + + try { + // InternalGeneratorDSL.g:582:54: (iv_ruleFunctionsRule= ruleFunctionsRule EOF ) + // InternalGeneratorDSL.g:583:2: iv_ruleFunctionsRule= ruleFunctionsRule EOF + { + newCompositeNode(grammarAccess.getFunctionsRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleFunctionsRule=ruleFunctionsRule(); + + state._fsp--; + + current =iv_ruleFunctionsRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleFunctionsRule" + + + // $ANTLR start "ruleFunctionsRule" + // InternalGeneratorDSL.g:589:1: ruleFunctionsRule returns [EObject current=null] : ( () otherlv_1= 'functions' ( (lv_functionReferences_2_0= ruleFunctionReferencesRule ) )? ) ; + public final EObject ruleFunctionsRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + EObject lv_functionReferences_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:595:2: ( ( () otherlv_1= 'functions' ( (lv_functionReferences_2_0= ruleFunctionReferencesRule ) )? ) ) + // InternalGeneratorDSL.g:596:2: ( () otherlv_1= 'functions' ( (lv_functionReferences_2_0= ruleFunctionReferencesRule ) )? ) + { + // InternalGeneratorDSL.g:596:2: ( () otherlv_1= 'functions' ( (lv_functionReferences_2_0= ruleFunctionReferencesRule ) )? ) + // InternalGeneratorDSL.g:597:3: () otherlv_1= 'functions' ( (lv_functionReferences_2_0= ruleFunctionReferencesRule ) )? + { + // InternalGeneratorDSL.g:597:3: () + // InternalGeneratorDSL.g:598:4: + { + + current = forceCreateModelElement( + grammarAccess.getFunctionsRuleAccess().getFunctionsAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,24,FOLLOW_19); + + newLeafNode(otherlv_1, grammarAccess.getFunctionsRuleAccess().getFunctionsKeyword_1()); + + // InternalGeneratorDSL.g:608:3: ( (lv_functionReferences_2_0= ruleFunctionReferencesRule ) )? + int alt8=2; + int LA8_0 = input.LA(1); + + if ( (LA8_0==21) ) { + alt8=1; + } + switch (alt8) { + case 1 : + // InternalGeneratorDSL.g:609:4: (lv_functionReferences_2_0= ruleFunctionReferencesRule ) + { + // InternalGeneratorDSL.g:609:4: (lv_functionReferences_2_0= ruleFunctionReferencesRule ) + // InternalGeneratorDSL.g:610:5: lv_functionReferences_2_0= ruleFunctionReferencesRule + { + + newCompositeNode(grammarAccess.getFunctionsRuleAccess().getFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0()); + + pushFollow(FOLLOW_2); + lv_functionReferences_2_0=ruleFunctionReferencesRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getFunctionsRuleRule()); + } + set( + current, + "functionReferences", + lv_functionReferences_2_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionReferencesRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleFunctionsRule" + + + // $ANTLR start "entryRuleFunctionReferencesRule" + // InternalGeneratorDSL.g:631:1: entryRuleFunctionReferencesRule returns [EObject current=null] : iv_ruleFunctionReferencesRule= ruleFunctionReferencesRule EOF ; + public final EObject entryRuleFunctionReferencesRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFunctionReferencesRule = null; + + + try { + // InternalGeneratorDSL.g:631:63: (iv_ruleFunctionReferencesRule= ruleFunctionReferencesRule EOF ) + // InternalGeneratorDSL.g:632:2: iv_ruleFunctionReferencesRule= ruleFunctionReferencesRule EOF + { + newCompositeNode(grammarAccess.getFunctionReferencesRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleFunctionReferencesRule=ruleFunctionReferencesRule(); + + state._fsp--; + + current =iv_ruleFunctionReferencesRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleFunctionReferencesRule" + + + // $ANTLR start "ruleFunctionReferencesRule" + // InternalGeneratorDSL.g:638:1: ruleFunctionReferencesRule returns [EObject current=null] : (otherlv_0= '[' ( (lv_functions_1_0= ruleFunctionDefReferenceRule ) ) (otherlv_2= ',' ( (lv_functions_3_0= ruleFunctionDefReferenceRule ) ) )* otherlv_4= ']' ) ; + public final EObject ruleFunctionReferencesRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + EObject lv_functions_1_0 = null; + + EObject lv_functions_3_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:644:2: ( (otherlv_0= '[' ( (lv_functions_1_0= ruleFunctionDefReferenceRule ) ) (otherlv_2= ',' ( (lv_functions_3_0= ruleFunctionDefReferenceRule ) ) )* otherlv_4= ']' ) ) + // InternalGeneratorDSL.g:645:2: (otherlv_0= '[' ( (lv_functions_1_0= ruleFunctionDefReferenceRule ) ) (otherlv_2= ',' ( (lv_functions_3_0= ruleFunctionDefReferenceRule ) ) )* otherlv_4= ']' ) + { + // InternalGeneratorDSL.g:645:2: (otherlv_0= '[' ( (lv_functions_1_0= ruleFunctionDefReferenceRule ) ) (otherlv_2= ',' ( (lv_functions_3_0= ruleFunctionDefReferenceRule ) ) )* otherlv_4= ']' ) + // InternalGeneratorDSL.g:646:3: otherlv_0= '[' ( (lv_functions_1_0= ruleFunctionDefReferenceRule ) ) (otherlv_2= ',' ( (lv_functions_3_0= ruleFunctionDefReferenceRule ) ) )* otherlv_4= ']' + { + otherlv_0=(Token)match(input,21,FOLLOW_20); + + newLeafNode(otherlv_0, grammarAccess.getFunctionReferencesRuleAccess().getLeftSquareBracketKeyword_0()); + + // InternalGeneratorDSL.g:650:3: ( (lv_functions_1_0= ruleFunctionDefReferenceRule ) ) + // InternalGeneratorDSL.g:651:4: (lv_functions_1_0= ruleFunctionDefReferenceRule ) + { + // InternalGeneratorDSL.g:651:4: (lv_functions_1_0= ruleFunctionDefReferenceRule ) + // InternalGeneratorDSL.g:652:5: lv_functions_1_0= ruleFunctionDefReferenceRule + { + + newCompositeNode(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_1_0()); + + pushFollow(FOLLOW_21); + lv_functions_1_0=ruleFunctionDefReferenceRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getFunctionReferencesRuleRule()); + } + add( + current, + "functions", + lv_functions_1_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionDefReferenceRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:669:3: (otherlv_2= ',' ( (lv_functions_3_0= ruleFunctionDefReferenceRule ) ) )* + loop9: + do { + int alt9=2; + int LA9_0 = input.LA(1); + + if ( (LA9_0==25) ) { + alt9=1; + } + + + switch (alt9) { + case 1 : + // InternalGeneratorDSL.g:670:4: otherlv_2= ',' ( (lv_functions_3_0= ruleFunctionDefReferenceRule ) ) + { + otherlv_2=(Token)match(input,25,FOLLOW_20); + + newLeafNode(otherlv_2, grammarAccess.getFunctionReferencesRuleAccess().getCommaKeyword_2_0()); + + // InternalGeneratorDSL.g:674:4: ( (lv_functions_3_0= ruleFunctionDefReferenceRule ) ) + // InternalGeneratorDSL.g:675:5: (lv_functions_3_0= ruleFunctionDefReferenceRule ) + { + // InternalGeneratorDSL.g:675:5: (lv_functions_3_0= ruleFunctionDefReferenceRule ) + // InternalGeneratorDSL.g:676:6: lv_functions_3_0= ruleFunctionDefReferenceRule + { + + newCompositeNode(grammarAccess.getFunctionReferencesRuleAccess().getFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0()); + + pushFollow(FOLLOW_21); + lv_functions_3_0=ruleFunctionDefReferenceRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getFunctionReferencesRuleRule()); + } + add( + current, + "functions", + lv_functions_3_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionDefReferenceRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop9; + } + } while (true); + + otherlv_4=(Token)match(input,23,FOLLOW_2); + + newLeafNode(otherlv_4, grammarAccess.getFunctionReferencesRuleAccess().getRightSquareBracketKeyword_3()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleFunctionReferencesRule" + + + // $ANTLR start "entryRuleGeneratorsRule" + // InternalGeneratorDSL.g:702:1: entryRuleGeneratorsRule returns [EObject current=null] : iv_ruleGeneratorsRule= ruleGeneratorsRule EOF ; + public final EObject entryRuleGeneratorsRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGeneratorsRule = null; + + + try { + // InternalGeneratorDSL.g:702:55: (iv_ruleGeneratorsRule= ruleGeneratorsRule EOF ) + // InternalGeneratorDSL.g:703:2: iv_ruleGeneratorsRule= ruleGeneratorsRule EOF + { + newCompositeNode(grammarAccess.getGeneratorsRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleGeneratorsRule=ruleGeneratorsRule(); + + state._fsp--; + + current =iv_ruleGeneratorsRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGeneratorsRule" + + + // $ANTLR start "ruleGeneratorsRule" + // InternalGeneratorDSL.g:709:1: ruleGeneratorsRule returns [EObject current=null] : ( () otherlv_1= 'generators' ( (lv_generatorReferences_2_0= ruleGeneratorReferencesRule ) )? ) ; + public final EObject ruleGeneratorsRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + EObject lv_generatorReferences_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:715:2: ( ( () otherlv_1= 'generators' ( (lv_generatorReferences_2_0= ruleGeneratorReferencesRule ) )? ) ) + // InternalGeneratorDSL.g:716:2: ( () otherlv_1= 'generators' ( (lv_generatorReferences_2_0= ruleGeneratorReferencesRule ) )? ) + { + // InternalGeneratorDSL.g:716:2: ( () otherlv_1= 'generators' ( (lv_generatorReferences_2_0= ruleGeneratorReferencesRule ) )? ) + // InternalGeneratorDSL.g:717:3: () otherlv_1= 'generators' ( (lv_generatorReferences_2_0= ruleGeneratorReferencesRule ) )? + { + // InternalGeneratorDSL.g:717:3: () + // InternalGeneratorDSL.g:718:4: + { + + current = forceCreateModelElement( + grammarAccess.getGeneratorsRuleAccess().getGeneratorsAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,26,FOLLOW_19); + + newLeafNode(otherlv_1, grammarAccess.getGeneratorsRuleAccess().getGeneratorsKeyword_1()); + + // InternalGeneratorDSL.g:728:3: ( (lv_generatorReferences_2_0= ruleGeneratorReferencesRule ) )? + int alt10=2; + int LA10_0 = input.LA(1); + + if ( (LA10_0==21) ) { + alt10=1; + } + switch (alt10) { + case 1 : + // InternalGeneratorDSL.g:729:4: (lv_generatorReferences_2_0= ruleGeneratorReferencesRule ) + { + // InternalGeneratorDSL.g:729:4: (lv_generatorReferences_2_0= ruleGeneratorReferencesRule ) + // InternalGeneratorDSL.g:730:5: lv_generatorReferences_2_0= ruleGeneratorReferencesRule + { + + newCompositeNode(grammarAccess.getGeneratorsRuleAccess().getGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0()); + + pushFollow(FOLLOW_2); + lv_generatorReferences_2_0=ruleGeneratorReferencesRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getGeneratorsRuleRule()); + } + set( + current, + "generatorReferences", + lv_generatorReferences_2_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorReferencesRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGeneratorsRule" + + + // $ANTLR start "entryRuleGeneratorReferencesRule" + // InternalGeneratorDSL.g:751:1: entryRuleGeneratorReferencesRule returns [EObject current=null] : iv_ruleGeneratorReferencesRule= ruleGeneratorReferencesRule EOF ; + public final EObject entryRuleGeneratorReferencesRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGeneratorReferencesRule = null; + + + try { + // InternalGeneratorDSL.g:751:64: (iv_ruleGeneratorReferencesRule= ruleGeneratorReferencesRule EOF ) + // InternalGeneratorDSL.g:752:2: iv_ruleGeneratorReferencesRule= ruleGeneratorReferencesRule EOF + { + newCompositeNode(grammarAccess.getGeneratorReferencesRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleGeneratorReferencesRule=ruleGeneratorReferencesRule(); + + state._fsp--; + + current =iv_ruleGeneratorReferencesRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGeneratorReferencesRule" + + + // $ANTLR start "ruleGeneratorReferencesRule" + // InternalGeneratorDSL.g:758:1: ruleGeneratorReferencesRule returns [EObject current=null] : (otherlv_0= '[' ( ( ruleStringOrId ) ) (otherlv_2= ',' ( ( ruleStringOrId ) ) )* otherlv_4= ']' ) ; + public final EObject ruleGeneratorReferencesRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:764:2: ( (otherlv_0= '[' ( ( ruleStringOrId ) ) (otherlv_2= ',' ( ( ruleStringOrId ) ) )* otherlv_4= ']' ) ) + // InternalGeneratorDSL.g:765:2: (otherlv_0= '[' ( ( ruleStringOrId ) ) (otherlv_2= ',' ( ( ruleStringOrId ) ) )* otherlv_4= ']' ) + { + // InternalGeneratorDSL.g:765:2: (otherlv_0= '[' ( ( ruleStringOrId ) ) (otherlv_2= ',' ( ( ruleStringOrId ) ) )* otherlv_4= ']' ) + // InternalGeneratorDSL.g:766:3: otherlv_0= '[' ( ( ruleStringOrId ) ) (otherlv_2= ',' ( ( ruleStringOrId ) ) )* otherlv_4= ']' + { + otherlv_0=(Token)match(input,21,FOLLOW_9); + + newLeafNode(otherlv_0, grammarAccess.getGeneratorReferencesRuleAccess().getLeftSquareBracketKeyword_0()); + + // InternalGeneratorDSL.g:770:3: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:771:4: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:771:4: ( ruleStringOrId ) + // InternalGeneratorDSL.g:772:5: ruleStringOrId + { + + if (current==null) { + current = createModelElement(grammarAccess.getGeneratorReferencesRuleRule()); + } + + + newCompositeNode(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_1_0()); + + pushFollow(FOLLOW_21); + ruleStringOrId(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:786:3: (otherlv_2= ',' ( ( ruleStringOrId ) ) )* + loop11: + do { + int alt11=2; + int LA11_0 = input.LA(1); + + if ( (LA11_0==25) ) { + alt11=1; + } + + + switch (alt11) { + case 1 : + // InternalGeneratorDSL.g:787:4: otherlv_2= ',' ( ( ruleStringOrId ) ) + { + otherlv_2=(Token)match(input,25,FOLLOW_9); + + newLeafNode(otherlv_2, grammarAccess.getGeneratorReferencesRuleAccess().getCommaKeyword_2_0()); + + // InternalGeneratorDSL.g:791:4: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:792:5: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:792:5: ( ruleStringOrId ) + // InternalGeneratorDSL.g:793:6: ruleStringOrId + { + + if (current==null) { + current = createModelElement(grammarAccess.getGeneratorReferencesRuleRule()); + } + + + newCompositeNode(grammarAccess.getGeneratorReferencesRuleAccess().getGeneratorsGeneratorDefinitionCrossReference_2_1_0()); + + pushFollow(FOLLOW_21); + ruleStringOrId(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop11; + } + } while (true); + + otherlv_4=(Token)match(input,23,FOLLOW_2); + + newLeafNode(otherlv_4, grammarAccess.getGeneratorReferencesRuleAccess().getRightSquareBracketKeyword_3()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGeneratorReferencesRule" + + + // $ANTLR start "entryRuleApplyStatementRule" + // InternalGeneratorDSL.g:816:1: entryRuleApplyStatementRule returns [EObject current=null] : iv_ruleApplyStatementRule= ruleApplyStatementRule EOF ; + public final EObject entryRuleApplyStatementRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleApplyStatementRule = null; + + + try { + // InternalGeneratorDSL.g:816:59: (iv_ruleApplyStatementRule= ruleApplyStatementRule EOF ) + // InternalGeneratorDSL.g:817:2: iv_ruleApplyStatementRule= ruleApplyStatementRule EOF + { + newCompositeNode(grammarAccess.getApplyStatementRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleApplyStatementRule=ruleApplyStatementRule(); + + state._fsp--; + + current =iv_ruleApplyStatementRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleApplyStatementRule" + + + // $ANTLR start "ruleApplyStatementRule" + // InternalGeneratorDSL.g:823:1: ruleApplyStatementRule returns [EObject current=null] : (otherlv_0= 'write' ( (lv_file_1_0= RULE_STRING ) ) otherlv_2= 'with' ( (lv_count_3_0= RULE_INT ) ) otherlv_4= 'samples' otherlv_5= 'from' otherlv_6= 'applying' ( (lv_function_7_0= ruleFunctionReferenceRule ) ) otherlv_8= 'on' ( (lv_generator_9_0= ruleGeneratorReferenceRule ) ) otherlv_10= ';' ) ; + public final EObject ruleApplyStatementRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_file_1_0=null; + Token otherlv_2=null; + Token lv_count_3_0=null; + Token otherlv_4=null; + Token otherlv_5=null; + Token otherlv_6=null; + Token otherlv_8=null; + Token otherlv_10=null; + EObject lv_function_7_0 = null; + + EObject lv_generator_9_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:829:2: ( (otherlv_0= 'write' ( (lv_file_1_0= RULE_STRING ) ) otherlv_2= 'with' ( (lv_count_3_0= RULE_INT ) ) otherlv_4= 'samples' otherlv_5= 'from' otherlv_6= 'applying' ( (lv_function_7_0= ruleFunctionReferenceRule ) ) otherlv_8= 'on' ( (lv_generator_9_0= ruleGeneratorReferenceRule ) ) otherlv_10= ';' ) ) + // InternalGeneratorDSL.g:830:2: (otherlv_0= 'write' ( (lv_file_1_0= RULE_STRING ) ) otherlv_2= 'with' ( (lv_count_3_0= RULE_INT ) ) otherlv_4= 'samples' otherlv_5= 'from' otherlv_6= 'applying' ( (lv_function_7_0= ruleFunctionReferenceRule ) ) otherlv_8= 'on' ( (lv_generator_9_0= ruleGeneratorReferenceRule ) ) otherlv_10= ';' ) + { + // InternalGeneratorDSL.g:830:2: (otherlv_0= 'write' ( (lv_file_1_0= RULE_STRING ) ) otherlv_2= 'with' ( (lv_count_3_0= RULE_INT ) ) otherlv_4= 'samples' otherlv_5= 'from' otherlv_6= 'applying' ( (lv_function_7_0= ruleFunctionReferenceRule ) ) otherlv_8= 'on' ( (lv_generator_9_0= ruleGeneratorReferenceRule ) ) otherlv_10= ';' ) + // InternalGeneratorDSL.g:831:3: otherlv_0= 'write' ( (lv_file_1_0= RULE_STRING ) ) otherlv_2= 'with' ( (lv_count_3_0= RULE_INT ) ) otherlv_4= 'samples' otherlv_5= 'from' otherlv_6= 'applying' ( (lv_function_7_0= ruleFunctionReferenceRule ) ) otherlv_8= 'on' ( (lv_generator_9_0= ruleGeneratorReferenceRule ) ) otherlv_10= ';' + { + otherlv_0=(Token)match(input,27,FOLLOW_7); + + newLeafNode(otherlv_0, grammarAccess.getApplyStatementRuleAccess().getWriteKeyword_0()); + + // InternalGeneratorDSL.g:835:3: ( (lv_file_1_0= RULE_STRING ) ) + // InternalGeneratorDSL.g:836:4: (lv_file_1_0= RULE_STRING ) + { + // InternalGeneratorDSL.g:836:4: (lv_file_1_0= RULE_STRING ) + // InternalGeneratorDSL.g:837:5: lv_file_1_0= RULE_STRING + { + lv_file_1_0=(Token)match(input,RULE_STRING,FOLLOW_22); + + newLeafNode(lv_file_1_0, grammarAccess.getApplyStatementRuleAccess().getFileSTRINGTerminalRuleCall_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getApplyStatementRuleRule()); + } + setWithLastConsumed( + current, + "file", + lv_file_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.STRING"); + + + } + + + } + + otherlv_2=(Token)match(input,28,FOLLOW_16); + + newLeafNode(otherlv_2, grammarAccess.getApplyStatementRuleAccess().getWithKeyword_2()); + + // InternalGeneratorDSL.g:857:3: ( (lv_count_3_0= RULE_INT ) ) + // InternalGeneratorDSL.g:858:4: (lv_count_3_0= RULE_INT ) + { + // InternalGeneratorDSL.g:858:4: (lv_count_3_0= RULE_INT ) + // InternalGeneratorDSL.g:859:5: lv_count_3_0= RULE_INT + { + lv_count_3_0=(Token)match(input,RULE_INT,FOLLOW_23); + + newLeafNode(lv_count_3_0, grammarAccess.getApplyStatementRuleAccess().getCountINTTerminalRuleCall_3_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getApplyStatementRuleRule()); + } + setWithLastConsumed( + current, + "count", + lv_count_3_0, + "org.eclipse.xtext.common.Terminals.INT"); + + + } + + + } + + otherlv_4=(Token)match(input,29,FOLLOW_24); + + newLeafNode(otherlv_4, grammarAccess.getApplyStatementRuleAccess().getSamplesKeyword_4()); + + otherlv_5=(Token)match(input,30,FOLLOW_25); + + newLeafNode(otherlv_5, grammarAccess.getApplyStatementRuleAccess().getFromKeyword_5()); + + otherlv_6=(Token)match(input,31,FOLLOW_26); + + newLeafNode(otherlv_6, grammarAccess.getApplyStatementRuleAccess().getApplyingKeyword_6()); + + // InternalGeneratorDSL.g:887:3: ( (lv_function_7_0= ruleFunctionReferenceRule ) ) + // InternalGeneratorDSL.g:888:4: (lv_function_7_0= ruleFunctionReferenceRule ) + { + // InternalGeneratorDSL.g:888:4: (lv_function_7_0= ruleFunctionReferenceRule ) + // InternalGeneratorDSL.g:889:5: lv_function_7_0= ruleFunctionReferenceRule + { + + newCompositeNode(grammarAccess.getApplyStatementRuleAccess().getFunctionFunctionReferenceRuleParserRuleCall_7_0()); + + pushFollow(FOLLOW_27); + lv_function_7_0=ruleFunctionReferenceRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getApplyStatementRuleRule()); + } + set( + current, + "function", + lv_function_7_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionReferenceRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_8=(Token)match(input,32,FOLLOW_28); + + newLeafNode(otherlv_8, grammarAccess.getApplyStatementRuleAccess().getOnKeyword_8()); + + // InternalGeneratorDSL.g:910:3: ( (lv_generator_9_0= ruleGeneratorReferenceRule ) ) + // InternalGeneratorDSL.g:911:4: (lv_generator_9_0= ruleGeneratorReferenceRule ) + { + // InternalGeneratorDSL.g:911:4: (lv_generator_9_0= ruleGeneratorReferenceRule ) + // InternalGeneratorDSL.g:912:5: lv_generator_9_0= ruleGeneratorReferenceRule + { + + newCompositeNode(grammarAccess.getApplyStatementRuleAccess().getGeneratorGeneratorReferenceRuleParserRuleCall_9_0()); + + pushFollow(FOLLOW_8); + lv_generator_9_0=ruleGeneratorReferenceRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getApplyStatementRuleRule()); + } + set( + current, + "generator", + lv_generator_9_0, + "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorReferenceRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_10=(Token)match(input,13,FOLLOW_2); + + newLeafNode(otherlv_10, grammarAccess.getApplyStatementRuleAccess().getSemicolonKeyword_10()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleApplyStatementRule" + + + // $ANTLR start "entryRuleGeneratorReferenceRule" + // InternalGeneratorDSL.g:937:1: entryRuleGeneratorReferenceRule returns [EObject current=null] : iv_ruleGeneratorReferenceRule= ruleGeneratorReferenceRule EOF ; + public final EObject entryRuleGeneratorReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGeneratorReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:937:63: (iv_ruleGeneratorReferenceRule= ruleGeneratorReferenceRule EOF ) + // InternalGeneratorDSL.g:938:2: iv_ruleGeneratorReferenceRule= ruleGeneratorReferenceRule EOF + { + newCompositeNode(grammarAccess.getGeneratorReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleGeneratorReferenceRule=ruleGeneratorReferenceRule(); + + state._fsp--; + + current =iv_ruleGeneratorReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGeneratorReferenceRule" + + + // $ANTLR start "ruleGeneratorReferenceRule" + // InternalGeneratorDSL.g:944:1: ruleGeneratorReferenceRule returns [EObject current=null] : (this_GeneratorDefinitionReferenceRule_0= ruleGeneratorDefinitionReferenceRule | this_LoopVariableReference_1= ruleLoopVariableReference ) ; + public final EObject ruleGeneratorReferenceRule() throws RecognitionException { + EObject current = null; + + EObject this_GeneratorDefinitionReferenceRule_0 = null; + + EObject this_LoopVariableReference_1 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:950:2: ( (this_GeneratorDefinitionReferenceRule_0= ruleGeneratorDefinitionReferenceRule | this_LoopVariableReference_1= ruleLoopVariableReference ) ) + // InternalGeneratorDSL.g:951:2: (this_GeneratorDefinitionReferenceRule_0= ruleGeneratorDefinitionReferenceRule | this_LoopVariableReference_1= ruleLoopVariableReference ) + { + // InternalGeneratorDSL.g:951:2: (this_GeneratorDefinitionReferenceRule_0= ruleGeneratorDefinitionReferenceRule | this_LoopVariableReference_1= ruleLoopVariableReference ) + int alt12=2; + int LA12_0 = input.LA(1); + + if ( (LA12_0==16) ) { + alt12=1; + } + else if ( (LA12_0==RULE_ID) ) { + alt12=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 12, 0, input); + + throw nvae; + } + switch (alt12) { + case 1 : + // InternalGeneratorDSL.g:952:3: this_GeneratorDefinitionReferenceRule_0= ruleGeneratorDefinitionReferenceRule + { + + newCompositeNode(grammarAccess.getGeneratorReferenceRuleAccess().getGeneratorDefinitionReferenceRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_GeneratorDefinitionReferenceRule_0=ruleGeneratorDefinitionReferenceRule(); + + state._fsp--; + + + current = this_GeneratorDefinitionReferenceRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:961:3: this_LoopVariableReference_1= ruleLoopVariableReference + { + + newCompositeNode(grammarAccess.getGeneratorReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_LoopVariableReference_1=ruleLoopVariableReference(); + + state._fsp--; + + + current = this_LoopVariableReference_1; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGeneratorReferenceRule" + + + // $ANTLR start "entryRuleGeneratorDefinitionReferenceRule" + // InternalGeneratorDSL.g:973:1: entryRuleGeneratorDefinitionReferenceRule returns [EObject current=null] : iv_ruleGeneratorDefinitionReferenceRule= ruleGeneratorDefinitionReferenceRule EOF ; + public final EObject entryRuleGeneratorDefinitionReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleGeneratorDefinitionReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:973:73: (iv_ruleGeneratorDefinitionReferenceRule= ruleGeneratorDefinitionReferenceRule EOF ) + // InternalGeneratorDSL.g:974:2: iv_ruleGeneratorDefinitionReferenceRule= ruleGeneratorDefinitionReferenceRule EOF + { + newCompositeNode(grammarAccess.getGeneratorDefinitionReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleGeneratorDefinitionReferenceRule=ruleGeneratorDefinitionReferenceRule(); + + state._fsp--; + + current =iv_ruleGeneratorDefinitionReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleGeneratorDefinitionReferenceRule" + + + // $ANTLR start "ruleGeneratorDefinitionReferenceRule" + // InternalGeneratorDSL.g:980:1: ruleGeneratorDefinitionReferenceRule returns [EObject current=null] : (otherlv_0= 'generator' ( ( ruleStringOrId ) ) ) ; + public final EObject ruleGeneratorDefinitionReferenceRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:986:2: ( (otherlv_0= 'generator' ( ( ruleStringOrId ) ) ) ) + // InternalGeneratorDSL.g:987:2: (otherlv_0= 'generator' ( ( ruleStringOrId ) ) ) + { + // InternalGeneratorDSL.g:987:2: (otherlv_0= 'generator' ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:988:3: otherlv_0= 'generator' ( ( ruleStringOrId ) ) + { + otherlv_0=(Token)match(input,16,FOLLOW_9); + + newLeafNode(otherlv_0, grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getGeneratorKeyword_0()); + + // InternalGeneratorDSL.g:992:3: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:993:4: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:993:4: ( ruleStringOrId ) + // InternalGeneratorDSL.g:994:5: ruleStringOrId + { + + if (current==null) { + current = createModelElement(grammarAccess.getGeneratorDefinitionReferenceRuleRule()); + } + + + newCompositeNode(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionCrossReference_1_0()); + + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleGeneratorDefinitionReferenceRule" + + + // $ANTLR start "entryRuleFunctionReferenceRule" + // InternalGeneratorDSL.g:1012:1: entryRuleFunctionReferenceRule returns [EObject current=null] : iv_ruleFunctionReferenceRule= ruleFunctionReferenceRule EOF ; + public final EObject entryRuleFunctionReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFunctionReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:1012:62: (iv_ruleFunctionReferenceRule= ruleFunctionReferenceRule EOF ) + // InternalGeneratorDSL.g:1013:2: iv_ruleFunctionReferenceRule= ruleFunctionReferenceRule EOF + { + newCompositeNode(grammarAccess.getFunctionReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleFunctionReferenceRule=ruleFunctionReferenceRule(); + + state._fsp--; + + current =iv_ruleFunctionReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleFunctionReferenceRule" + + + // $ANTLR start "ruleFunctionReferenceRule" + // InternalGeneratorDSL.g:1019:1: ruleFunctionReferenceRule returns [EObject current=null] : (this_FunctionDefReferenceRule_0= ruleFunctionDefReferenceRule | this_LoopVariableReference_1= ruleLoopVariableReference ) ; + public final EObject ruleFunctionReferenceRule() throws RecognitionException { + EObject current = null; + + EObject this_FunctionDefReferenceRule_0 = null; + + EObject this_LoopVariableReference_1 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1025:2: ( (this_FunctionDefReferenceRule_0= ruleFunctionDefReferenceRule | this_LoopVariableReference_1= ruleLoopVariableReference ) ) + // InternalGeneratorDSL.g:1026:2: (this_FunctionDefReferenceRule_0= ruleFunctionDefReferenceRule | this_LoopVariableReference_1= ruleLoopVariableReference ) + { + // InternalGeneratorDSL.g:1026:2: (this_FunctionDefReferenceRule_0= ruleFunctionDefReferenceRule | this_LoopVariableReference_1= ruleLoopVariableReference ) + int alt13=2; + int LA13_0 = input.LA(1); + + if ( (LA13_0==14||LA13_0==33) ) { + alt13=1; + } + else if ( (LA13_0==RULE_ID) ) { + alt13=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 13, 0, input); + + throw nvae; + } + switch (alt13) { + case 1 : + // InternalGeneratorDSL.g:1027:3: this_FunctionDefReferenceRule_0= ruleFunctionDefReferenceRule + { + + newCompositeNode(grammarAccess.getFunctionReferenceRuleAccess().getFunctionDefReferenceRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_FunctionDefReferenceRule_0=ruleFunctionDefReferenceRule(); + + state._fsp--; + + + current = this_FunctionDefReferenceRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1036:3: this_LoopVariableReference_1= ruleLoopVariableReference + { + + newCompositeNode(grammarAccess.getFunctionReferenceRuleAccess().getLoopVariableReferenceParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_LoopVariableReference_1=ruleLoopVariableReference(); + + state._fsp--; + + + current = this_LoopVariableReference_1; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleFunctionReferenceRule" + + + // $ANTLR start "entryRuleFunctionDefReferenceRule" + // InternalGeneratorDSL.g:1048:1: entryRuleFunctionDefReferenceRule returns [EObject current=null] : iv_ruleFunctionDefReferenceRule= ruleFunctionDefReferenceRule EOF ; + public final EObject entryRuleFunctionDefReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFunctionDefReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:1048:65: (iv_ruleFunctionDefReferenceRule= ruleFunctionDefReferenceRule EOF ) + // InternalGeneratorDSL.g:1049:2: iv_ruleFunctionDefReferenceRule= ruleFunctionDefReferenceRule EOF + { + newCompositeNode(grammarAccess.getFunctionDefReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleFunctionDefReferenceRule=ruleFunctionDefReferenceRule(); + + state._fsp--; + + current =iv_ruleFunctionDefReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleFunctionDefReferenceRule" + + + // $ANTLR start "ruleFunctionDefReferenceRule" + // InternalGeneratorDSL.g:1055:1: ruleFunctionDefReferenceRule returns [EObject current=null] : (this_FunctionDefinitionReferenceRule_0= ruleFunctionDefinitionReferenceRule | this_ParametrizedFunctionDefinitionReferenceRule_1= ruleParametrizedFunctionDefinitionReferenceRule ) ; + public final EObject ruleFunctionDefReferenceRule() throws RecognitionException { + EObject current = null; + + EObject this_FunctionDefinitionReferenceRule_0 = null; + + EObject this_ParametrizedFunctionDefinitionReferenceRule_1 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1061:2: ( (this_FunctionDefinitionReferenceRule_0= ruleFunctionDefinitionReferenceRule | this_ParametrizedFunctionDefinitionReferenceRule_1= ruleParametrizedFunctionDefinitionReferenceRule ) ) + // InternalGeneratorDSL.g:1062:2: (this_FunctionDefinitionReferenceRule_0= ruleFunctionDefinitionReferenceRule | this_ParametrizedFunctionDefinitionReferenceRule_1= ruleParametrizedFunctionDefinitionReferenceRule ) + { + // InternalGeneratorDSL.g:1062:2: (this_FunctionDefinitionReferenceRule_0= ruleFunctionDefinitionReferenceRule | this_ParametrizedFunctionDefinitionReferenceRule_1= ruleParametrizedFunctionDefinitionReferenceRule ) + int alt14=2; + int LA14_0 = input.LA(1); + + if ( (LA14_0==33) ) { + alt14=1; + } + else if ( (LA14_0==14) ) { + alt14=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 14, 0, input); + + throw nvae; + } + switch (alt14) { + case 1 : + // InternalGeneratorDSL.g:1063:3: this_FunctionDefinitionReferenceRule_0= ruleFunctionDefinitionReferenceRule + { + + newCompositeNode(grammarAccess.getFunctionDefReferenceRuleAccess().getFunctionDefinitionReferenceRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_FunctionDefinitionReferenceRule_0=ruleFunctionDefinitionReferenceRule(); + + state._fsp--; + + + current = this_FunctionDefinitionReferenceRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1072:3: this_ParametrizedFunctionDefinitionReferenceRule_1= ruleParametrizedFunctionDefinitionReferenceRule + { + + newCompositeNode(grammarAccess.getFunctionDefReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_ParametrizedFunctionDefinitionReferenceRule_1=ruleParametrizedFunctionDefinitionReferenceRule(); + + state._fsp--; + + + current = this_ParametrizedFunctionDefinitionReferenceRule_1; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleFunctionDefReferenceRule" + + + // $ANTLR start "entryRuleLoopVariableReference" + // InternalGeneratorDSL.g:1084:1: entryRuleLoopVariableReference returns [EObject current=null] : iv_ruleLoopVariableReference= ruleLoopVariableReference EOF ; + public final EObject entryRuleLoopVariableReference() throws RecognitionException { + EObject current = null; + + EObject iv_ruleLoopVariableReference = null; + + + try { + // InternalGeneratorDSL.g:1084:62: (iv_ruleLoopVariableReference= ruleLoopVariableReference EOF ) + // InternalGeneratorDSL.g:1085:2: iv_ruleLoopVariableReference= ruleLoopVariableReference EOF + { + newCompositeNode(grammarAccess.getLoopVariableReferenceRule()); + pushFollow(FOLLOW_1); + iv_ruleLoopVariableReference=ruleLoopVariableReference(); + + state._fsp--; + + current =iv_ruleLoopVariableReference; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleLoopVariableReference" + + + // $ANTLR start "ruleLoopVariableReference" + // InternalGeneratorDSL.g:1091:1: ruleLoopVariableReference returns [EObject current=null] : ( () ( (otherlv_1= RULE_ID ) ) ) ; + public final EObject ruleLoopVariableReference() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1097:2: ( ( () ( (otherlv_1= RULE_ID ) ) ) ) + // InternalGeneratorDSL.g:1098:2: ( () ( (otherlv_1= RULE_ID ) ) ) + { + // InternalGeneratorDSL.g:1098:2: ( () ( (otherlv_1= RULE_ID ) ) ) + // InternalGeneratorDSL.g:1099:3: () ( (otherlv_1= RULE_ID ) ) + { + // InternalGeneratorDSL.g:1099:3: () + // InternalGeneratorDSL.g:1100:4: + { + + current = forceCreateModelElement( + grammarAccess.getLoopVariableReferenceAccess().getLoopVariableAction_0(), + current); + + + } + + // InternalGeneratorDSL.g:1106:3: ( (otherlv_1= RULE_ID ) ) + // InternalGeneratorDSL.g:1107:4: (otherlv_1= RULE_ID ) + { + // InternalGeneratorDSL.g:1107:4: (otherlv_1= RULE_ID ) + // InternalGeneratorDSL.g:1108:5: otherlv_1= RULE_ID + { + + if (current==null) { + current = createModelElement(grammarAccess.getLoopVariableReferenceRule()); + } + + otherlv_1=(Token)match(input,RULE_ID,FOLLOW_2); + + newLeafNode(otherlv_1, grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementCrossReference_1_0()); + + + } + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleLoopVariableReference" + + + // $ANTLR start "entryRuleFunctionDefinitionReferenceRule" + // InternalGeneratorDSL.g:1123:1: entryRuleFunctionDefinitionReferenceRule returns [EObject current=null] : iv_ruleFunctionDefinitionReferenceRule= ruleFunctionDefinitionReferenceRule EOF ; + public final EObject entryRuleFunctionDefinitionReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFunctionDefinitionReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:1123:72: (iv_ruleFunctionDefinitionReferenceRule= ruleFunctionDefinitionReferenceRule EOF ) + // InternalGeneratorDSL.g:1124:2: iv_ruleFunctionDefinitionReferenceRule= ruleFunctionDefinitionReferenceRule EOF + { + newCompositeNode(grammarAccess.getFunctionDefinitionReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleFunctionDefinitionReferenceRule=ruleFunctionDefinitionReferenceRule(); + + state._fsp--; + + current =iv_ruleFunctionDefinitionReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleFunctionDefinitionReferenceRule" + + + // $ANTLR start "ruleFunctionDefinitionReferenceRule" + // InternalGeneratorDSL.g:1130:1: ruleFunctionDefinitionReferenceRule returns [EObject current=null] : ( () otherlv_1= 'definition' ( ( ruleStringOrId ) ) ) ; + public final EObject ruleFunctionDefinitionReferenceRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1136:2: ( ( () otherlv_1= 'definition' ( ( ruleStringOrId ) ) ) ) + // InternalGeneratorDSL.g:1137:2: ( () otherlv_1= 'definition' ( ( ruleStringOrId ) ) ) + { + // InternalGeneratorDSL.g:1137:2: ( () otherlv_1= 'definition' ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:1138:3: () otherlv_1= 'definition' ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:1138:3: () + // InternalGeneratorDSL.g:1139:4: + { + + current = forceCreateModelElement( + grammarAccess.getFunctionDefinitionReferenceRuleAccess().getFunctionDefinitionReferenceAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,33,FOLLOW_9); + + newLeafNode(otherlv_1, grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionKeyword_1()); + + // InternalGeneratorDSL.g:1149:3: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:1150:4: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:1150:4: ( ruleStringOrId ) + // InternalGeneratorDSL.g:1151:5: ruleStringOrId + { + + if (current==null) { + current = createModelElement(grammarAccess.getFunctionDefinitionReferenceRuleRule()); + } + + + newCompositeNode(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionCrossReference_2_0()); + + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleFunctionDefinitionReferenceRule" + + + // $ANTLR start "entryRuleParametrizedFunctionDefinitionReferenceRule" + // InternalGeneratorDSL.g:1169:1: entryRuleParametrizedFunctionDefinitionReferenceRule returns [EObject current=null] : iv_ruleParametrizedFunctionDefinitionReferenceRule= ruleParametrizedFunctionDefinitionReferenceRule EOF ; + public final EObject entryRuleParametrizedFunctionDefinitionReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleParametrizedFunctionDefinitionReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:1169:84: (iv_ruleParametrizedFunctionDefinitionReferenceRule= ruleParametrizedFunctionDefinitionReferenceRule EOF ) + // InternalGeneratorDSL.g:1170:2: iv_ruleParametrizedFunctionDefinitionReferenceRule= ruleParametrizedFunctionDefinitionReferenceRule EOF + { + newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleParametrizedFunctionDefinitionReferenceRule=ruleParametrizedFunctionDefinitionReferenceRule(); + + state._fsp--; + + current =iv_ruleParametrizedFunctionDefinitionReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleParametrizedFunctionDefinitionReferenceRule" + + + // $ANTLR start "ruleParametrizedFunctionDefinitionReferenceRule" + // InternalGeneratorDSL.g:1176:1: ruleParametrizedFunctionDefinitionReferenceRule returns [EObject current=null] : ( () otherlv_1= 'function' ( ( ruleStringOrId ) ) ) ; + public final EObject ruleParametrizedFunctionDefinitionReferenceRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1182:2: ( ( () otherlv_1= 'function' ( ( ruleStringOrId ) ) ) ) + // InternalGeneratorDSL.g:1183:2: ( () otherlv_1= 'function' ( ( ruleStringOrId ) ) ) + { + // InternalGeneratorDSL.g:1183:2: ( () otherlv_1= 'function' ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:1184:3: () otherlv_1= 'function' ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:1184:3: () + // InternalGeneratorDSL.g:1185:4: + { + + current = forceCreateModelElement( + grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getParametrizedFunctionDefinitionReferenceAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,14,FOLLOW_9); + + newLeafNode(otherlv_1, grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getFunctionKeyword_1()); + + // InternalGeneratorDSL.g:1195:3: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:1196:4: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:1196:4: ( ruleStringOrId ) + // InternalGeneratorDSL.g:1197:5: ruleStringOrId + { + + if (current==null) { + current = createModelElement(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleRule()); + } + + + newCompositeNode(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceCrossReference_2_0()); + + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleParametrizedFunctionDefinitionReferenceRule" + + + // $ANTLR start "entryRuleInstanceRule" + // InternalGeneratorDSL.g:1215:1: entryRuleInstanceRule returns [EObject current=null] : iv_ruleInstanceRule= ruleInstanceRule EOF ; + public final EObject entryRuleInstanceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleInstanceRule = null; + + + try { + // InternalGeneratorDSL.g:1215:53: (iv_ruleInstanceRule= ruleInstanceRule EOF ) + // InternalGeneratorDSL.g:1216:2: iv_ruleInstanceRule= ruleInstanceRule EOF + { + newCompositeNode(grammarAccess.getInstanceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleInstanceRule=ruleInstanceRule(); + + state._fsp--; + + current =iv_ruleInstanceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleInstanceRule" + + + // $ANTLR start "ruleInstanceRule" + // InternalGeneratorDSL.g:1222:1: ruleInstanceRule returns [EObject current=null] : ( ( ( ruleStringOrId ) ) (otherlv_1= '{' ( (lv_attributes_2_0= ruleAttributeRule ) )* otherlv_3= '}' )? ) ; + public final EObject ruleInstanceRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_3=null; + EObject lv_attributes_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1228:2: ( ( ( ( ruleStringOrId ) ) (otherlv_1= '{' ( (lv_attributes_2_0= ruleAttributeRule ) )* otherlv_3= '}' )? ) ) + // InternalGeneratorDSL.g:1229:2: ( ( ( ruleStringOrId ) ) (otherlv_1= '{' ( (lv_attributes_2_0= ruleAttributeRule ) )* otherlv_3= '}' )? ) + { + // InternalGeneratorDSL.g:1229:2: ( ( ( ruleStringOrId ) ) (otherlv_1= '{' ( (lv_attributes_2_0= ruleAttributeRule ) )* otherlv_3= '}' )? ) + // InternalGeneratorDSL.g:1230:3: ( ( ruleStringOrId ) ) (otherlv_1= '{' ( (lv_attributes_2_0= ruleAttributeRule ) )* otherlv_3= '}' )? + { + // InternalGeneratorDSL.g:1230:3: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:1231:4: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:1231:4: ( ruleStringOrId ) + // InternalGeneratorDSL.g:1232:5: ruleStringOrId + { + + if (current==null) { + current = createModelElement(grammarAccess.getInstanceRuleRule()); + } + + + newCompositeNode(grammarAccess.getInstanceRuleAccess().getNameTypeDefinitionCrossReference_0_0()); + + pushFollow(FOLLOW_29); + ruleStringOrId(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:1246:3: (otherlv_1= '{' ( (lv_attributes_2_0= ruleAttributeRule ) )* otherlv_3= '}' )? + int alt16=2; + int LA16_0 = input.LA(1); + + if ( (LA16_0==34) ) { + alt16=1; + } + switch (alt16) { + case 1 : + // InternalGeneratorDSL.g:1247:4: otherlv_1= '{' ( (lv_attributes_2_0= ruleAttributeRule ) )* otherlv_3= '}' + { + otherlv_1=(Token)match(input,34,FOLLOW_30); + + newLeafNode(otherlv_1, grammarAccess.getInstanceRuleAccess().getLeftCurlyBracketKeyword_1_0()); + + // InternalGeneratorDSL.g:1251:4: ( (lv_attributes_2_0= ruleAttributeRule ) )* + loop15: + do { + int alt15=2; + int LA15_0 = input.LA(1); + + if ( ((LA15_0>=RULE_STRING && LA15_0<=RULE_ID)||LA15_0==RULE_QUOTED_ID) ) { + alt15=1; + } + + + switch (alt15) { + case 1 : + // InternalGeneratorDSL.g:1252:5: (lv_attributes_2_0= ruleAttributeRule ) + { + // InternalGeneratorDSL.g:1252:5: (lv_attributes_2_0= ruleAttributeRule ) + // InternalGeneratorDSL.g:1253:6: lv_attributes_2_0= ruleAttributeRule + { + + newCompositeNode(grammarAccess.getInstanceRuleAccess().getAttributesAttributeRuleParserRuleCall_1_1_0()); + + pushFollow(FOLLOW_30); + lv_attributes_2_0=ruleAttributeRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getInstanceRuleRule()); + } + add( + current, + "attributes", + lv_attributes_2_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.AttributeRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop15; + } + } while (true); + + otherlv_3=(Token)match(input,35,FOLLOW_2); + + newLeafNode(otherlv_3, grammarAccess.getInstanceRuleAccess().getRightCurlyBracketKeyword_1_2()); + + + } + break; + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleInstanceRule" + + + // $ANTLR start "entryRuleAttributeRule" + // InternalGeneratorDSL.g:1279:1: entryRuleAttributeRule returns [EObject current=null] : iv_ruleAttributeRule= ruleAttributeRule EOF ; + public final EObject entryRuleAttributeRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleAttributeRule = null; + + + try { + // InternalGeneratorDSL.g:1279:54: (iv_ruleAttributeRule= ruleAttributeRule EOF ) + // InternalGeneratorDSL.g:1280:2: iv_ruleAttributeRule= ruleAttributeRule EOF + { + newCompositeNode(grammarAccess.getAttributeRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleAttributeRule=ruleAttributeRule(); + + state._fsp--; + + current =iv_ruleAttributeRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleAttributeRule" + + + // $ANTLR start "ruleAttributeRule" + // InternalGeneratorDSL.g:1286:1: ruleAttributeRule returns [EObject current=null] : ( ( (lv_name_0_0= ruleNameOrMiscRule ) ) otherlv_1= ':=' ( (lv_value_2_0= ruleValueRule ) ) otherlv_3= ';' ) ; + public final EObject ruleAttributeRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_3=null; + EObject lv_name_0_0 = null; + + EObject lv_value_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1292:2: ( ( ( (lv_name_0_0= ruleNameOrMiscRule ) ) otherlv_1= ':=' ( (lv_value_2_0= ruleValueRule ) ) otherlv_3= ';' ) ) + // InternalGeneratorDSL.g:1293:2: ( ( (lv_name_0_0= ruleNameOrMiscRule ) ) otherlv_1= ':=' ( (lv_value_2_0= ruleValueRule ) ) otherlv_3= ';' ) + { + // InternalGeneratorDSL.g:1293:2: ( ( (lv_name_0_0= ruleNameOrMiscRule ) ) otherlv_1= ':=' ( (lv_value_2_0= ruleValueRule ) ) otherlv_3= ';' ) + // InternalGeneratorDSL.g:1294:3: ( (lv_name_0_0= ruleNameOrMiscRule ) ) otherlv_1= ':=' ( (lv_value_2_0= ruleValueRule ) ) otherlv_3= ';' + { + // InternalGeneratorDSL.g:1294:3: ( (lv_name_0_0= ruleNameOrMiscRule ) ) + // InternalGeneratorDSL.g:1295:4: (lv_name_0_0= ruleNameOrMiscRule ) + { + // InternalGeneratorDSL.g:1295:4: (lv_name_0_0= ruleNameOrMiscRule ) + // InternalGeneratorDSL.g:1296:5: lv_name_0_0= ruleNameOrMiscRule + { + + newCompositeNode(grammarAccess.getAttributeRuleAccess().getNameNameOrMiscRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_31); + lv_name_0_0=ruleNameOrMiscRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAttributeRuleRule()); + } + set( + current, + "name", + lv_name_0_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.NameOrMiscRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_1=(Token)match(input,36,FOLLOW_32); + + newLeafNode(otherlv_1, grammarAccess.getAttributeRuleAccess().getColonEqualsSignKeyword_1()); + + // InternalGeneratorDSL.g:1317:3: ( (lv_value_2_0= ruleValueRule ) ) + // InternalGeneratorDSL.g:1318:4: (lv_value_2_0= ruleValueRule ) + { + // InternalGeneratorDSL.g:1318:4: (lv_value_2_0= ruleValueRule ) + // InternalGeneratorDSL.g:1319:5: lv_value_2_0= ruleValueRule + { + + newCompositeNode(grammarAccess.getAttributeRuleAccess().getValueValueRuleParserRuleCall_2_0()); + + pushFollow(FOLLOW_8); + lv_value_2_0=ruleValueRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAttributeRuleRule()); + } + set( + current, + "value", + lv_value_2_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.ValueRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_3=(Token)match(input,13,FOLLOW_2); + + newLeafNode(otherlv_3, grammarAccess.getAttributeRuleAccess().getSemicolonKeyword_3()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleAttributeRule" + + + // $ANTLR start "entryRuleNameOrMiscRule" + // InternalGeneratorDSL.g:1344:1: entryRuleNameOrMiscRule returns [EObject current=null] : iv_ruleNameOrMiscRule= ruleNameOrMiscRule EOF ; + public final EObject entryRuleNameOrMiscRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleNameOrMiscRule = null; + + + try { + // InternalGeneratorDSL.g:1344:55: (iv_ruleNameOrMiscRule= ruleNameOrMiscRule EOF ) + // InternalGeneratorDSL.g:1345:2: iv_ruleNameOrMiscRule= ruleNameOrMiscRule EOF + { + newCompositeNode(grammarAccess.getNameOrMiscRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleNameOrMiscRule=ruleNameOrMiscRule(); + + state._fsp--; + + current =iv_ruleNameOrMiscRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleNameOrMiscRule" + + + // $ANTLR start "ruleNameOrMiscRule" + // InternalGeneratorDSL.g:1351:1: ruleNameOrMiscRule returns [EObject current=null] : (this_NameRule_0= ruleNameRule | this_MiscRule_1= ruleMiscRule ) ; + public final EObject ruleNameOrMiscRule() throws RecognitionException { + EObject current = null; + + EObject this_NameRule_0 = null; + + EObject this_MiscRule_1 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1357:2: ( (this_NameRule_0= ruleNameRule | this_MiscRule_1= ruleMiscRule ) ) + // InternalGeneratorDSL.g:1358:2: (this_NameRule_0= ruleNameRule | this_MiscRule_1= ruleMiscRule ) + { + // InternalGeneratorDSL.g:1358:2: (this_NameRule_0= ruleNameRule | this_MiscRule_1= ruleMiscRule ) + int alt17=2; + int LA17_0 = input.LA(1); + + if ( (LA17_0==RULE_ID||LA17_0==RULE_QUOTED_ID) ) { + alt17=1; + } + else if ( (LA17_0==RULE_STRING) ) { + alt17=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 17, 0, input); + + throw nvae; + } + switch (alt17) { + case 1 : + // InternalGeneratorDSL.g:1359:3: this_NameRule_0= ruleNameRule + { + + newCompositeNode(grammarAccess.getNameOrMiscRuleAccess().getNameRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_NameRule_0=ruleNameRule(); + + state._fsp--; + + + current = this_NameRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1368:3: this_MiscRule_1= ruleMiscRule + { + + newCompositeNode(grammarAccess.getNameOrMiscRuleAccess().getMiscRuleParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_MiscRule_1=ruleMiscRule(); + + state._fsp--; + + + current = this_MiscRule_1; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleNameOrMiscRule" + + + // $ANTLR start "entryRuleNameRule" + // InternalGeneratorDSL.g:1380:1: entryRuleNameRule returns [EObject current=null] : iv_ruleNameRule= ruleNameRule EOF ; + public final EObject entryRuleNameRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleNameRule = null; + + + try { + // InternalGeneratorDSL.g:1380:49: (iv_ruleNameRule= ruleNameRule EOF ) + // InternalGeneratorDSL.g:1381:2: iv_ruleNameRule= ruleNameRule EOF + { + newCompositeNode(grammarAccess.getNameRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleNameRule=ruleNameRule(); + + state._fsp--; + + current =iv_ruleNameRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleNameRule" + + + // $ANTLR start "ruleNameRule" + // InternalGeneratorDSL.g:1387:1: ruleNameRule returns [EObject current=null] : ( ( ruleStringOrId ) ) ; + public final EObject ruleNameRule() throws RecognitionException { + EObject current = null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1393:2: ( ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:1394:2: ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:1394:2: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:1395:3: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:1395:3: ( ruleStringOrId ) + // InternalGeneratorDSL.g:1396:4: ruleStringOrId + { + + if (current==null) { + current = createModelElement(grammarAccess.getNameRuleRule()); + } + + + newCompositeNode(grammarAccess.getNameRuleAccess().getNameNamedAttributeDefinitionCrossReference_0()); + + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleNameRule" + + + // $ANTLR start "entryRuleMiscRule" + // InternalGeneratorDSL.g:1413:1: entryRuleMiscRule returns [EObject current=null] : iv_ruleMiscRule= ruleMiscRule EOF ; + public final EObject entryRuleMiscRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleMiscRule = null; + + + try { + // InternalGeneratorDSL.g:1413:49: (iv_ruleMiscRule= ruleMiscRule EOF ) + // InternalGeneratorDSL.g:1414:2: iv_ruleMiscRule= ruleMiscRule EOF + { + newCompositeNode(grammarAccess.getMiscRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleMiscRule=ruleMiscRule(); + + state._fsp--; + + current =iv_ruleMiscRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleMiscRule" + + + // $ANTLR start "ruleMiscRule" + // InternalGeneratorDSL.g:1420:1: ruleMiscRule returns [EObject current=null] : ( (lv_name_0_0= RULE_STRING ) ) ; + public final EObject ruleMiscRule() throws RecognitionException { + EObject current = null; + + Token lv_name_0_0=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1426:2: ( ( (lv_name_0_0= RULE_STRING ) ) ) + // InternalGeneratorDSL.g:1427:2: ( (lv_name_0_0= RULE_STRING ) ) + { + // InternalGeneratorDSL.g:1427:2: ( (lv_name_0_0= RULE_STRING ) ) + // InternalGeneratorDSL.g:1428:3: (lv_name_0_0= RULE_STRING ) + { + // InternalGeneratorDSL.g:1428:3: (lv_name_0_0= RULE_STRING ) + // InternalGeneratorDSL.g:1429:4: lv_name_0_0= RULE_STRING + { + lv_name_0_0=(Token)match(input,RULE_STRING,FOLLOW_2); + + newLeafNode(lv_name_0_0, grammarAccess.getMiscRuleAccess().getNameSTRINGTerminalRuleCall_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getMiscRuleRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.STRING"); + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMiscRule" + + + // $ANTLR start "entryRuleValueRule" + // InternalGeneratorDSL.g:1448:1: entryRuleValueRule returns [EObject current=null] : iv_ruleValueRule= ruleValueRule EOF ; + public final EObject entryRuleValueRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleValueRule = null; + + + try { + // InternalGeneratorDSL.g:1448:50: (iv_ruleValueRule= ruleValueRule EOF ) + // InternalGeneratorDSL.g:1449:2: iv_ruleValueRule= ruleValueRule EOF + { + newCompositeNode(grammarAccess.getValueRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleValueRule=ruleValueRule(); + + state._fsp--; + + current =iv_ruleValueRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleValueRule" + + + // $ANTLR start "ruleValueRule" + // InternalGeneratorDSL.g:1455:1: ruleValueRule returns [EObject current=null] : (this_ArrayRule_0= ruleArrayRule | this_DataReferenceRule_1= ruleDataReferenceRule | this_InstanceRule_2= ruleInstanceRule | this_LiteralValueRule_3= ruleLiteralValueRule ) ; + public final EObject ruleValueRule() throws RecognitionException { + EObject current = null; + + EObject this_ArrayRule_0 = null; + + EObject this_DataReferenceRule_1 = null; + + EObject this_InstanceRule_2 = null; + + EObject this_LiteralValueRule_3 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1461:2: ( (this_ArrayRule_0= ruleArrayRule | this_DataReferenceRule_1= ruleDataReferenceRule | this_InstanceRule_2= ruleInstanceRule | this_LiteralValueRule_3= ruleLiteralValueRule ) ) + // InternalGeneratorDSL.g:1462:2: (this_ArrayRule_0= ruleArrayRule | this_DataReferenceRule_1= ruleDataReferenceRule | this_InstanceRule_2= ruleInstanceRule | this_LiteralValueRule_3= ruleLiteralValueRule ) + { + // InternalGeneratorDSL.g:1462:2: (this_ArrayRule_0= ruleArrayRule | this_DataReferenceRule_1= ruleDataReferenceRule | this_InstanceRule_2= ruleInstanceRule | this_LiteralValueRule_3= ruleLiteralValueRule ) + int alt18=4; + switch ( input.LA(1) ) { + case 21: + { + alt18=1; + } + break; + case 37: + { + alt18=2; + } + break; + case RULE_ID: + case RULE_QUOTED_ID: + { + alt18=3; + } + break; + case RULE_STRING: + case RULE_INT: + case 47: + case 48: + { + alt18=4; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 18, 0, input); + + throw nvae; + } + + switch (alt18) { + case 1 : + // InternalGeneratorDSL.g:1463:3: this_ArrayRule_0= ruleArrayRule + { + + newCompositeNode(grammarAccess.getValueRuleAccess().getArrayRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_ArrayRule_0=ruleArrayRule(); + + state._fsp--; + + + current = this_ArrayRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:1472:3: this_DataReferenceRule_1= ruleDataReferenceRule + { + + newCompositeNode(grammarAccess.getValueRuleAccess().getDataReferenceRuleParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_DataReferenceRule_1=ruleDataReferenceRule(); + + state._fsp--; + + + current = this_DataReferenceRule_1; + afterParserOrEnumRuleCall(); + + + } + break; + case 3 : + // InternalGeneratorDSL.g:1481:3: this_InstanceRule_2= ruleInstanceRule + { + + newCompositeNode(grammarAccess.getValueRuleAccess().getInstanceRuleParserRuleCall_2()); + + pushFollow(FOLLOW_2); + this_InstanceRule_2=ruleInstanceRule(); + + state._fsp--; + + + current = this_InstanceRule_2; + afterParserOrEnumRuleCall(); + + + } + break; + case 4 : + // InternalGeneratorDSL.g:1490:3: this_LiteralValueRule_3= ruleLiteralValueRule + { + + newCompositeNode(grammarAccess.getValueRuleAccess().getLiteralValueRuleParserRuleCall_3()); + + pushFollow(FOLLOW_2); + this_LiteralValueRule_3=ruleLiteralValueRule(); + + state._fsp--; + + + current = this_LiteralValueRule_3; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleValueRule" + + + // $ANTLR start "entryRuleArrayRule" + // InternalGeneratorDSL.g:1502:1: entryRuleArrayRule returns [EObject current=null] : iv_ruleArrayRule= ruleArrayRule EOF ; + public final EObject entryRuleArrayRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleArrayRule = null; + + + try { + // InternalGeneratorDSL.g:1502:50: (iv_ruleArrayRule= ruleArrayRule EOF ) + // InternalGeneratorDSL.g:1503:2: iv_ruleArrayRule= ruleArrayRule EOF + { + newCompositeNode(grammarAccess.getArrayRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleArrayRule=ruleArrayRule(); + + state._fsp--; + + current =iv_ruleArrayRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleArrayRule" + + + // $ANTLR start "ruleArrayRule" + // InternalGeneratorDSL.g:1509:1: ruleArrayRule returns [EObject current=null] : ( () otherlv_1= '[' ( ( (lv_values_2_0= ruleValueRule ) ) (otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) )* )? otherlv_5= ']' ) ; + public final EObject ruleArrayRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_3=null; + Token otherlv_5=null; + EObject lv_values_2_0 = null; + + EObject lv_values_4_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1515:2: ( ( () otherlv_1= '[' ( ( (lv_values_2_0= ruleValueRule ) ) (otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) )* )? otherlv_5= ']' ) ) + // InternalGeneratorDSL.g:1516:2: ( () otherlv_1= '[' ( ( (lv_values_2_0= ruleValueRule ) ) (otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) )* )? otherlv_5= ']' ) + { + // InternalGeneratorDSL.g:1516:2: ( () otherlv_1= '[' ( ( (lv_values_2_0= ruleValueRule ) ) (otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) )* )? otherlv_5= ']' ) + // InternalGeneratorDSL.g:1517:3: () otherlv_1= '[' ( ( (lv_values_2_0= ruleValueRule ) ) (otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) )* )? otherlv_5= ']' + { + // InternalGeneratorDSL.g:1517:3: () + // InternalGeneratorDSL.g:1518:4: + { + + current = forceCreateModelElement( + grammarAccess.getArrayRuleAccess().getArrayAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,21,FOLLOW_33); + + newLeafNode(otherlv_1, grammarAccess.getArrayRuleAccess().getLeftSquareBracketKeyword_1()); + + // InternalGeneratorDSL.g:1528:3: ( ( (lv_values_2_0= ruleValueRule ) ) (otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) )* )? + int alt20=2; + int LA20_0 = input.LA(1); + + if ( ((LA20_0>=RULE_STRING && LA20_0<=RULE_QUOTED_ID)||LA20_0==21||LA20_0==37||(LA20_0>=47 && LA20_0<=48)) ) { + alt20=1; + } + switch (alt20) { + case 1 : + // InternalGeneratorDSL.g:1529:4: ( (lv_values_2_0= ruleValueRule ) ) (otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) )* + { + // InternalGeneratorDSL.g:1529:4: ( (lv_values_2_0= ruleValueRule ) ) + // InternalGeneratorDSL.g:1530:5: (lv_values_2_0= ruleValueRule ) + { + // InternalGeneratorDSL.g:1530:5: (lv_values_2_0= ruleValueRule ) + // InternalGeneratorDSL.g:1531:6: lv_values_2_0= ruleValueRule + { + + newCompositeNode(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_0_0()); + + pushFollow(FOLLOW_21); + lv_values_2_0=ruleValueRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getArrayRuleRule()); + } + add( + current, + "values", + lv_values_2_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.ValueRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:1548:4: (otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) )* + loop19: + do { + int alt19=2; + int LA19_0 = input.LA(1); + + if ( (LA19_0==25) ) { + alt19=1; + } + + + switch (alt19) { + case 1 : + // InternalGeneratorDSL.g:1549:5: otherlv_3= ',' ( (lv_values_4_0= ruleValueRule ) ) + { + otherlv_3=(Token)match(input,25,FOLLOW_32); + + newLeafNode(otherlv_3, grammarAccess.getArrayRuleAccess().getCommaKeyword_2_1_0()); + + // InternalGeneratorDSL.g:1553:5: ( (lv_values_4_0= ruleValueRule ) ) + // InternalGeneratorDSL.g:1554:6: (lv_values_4_0= ruleValueRule ) + { + // InternalGeneratorDSL.g:1554:6: (lv_values_4_0= ruleValueRule ) + // InternalGeneratorDSL.g:1555:7: lv_values_4_0= ruleValueRule + { + + newCompositeNode(grammarAccess.getArrayRuleAccess().getValuesValueRuleParserRuleCall_2_1_1_0()); + + pushFollow(FOLLOW_21); + lv_values_4_0=ruleValueRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getArrayRuleRule()); + } + add( + current, + "values", + lv_values_4_0, + "de.evoal.languages.model.instance.dsl.InstanceLanguage.ValueRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop19; + } + } while (true); + + + } + break; + + } + + otherlv_5=(Token)match(input,23,FOLLOW_2); + + newLeafNode(otherlv_5, grammarAccess.getArrayRuleAccess().getRightSquareBracketKeyword_3()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleArrayRule" + + + // $ANTLR start "entryRuleLiteralValueRule" + // InternalGeneratorDSL.g:1582:1: entryRuleLiteralValueRule returns [EObject current=null] : iv_ruleLiteralValueRule= ruleLiteralValueRule EOF ; + public final EObject entryRuleLiteralValueRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleLiteralValueRule = null; + + + try { + // InternalGeneratorDSL.g:1582:57: (iv_ruleLiteralValueRule= ruleLiteralValueRule EOF ) + // InternalGeneratorDSL.g:1583:2: iv_ruleLiteralValueRule= ruleLiteralValueRule EOF + { + newCompositeNode(grammarAccess.getLiteralValueRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleLiteralValueRule=ruleLiteralValueRule(); + + state._fsp--; + + current =iv_ruleLiteralValueRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleLiteralValueRule" + + + // $ANTLR start "ruleLiteralValueRule" + // InternalGeneratorDSL.g:1589:1: ruleLiteralValueRule returns [EObject current=null] : ( (lv_literal_0_0= ruleLiteralRule ) ) ; + public final EObject ruleLiteralValueRule() throws RecognitionException { + EObject current = null; + + EObject lv_literal_0_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1595:2: ( ( (lv_literal_0_0= ruleLiteralRule ) ) ) + // InternalGeneratorDSL.g:1596:2: ( (lv_literal_0_0= ruleLiteralRule ) ) + { + // InternalGeneratorDSL.g:1596:2: ( (lv_literal_0_0= ruleLiteralRule ) ) + // InternalGeneratorDSL.g:1597:3: (lv_literal_0_0= ruleLiteralRule ) + { + // InternalGeneratorDSL.g:1597:3: (lv_literal_0_0= ruleLiteralRule ) + // InternalGeneratorDSL.g:1598:4: lv_literal_0_0= ruleLiteralRule + { + + newCompositeNode(grammarAccess.getLiteralValueRuleAccess().getLiteralLiteralRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + lv_literal_0_0=ruleLiteralRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getLiteralValueRuleRule()); + } + set( + current, + "literal", + lv_literal_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.LiteralRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleLiteralValueRule" + + + // $ANTLR start "entryRuleDataReferenceRule" + // InternalGeneratorDSL.g:1618:1: entryRuleDataReferenceRule returns [EObject current=null] : iv_ruleDataReferenceRule= ruleDataReferenceRule EOF ; + public final EObject entryRuleDataReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleDataReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:1618:58: (iv_ruleDataReferenceRule= ruleDataReferenceRule EOF ) + // InternalGeneratorDSL.g:1619:2: iv_ruleDataReferenceRule= ruleDataReferenceRule EOF + { + newCompositeNode(grammarAccess.getDataReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleDataReferenceRule=ruleDataReferenceRule(); + + state._fsp--; + + current =iv_ruleDataReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleDataReferenceRule" + + + // $ANTLR start "ruleDataReferenceRule" + // InternalGeneratorDSL.g:1625:1: ruleDataReferenceRule returns [EObject current=null] : ( () otherlv_1= 'data' ( ( ruleStringOrId ) ) ) ; + public final EObject ruleDataReferenceRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1631:2: ( ( () otherlv_1= 'data' ( ( ruleStringOrId ) ) ) ) + // InternalGeneratorDSL.g:1632:2: ( () otherlv_1= 'data' ( ( ruleStringOrId ) ) ) + { + // InternalGeneratorDSL.g:1632:2: ( () otherlv_1= 'data' ( ( ruleStringOrId ) ) ) + // InternalGeneratorDSL.g:1633:3: () otherlv_1= 'data' ( ( ruleStringOrId ) ) + { + // InternalGeneratorDSL.g:1633:3: () + // InternalGeneratorDSL.g:1634:4: + { + + current = forceCreateModelElement( + grammarAccess.getDataReferenceRuleAccess().getDataReferenceAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,37,FOLLOW_9); + + newLeafNode(otherlv_1, grammarAccess.getDataReferenceRuleAccess().getDataKeyword_1()); + + // InternalGeneratorDSL.g:1644:3: ( ( ruleStringOrId ) ) + // InternalGeneratorDSL.g:1645:4: ( ruleStringOrId ) + { + // InternalGeneratorDSL.g:1645:4: ( ruleStringOrId ) + // InternalGeneratorDSL.g:1646:5: ruleStringOrId + { + + if (current==null) { + current = createModelElement(grammarAccess.getDataReferenceRuleRule()); + } + + + newCompositeNode(grammarAccess.getDataReferenceRuleAccess().getDefinitionDataDescriptionCrossReference_2_0()); + + pushFollow(FOLLOW_2); + ruleStringOrId(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleDataReferenceRule" + + + // $ANTLR start "entryRuleExpressionRule" + // InternalGeneratorDSL.g:1664:1: entryRuleExpressionRule returns [EObject current=null] : iv_ruleExpressionRule= ruleExpressionRule EOF ; + public final EObject entryRuleExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:1664:55: (iv_ruleExpressionRule= ruleExpressionRule EOF ) + // InternalGeneratorDSL.g:1665:2: iv_ruleExpressionRule= ruleExpressionRule EOF + { + newCompositeNode(grammarAccess.getExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleExpressionRule=ruleExpressionRule(); + + state._fsp--; + + current =iv_ruleExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleExpressionRule" + + + // $ANTLR start "ruleExpressionRule" + // InternalGeneratorDSL.g:1671:1: ruleExpressionRule returns [EObject current=null] : this_OrExpressionRule_0= ruleOrExpressionRule ; + public final EObject ruleExpressionRule() throws RecognitionException { + EObject current = null; + + EObject this_OrExpressionRule_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1677:2: (this_OrExpressionRule_0= ruleOrExpressionRule ) + // InternalGeneratorDSL.g:1678:2: this_OrExpressionRule_0= ruleOrExpressionRule + { + + newCompositeNode(grammarAccess.getExpressionRuleAccess().getOrExpressionRuleParserRuleCall()); + + pushFollow(FOLLOW_2); + this_OrExpressionRule_0=ruleOrExpressionRule(); + + state._fsp--; + + + current = this_OrExpressionRule_0; + afterParserOrEnumRuleCall(); + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleExpressionRule" + + + // $ANTLR start "entryRuleOrExpressionRule" + // InternalGeneratorDSL.g:1689:1: entryRuleOrExpressionRule returns [EObject current=null] : iv_ruleOrExpressionRule= ruleOrExpressionRule EOF ; + public final EObject entryRuleOrExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleOrExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:1689:57: (iv_ruleOrExpressionRule= ruleOrExpressionRule EOF ) + // InternalGeneratorDSL.g:1690:2: iv_ruleOrExpressionRule= ruleOrExpressionRule EOF + { + newCompositeNode(grammarAccess.getOrExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleOrExpressionRule=ruleOrExpressionRule(); + + state._fsp--; + + current =iv_ruleOrExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleOrExpressionRule" + + + // $ANTLR start "ruleOrExpressionRule" + // InternalGeneratorDSL.g:1696:1: ruleOrExpressionRule returns [EObject current=null] : ( ( (lv_subExpressions_0_0= ruleXorExpressionRule ) ) (otherlv_1= 'OR' ( (lv_subExpressions_2_0= ruleXorExpressionRule ) ) )* ) ; + public final EObject ruleOrExpressionRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + EObject lv_subExpressions_0_0 = null; + + EObject lv_subExpressions_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1702:2: ( ( ( (lv_subExpressions_0_0= ruleXorExpressionRule ) ) (otherlv_1= 'OR' ( (lv_subExpressions_2_0= ruleXorExpressionRule ) ) )* ) ) + // InternalGeneratorDSL.g:1703:2: ( ( (lv_subExpressions_0_0= ruleXorExpressionRule ) ) (otherlv_1= 'OR' ( (lv_subExpressions_2_0= ruleXorExpressionRule ) ) )* ) + { + // InternalGeneratorDSL.g:1703:2: ( ( (lv_subExpressions_0_0= ruleXorExpressionRule ) ) (otherlv_1= 'OR' ( (lv_subExpressions_2_0= ruleXorExpressionRule ) ) )* ) + // InternalGeneratorDSL.g:1704:3: ( (lv_subExpressions_0_0= ruleXorExpressionRule ) ) (otherlv_1= 'OR' ( (lv_subExpressions_2_0= ruleXorExpressionRule ) ) )* + { + // InternalGeneratorDSL.g:1704:3: ( (lv_subExpressions_0_0= ruleXorExpressionRule ) ) + // InternalGeneratorDSL.g:1705:4: (lv_subExpressions_0_0= ruleXorExpressionRule ) + { + // InternalGeneratorDSL.g:1705:4: (lv_subExpressions_0_0= ruleXorExpressionRule ) + // InternalGeneratorDSL.g:1706:5: lv_subExpressions_0_0= ruleXorExpressionRule + { + + newCompositeNode(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_34); + lv_subExpressions_0_0=ruleXorExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getOrExpressionRuleRule()); + } + add( + current, + "subExpressions", + lv_subExpressions_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.XorExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:1723:3: (otherlv_1= 'OR' ( (lv_subExpressions_2_0= ruleXorExpressionRule ) ) )* + loop21: + do { + int alt21=2; + int LA21_0 = input.LA(1); + + if ( (LA21_0==38) ) { + alt21=1; + } + + + switch (alt21) { + case 1 : + // InternalGeneratorDSL.g:1724:4: otherlv_1= 'OR' ( (lv_subExpressions_2_0= ruleXorExpressionRule ) ) + { + otherlv_1=(Token)match(input,38,FOLLOW_35); + + newLeafNode(otherlv_1, grammarAccess.getOrExpressionRuleAccess().getORKeyword_1_0()); + + // InternalGeneratorDSL.g:1728:4: ( (lv_subExpressions_2_0= ruleXorExpressionRule ) ) + // InternalGeneratorDSL.g:1729:5: (lv_subExpressions_2_0= ruleXorExpressionRule ) + { + // InternalGeneratorDSL.g:1729:5: (lv_subExpressions_2_0= ruleXorExpressionRule ) + // InternalGeneratorDSL.g:1730:6: lv_subExpressions_2_0= ruleXorExpressionRule + { + + newCompositeNode(grammarAccess.getOrExpressionRuleAccess().getSubExpressionsXorExpressionRuleParserRuleCall_1_1_0()); + + pushFollow(FOLLOW_34); + lv_subExpressions_2_0=ruleXorExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getOrExpressionRuleRule()); + } + add( + current, + "subExpressions", + lv_subExpressions_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.XorExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop21; + } + } while (true); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleOrExpressionRule" + + + // $ANTLR start "entryRuleXorExpressionRule" + // InternalGeneratorDSL.g:1752:1: entryRuleXorExpressionRule returns [EObject current=null] : iv_ruleXorExpressionRule= ruleXorExpressionRule EOF ; + public final EObject entryRuleXorExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleXorExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:1752:58: (iv_ruleXorExpressionRule= ruleXorExpressionRule EOF ) + // InternalGeneratorDSL.g:1753:2: iv_ruleXorExpressionRule= ruleXorExpressionRule EOF + { + newCompositeNode(grammarAccess.getXorExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleXorExpressionRule=ruleXorExpressionRule(); + + state._fsp--; + + current =iv_ruleXorExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleXorExpressionRule" + + + // $ANTLR start "ruleXorExpressionRule" + // InternalGeneratorDSL.g:1759:1: ruleXorExpressionRule returns [EObject current=null] : ( ( (lv_subExpressions_0_0= ruleAndExpressionRule ) ) (otherlv_1= 'XOR' ( (lv_subExpressions_2_0= ruleAndExpressionRule ) ) )* ) ; + public final EObject ruleXorExpressionRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + EObject lv_subExpressions_0_0 = null; + + EObject lv_subExpressions_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1765:2: ( ( ( (lv_subExpressions_0_0= ruleAndExpressionRule ) ) (otherlv_1= 'XOR' ( (lv_subExpressions_2_0= ruleAndExpressionRule ) ) )* ) ) + // InternalGeneratorDSL.g:1766:2: ( ( (lv_subExpressions_0_0= ruleAndExpressionRule ) ) (otherlv_1= 'XOR' ( (lv_subExpressions_2_0= ruleAndExpressionRule ) ) )* ) + { + // InternalGeneratorDSL.g:1766:2: ( ( (lv_subExpressions_0_0= ruleAndExpressionRule ) ) (otherlv_1= 'XOR' ( (lv_subExpressions_2_0= ruleAndExpressionRule ) ) )* ) + // InternalGeneratorDSL.g:1767:3: ( (lv_subExpressions_0_0= ruleAndExpressionRule ) ) (otherlv_1= 'XOR' ( (lv_subExpressions_2_0= ruleAndExpressionRule ) ) )* + { + // InternalGeneratorDSL.g:1767:3: ( (lv_subExpressions_0_0= ruleAndExpressionRule ) ) + // InternalGeneratorDSL.g:1768:4: (lv_subExpressions_0_0= ruleAndExpressionRule ) + { + // InternalGeneratorDSL.g:1768:4: (lv_subExpressions_0_0= ruleAndExpressionRule ) + // InternalGeneratorDSL.g:1769:5: lv_subExpressions_0_0= ruleAndExpressionRule + { + + newCompositeNode(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_36); + lv_subExpressions_0_0=ruleAndExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getXorExpressionRuleRule()); + } + add( + current, + "subExpressions", + lv_subExpressions_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AndExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:1786:3: (otherlv_1= 'XOR' ( (lv_subExpressions_2_0= ruleAndExpressionRule ) ) )* + loop22: + do { + int alt22=2; + int LA22_0 = input.LA(1); + + if ( (LA22_0==39) ) { + alt22=1; + } + + + switch (alt22) { + case 1 : + // InternalGeneratorDSL.g:1787:4: otherlv_1= 'XOR' ( (lv_subExpressions_2_0= ruleAndExpressionRule ) ) + { + otherlv_1=(Token)match(input,39,FOLLOW_35); + + newLeafNode(otherlv_1, grammarAccess.getXorExpressionRuleAccess().getXORKeyword_1_0()); + + // InternalGeneratorDSL.g:1791:4: ( (lv_subExpressions_2_0= ruleAndExpressionRule ) ) + // InternalGeneratorDSL.g:1792:5: (lv_subExpressions_2_0= ruleAndExpressionRule ) + { + // InternalGeneratorDSL.g:1792:5: (lv_subExpressions_2_0= ruleAndExpressionRule ) + // InternalGeneratorDSL.g:1793:6: lv_subExpressions_2_0= ruleAndExpressionRule + { + + newCompositeNode(grammarAccess.getXorExpressionRuleAccess().getSubExpressionsAndExpressionRuleParserRuleCall_1_1_0()); + + pushFollow(FOLLOW_36); + lv_subExpressions_2_0=ruleAndExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getXorExpressionRuleRule()); + } + add( + current, + "subExpressions", + lv_subExpressions_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AndExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop22; + } + } while (true); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleXorExpressionRule" + + + // $ANTLR start "entryRuleAndExpressionRule" + // InternalGeneratorDSL.g:1815:1: entryRuleAndExpressionRule returns [EObject current=null] : iv_ruleAndExpressionRule= ruleAndExpressionRule EOF ; + public final EObject entryRuleAndExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleAndExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:1815:58: (iv_ruleAndExpressionRule= ruleAndExpressionRule EOF ) + // InternalGeneratorDSL.g:1816:2: iv_ruleAndExpressionRule= ruleAndExpressionRule EOF + { + newCompositeNode(grammarAccess.getAndExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleAndExpressionRule=ruleAndExpressionRule(); + + state._fsp--; + + current =iv_ruleAndExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleAndExpressionRule" + + + // $ANTLR start "ruleAndExpressionRule" + // InternalGeneratorDSL.g:1822:1: ruleAndExpressionRule returns [EObject current=null] : ( ( (lv_subExpressions_0_0= ruleNotExpressionRule ) ) (otherlv_1= 'AND' ( (lv_subExpressions_2_0= ruleNotExpressionRule ) ) )* ) ; + public final EObject ruleAndExpressionRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + EObject lv_subExpressions_0_0 = null; + + EObject lv_subExpressions_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1828:2: ( ( ( (lv_subExpressions_0_0= ruleNotExpressionRule ) ) (otherlv_1= 'AND' ( (lv_subExpressions_2_0= ruleNotExpressionRule ) ) )* ) ) + // InternalGeneratorDSL.g:1829:2: ( ( (lv_subExpressions_0_0= ruleNotExpressionRule ) ) (otherlv_1= 'AND' ( (lv_subExpressions_2_0= ruleNotExpressionRule ) ) )* ) + { + // InternalGeneratorDSL.g:1829:2: ( ( (lv_subExpressions_0_0= ruleNotExpressionRule ) ) (otherlv_1= 'AND' ( (lv_subExpressions_2_0= ruleNotExpressionRule ) ) )* ) + // InternalGeneratorDSL.g:1830:3: ( (lv_subExpressions_0_0= ruleNotExpressionRule ) ) (otherlv_1= 'AND' ( (lv_subExpressions_2_0= ruleNotExpressionRule ) ) )* + { + // InternalGeneratorDSL.g:1830:3: ( (lv_subExpressions_0_0= ruleNotExpressionRule ) ) + // InternalGeneratorDSL.g:1831:4: (lv_subExpressions_0_0= ruleNotExpressionRule ) + { + // InternalGeneratorDSL.g:1831:4: (lv_subExpressions_0_0= ruleNotExpressionRule ) + // InternalGeneratorDSL.g:1832:5: lv_subExpressions_0_0= ruleNotExpressionRule + { + + newCompositeNode(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_37); + lv_subExpressions_0_0=ruleNotExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAndExpressionRuleRule()); + } + add( + current, + "subExpressions", + lv_subExpressions_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.NotExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:1849:3: (otherlv_1= 'AND' ( (lv_subExpressions_2_0= ruleNotExpressionRule ) ) )* + loop23: + do { + int alt23=2; + int LA23_0 = input.LA(1); + + if ( (LA23_0==40) ) { + alt23=1; + } + + + switch (alt23) { + case 1 : + // InternalGeneratorDSL.g:1850:4: otherlv_1= 'AND' ( (lv_subExpressions_2_0= ruleNotExpressionRule ) ) + { + otherlv_1=(Token)match(input,40,FOLLOW_35); + + newLeafNode(otherlv_1, grammarAccess.getAndExpressionRuleAccess().getANDKeyword_1_0()); + + // InternalGeneratorDSL.g:1854:4: ( (lv_subExpressions_2_0= ruleNotExpressionRule ) ) + // InternalGeneratorDSL.g:1855:5: (lv_subExpressions_2_0= ruleNotExpressionRule ) + { + // InternalGeneratorDSL.g:1855:5: (lv_subExpressions_2_0= ruleNotExpressionRule ) + // InternalGeneratorDSL.g:1856:6: lv_subExpressions_2_0= ruleNotExpressionRule + { + + newCompositeNode(grammarAccess.getAndExpressionRuleAccess().getSubExpressionsNotExpressionRuleParserRuleCall_1_1_0()); + + pushFollow(FOLLOW_37); + lv_subExpressions_2_0=ruleNotExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAndExpressionRuleRule()); + } + add( + current, + "subExpressions", + lv_subExpressions_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.NotExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop23; + } + } while (true); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleAndExpressionRule" + + + // $ANTLR start "entryRuleNotExpressionRule" + // InternalGeneratorDSL.g:1878:1: entryRuleNotExpressionRule returns [EObject current=null] : iv_ruleNotExpressionRule= ruleNotExpressionRule EOF ; + public final EObject entryRuleNotExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleNotExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:1878:58: (iv_ruleNotExpressionRule= ruleNotExpressionRule EOF ) + // InternalGeneratorDSL.g:1879:2: iv_ruleNotExpressionRule= ruleNotExpressionRule EOF + { + newCompositeNode(grammarAccess.getNotExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleNotExpressionRule=ruleNotExpressionRule(); + + state._fsp--; + + current =iv_ruleNotExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleNotExpressionRule" + + + // $ANTLR start "ruleNotExpressionRule" + // InternalGeneratorDSL.g:1885:1: ruleNotExpressionRule returns [EObject current=null] : ( ( (lv_negated_0_0= '!' ) )? ( (lv_operand_1_0= ruleComparisonExpressionRule ) ) ) ; + public final EObject ruleNotExpressionRule() throws RecognitionException { + EObject current = null; + + Token lv_negated_0_0=null; + EObject lv_operand_1_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1891:2: ( ( ( (lv_negated_0_0= '!' ) )? ( (lv_operand_1_0= ruleComparisonExpressionRule ) ) ) ) + // InternalGeneratorDSL.g:1892:2: ( ( (lv_negated_0_0= '!' ) )? ( (lv_operand_1_0= ruleComparisonExpressionRule ) ) ) + { + // InternalGeneratorDSL.g:1892:2: ( ( (lv_negated_0_0= '!' ) )? ( (lv_operand_1_0= ruleComparisonExpressionRule ) ) ) + // InternalGeneratorDSL.g:1893:3: ( (lv_negated_0_0= '!' ) )? ( (lv_operand_1_0= ruleComparisonExpressionRule ) ) + { + // InternalGeneratorDSL.g:1893:3: ( (lv_negated_0_0= '!' ) )? + int alt24=2; + int LA24_0 = input.LA(1); + + if ( (LA24_0==41) ) { + alt24=1; + } + switch (alt24) { + case 1 : + // InternalGeneratorDSL.g:1894:4: (lv_negated_0_0= '!' ) + { + // InternalGeneratorDSL.g:1894:4: (lv_negated_0_0= '!' ) + // InternalGeneratorDSL.g:1895:5: lv_negated_0_0= '!' + { + lv_negated_0_0=(Token)match(input,41,FOLLOW_35); + + newLeafNode(lv_negated_0_0, grammarAccess.getNotExpressionRuleAccess().getNegatedExclamationMarkKeyword_0_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getNotExpressionRuleRule()); + } + setWithLastConsumed(current, "negated", lv_negated_0_0 != null, "!"); + + + } + + + } + break; + + } + + // InternalGeneratorDSL.g:1907:3: ( (lv_operand_1_0= ruleComparisonExpressionRule ) ) + // InternalGeneratorDSL.g:1908:4: (lv_operand_1_0= ruleComparisonExpressionRule ) + { + // InternalGeneratorDSL.g:1908:4: (lv_operand_1_0= ruleComparisonExpressionRule ) + // InternalGeneratorDSL.g:1909:5: lv_operand_1_0= ruleComparisonExpressionRule + { + + newCompositeNode(grammarAccess.getNotExpressionRuleAccess().getOperandComparisonExpressionRuleParserRuleCall_1_0()); + + pushFollow(FOLLOW_2); + lv_operand_1_0=ruleComparisonExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getNotExpressionRuleRule()); + } + set( + current, + "operand", + lv_operand_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ComparisonExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleNotExpressionRule" + + + // $ANTLR start "entryRuleComparisonExpressionRule" + // InternalGeneratorDSL.g:1930:1: entryRuleComparisonExpressionRule returns [EObject current=null] : iv_ruleComparisonExpressionRule= ruleComparisonExpressionRule EOF ; + public final EObject entryRuleComparisonExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleComparisonExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:1930:65: (iv_ruleComparisonExpressionRule= ruleComparisonExpressionRule EOF ) + // InternalGeneratorDSL.g:1931:2: iv_ruleComparisonExpressionRule= ruleComparisonExpressionRule EOF + { + newCompositeNode(grammarAccess.getComparisonExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleComparisonExpressionRule=ruleComparisonExpressionRule(); + + state._fsp--; + + current =iv_ruleComparisonExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleComparisonExpressionRule" + + + // $ANTLR start "ruleComparisonExpressionRule" + // InternalGeneratorDSL.g:1937:1: ruleComparisonExpressionRule returns [EObject current=null] : ( ( (lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule ) ) ( (lv_comparison_1_0= rulePartialComparisonExpressionRule ) )* ) ; + public final EObject ruleComparisonExpressionRule() throws RecognitionException { + EObject current = null; + + EObject lv_leftOperand_0_0 = null; + + EObject lv_comparison_1_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:1943:2: ( ( ( (lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule ) ) ( (lv_comparison_1_0= rulePartialComparisonExpressionRule ) )* ) ) + // InternalGeneratorDSL.g:1944:2: ( ( (lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule ) ) ( (lv_comparison_1_0= rulePartialComparisonExpressionRule ) )* ) + { + // InternalGeneratorDSL.g:1944:2: ( ( (lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule ) ) ( (lv_comparison_1_0= rulePartialComparisonExpressionRule ) )* ) + // InternalGeneratorDSL.g:1945:3: ( (lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule ) ) ( (lv_comparison_1_0= rulePartialComparisonExpressionRule ) )* + { + // InternalGeneratorDSL.g:1945:3: ( (lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule ) ) + // InternalGeneratorDSL.g:1946:4: (lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule ) + { + // InternalGeneratorDSL.g:1946:4: (lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule ) + // InternalGeneratorDSL.g:1947:5: lv_leftOperand_0_0= ruleAddOrSubtractExpressionRule + { + + newCompositeNode(grammarAccess.getComparisonExpressionRuleAccess().getLeftOperandAddOrSubtractExpressionRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_38); + lv_leftOperand_0_0=ruleAddOrSubtractExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getComparisonExpressionRuleRule()); + } + set( + current, + "leftOperand", + lv_leftOperand_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AddOrSubtractExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:1964:3: ( (lv_comparison_1_0= rulePartialComparisonExpressionRule ) )* + loop25: + do { + int alt25=2; + int LA25_0 = input.LA(1); + + if ( ((LA25_0>=50 && LA25_0<=55)) ) { + alt25=1; + } + + + switch (alt25) { + case 1 : + // InternalGeneratorDSL.g:1965:4: (lv_comparison_1_0= rulePartialComparisonExpressionRule ) + { + // InternalGeneratorDSL.g:1965:4: (lv_comparison_1_0= rulePartialComparisonExpressionRule ) + // InternalGeneratorDSL.g:1966:5: lv_comparison_1_0= rulePartialComparisonExpressionRule + { + + newCompositeNode(grammarAccess.getComparisonExpressionRuleAccess().getComparisonPartialComparisonExpressionRuleParserRuleCall_1_0()); + + pushFollow(FOLLOW_38); + lv_comparison_1_0=rulePartialComparisonExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getComparisonExpressionRuleRule()); + } + add( + current, + "comparison", + lv_comparison_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.PartialComparisonExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop25; + } + } while (true); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleComparisonExpressionRule" + + + // $ANTLR start "entryRulePartialComparisonExpressionRule" + // InternalGeneratorDSL.g:1987:1: entryRulePartialComparisonExpressionRule returns [EObject current=null] : iv_rulePartialComparisonExpressionRule= rulePartialComparisonExpressionRule EOF ; + public final EObject entryRulePartialComparisonExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_rulePartialComparisonExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:1987:72: (iv_rulePartialComparisonExpressionRule= rulePartialComparisonExpressionRule EOF ) + // InternalGeneratorDSL.g:1988:2: iv_rulePartialComparisonExpressionRule= rulePartialComparisonExpressionRule EOF + { + newCompositeNode(grammarAccess.getPartialComparisonExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_rulePartialComparisonExpressionRule=rulePartialComparisonExpressionRule(); + + state._fsp--; + + current =iv_rulePartialComparisonExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePartialComparisonExpressionRule" + + + // $ANTLR start "rulePartialComparisonExpressionRule" + // InternalGeneratorDSL.g:1994:1: rulePartialComparisonExpressionRule returns [EObject current=null] : ( ( (lv_operator_0_0= ruleComparisonOperatorRule ) ) ( (lv_subExpression_1_0= ruleAddOrSubtractExpressionRule ) ) ) ; + public final EObject rulePartialComparisonExpressionRule() throws RecognitionException { + EObject current = null; + + Enumerator lv_operator_0_0 = null; + + EObject lv_subExpression_1_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2000:2: ( ( ( (lv_operator_0_0= ruleComparisonOperatorRule ) ) ( (lv_subExpression_1_0= ruleAddOrSubtractExpressionRule ) ) ) ) + // InternalGeneratorDSL.g:2001:2: ( ( (lv_operator_0_0= ruleComparisonOperatorRule ) ) ( (lv_subExpression_1_0= ruleAddOrSubtractExpressionRule ) ) ) + { + // InternalGeneratorDSL.g:2001:2: ( ( (lv_operator_0_0= ruleComparisonOperatorRule ) ) ( (lv_subExpression_1_0= ruleAddOrSubtractExpressionRule ) ) ) + // InternalGeneratorDSL.g:2002:3: ( (lv_operator_0_0= ruleComparisonOperatorRule ) ) ( (lv_subExpression_1_0= ruleAddOrSubtractExpressionRule ) ) + { + // InternalGeneratorDSL.g:2002:3: ( (lv_operator_0_0= ruleComparisonOperatorRule ) ) + // InternalGeneratorDSL.g:2003:4: (lv_operator_0_0= ruleComparisonOperatorRule ) + { + // InternalGeneratorDSL.g:2003:4: (lv_operator_0_0= ruleComparisonOperatorRule ) + // InternalGeneratorDSL.g:2004:5: lv_operator_0_0= ruleComparisonOperatorRule + { + + newCompositeNode(grammarAccess.getPartialComparisonExpressionRuleAccess().getOperatorComparisonOperatorRuleEnumRuleCall_0_0()); + + pushFollow(FOLLOW_35); + lv_operator_0_0=ruleComparisonOperatorRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPartialComparisonExpressionRuleRule()); + } + set( + current, + "operator", + lv_operator_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ComparisonOperatorRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:2021:3: ( (lv_subExpression_1_0= ruleAddOrSubtractExpressionRule ) ) + // InternalGeneratorDSL.g:2022:4: (lv_subExpression_1_0= ruleAddOrSubtractExpressionRule ) + { + // InternalGeneratorDSL.g:2022:4: (lv_subExpression_1_0= ruleAddOrSubtractExpressionRule ) + // InternalGeneratorDSL.g:2023:5: lv_subExpression_1_0= ruleAddOrSubtractExpressionRule + { + + newCompositeNode(grammarAccess.getPartialComparisonExpressionRuleAccess().getSubExpressionAddOrSubtractExpressionRuleParserRuleCall_1_0()); + + pushFollow(FOLLOW_2); + lv_subExpression_1_0=ruleAddOrSubtractExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPartialComparisonExpressionRuleRule()); + } + set( + current, + "subExpression", + lv_subExpression_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AddOrSubtractExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePartialComparisonExpressionRule" + + + // $ANTLR start "entryRuleAddOrSubtractExpressionRule" + // InternalGeneratorDSL.g:2044:1: entryRuleAddOrSubtractExpressionRule returns [EObject current=null] : iv_ruleAddOrSubtractExpressionRule= ruleAddOrSubtractExpressionRule EOF ; + public final EObject entryRuleAddOrSubtractExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleAddOrSubtractExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:2044:68: (iv_ruleAddOrSubtractExpressionRule= ruleAddOrSubtractExpressionRule EOF ) + // InternalGeneratorDSL.g:2045:2: iv_ruleAddOrSubtractExpressionRule= ruleAddOrSubtractExpressionRule EOF + { + newCompositeNode(grammarAccess.getAddOrSubtractExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleAddOrSubtractExpressionRule=ruleAddOrSubtractExpressionRule(); + + state._fsp--; + + current =iv_ruleAddOrSubtractExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleAddOrSubtractExpressionRule" + + + // $ANTLR start "ruleAddOrSubtractExpressionRule" + // InternalGeneratorDSL.g:2051:1: ruleAddOrSubtractExpressionRule returns [EObject current=null] : ( ( (lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule ) ) ( ( (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) ) ( (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) ) )* ) ; + public final EObject ruleAddOrSubtractExpressionRule() throws RecognitionException { + EObject current = null; + + EObject lv_leftOperand_0_0 = null; + + Enumerator lv_operators_1_0 = null; + + EObject lv_operands_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2057:2: ( ( ( (lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule ) ) ( ( (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) ) ( (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) ) )* ) ) + // InternalGeneratorDSL.g:2058:2: ( ( (lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule ) ) ( ( (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) ) ( (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) ) )* ) + { + // InternalGeneratorDSL.g:2058:2: ( ( (lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule ) ) ( ( (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) ) ( (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) ) )* ) + // InternalGeneratorDSL.g:2059:3: ( (lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule ) ) ( ( (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) ) ( (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) ) )* + { + // InternalGeneratorDSL.g:2059:3: ( (lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule ) ) + // InternalGeneratorDSL.g:2060:4: (lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule ) + { + // InternalGeneratorDSL.g:2060:4: (lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule ) + // InternalGeneratorDSL.g:2061:5: lv_leftOperand_0_0= ruleMultiplyDivideModuloExpressionRule + { + + newCompositeNode(grammarAccess.getAddOrSubtractExpressionRuleAccess().getLeftOperandMultiplyDivideModuloExpressionRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_39); + lv_leftOperand_0_0=ruleMultiplyDivideModuloExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAddOrSubtractExpressionRuleRule()); + } + set( + current, + "leftOperand", + lv_leftOperand_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.MultiplyDivideModuloExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:2078:3: ( ( (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) ) ( (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) ) )* + loop26: + do { + int alt26=2; + int LA26_0 = input.LA(1); + + if ( ((LA26_0>=56 && LA26_0<=57)) ) { + alt26=1; + } + + + switch (alt26) { + case 1 : + // InternalGeneratorDSL.g:2079:4: ( (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) ) ( (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) ) + { + // InternalGeneratorDSL.g:2079:4: ( (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) ) + // InternalGeneratorDSL.g:2080:5: (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) + { + // InternalGeneratorDSL.g:2080:5: (lv_operators_1_0= ruleAddOrSubtractOperatorRule ) + // InternalGeneratorDSL.g:2081:6: lv_operators_1_0= ruleAddOrSubtractOperatorRule + { + + newCompositeNode(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_1_0_0()); + + pushFollow(FOLLOW_35); + lv_operators_1_0=ruleAddOrSubtractOperatorRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAddOrSubtractExpressionRuleRule()); + } + add( + current, + "operators", + lv_operators_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AddOrSubtractOperatorRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:2098:4: ( (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) ) + // InternalGeneratorDSL.g:2099:5: (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) + { + // InternalGeneratorDSL.g:2099:5: (lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule ) + // InternalGeneratorDSL.g:2100:6: lv_operands_2_0= ruleMultiplyDivideModuloExpressionRule + { + + newCompositeNode(grammarAccess.getAddOrSubtractExpressionRuleAccess().getOperandsMultiplyDivideModuloExpressionRuleParserRuleCall_1_1_0()); + + pushFollow(FOLLOW_39); + lv_operands_2_0=ruleMultiplyDivideModuloExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAddOrSubtractExpressionRuleRule()); + } + add( + current, + "operands", + lv_operands_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.MultiplyDivideModuloExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop26; + } + } while (true); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleAddOrSubtractExpressionRule" + + + // $ANTLR start "entryRuleMultiplyDivideModuloExpressionRule" + // InternalGeneratorDSL.g:2122:1: entryRuleMultiplyDivideModuloExpressionRule returns [EObject current=null] : iv_ruleMultiplyDivideModuloExpressionRule= ruleMultiplyDivideModuloExpressionRule EOF ; + public final EObject entryRuleMultiplyDivideModuloExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleMultiplyDivideModuloExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:2122:75: (iv_ruleMultiplyDivideModuloExpressionRule= ruleMultiplyDivideModuloExpressionRule EOF ) + // InternalGeneratorDSL.g:2123:2: iv_ruleMultiplyDivideModuloExpressionRule= ruleMultiplyDivideModuloExpressionRule EOF + { + newCompositeNode(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleMultiplyDivideModuloExpressionRule=ruleMultiplyDivideModuloExpressionRule(); + + state._fsp--; + + current =iv_ruleMultiplyDivideModuloExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleMultiplyDivideModuloExpressionRule" + + + // $ANTLR start "ruleMultiplyDivideModuloExpressionRule" + // InternalGeneratorDSL.g:2129:1: ruleMultiplyDivideModuloExpressionRule returns [EObject current=null] : ( ( (lv_leftOperand_0_0= rulePowerOfExpressionRule ) ) ( ( (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) ) ( (lv_operands_2_0= rulePowerOfExpressionRule ) ) )* ) ; + public final EObject ruleMultiplyDivideModuloExpressionRule() throws RecognitionException { + EObject current = null; + + EObject lv_leftOperand_0_0 = null; + + Enumerator lv_operators_1_0 = null; + + EObject lv_operands_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2135:2: ( ( ( (lv_leftOperand_0_0= rulePowerOfExpressionRule ) ) ( ( (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) ) ( (lv_operands_2_0= rulePowerOfExpressionRule ) ) )* ) ) + // InternalGeneratorDSL.g:2136:2: ( ( (lv_leftOperand_0_0= rulePowerOfExpressionRule ) ) ( ( (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) ) ( (lv_operands_2_0= rulePowerOfExpressionRule ) ) )* ) + { + // InternalGeneratorDSL.g:2136:2: ( ( (lv_leftOperand_0_0= rulePowerOfExpressionRule ) ) ( ( (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) ) ( (lv_operands_2_0= rulePowerOfExpressionRule ) ) )* ) + // InternalGeneratorDSL.g:2137:3: ( (lv_leftOperand_0_0= rulePowerOfExpressionRule ) ) ( ( (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) ) ( (lv_operands_2_0= rulePowerOfExpressionRule ) ) )* + { + // InternalGeneratorDSL.g:2137:3: ( (lv_leftOperand_0_0= rulePowerOfExpressionRule ) ) + // InternalGeneratorDSL.g:2138:4: (lv_leftOperand_0_0= rulePowerOfExpressionRule ) + { + // InternalGeneratorDSL.g:2138:4: (lv_leftOperand_0_0= rulePowerOfExpressionRule ) + // InternalGeneratorDSL.g:2139:5: lv_leftOperand_0_0= rulePowerOfExpressionRule + { + + newCompositeNode(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getLeftOperandPowerOfExpressionRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_40); + lv_leftOperand_0_0=rulePowerOfExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + } + set( + current, + "leftOperand", + lv_leftOperand_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.PowerOfExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:2156:3: ( ( (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) ) ( (lv_operands_2_0= rulePowerOfExpressionRule ) ) )* + loop27: + do { + int alt27=2; + int LA27_0 = input.LA(1); + + if ( ((LA27_0>=58 && LA27_0<=60)) ) { + alt27=1; + } + + + switch (alt27) { + case 1 : + // InternalGeneratorDSL.g:2157:4: ( (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) ) ( (lv_operands_2_0= rulePowerOfExpressionRule ) ) + { + // InternalGeneratorDSL.g:2157:4: ( (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) ) + // InternalGeneratorDSL.g:2158:5: (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) + { + // InternalGeneratorDSL.g:2158:5: (lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule ) + // InternalGeneratorDSL.g:2159:6: lv_operators_1_0= ruleMultiplyDivideModuloOperatorRule + { + + newCompositeNode(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperatorsMultiplyDivideModuloOperatorRuleEnumRuleCall_1_0_0()); + + pushFollow(FOLLOW_35); + lv_operators_1_0=ruleMultiplyDivideModuloOperatorRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + } + add( + current, + "operators", + lv_operators_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.MultiplyDivideModuloOperatorRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:2176:4: ( (lv_operands_2_0= rulePowerOfExpressionRule ) ) + // InternalGeneratorDSL.g:2177:5: (lv_operands_2_0= rulePowerOfExpressionRule ) + { + // InternalGeneratorDSL.g:2177:5: (lv_operands_2_0= rulePowerOfExpressionRule ) + // InternalGeneratorDSL.g:2178:6: lv_operands_2_0= rulePowerOfExpressionRule + { + + newCompositeNode(grammarAccess.getMultiplyDivideModuloExpressionRuleAccess().getOperandsPowerOfExpressionRuleParserRuleCall_1_1_0()); + + pushFollow(FOLLOW_40); + lv_operands_2_0=rulePowerOfExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getMultiplyDivideModuloExpressionRuleRule()); + } + add( + current, + "operands", + lv_operands_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.PowerOfExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop27; + } + } while (true); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMultiplyDivideModuloExpressionRule" + + + // $ANTLR start "entryRulePowerOfExpressionRule" + // InternalGeneratorDSL.g:2200:1: entryRulePowerOfExpressionRule returns [EObject current=null] : iv_rulePowerOfExpressionRule= rulePowerOfExpressionRule EOF ; + public final EObject entryRulePowerOfExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_rulePowerOfExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:2200:62: (iv_rulePowerOfExpressionRule= rulePowerOfExpressionRule EOF ) + // InternalGeneratorDSL.g:2201:2: iv_rulePowerOfExpressionRule= rulePowerOfExpressionRule EOF + { + newCompositeNode(grammarAccess.getPowerOfExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_rulePowerOfExpressionRule=rulePowerOfExpressionRule(); + + state._fsp--; + + current =iv_rulePowerOfExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePowerOfExpressionRule" + + + // $ANTLR start "rulePowerOfExpressionRule" + // InternalGeneratorDSL.g:2207:1: rulePowerOfExpressionRule returns [EObject current=null] : ( ( (lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule ) ) (otherlv_1= '^' ( (lv_rightOperand_2_0= rulePowerOfExpressionRule ) ) )? ) ; + public final EObject rulePowerOfExpressionRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + EObject lv_leftOperand_0_0 = null; + + EObject lv_rightOperand_2_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2213:2: ( ( ( (lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule ) ) (otherlv_1= '^' ( (lv_rightOperand_2_0= rulePowerOfExpressionRule ) ) )? ) ) + // InternalGeneratorDSL.g:2214:2: ( ( (lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule ) ) (otherlv_1= '^' ( (lv_rightOperand_2_0= rulePowerOfExpressionRule ) ) )? ) + { + // InternalGeneratorDSL.g:2214:2: ( ( (lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule ) ) (otherlv_1= '^' ( (lv_rightOperand_2_0= rulePowerOfExpressionRule ) ) )? ) + // InternalGeneratorDSL.g:2215:3: ( (lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule ) ) (otherlv_1= '^' ( (lv_rightOperand_2_0= rulePowerOfExpressionRule ) ) )? + { + // InternalGeneratorDSL.g:2215:3: ( (lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule ) ) + // InternalGeneratorDSL.g:2216:4: (lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule ) + { + // InternalGeneratorDSL.g:2216:4: (lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule ) + // InternalGeneratorDSL.g:2217:5: lv_leftOperand_0_0= ruleUnaryAddOrSubtractExpressionRule + { + + newCompositeNode(grammarAccess.getPowerOfExpressionRuleAccess().getLeftOperandUnaryAddOrSubtractExpressionRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_41); + lv_leftOperand_0_0=ruleUnaryAddOrSubtractExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPowerOfExpressionRuleRule()); + } + set( + current, + "leftOperand", + lv_leftOperand_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.UnaryAddOrSubtractExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:2234:3: (otherlv_1= '^' ( (lv_rightOperand_2_0= rulePowerOfExpressionRule ) ) )? + int alt28=2; + int LA28_0 = input.LA(1); + + if ( (LA28_0==42) ) { + alt28=1; + } + switch (alt28) { + case 1 : + // InternalGeneratorDSL.g:2235:4: otherlv_1= '^' ( (lv_rightOperand_2_0= rulePowerOfExpressionRule ) ) + { + otherlv_1=(Token)match(input,42,FOLLOW_35); + + newLeafNode(otherlv_1, grammarAccess.getPowerOfExpressionRuleAccess().getCircumflexAccentKeyword_1_0()); + + // InternalGeneratorDSL.g:2239:4: ( (lv_rightOperand_2_0= rulePowerOfExpressionRule ) ) + // InternalGeneratorDSL.g:2240:5: (lv_rightOperand_2_0= rulePowerOfExpressionRule ) + { + // InternalGeneratorDSL.g:2240:5: (lv_rightOperand_2_0= rulePowerOfExpressionRule ) + // InternalGeneratorDSL.g:2241:6: lv_rightOperand_2_0= rulePowerOfExpressionRule + { + + newCompositeNode(grammarAccess.getPowerOfExpressionRuleAccess().getRightOperandPowerOfExpressionRuleParserRuleCall_1_1_0()); + + pushFollow(FOLLOW_2); + lv_rightOperand_2_0=rulePowerOfExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPowerOfExpressionRuleRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.PowerOfExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePowerOfExpressionRule" + + + // $ANTLR start "entryRuleUnaryAddOrSubtractExpressionRule" + // InternalGeneratorDSL.g:2263:1: entryRuleUnaryAddOrSubtractExpressionRule returns [EObject current=null] : iv_ruleUnaryAddOrSubtractExpressionRule= ruleUnaryAddOrSubtractExpressionRule EOF ; + public final EObject entryRuleUnaryAddOrSubtractExpressionRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleUnaryAddOrSubtractExpressionRule = null; + + + try { + // InternalGeneratorDSL.g:2263:73: (iv_ruleUnaryAddOrSubtractExpressionRule= ruleUnaryAddOrSubtractExpressionRule EOF ) + // InternalGeneratorDSL.g:2264:2: iv_ruleUnaryAddOrSubtractExpressionRule= ruleUnaryAddOrSubtractExpressionRule EOF + { + newCompositeNode(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleUnaryAddOrSubtractExpressionRule=ruleUnaryAddOrSubtractExpressionRule(); + + state._fsp--; + + current =iv_ruleUnaryAddOrSubtractExpressionRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleUnaryAddOrSubtractExpressionRule" + + + // $ANTLR start "ruleUnaryAddOrSubtractExpressionRule" + // InternalGeneratorDSL.g:2270:1: ruleUnaryAddOrSubtractExpressionRule returns [EObject current=null] : ( ( (lv_operators_0_0= ruleAddOrSubtractOperatorRule ) )* ( (lv_subExpression_1_0= ruleLiteralOrReferenceRule ) ) ) ; + public final EObject ruleUnaryAddOrSubtractExpressionRule() throws RecognitionException { + EObject current = null; + + Enumerator lv_operators_0_0 = null; + + EObject lv_subExpression_1_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2276:2: ( ( ( (lv_operators_0_0= ruleAddOrSubtractOperatorRule ) )* ( (lv_subExpression_1_0= ruleLiteralOrReferenceRule ) ) ) ) + // InternalGeneratorDSL.g:2277:2: ( ( (lv_operators_0_0= ruleAddOrSubtractOperatorRule ) )* ( (lv_subExpression_1_0= ruleLiteralOrReferenceRule ) ) ) + { + // InternalGeneratorDSL.g:2277:2: ( ( (lv_operators_0_0= ruleAddOrSubtractOperatorRule ) )* ( (lv_subExpression_1_0= ruleLiteralOrReferenceRule ) ) ) + // InternalGeneratorDSL.g:2278:3: ( (lv_operators_0_0= ruleAddOrSubtractOperatorRule ) )* ( (lv_subExpression_1_0= ruleLiteralOrReferenceRule ) ) + { + // InternalGeneratorDSL.g:2278:3: ( (lv_operators_0_0= ruleAddOrSubtractOperatorRule ) )* + loop29: + do { + int alt29=2; + int LA29_0 = input.LA(1); + + if ( ((LA29_0>=56 && LA29_0<=57)) ) { + alt29=1; + } + + + switch (alt29) { + case 1 : + // InternalGeneratorDSL.g:2279:4: (lv_operators_0_0= ruleAddOrSubtractOperatorRule ) + { + // InternalGeneratorDSL.g:2279:4: (lv_operators_0_0= ruleAddOrSubtractOperatorRule ) + // InternalGeneratorDSL.g:2280:5: lv_operators_0_0= ruleAddOrSubtractOperatorRule + { + + newCompositeNode(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getOperatorsAddOrSubtractOperatorRuleEnumRuleCall_0_0()); + + pushFollow(FOLLOW_35); + lv_operators_0_0=ruleAddOrSubtractOperatorRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); + } + add( + current, + "operators", + lv_operators_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.AddOrSubtractOperatorRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop29; + } + } while (true); + + // InternalGeneratorDSL.g:2297:3: ( (lv_subExpression_1_0= ruleLiteralOrReferenceRule ) ) + // InternalGeneratorDSL.g:2298:4: (lv_subExpression_1_0= ruleLiteralOrReferenceRule ) + { + // InternalGeneratorDSL.g:2298:4: (lv_subExpression_1_0= ruleLiteralOrReferenceRule ) + // InternalGeneratorDSL.g:2299:5: lv_subExpression_1_0= ruleLiteralOrReferenceRule + { + + newCompositeNode(grammarAccess.getUnaryAddOrSubtractExpressionRuleAccess().getSubExpressionLiteralOrReferenceRuleParserRuleCall_1_0()); + + pushFollow(FOLLOW_2); + lv_subExpression_1_0=ruleLiteralOrReferenceRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getUnaryAddOrSubtractExpressionRuleRule()); + } + set( + current, + "subExpression", + lv_subExpression_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.LiteralOrReferenceRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleUnaryAddOrSubtractExpressionRule" + + + // $ANTLR start "entryRuleLiteralOrReferenceRule" + // InternalGeneratorDSL.g:2320:1: entryRuleLiteralOrReferenceRule returns [EObject current=null] : iv_ruleLiteralOrReferenceRule= ruleLiteralOrReferenceRule EOF ; + public final EObject entryRuleLiteralOrReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleLiteralOrReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:2320:63: (iv_ruleLiteralOrReferenceRule= ruleLiteralOrReferenceRule EOF ) + // InternalGeneratorDSL.g:2321:2: iv_ruleLiteralOrReferenceRule= ruleLiteralOrReferenceRule EOF + { + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleLiteralOrReferenceRule=ruleLiteralOrReferenceRule(); + + state._fsp--; + + current =iv_ruleLiteralOrReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleLiteralOrReferenceRule" + + + // $ANTLR start "ruleLiteralOrReferenceRule" + // InternalGeneratorDSL.g:2327:1: ruleLiteralOrReferenceRule returns [EObject current=null] : (this_CallRule_0= ruleCallRule | this_LiteralRule_1= ruleLiteralRule | this_ParanthesesRule_2= ruleParanthesesRule | this_ValueReferenceRule_3= ruleValueReferenceRule ) ; + public final EObject ruleLiteralOrReferenceRule() throws RecognitionException { + EObject current = null; + + EObject this_CallRule_0 = null; + + EObject this_LiteralRule_1 = null; + + EObject this_ParanthesesRule_2 = null; + + EObject this_ValueReferenceRule_3 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2333:2: ( (this_CallRule_0= ruleCallRule | this_LiteralRule_1= ruleLiteralRule | this_ParanthesesRule_2= ruleParanthesesRule | this_ValueReferenceRule_3= ruleValueReferenceRule ) ) + // InternalGeneratorDSL.g:2334:2: (this_CallRule_0= ruleCallRule | this_LiteralRule_1= ruleLiteralRule | this_ParanthesesRule_2= ruleParanthesesRule | this_ValueReferenceRule_3= ruleValueReferenceRule ) + { + // InternalGeneratorDSL.g:2334:2: (this_CallRule_0= ruleCallRule | this_LiteralRule_1= ruleLiteralRule | this_ParanthesesRule_2= ruleParanthesesRule | this_ValueReferenceRule_3= ruleValueReferenceRule ) + int alt30=4; + switch ( input.LA(1) ) { + case 45: + { + alt30=1; + } + break; + case RULE_STRING: + case RULE_INT: + case 47: + case 48: + { + alt30=2; + } + break; + case 43: + { + alt30=3; + } + break; + case 46: + { + alt30=4; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 30, 0, input); + + throw nvae; + } + + switch (alt30) { + case 1 : + // InternalGeneratorDSL.g:2335:3: this_CallRule_0= ruleCallRule + { + + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleAccess().getCallRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_CallRule_0=ruleCallRule(); + + state._fsp--; + + + current = this_CallRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:2344:3: this_LiteralRule_1= ruleLiteralRule + { + + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleAccess().getLiteralRuleParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_LiteralRule_1=ruleLiteralRule(); + + state._fsp--; + + + current = this_LiteralRule_1; + afterParserOrEnumRuleCall(); + + + } + break; + case 3 : + // InternalGeneratorDSL.g:2353:3: this_ParanthesesRule_2= ruleParanthesesRule + { + + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleAccess().getParanthesesRuleParserRuleCall_2()); + + pushFollow(FOLLOW_2); + this_ParanthesesRule_2=ruleParanthesesRule(); + + state._fsp--; + + + current = this_ParanthesesRule_2; + afterParserOrEnumRuleCall(); + + + } + break; + case 4 : + // InternalGeneratorDSL.g:2362:3: this_ValueReferenceRule_3= ruleValueReferenceRule + { + + newCompositeNode(grammarAccess.getLiteralOrReferenceRuleAccess().getValueReferenceRuleParserRuleCall_3()); + + pushFollow(FOLLOW_2); + this_ValueReferenceRule_3=ruleValueReferenceRule(); + + state._fsp--; + + + current = this_ValueReferenceRule_3; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleLiteralOrReferenceRule" + + + // $ANTLR start "entryRuleParanthesesRule" + // InternalGeneratorDSL.g:2374:1: entryRuleParanthesesRule returns [EObject current=null] : iv_ruleParanthesesRule= ruleParanthesesRule EOF ; + public final EObject entryRuleParanthesesRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleParanthesesRule = null; + + + try { + // InternalGeneratorDSL.g:2374:56: (iv_ruleParanthesesRule= ruleParanthesesRule EOF ) + // InternalGeneratorDSL.g:2375:2: iv_ruleParanthesesRule= ruleParanthesesRule EOF + { + newCompositeNode(grammarAccess.getParanthesesRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleParanthesesRule=ruleParanthesesRule(); + + state._fsp--; + + current =iv_ruleParanthesesRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleParanthesesRule" + + + // $ANTLR start "ruleParanthesesRule" + // InternalGeneratorDSL.g:2381:1: ruleParanthesesRule returns [EObject current=null] : (otherlv_0= '(' ( (lv_subExpression_1_0= ruleExpressionRule ) ) otherlv_2= ')' ) ; + public final EObject ruleParanthesesRule() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + EObject lv_subExpression_1_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2387:2: ( (otherlv_0= '(' ( (lv_subExpression_1_0= ruleExpressionRule ) ) otherlv_2= ')' ) ) + // InternalGeneratorDSL.g:2388:2: (otherlv_0= '(' ( (lv_subExpression_1_0= ruleExpressionRule ) ) otherlv_2= ')' ) + { + // InternalGeneratorDSL.g:2388:2: (otherlv_0= '(' ( (lv_subExpression_1_0= ruleExpressionRule ) ) otherlv_2= ')' ) + // InternalGeneratorDSL.g:2389:3: otherlv_0= '(' ( (lv_subExpression_1_0= ruleExpressionRule ) ) otherlv_2= ')' + { + otherlv_0=(Token)match(input,43,FOLLOW_35); + + newLeafNode(otherlv_0, grammarAccess.getParanthesesRuleAccess().getLeftParenthesisKeyword_0()); + + // InternalGeneratorDSL.g:2393:3: ( (lv_subExpression_1_0= ruleExpressionRule ) ) + // InternalGeneratorDSL.g:2394:4: (lv_subExpression_1_0= ruleExpressionRule ) + { + // InternalGeneratorDSL.g:2394:4: (lv_subExpression_1_0= ruleExpressionRule ) + // InternalGeneratorDSL.g:2395:5: lv_subExpression_1_0= ruleExpressionRule + { + + newCompositeNode(grammarAccess.getParanthesesRuleAccess().getSubExpressionExpressionRuleParserRuleCall_1_0()); + + pushFollow(FOLLOW_42); + lv_subExpression_1_0=ruleExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getParanthesesRuleRule()); + } + set( + current, + "subExpression", + lv_subExpression_1_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_2=(Token)match(input,44,FOLLOW_2); + + newLeafNode(otherlv_2, grammarAccess.getParanthesesRuleAccess().getRightParenthesisKeyword_2()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleParanthesesRule" + + + // $ANTLR start "entryRuleCallRule" + // InternalGeneratorDSL.g:2420:1: entryRuleCallRule returns [EObject current=null] : iv_ruleCallRule= ruleCallRule EOF ; + public final EObject entryRuleCallRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleCallRule = null; + + + try { + // InternalGeneratorDSL.g:2420:49: (iv_ruleCallRule= ruleCallRule EOF ) + // InternalGeneratorDSL.g:2421:2: iv_ruleCallRule= ruleCallRule EOF + { + newCompositeNode(grammarAccess.getCallRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleCallRule=ruleCallRule(); + + state._fsp--; + + current =iv_ruleCallRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleCallRule" + + + // $ANTLR start "ruleCallRule" + // InternalGeneratorDSL.g:2427:1: ruleCallRule returns [EObject current=null] : ( ( (lv_function_0_0= ruleFunctionNameRule ) ) otherlv_1= '(' ( ( (lv_parameters_2_0= ruleExpressionRule ) ) (otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) )* )? otherlv_5= ')' ) ; + public final EObject ruleCallRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_3=null; + Token otherlv_5=null; + EObject lv_function_0_0 = null; + + EObject lv_parameters_2_0 = null; + + EObject lv_parameters_4_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2433:2: ( ( ( (lv_function_0_0= ruleFunctionNameRule ) ) otherlv_1= '(' ( ( (lv_parameters_2_0= ruleExpressionRule ) ) (otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) )* )? otherlv_5= ')' ) ) + // InternalGeneratorDSL.g:2434:2: ( ( (lv_function_0_0= ruleFunctionNameRule ) ) otherlv_1= '(' ( ( (lv_parameters_2_0= ruleExpressionRule ) ) (otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) )* )? otherlv_5= ')' ) + { + // InternalGeneratorDSL.g:2434:2: ( ( (lv_function_0_0= ruleFunctionNameRule ) ) otherlv_1= '(' ( ( (lv_parameters_2_0= ruleExpressionRule ) ) (otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) )* )? otherlv_5= ')' ) + // InternalGeneratorDSL.g:2435:3: ( (lv_function_0_0= ruleFunctionNameRule ) ) otherlv_1= '(' ( ( (lv_parameters_2_0= ruleExpressionRule ) ) (otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) )* )? otherlv_5= ')' + { + // InternalGeneratorDSL.g:2435:3: ( (lv_function_0_0= ruleFunctionNameRule ) ) + // InternalGeneratorDSL.g:2436:4: (lv_function_0_0= ruleFunctionNameRule ) + { + // InternalGeneratorDSL.g:2436:4: (lv_function_0_0= ruleFunctionNameRule ) + // InternalGeneratorDSL.g:2437:5: lv_function_0_0= ruleFunctionNameRule + { + + newCompositeNode(grammarAccess.getCallRuleAccess().getFunctionFunctionNameRuleParserRuleCall_0_0()); + + pushFollow(FOLLOW_43); + lv_function_0_0=ruleFunctionNameRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getCallRuleRule()); + } + set( + current, + "function", + lv_function_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.FunctionNameRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_1=(Token)match(input,43,FOLLOW_44); + + newLeafNode(otherlv_1, grammarAccess.getCallRuleAccess().getLeftParenthesisKeyword_1()); + + // InternalGeneratorDSL.g:2458:3: ( ( (lv_parameters_2_0= ruleExpressionRule ) ) (otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) )* )? + int alt32=2; + int LA32_0 = input.LA(1); + + if ( (LA32_0==RULE_STRING||LA32_0==RULE_INT||LA32_0==41||LA32_0==43||(LA32_0>=45 && LA32_0<=48)||(LA32_0>=56 && LA32_0<=57)) ) { + alt32=1; + } + switch (alt32) { + case 1 : + // InternalGeneratorDSL.g:2459:4: ( (lv_parameters_2_0= ruleExpressionRule ) ) (otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) )* + { + // InternalGeneratorDSL.g:2459:4: ( (lv_parameters_2_0= ruleExpressionRule ) ) + // InternalGeneratorDSL.g:2460:5: (lv_parameters_2_0= ruleExpressionRule ) + { + // InternalGeneratorDSL.g:2460:5: (lv_parameters_2_0= ruleExpressionRule ) + // InternalGeneratorDSL.g:2461:6: lv_parameters_2_0= ruleExpressionRule + { + + newCompositeNode(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_0_0()); + + pushFollow(FOLLOW_45); + lv_parameters_2_0=ruleExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getCallRuleRule()); + } + add( + current, + "parameters", + lv_parameters_2_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalGeneratorDSL.g:2478:4: (otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) )* + loop31: + do { + int alt31=2; + int LA31_0 = input.LA(1); + + if ( (LA31_0==25) ) { + alt31=1; + } + + + switch (alt31) { + case 1 : + // InternalGeneratorDSL.g:2479:5: otherlv_3= ',' ( (lv_parameters_4_0= ruleExpressionRule ) ) + { + otherlv_3=(Token)match(input,25,FOLLOW_35); + + newLeafNode(otherlv_3, grammarAccess.getCallRuleAccess().getCommaKeyword_2_1_0()); + + // InternalGeneratorDSL.g:2483:5: ( (lv_parameters_4_0= ruleExpressionRule ) ) + // InternalGeneratorDSL.g:2484:6: (lv_parameters_4_0= ruleExpressionRule ) + { + // InternalGeneratorDSL.g:2484:6: (lv_parameters_4_0= ruleExpressionRule ) + // InternalGeneratorDSL.g:2485:7: lv_parameters_4_0= ruleExpressionRule + { + + newCompositeNode(grammarAccess.getCallRuleAccess().getParametersExpressionRuleParserRuleCall_2_1_1_0()); + + pushFollow(FOLLOW_45); + lv_parameters_4_0=ruleExpressionRule(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getCallRuleRule()); + } + add( + current, + "parameters", + lv_parameters_4_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.ExpressionRule"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop31; + } + } while (true); + + + } + break; + + } + + otherlv_5=(Token)match(input,44,FOLLOW_2); + + newLeafNode(otherlv_5, grammarAccess.getCallRuleAccess().getRightParenthesisKeyword_3()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleCallRule" + + + // $ANTLR start "entryRuleFunctionNameRule" + // InternalGeneratorDSL.g:2512:1: entryRuleFunctionNameRule returns [EObject current=null] : iv_ruleFunctionNameRule= ruleFunctionNameRule EOF ; + public final EObject entryRuleFunctionNameRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleFunctionNameRule = null; + + + try { + // InternalGeneratorDSL.g:2512:57: (iv_ruleFunctionNameRule= ruleFunctionNameRule EOF ) + // InternalGeneratorDSL.g:2513:2: iv_ruleFunctionNameRule= ruleFunctionNameRule EOF + { + newCompositeNode(grammarAccess.getFunctionNameRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleFunctionNameRule=ruleFunctionNameRule(); + + state._fsp--; + + current =iv_ruleFunctionNameRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleFunctionNameRule" + + + // $ANTLR start "ruleFunctionNameRule" + // InternalGeneratorDSL.g:2519:1: ruleFunctionNameRule returns [EObject current=null] : ( () otherlv_1= 'call' ) ; + public final EObject ruleFunctionNameRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2525:2: ( ( () otherlv_1= 'call' ) ) + // InternalGeneratorDSL.g:2526:2: ( () otherlv_1= 'call' ) + { + // InternalGeneratorDSL.g:2526:2: ( () otherlv_1= 'call' ) + // InternalGeneratorDSL.g:2527:3: () otherlv_1= 'call' + { + // InternalGeneratorDSL.g:2527:3: () + // InternalGeneratorDSL.g:2528:4: + { + + current = forceCreateModelElement( + grammarAccess.getFunctionNameRuleAccess().getFunctionNameAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,45,FOLLOW_2); + + newLeafNode(otherlv_1, grammarAccess.getFunctionNameRuleAccess().getCallKeyword_1()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleFunctionNameRule" + + + // $ANTLR start "entryRuleValueReferenceRule" + // InternalGeneratorDSL.g:2542:1: entryRuleValueReferenceRule returns [EObject current=null] : iv_ruleValueReferenceRule= ruleValueReferenceRule EOF ; + public final EObject entryRuleValueReferenceRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleValueReferenceRule = null; + + + try { + // InternalGeneratorDSL.g:2542:59: (iv_ruleValueReferenceRule= ruleValueReferenceRule EOF ) + // InternalGeneratorDSL.g:2543:2: iv_ruleValueReferenceRule= ruleValueReferenceRule EOF + { + newCompositeNode(grammarAccess.getValueReferenceRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleValueReferenceRule=ruleValueReferenceRule(); + + state._fsp--; + + current =iv_ruleValueReferenceRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleValueReferenceRule" + + + // $ANTLR start "ruleValueReferenceRule" + // InternalGeneratorDSL.g:2549:1: ruleValueReferenceRule returns [EObject current=null] : ( () otherlv_1= 'value' ) ; + public final EObject ruleValueReferenceRule() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2555:2: ( ( () otherlv_1= 'value' ) ) + // InternalGeneratorDSL.g:2556:2: ( () otherlv_1= 'value' ) + { + // InternalGeneratorDSL.g:2556:2: ( () otherlv_1= 'value' ) + // InternalGeneratorDSL.g:2557:3: () otherlv_1= 'value' + { + // InternalGeneratorDSL.g:2557:3: () + // InternalGeneratorDSL.g:2558:4: + { + + current = forceCreateModelElement( + grammarAccess.getValueReferenceRuleAccess().getValueReferenceAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,46,FOLLOW_2); + + newLeafNode(otherlv_1, grammarAccess.getValueReferenceRuleAccess().getValueKeyword_1()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleValueReferenceRule" + + + // $ANTLR start "entryRuleLiteralRule" + // InternalGeneratorDSL.g:2572:1: entryRuleLiteralRule returns [EObject current=null] : iv_ruleLiteralRule= ruleLiteralRule EOF ; + public final EObject entryRuleLiteralRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleLiteralRule = null; + + + try { + // InternalGeneratorDSL.g:2572:52: (iv_ruleLiteralRule= ruleLiteralRule EOF ) + // InternalGeneratorDSL.g:2573:2: iv_ruleLiteralRule= ruleLiteralRule EOF + { + newCompositeNode(grammarAccess.getLiteralRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleLiteralRule=ruleLiteralRule(); + + state._fsp--; + + current =iv_ruleLiteralRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleLiteralRule" + + + // $ANTLR start "ruleLiteralRule" + // InternalGeneratorDSL.g:2579:1: ruleLiteralRule returns [EObject current=null] : (this_NumberLiteralRule_0= ruleNumberLiteralRule | this_StringLiteralRule_1= ruleStringLiteralRule | this_BooleanLiteralRule_2= ruleBooleanLiteralRule ) ; + public final EObject ruleLiteralRule() throws RecognitionException { + EObject current = null; + + EObject this_NumberLiteralRule_0 = null; + + EObject this_StringLiteralRule_1 = null; + + EObject this_BooleanLiteralRule_2 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2585:2: ( (this_NumberLiteralRule_0= ruleNumberLiteralRule | this_StringLiteralRule_1= ruleStringLiteralRule | this_BooleanLiteralRule_2= ruleBooleanLiteralRule ) ) + // InternalGeneratorDSL.g:2586:2: (this_NumberLiteralRule_0= ruleNumberLiteralRule | this_StringLiteralRule_1= ruleStringLiteralRule | this_BooleanLiteralRule_2= ruleBooleanLiteralRule ) + { + // InternalGeneratorDSL.g:2586:2: (this_NumberLiteralRule_0= ruleNumberLiteralRule | this_StringLiteralRule_1= ruleStringLiteralRule | this_BooleanLiteralRule_2= ruleBooleanLiteralRule ) + int alt33=3; + switch ( input.LA(1) ) { + case RULE_INT: + { + alt33=1; + } + break; + case RULE_STRING: + { + alt33=2; + } + break; + case 47: + case 48: + { + alt33=3; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 33, 0, input); + + throw nvae; + } + + switch (alt33) { + case 1 : + // InternalGeneratorDSL.g:2587:3: this_NumberLiteralRule_0= ruleNumberLiteralRule + { + + newCompositeNode(grammarAccess.getLiteralRuleAccess().getNumberLiteralRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_NumberLiteralRule_0=ruleNumberLiteralRule(); + + state._fsp--; + + + current = this_NumberLiteralRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:2596:3: this_StringLiteralRule_1= ruleStringLiteralRule + { + + newCompositeNode(grammarAccess.getLiteralRuleAccess().getStringLiteralRuleParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_StringLiteralRule_1=ruleStringLiteralRule(); + + state._fsp--; + + + current = this_StringLiteralRule_1; + afterParserOrEnumRuleCall(); + + + } + break; + case 3 : + // InternalGeneratorDSL.g:2605:3: this_BooleanLiteralRule_2= ruleBooleanLiteralRule + { + + newCompositeNode(grammarAccess.getLiteralRuleAccess().getBooleanLiteralRuleParserRuleCall_2()); + + pushFollow(FOLLOW_2); + this_BooleanLiteralRule_2=ruleBooleanLiteralRule(); + + state._fsp--; + + + current = this_BooleanLiteralRule_2; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleLiteralRule" + + + // $ANTLR start "entryRuleNumberLiteralRule" + // InternalGeneratorDSL.g:2617:1: entryRuleNumberLiteralRule returns [EObject current=null] : iv_ruleNumberLiteralRule= ruleNumberLiteralRule EOF ; + public final EObject entryRuleNumberLiteralRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleNumberLiteralRule = null; + + + try { + // InternalGeneratorDSL.g:2617:58: (iv_ruleNumberLiteralRule= ruleNumberLiteralRule EOF ) + // InternalGeneratorDSL.g:2618:2: iv_ruleNumberLiteralRule= ruleNumberLiteralRule EOF + { + newCompositeNode(grammarAccess.getNumberLiteralRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleNumberLiteralRule=ruleNumberLiteralRule(); + + state._fsp--; + + current =iv_ruleNumberLiteralRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleNumberLiteralRule" + + + // $ANTLR start "ruleNumberLiteralRule" + // InternalGeneratorDSL.g:2624:1: ruleNumberLiteralRule returns [EObject current=null] : (this_DoubleLiteralRule_0= ruleDoubleLiteralRule | this_IntegerLiteralRule_1= ruleIntegerLiteralRule ) ; + public final EObject ruleNumberLiteralRule() throws RecognitionException { + EObject current = null; + + EObject this_DoubleLiteralRule_0 = null; + + EObject this_IntegerLiteralRule_1 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2630:2: ( (this_DoubleLiteralRule_0= ruleDoubleLiteralRule | this_IntegerLiteralRule_1= ruleIntegerLiteralRule ) ) + // InternalGeneratorDSL.g:2631:2: (this_DoubleLiteralRule_0= ruleDoubleLiteralRule | this_IntegerLiteralRule_1= ruleIntegerLiteralRule ) + { + // InternalGeneratorDSL.g:2631:2: (this_DoubleLiteralRule_0= ruleDoubleLiteralRule | this_IntegerLiteralRule_1= ruleIntegerLiteralRule ) + int alt34=2; + int LA34_0 = input.LA(1); + + if ( (LA34_0==RULE_INT) ) { + int LA34_1 = input.LA(2); + + if ( (LA34_1==49) ) { + alt34=1; + } + else if ( (LA34_1==EOF||LA34_1==13||LA34_1==23||LA34_1==25||(LA34_1>=38 && LA34_1<=40)||LA34_1==42||LA34_1==44||(LA34_1>=50 && LA34_1<=60)) ) { + alt34=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 34, 1, input); + + throw nvae; + } + } + else { + NoViableAltException nvae = + new NoViableAltException("", 34, 0, input); + + throw nvae; + } + switch (alt34) { + case 1 : + // InternalGeneratorDSL.g:2632:3: this_DoubleLiteralRule_0= ruleDoubleLiteralRule + { + + newCompositeNode(grammarAccess.getNumberLiteralRuleAccess().getDoubleLiteralRuleParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_DoubleLiteralRule_0=ruleDoubleLiteralRule(); + + state._fsp--; + + + current = this_DoubleLiteralRule_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:2641:3: this_IntegerLiteralRule_1= ruleIntegerLiteralRule + { + + newCompositeNode(grammarAccess.getNumberLiteralRuleAccess().getIntegerLiteralRuleParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_IntegerLiteralRule_1=ruleIntegerLiteralRule(); + + state._fsp--; + + + current = this_IntegerLiteralRule_1; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleNumberLiteralRule" + + + // $ANTLR start "entryRuleDoubleLiteralRule" + // InternalGeneratorDSL.g:2653:1: entryRuleDoubleLiteralRule returns [EObject current=null] : iv_ruleDoubleLiteralRule= ruleDoubleLiteralRule EOF ; + public final EObject entryRuleDoubleLiteralRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleDoubleLiteralRule = null; + + + try { + // InternalGeneratorDSL.g:2653:58: (iv_ruleDoubleLiteralRule= ruleDoubleLiteralRule EOF ) + // InternalGeneratorDSL.g:2654:2: iv_ruleDoubleLiteralRule= ruleDoubleLiteralRule EOF + { + newCompositeNode(grammarAccess.getDoubleLiteralRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleDoubleLiteralRule=ruleDoubleLiteralRule(); + + state._fsp--; + + current =iv_ruleDoubleLiteralRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleDoubleLiteralRule" + + + // $ANTLR start "ruleDoubleLiteralRule" + // InternalGeneratorDSL.g:2660:1: ruleDoubleLiteralRule returns [EObject current=null] : ( (lv_value_0_0= ruleDOUBLE ) ) ; + public final EObject ruleDoubleLiteralRule() throws RecognitionException { + EObject current = null; + + AntlrDatatypeRuleToken lv_value_0_0 = null; + + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2666:2: ( ( (lv_value_0_0= ruleDOUBLE ) ) ) + // InternalGeneratorDSL.g:2667:2: ( (lv_value_0_0= ruleDOUBLE ) ) + { + // InternalGeneratorDSL.g:2667:2: ( (lv_value_0_0= ruleDOUBLE ) ) + // InternalGeneratorDSL.g:2668:3: (lv_value_0_0= ruleDOUBLE ) + { + // InternalGeneratorDSL.g:2668:3: (lv_value_0_0= ruleDOUBLE ) + // InternalGeneratorDSL.g:2669:4: lv_value_0_0= ruleDOUBLE + { + + newCompositeNode(grammarAccess.getDoubleLiteralRuleAccess().getValueDOUBLEParserRuleCall_0()); + + pushFollow(FOLLOW_2); + lv_value_0_0=ruleDOUBLE(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getDoubleLiteralRuleRule()); + } + set( + current, + "value", + lv_value_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.DOUBLE"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleDoubleLiteralRule" + + + // $ANTLR start "entryRuleIntegerLiteralRule" + // InternalGeneratorDSL.g:2689:1: entryRuleIntegerLiteralRule returns [EObject current=null] : iv_ruleIntegerLiteralRule= ruleIntegerLiteralRule EOF ; + public final EObject entryRuleIntegerLiteralRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleIntegerLiteralRule = null; + + + try { + // InternalGeneratorDSL.g:2689:59: (iv_ruleIntegerLiteralRule= ruleIntegerLiteralRule EOF ) + // InternalGeneratorDSL.g:2690:2: iv_ruleIntegerLiteralRule= ruleIntegerLiteralRule EOF + { + newCompositeNode(grammarAccess.getIntegerLiteralRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleIntegerLiteralRule=ruleIntegerLiteralRule(); + + state._fsp--; + + current =iv_ruleIntegerLiteralRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleIntegerLiteralRule" + + + // $ANTLR start "ruleIntegerLiteralRule" + // InternalGeneratorDSL.g:2696:1: ruleIntegerLiteralRule returns [EObject current=null] : ( (lv_value_0_0= RULE_INT ) ) ; + public final EObject ruleIntegerLiteralRule() throws RecognitionException { + EObject current = null; + + Token lv_value_0_0=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2702:2: ( ( (lv_value_0_0= RULE_INT ) ) ) + // InternalGeneratorDSL.g:2703:2: ( (lv_value_0_0= RULE_INT ) ) + { + // InternalGeneratorDSL.g:2703:2: ( (lv_value_0_0= RULE_INT ) ) + // InternalGeneratorDSL.g:2704:3: (lv_value_0_0= RULE_INT ) + { + // InternalGeneratorDSL.g:2704:3: (lv_value_0_0= RULE_INT ) + // InternalGeneratorDSL.g:2705:4: lv_value_0_0= RULE_INT + { + lv_value_0_0=(Token)match(input,RULE_INT,FOLLOW_2); + + newLeafNode(lv_value_0_0, grammarAccess.getIntegerLiteralRuleAccess().getValueINTTerminalRuleCall_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getIntegerLiteralRuleRule()); + } + setWithLastConsumed( + current, + "value", + lv_value_0_0, + "org.eclipse.xtext.common.Terminals.INT"); + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleIntegerLiteralRule" + + + // $ANTLR start "entryRuleStringLiteralRule" + // InternalGeneratorDSL.g:2724:1: entryRuleStringLiteralRule returns [EObject current=null] : iv_ruleStringLiteralRule= ruleStringLiteralRule EOF ; + public final EObject entryRuleStringLiteralRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleStringLiteralRule = null; + + + try { + // InternalGeneratorDSL.g:2724:58: (iv_ruleStringLiteralRule= ruleStringLiteralRule EOF ) + // InternalGeneratorDSL.g:2725:2: iv_ruleStringLiteralRule= ruleStringLiteralRule EOF + { + newCompositeNode(grammarAccess.getStringLiteralRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleStringLiteralRule=ruleStringLiteralRule(); + + state._fsp--; + + current =iv_ruleStringLiteralRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleStringLiteralRule" + + + // $ANTLR start "ruleStringLiteralRule" + // InternalGeneratorDSL.g:2731:1: ruleStringLiteralRule returns [EObject current=null] : ( (lv_value_0_0= RULE_STRING ) ) ; + public final EObject ruleStringLiteralRule() throws RecognitionException { + EObject current = null; + + Token lv_value_0_0=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2737:2: ( ( (lv_value_0_0= RULE_STRING ) ) ) + // InternalGeneratorDSL.g:2738:2: ( (lv_value_0_0= RULE_STRING ) ) + { + // InternalGeneratorDSL.g:2738:2: ( (lv_value_0_0= RULE_STRING ) ) + // InternalGeneratorDSL.g:2739:3: (lv_value_0_0= RULE_STRING ) + { + // InternalGeneratorDSL.g:2739:3: (lv_value_0_0= RULE_STRING ) + // InternalGeneratorDSL.g:2740:4: lv_value_0_0= RULE_STRING + { + lv_value_0_0=(Token)match(input,RULE_STRING,FOLLOW_2); + + newLeafNode(lv_value_0_0, grammarAccess.getStringLiteralRuleAccess().getValueSTRINGTerminalRuleCall_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getStringLiteralRuleRule()); + } + setWithLastConsumed( + current, + "value", + lv_value_0_0, + "de.evoal.languages.model.el.dsl.ExpressionLanguage.STRING"); + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleStringLiteralRule" + + + // $ANTLR start "entryRuleBooleanLiteralRule" + // InternalGeneratorDSL.g:2759:1: entryRuleBooleanLiteralRule returns [EObject current=null] : iv_ruleBooleanLiteralRule= ruleBooleanLiteralRule EOF ; + public final EObject entryRuleBooleanLiteralRule() throws RecognitionException { + EObject current = null; + + EObject iv_ruleBooleanLiteralRule = null; + + + try { + // InternalGeneratorDSL.g:2759:59: (iv_ruleBooleanLiteralRule= ruleBooleanLiteralRule EOF ) + // InternalGeneratorDSL.g:2760:2: iv_ruleBooleanLiteralRule= ruleBooleanLiteralRule EOF + { + newCompositeNode(grammarAccess.getBooleanLiteralRuleRule()); + pushFollow(FOLLOW_1); + iv_ruleBooleanLiteralRule=ruleBooleanLiteralRule(); + + state._fsp--; + + current =iv_ruleBooleanLiteralRule; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleBooleanLiteralRule" + + + // $ANTLR start "ruleBooleanLiteralRule" + // InternalGeneratorDSL.g:2766:1: ruleBooleanLiteralRule returns [EObject current=null] : ( () ( ( (lv_value_1_0= 'true' ) ) | otherlv_2= 'false' ) ) ; + public final EObject ruleBooleanLiteralRule() throws RecognitionException { + EObject current = null; + + Token lv_value_1_0=null; + Token otherlv_2=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2772:2: ( ( () ( ( (lv_value_1_0= 'true' ) ) | otherlv_2= 'false' ) ) ) + // InternalGeneratorDSL.g:2773:2: ( () ( ( (lv_value_1_0= 'true' ) ) | otherlv_2= 'false' ) ) + { + // InternalGeneratorDSL.g:2773:2: ( () ( ( (lv_value_1_0= 'true' ) ) | otherlv_2= 'false' ) ) + // InternalGeneratorDSL.g:2774:3: () ( ( (lv_value_1_0= 'true' ) ) | otherlv_2= 'false' ) + { + // InternalGeneratorDSL.g:2774:3: () + // InternalGeneratorDSL.g:2775:4: + { + + current = forceCreateModelElement( + grammarAccess.getBooleanLiteralRuleAccess().getBooleanLiteralAction_0(), + current); + + + } + + // InternalGeneratorDSL.g:2781:3: ( ( (lv_value_1_0= 'true' ) ) | otherlv_2= 'false' ) + int alt35=2; + int LA35_0 = input.LA(1); + + if ( (LA35_0==47) ) { + alt35=1; + } + else if ( (LA35_0==48) ) { + alt35=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 35, 0, input); + + throw nvae; + } + switch (alt35) { + case 1 : + // InternalGeneratorDSL.g:2782:4: ( (lv_value_1_0= 'true' ) ) + { + // InternalGeneratorDSL.g:2782:4: ( (lv_value_1_0= 'true' ) ) + // InternalGeneratorDSL.g:2783:5: (lv_value_1_0= 'true' ) + { + // InternalGeneratorDSL.g:2783:5: (lv_value_1_0= 'true' ) + // InternalGeneratorDSL.g:2784:6: lv_value_1_0= 'true' + { + lv_value_1_0=(Token)match(input,47,FOLLOW_2); + + newLeafNode(lv_value_1_0, grammarAccess.getBooleanLiteralRuleAccess().getValueTrueKeyword_1_0_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getBooleanLiteralRuleRule()); + } + setWithLastConsumed(current, "value", lv_value_1_0 != null, "true"); + + + } + + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:2797:4: otherlv_2= 'false' + { + otherlv_2=(Token)match(input,48,FOLLOW_2); + + newLeafNode(otherlv_2, grammarAccess.getBooleanLiteralRuleAccess().getFalseKeyword_1_1()); + + + } + break; + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleBooleanLiteralRule" + + + // $ANTLR start "entryRuleStringOrId" + // InternalGeneratorDSL.g:2806:1: entryRuleStringOrId returns [String current=null] : iv_ruleStringOrId= ruleStringOrId EOF ; + public final String entryRuleStringOrId() throws RecognitionException { + String current = null; + + AntlrDatatypeRuleToken iv_ruleStringOrId = null; + + + try { + // InternalGeneratorDSL.g:2806:50: (iv_ruleStringOrId= ruleStringOrId EOF ) + // InternalGeneratorDSL.g:2807:2: iv_ruleStringOrId= ruleStringOrId EOF + { + newCompositeNode(grammarAccess.getStringOrIdRule()); + pushFollow(FOLLOW_1); + iv_ruleStringOrId=ruleStringOrId(); + + state._fsp--; + + current =iv_ruleStringOrId.getText(); + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleStringOrId" + + + // $ANTLR start "ruleStringOrId" + // InternalGeneratorDSL.g:2813:1: ruleStringOrId returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_QUOTED_ID_0= RULE_QUOTED_ID | this_ID_1= RULE_ID ) ; + public final AntlrDatatypeRuleToken ruleStringOrId() throws RecognitionException { + AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); + + Token this_QUOTED_ID_0=null; + Token this_ID_1=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2819:2: ( (this_QUOTED_ID_0= RULE_QUOTED_ID | this_ID_1= RULE_ID ) ) + // InternalGeneratorDSL.g:2820:2: (this_QUOTED_ID_0= RULE_QUOTED_ID | this_ID_1= RULE_ID ) + { + // InternalGeneratorDSL.g:2820:2: (this_QUOTED_ID_0= RULE_QUOTED_ID | this_ID_1= RULE_ID ) + int alt36=2; + int LA36_0 = input.LA(1); + + if ( (LA36_0==RULE_QUOTED_ID) ) { + alt36=1; + } + else if ( (LA36_0==RULE_ID) ) { + alt36=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 36, 0, input); + + throw nvae; + } + switch (alt36) { + case 1 : + // InternalGeneratorDSL.g:2821:3: this_QUOTED_ID_0= RULE_QUOTED_ID + { + this_QUOTED_ID_0=(Token)match(input,RULE_QUOTED_ID,FOLLOW_2); + + current.merge(this_QUOTED_ID_0); + + + newLeafNode(this_QUOTED_ID_0, grammarAccess.getStringOrIdAccess().getQUOTED_IDTerminalRuleCall_0()); + + + } + break; + case 2 : + // InternalGeneratorDSL.g:2829:3: this_ID_1= RULE_ID + { + this_ID_1=(Token)match(input,RULE_ID,FOLLOW_2); + + current.merge(this_ID_1); + + + newLeafNode(this_ID_1, grammarAccess.getStringOrIdAccess().getIDTerminalRuleCall_1()); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleStringOrId" + + + // $ANTLR start "entryRuleDOUBLE" + // InternalGeneratorDSL.g:2840:1: entryRuleDOUBLE returns [String current=null] : iv_ruleDOUBLE= ruleDOUBLE EOF ; + public final String entryRuleDOUBLE() throws RecognitionException { + String current = null; + + AntlrDatatypeRuleToken iv_ruleDOUBLE = null; + + + try { + // InternalGeneratorDSL.g:2840:46: (iv_ruleDOUBLE= ruleDOUBLE EOF ) + // InternalGeneratorDSL.g:2841:2: iv_ruleDOUBLE= ruleDOUBLE EOF + { + newCompositeNode(grammarAccess.getDOUBLERule()); + pushFollow(FOLLOW_1); + iv_ruleDOUBLE=ruleDOUBLE(); + + state._fsp--; + + current =iv_ruleDOUBLE.getText(); + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleDOUBLE" + + + // $ANTLR start "ruleDOUBLE" + // InternalGeneratorDSL.g:2847:1: ruleDOUBLE returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT kw= '.' this_INT_2= RULE_INT ) ; + public final AntlrDatatypeRuleToken ruleDOUBLE() throws RecognitionException { + AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); + + Token this_INT_0=null; + Token kw=null; + Token this_INT_2=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2853:2: ( (this_INT_0= RULE_INT kw= '.' this_INT_2= RULE_INT ) ) + // InternalGeneratorDSL.g:2854:2: (this_INT_0= RULE_INT kw= '.' this_INT_2= RULE_INT ) + { + // InternalGeneratorDSL.g:2854:2: (this_INT_0= RULE_INT kw= '.' this_INT_2= RULE_INT ) + // InternalGeneratorDSL.g:2855:3: this_INT_0= RULE_INT kw= '.' this_INT_2= RULE_INT + { + this_INT_0=(Token)match(input,RULE_INT,FOLLOW_46); + + current.merge(this_INT_0); + + + newLeafNode(this_INT_0, grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_0()); + + kw=(Token)match(input,49,FOLLOW_16); + + current.merge(kw); + newLeafNode(kw, grammarAccess.getDOUBLEAccess().getFullStopKeyword_1()); + + this_INT_2=(Token)match(input,RULE_INT,FOLLOW_2); + + current.merge(this_INT_2); + + + newLeafNode(this_INT_2, grammarAccess.getDOUBLEAccess().getINTTerminalRuleCall_2()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleDOUBLE" + + + // $ANTLR start "ruleComparisonOperatorRule" + // InternalGeneratorDSL.g:2878:1: ruleComparisonOperatorRule returns [Enumerator current=null] : ( (enumLiteral_0= '>=' ) | (enumLiteral_1= '>' ) | (enumLiteral_2= '=' ) | (enumLiteral_3= '!=' ) | (enumLiteral_4= '<' ) | (enumLiteral_5= '<=' ) ) ; + public final Enumerator ruleComparisonOperatorRule() throws RecognitionException { + Enumerator current = null; + + Token enumLiteral_0=null; + Token enumLiteral_1=null; + Token enumLiteral_2=null; + Token enumLiteral_3=null; + Token enumLiteral_4=null; + Token enumLiteral_5=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2884:2: ( ( (enumLiteral_0= '>=' ) | (enumLiteral_1= '>' ) | (enumLiteral_2= '=' ) | (enumLiteral_3= '!=' ) | (enumLiteral_4= '<' ) | (enumLiteral_5= '<=' ) ) ) + // InternalGeneratorDSL.g:2885:2: ( (enumLiteral_0= '>=' ) | (enumLiteral_1= '>' ) | (enumLiteral_2= '=' ) | (enumLiteral_3= '!=' ) | (enumLiteral_4= '<' ) | (enumLiteral_5= '<=' ) ) + { + // InternalGeneratorDSL.g:2885:2: ( (enumLiteral_0= '>=' ) | (enumLiteral_1= '>' ) | (enumLiteral_2= '=' ) | (enumLiteral_3= '!=' ) | (enumLiteral_4= '<' ) | (enumLiteral_5= '<=' ) ) + int alt37=6; + switch ( input.LA(1) ) { + case 50: + { + alt37=1; + } + break; + case 51: + { + alt37=2; + } + break; + case 52: + { + alt37=3; + } + break; + case 53: + { + alt37=4; + } + break; + case 54: + { + alt37=5; + } + break; + case 55: + { + alt37=6; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 37, 0, input); + + throw nvae; + } + + switch (alt37) { + case 1 : + // InternalGeneratorDSL.g:2886:3: (enumLiteral_0= '>=' ) + { + // InternalGeneratorDSL.g:2886:3: (enumLiteral_0= '>=' ) + // InternalGeneratorDSL.g:2887:4: enumLiteral_0= '>=' + { + enumLiteral_0=(Token)match(input,50,FOLLOW_2); + + current = grammarAccess.getComparisonOperatorRuleAccess().getGreaterThanEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getComparisonOperatorRuleAccess().getGreaterThanEnumLiteralDeclaration_0()); + + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:2894:3: (enumLiteral_1= '>' ) + { + // InternalGeneratorDSL.g:2894:3: (enumLiteral_1= '>' ) + // InternalGeneratorDSL.g:2895:4: enumLiteral_1= '>' + { + enumLiteral_1=(Token)match(input,51,FOLLOW_2); + + current = grammarAccess.getComparisonOperatorRuleAccess().getGreaterEqualEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getComparisonOperatorRuleAccess().getGreaterEqualEnumLiteralDeclaration_1()); + + + } + + + } + break; + case 3 : + // InternalGeneratorDSL.g:2902:3: (enumLiteral_2= '=' ) + { + // InternalGeneratorDSL.g:2902:3: (enumLiteral_2= '=' ) + // InternalGeneratorDSL.g:2903:4: enumLiteral_2= '=' + { + enumLiteral_2=(Token)match(input,52,FOLLOW_2); + + current = grammarAccess.getComparisonOperatorRuleAccess().getEqualEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getComparisonOperatorRuleAccess().getEqualEnumLiteralDeclaration_2()); + + + } + + + } + break; + case 4 : + // InternalGeneratorDSL.g:2910:3: (enumLiteral_3= '!=' ) + { + // InternalGeneratorDSL.g:2910:3: (enumLiteral_3= '!=' ) + // InternalGeneratorDSL.g:2911:4: enumLiteral_3= '!=' + { + enumLiteral_3=(Token)match(input,53,FOLLOW_2); + + current = grammarAccess.getComparisonOperatorRuleAccess().getUnequalEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getComparisonOperatorRuleAccess().getUnequalEnumLiteralDeclaration_3()); + + + } + + + } + break; + case 5 : + // InternalGeneratorDSL.g:2918:3: (enumLiteral_4= '<' ) + { + // InternalGeneratorDSL.g:2918:3: (enumLiteral_4= '<' ) + // InternalGeneratorDSL.g:2919:4: enumLiteral_4= '<' + { + enumLiteral_4=(Token)match(input,54,FOLLOW_2); + + current = grammarAccess.getComparisonOperatorRuleAccess().getLessEqualEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_4, grammarAccess.getComparisonOperatorRuleAccess().getLessEqualEnumLiteralDeclaration_4()); + + + } + + + } + break; + case 6 : + // InternalGeneratorDSL.g:2926:3: (enumLiteral_5= '<=' ) + { + // InternalGeneratorDSL.g:2926:3: (enumLiteral_5= '<=' ) + // InternalGeneratorDSL.g:2927:4: enumLiteral_5= '<=' + { + enumLiteral_5=(Token)match(input,55,FOLLOW_2); + + current = grammarAccess.getComparisonOperatorRuleAccess().getLessThanEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_5, grammarAccess.getComparisonOperatorRuleAccess().getLessThanEnumLiteralDeclaration_5()); + + + } + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleComparisonOperatorRule" + + + // $ANTLR start "ruleAddOrSubtractOperatorRule" + // InternalGeneratorDSL.g:2937:1: ruleAddOrSubtractOperatorRule returns [Enumerator current=null] : ( (enumLiteral_0= '+' ) | (enumLiteral_1= '-' ) ) ; + public final Enumerator ruleAddOrSubtractOperatorRule() throws RecognitionException { + Enumerator current = null; + + Token enumLiteral_0=null; + Token enumLiteral_1=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2943:2: ( ( (enumLiteral_0= '+' ) | (enumLiteral_1= '-' ) ) ) + // InternalGeneratorDSL.g:2944:2: ( (enumLiteral_0= '+' ) | (enumLiteral_1= '-' ) ) + { + // InternalGeneratorDSL.g:2944:2: ( (enumLiteral_0= '+' ) | (enumLiteral_1= '-' ) ) + int alt38=2; + int LA38_0 = input.LA(1); + + if ( (LA38_0==56) ) { + alt38=1; + } + else if ( (LA38_0==57) ) { + alt38=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 38, 0, input); + + throw nvae; + } + switch (alt38) { + case 1 : + // InternalGeneratorDSL.g:2945:3: (enumLiteral_0= '+' ) + { + // InternalGeneratorDSL.g:2945:3: (enumLiteral_0= '+' ) + // InternalGeneratorDSL.g:2946:4: enumLiteral_0= '+' + { + enumLiteral_0=(Token)match(input,56,FOLLOW_2); + + current = grammarAccess.getAddOrSubtractOperatorRuleAccess().getAddEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getAddOrSubtractOperatorRuleAccess().getAddEnumLiteralDeclaration_0()); + + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:2953:3: (enumLiteral_1= '-' ) + { + // InternalGeneratorDSL.g:2953:3: (enumLiteral_1= '-' ) + // InternalGeneratorDSL.g:2954:4: enumLiteral_1= '-' + { + enumLiteral_1=(Token)match(input,57,FOLLOW_2); + + current = grammarAccess.getAddOrSubtractOperatorRuleAccess().getSubtractEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getAddOrSubtractOperatorRuleAccess().getSubtractEnumLiteralDeclaration_1()); + + + } + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleAddOrSubtractOperatorRule" + + + // $ANTLR start "ruleMultiplyDivideModuloOperatorRule" + // InternalGeneratorDSL.g:2964:1: ruleMultiplyDivideModuloOperatorRule returns [Enumerator current=null] : ( (enumLiteral_0= '*' ) | (enumLiteral_1= '/' ) | (enumLiteral_2= '%' ) ) ; + public final Enumerator ruleMultiplyDivideModuloOperatorRule() throws RecognitionException { + Enumerator current = null; + + Token enumLiteral_0=null; + Token enumLiteral_1=null; + Token enumLiteral_2=null; + + + enterRule(); + + try { + // InternalGeneratorDSL.g:2970:2: ( ( (enumLiteral_0= '*' ) | (enumLiteral_1= '/' ) | (enumLiteral_2= '%' ) ) ) + // InternalGeneratorDSL.g:2971:2: ( (enumLiteral_0= '*' ) | (enumLiteral_1= '/' ) | (enumLiteral_2= '%' ) ) + { + // InternalGeneratorDSL.g:2971:2: ( (enumLiteral_0= '*' ) | (enumLiteral_1= '/' ) | (enumLiteral_2= '%' ) ) + int alt39=3; + switch ( input.LA(1) ) { + case 58: + { + alt39=1; + } + break; + case 59: + { + alt39=2; + } + break; + case 60: + { + alt39=3; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 39, 0, input); + + throw nvae; + } + + switch (alt39) { + case 1 : + // InternalGeneratorDSL.g:2972:3: (enumLiteral_0= '*' ) + { + // InternalGeneratorDSL.g:2972:3: (enumLiteral_0= '*' ) + // InternalGeneratorDSL.g:2973:4: enumLiteral_0= '*' + { + enumLiteral_0=(Token)match(input,58,FOLLOW_2); + + current = grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getMultiplyEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getMultiplyEnumLiteralDeclaration_0()); + + + } + + + } + break; + case 2 : + // InternalGeneratorDSL.g:2980:3: (enumLiteral_1= '/' ) + { + // InternalGeneratorDSL.g:2980:3: (enumLiteral_1= '/' ) + // InternalGeneratorDSL.g:2981:4: enumLiteral_1= '/' + { + enumLiteral_1=(Token)match(input,59,FOLLOW_2); + + current = grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getDivideEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getDivideEnumLiteralDeclaration_1()); + + + } + + + } + break; + case 3 : + // InternalGeneratorDSL.g:2988:3: (enumLiteral_2= '%' ) + { + // InternalGeneratorDSL.g:2988:3: (enumLiteral_2= '%' ) + // InternalGeneratorDSL.g:2989:4: enumLiteral_2= '%' + { + enumLiteral_2=(Token)match(input,60,FOLLOW_2); + + current = grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getModuloEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getMultiplyDivideModuloOperatorRuleAccess().getModuloEnumLiteralDeclaration_2()); + + + } + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMultiplyDivideModuloOperatorRule" + + // Delegated rules + + + + + public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x0000000008035002L}); + public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000008034002L}); + public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000008024002L}); + public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000008020002L}); + public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000000010L}); + public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000002000L}); + public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x00000000000000A0L}); + public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000008000L}); + public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000000020L}); + public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000040000L}); + public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000005200000L}); + public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000080000L}); + public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000008120000L}); + public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000000040L}); + public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000400000L}); + public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000800000L}); + public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000200002L}); + public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000200004000L}); + public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000002800000L}); + public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000010000000L}); + public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000020000000L}); + public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000040000000L}); + public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000080000000L}); + public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000200004020L}); + public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000100000000L}); + public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000200014020L}); + public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000000400000002L}); + public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x00000008000000B0L}); + public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000001000000000L}); + public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x00018020002000F0L}); + public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0001802000A000F0L}); + public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000004000000002L}); + public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0301EA20002000F0L}); + public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000008000000002L}); + public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000010000000002L}); + public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x00FC000000000002L}); + public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0300000000000002L}); + public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x1C00000000000002L}); + public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0000040000000002L}); + public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0000100000000000L}); + public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000080000000000L}); + public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0301FA20002000F0L}); + public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0000100002000000L}); + public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0002000000000000L}); + +} \ No newline at end of file diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/scoping/AbstractGeneratorDSLScopeProvider.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/scoping/AbstractGeneratorDSLScopeProvider.java new file mode 100644 index 00000000..fda40608 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/scoping/AbstractGeneratorDSLScopeProvider.java @@ -0,0 +1,9 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.scoping; + +import de.evoal.languages.model.instance.dsl.scoping.InstanceLanguageScopeProvider; + +public abstract class AbstractGeneratorDSLScopeProvider extends InstanceLanguageScopeProvider { +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/serializer/GeneratorDSLSemanticSequencer.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/serializer/GeneratorDSLSemanticSequencer.java new file mode 100644 index 00000000..2d3d46bb --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/serializer/GeneratorDSLSemanticSequencer.java @@ -0,0 +1,480 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.serializer; + +import com.google.inject.Inject; +import de.evoal.languages.model.el.AddOrSubtractExpression; +import de.evoal.languages.model.el.AndExpression; +import de.evoal.languages.model.el.BooleanLiteral; +import de.evoal.languages.model.el.Call; +import de.evoal.languages.model.el.ComparisonExpression; +import de.evoal.languages.model.el.DoubleLiteral; +import de.evoal.languages.model.el.ELPackage; +import de.evoal.languages.model.el.FunctionName; +import de.evoal.languages.model.el.IntegerLiteral; +import de.evoal.languages.model.el.MultiplyDivideModuloExpression; +import de.evoal.languages.model.el.NotExpression; +import de.evoal.languages.model.el.OrExpression; +import de.evoal.languages.model.el.Parantheses; +import de.evoal.languages.model.el.PartialComparisonExpression; +import de.evoal.languages.model.el.PowerOfExpression; +import de.evoal.languages.model.el.StringLiteral; +import de.evoal.languages.model.el.UnaryAddOrSubtractExpression; +import de.evoal.languages.model.el.ValueReference; +import de.evoal.languages.model.el.XorExpression; +import de.evoal.languages.model.generator.dsl.generatorDSL.ApplyStatement; +import de.evoal.languages.model.generator.dsl.generatorDSL.Configuration; +import de.evoal.languages.model.generator.dsl.generatorDSL.CounterRange; +import de.evoal.languages.model.generator.dsl.generatorDSL.ForStatement; +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionDefinitionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.FunctionReferences; +import de.evoal.languages.model.generator.dsl.generatorDSL.Functions; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinition; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDefinitionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorReferences; +import de.evoal.languages.model.generator.dsl.generatorDSL.Generators; +import de.evoal.languages.model.generator.dsl.generatorDSL.LoopVariable; +import de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinition; +import de.evoal.languages.model.generator.dsl.generatorDSL.ParametrizedFunctionDefinitionReference; +import de.evoal.languages.model.generator.dsl.generatorDSL.Use; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; +import de.evoal.languages.model.instance.Array; +import de.evoal.languages.model.instance.Attribute; +import de.evoal.languages.model.instance.DataReference; +import de.evoal.languages.model.instance.Instance; +import de.evoal.languages.model.instance.InstancePackage; +import de.evoal.languages.model.instance.LiteralValue; +import de.evoal.languages.model.instance.Misc; +import de.evoal.languages.model.instance.Name; +import de.evoal.languages.model.instance.dsl.serializer.InstanceLanguageSemanticSequencer; +import java.util.Set; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.xtext.Action; +import org.eclipse.xtext.Parameter; +import org.eclipse.xtext.ParserRule; +import org.eclipse.xtext.serializer.ISerializationContext; +import org.eclipse.xtext.serializer.acceptor.SequenceFeeder; +import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient; + +@SuppressWarnings("all") +public class GeneratorDSLSemanticSequencer extends InstanceLanguageSemanticSequencer { + + @Inject + private GeneratorDSLGrammarAccess grammarAccess; + + @Override + public void sequence(ISerializationContext context, EObject semanticObject) { + EPackage epackage = semanticObject.eClass().getEPackage(); + ParserRule rule = context.getParserRule(); + Action action = context.getAssignedAction(); + Set<Parameter> parameters = context.getEnabledBooleanParameters(); + if (epackage == ELPackage.eINSTANCE) + switch (semanticObject.eClass().getClassifierID()) { + case ELPackage.ADD_OR_SUBTRACT_EXPRESSION: + sequence_AddOrSubtractExpressionRule(context, (AddOrSubtractExpression) semanticObject); + return; + case ELPackage.AND_EXPRESSION: + sequence_AndExpressionRule(context, (AndExpression) semanticObject); + return; + case ELPackage.BOOLEAN_LITERAL: + sequence_BooleanLiteralRule(context, (BooleanLiteral) semanticObject); + return; + case ELPackage.CALL: + sequence_CallRule(context, (Call) semanticObject); + return; + case ELPackage.COMPARISON_EXPRESSION: + sequence_ComparisonExpressionRule(context, (ComparisonExpression) semanticObject); + return; + case ELPackage.DOUBLE_LITERAL: + sequence_DoubleLiteralRule(context, (DoubleLiteral) semanticObject); + return; + case ELPackage.FUNCTION_NAME: + sequence_FunctionNameRule(context, (FunctionName) semanticObject); + return; + case ELPackage.INTEGER_LITERAL: + sequence_IntegerLiteralRule(context, (IntegerLiteral) semanticObject); + return; + case ELPackage.MULTIPLY_DIVIDE_MODULO_EXPRESSION: + sequence_MultiplyDivideModuloExpressionRule(context, (MultiplyDivideModuloExpression) semanticObject); + return; + case ELPackage.NOT_EXPRESSION: + sequence_NotExpressionRule(context, (NotExpression) semanticObject); + return; + case ELPackage.OR_EXPRESSION: + sequence_OrExpressionRule(context, (OrExpression) semanticObject); + return; + case ELPackage.PARANTHESES: + sequence_ParanthesesRule(context, (Parantheses) semanticObject); + return; + case ELPackage.PARTIAL_COMPARISON_EXPRESSION: + sequence_PartialComparisonExpressionRule(context, (PartialComparisonExpression) semanticObject); + return; + case ELPackage.POWER_OF_EXPRESSION: + sequence_PowerOfExpressionRule(context, (PowerOfExpression) semanticObject); + return; + case ELPackage.STRING_LITERAL: + sequence_StringLiteralRule(context, (StringLiteral) semanticObject); + return; + case ELPackage.UNARY_ADD_OR_SUBTRACT_EXPRESSION: + sequence_UnaryAddOrSubtractExpressionRule(context, (UnaryAddOrSubtractExpression) semanticObject); + return; + case ELPackage.VALUE_REFERENCE: + sequence_ValueReferenceRule(context, (ValueReference) semanticObject); + return; + case ELPackage.XOR_EXPRESSION: + sequence_XorExpressionRule(context, (XorExpression) semanticObject); + return; + } + else if (epackage == GeneratorDSLPackage.eINSTANCE) + switch (semanticObject.eClass().getClassifierID()) { + case GeneratorDSLPackage.APPLY_STATEMENT: + sequence_ApplyStatementRule(context, (ApplyStatement) semanticObject); + return; + case GeneratorDSLPackage.CONFIGURATION: + sequence_ConfigurationRule(context, (Configuration) semanticObject); + return; + case GeneratorDSLPackage.COUNTER_RANGE: + sequence_CounterRangeRule(context, (CounterRange) semanticObject); + return; + case GeneratorDSLPackage.FOR_STATEMENT: + sequence_ForStatementRule(context, (ForStatement) semanticObject); + return; + case GeneratorDSLPackage.FUNCTION_DEFINITION_REFERENCE: + sequence_FunctionDefinitionReferenceRule(context, (FunctionDefinitionReference) semanticObject); + return; + case GeneratorDSLPackage.FUNCTION_REFERENCES: + sequence_FunctionReferencesRule(context, (FunctionReferences) semanticObject); + return; + case GeneratorDSLPackage.FUNCTIONS: + sequence_FunctionsRule(context, (Functions) semanticObject); + return; + case GeneratorDSLPackage.GENERATOR_DEFINITION: + sequence_GeneratorDefinitionRule(context, (GeneratorDefinition) semanticObject); + return; + case GeneratorDSLPackage.GENERATOR_DEFINITION_REFERENCE: + sequence_GeneratorDefinitionReferenceRule(context, (GeneratorDefinitionReference) semanticObject); + return; + case GeneratorDSLPackage.GENERATOR_REFERENCES: + sequence_GeneratorReferencesRule(context, (GeneratorReferences) semanticObject); + return; + case GeneratorDSLPackage.GENERATORS: + sequence_GeneratorsRule(context, (Generators) semanticObject); + return; + case GeneratorDSLPackage.LOOP_VARIABLE: + sequence_LoopVariableReference(context, (LoopVariable) semanticObject); + return; + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION: + sequence_ParametrizedFunctionDefinitionRule(context, (ParametrizedFunctionDefinition) semanticObject); + return; + case GeneratorDSLPackage.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE: + sequence_ParametrizedFunctionDefinitionReferenceRule(context, (ParametrizedFunctionDefinitionReference) semanticObject); + return; + case GeneratorDSLPackage.USE: + sequence_UseRule(context, (Use) semanticObject); + return; + } + else if (epackage == InstancePackage.eINSTANCE) + switch (semanticObject.eClass().getClassifierID()) { + case InstancePackage.ARRAY: + sequence_ArrayRule(context, (Array) semanticObject); + return; + case InstancePackage.ATTRIBUTE: + sequence_AttributeRule(context, (Attribute) semanticObject); + return; + case InstancePackage.DATA_REFERENCE: + sequence_DataReferenceRule(context, (DataReference) semanticObject); + return; + case InstancePackage.INSTANCE: + sequence_InstanceRule(context, (Instance) semanticObject); + return; + case InstancePackage.LITERAL_VALUE: + sequence_LiteralValueRule(context, (LiteralValue) semanticObject); + return; + case InstancePackage.MISC: + sequence_MiscRule(context, (Misc) semanticObject); + return; + case InstancePackage.NAME: + sequence_NameRule(context, (Name) semanticObject); + return; + } + if (errorAcceptor != null) + errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context)); + } + + /** + * Contexts: + * StatementRule returns ApplyStatement + * ApplyStatementRule returns ApplyStatement + * + * Constraint: + * (file=STRING count=INT function=FunctionReferenceRule generator=GeneratorReferenceRule) + */ + protected void sequence_ApplyStatementRule(ISerializationContext context, ApplyStatement semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.APPLY_STATEMENT__FILE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.APPLY_STATEMENT__FILE)); + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.APPLY_STATEMENT__COUNT) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.APPLY_STATEMENT__COUNT)); + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.APPLY_STATEMENT__FUNCTION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.APPLY_STATEMENT__FUNCTION)); + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.APPLY_STATEMENT__GENERATOR) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.APPLY_STATEMENT__GENERATOR)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getApplyStatementRuleAccess().getFileSTRINGTerminalRuleCall_1_0(), semanticObject.getFile()); + feeder.accept(grammarAccess.getApplyStatementRuleAccess().getCountINTTerminalRuleCall_3_0(), semanticObject.getCount()); + feeder.accept(grammarAccess.getApplyStatementRuleAccess().getFunctionFunctionReferenceRuleParserRuleCall_7_0(), semanticObject.getFunction()); + feeder.accept(grammarAccess.getApplyStatementRuleAccess().getGeneratorGeneratorReferenceRuleParserRuleCall_9_0(), semanticObject.getGenerator()); + feeder.finish(); + } + + + /** + * Contexts: + * ConfigurationRule returns Configuration + * + * Constraint: + * ( + * (uses+=UseRule+ ((generators+=GeneratorDefinitionRule+ statements+=StatementRule+) | statements+=StatementRule+)) | + * ( + * ((uses+=UseRule+ generators+=GeneratorDefinitionRule+) | generators+=GeneratorDefinitionRule+)? + * functions+=ParametrizedFunctionDefinitionRule+ + * statements+=StatementRule+ + * ) | + * (generators+=GeneratorDefinitionRule+ statements+=StatementRule+) | + * statements+=StatementRule+ + * )? + */ + protected void sequence_ConfigurationRule(ISerializationContext context, Configuration semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * RangeRule returns CounterRange + * CounterRangeRule returns CounterRange + * + * Constraint: + * (start=INT end=INT) + */ + protected void sequence_CounterRangeRule(ISerializationContext context, CounterRange semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.COUNTER_RANGE__START) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.COUNTER_RANGE__START)); + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.COUNTER_RANGE__END) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.COUNTER_RANGE__END)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getCounterRangeRuleAccess().getStartINTTerminalRuleCall_1_0(), semanticObject.getStart()); + feeder.accept(grammarAccess.getCounterRangeRuleAccess().getEndINTTerminalRuleCall_3_0(), semanticObject.getEnd()); + feeder.finish(); + } + + + /** + * Contexts: + * StatementRule returns ForStatement + * ForStatementRule returns ForStatement + * + * Constraint: + * (name=ID range=RangeRule statements+=StatementRule*) + */ + protected void sequence_ForStatementRule(ISerializationContext context, ForStatement semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * FunctionReferenceRule returns FunctionDefinitionReference + * FunctionDefReferenceRule returns FunctionDefinitionReference + * FunctionDefinitionReferenceRule returns FunctionDefinitionReference + * + * Constraint: + * definition=[FunctionDefinition|StringOrId] + */ + protected void sequence_FunctionDefinitionReferenceRule(ISerializationContext context, FunctionDefinitionReference semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.FUNCTION_DEFINITION_REFERENCE__DEFINITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.FUNCTION_DEFINITION_REFERENCE__DEFINITION)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionStringOrIdParserRuleCall_2_0_1(), semanticObject.eGet(GeneratorDSLPackage.Literals.FUNCTION_DEFINITION_REFERENCE__DEFINITION, false)); + feeder.finish(); + } + + + /** + * Contexts: + * FunctionReferencesRule returns FunctionReferences + * + * Constraint: + * (functions+=FunctionDefReferenceRule functions+=FunctionDefReferenceRule*) + */ + protected void sequence_FunctionReferencesRule(ISerializationContext context, FunctionReferences semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * RangeRule returns Functions + * FunctionsRule returns Functions + * + * Constraint: + * functionReferences=FunctionReferencesRule? + */ + protected void sequence_FunctionsRule(ISerializationContext context, Functions semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * GeneratorReferenceRule returns GeneratorDefinitionReference + * GeneratorDefinitionReferenceRule returns GeneratorDefinitionReference + * + * Constraint: + * definition=[GeneratorDefinition|StringOrId] + */ + protected void sequence_GeneratorDefinitionReferenceRule(ISerializationContext context, GeneratorDefinitionReference semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.GENERATOR_DEFINITION_REFERENCE__DEFINITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.GENERATOR_DEFINITION_REFERENCE__DEFINITION)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getGeneratorDefinitionReferenceRuleAccess().getDefinitionGeneratorDefinitionStringOrIdParserRuleCall_1_0_1(), semanticObject.eGet(GeneratorDSLPackage.Literals.GENERATOR_DEFINITION_REFERENCE__DEFINITION, false)); + feeder.finish(); + } + + + /** + * Contexts: + * GeneratorDefinitionRule returns GeneratorDefinition + * + * Constraint: + * (name=StringOrId definition=InstanceRule) + */ + protected void sequence_GeneratorDefinitionRule(ISerializationContext context, GeneratorDefinition semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.GENERATOR_DEFINITION__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.GENERATOR_DEFINITION__NAME)); + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.GENERATOR_DEFINITION__DEFINITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.GENERATOR_DEFINITION__DEFINITION)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getGeneratorDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0(), semanticObject.getName()); + feeder.accept(grammarAccess.getGeneratorDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0(), semanticObject.getDefinition()); + feeder.finish(); + } + + + /** + * Contexts: + * GeneratorReferencesRule returns GeneratorReferences + * + * Constraint: + * (generators+=[GeneratorDefinition|StringOrId] generators+=[GeneratorDefinition|StringOrId]*) + */ + protected void sequence_GeneratorReferencesRule(ISerializationContext context, GeneratorReferences semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * RangeRule returns Generators + * GeneratorsRule returns Generators + * + * Constraint: + * generatorReferences=GeneratorReferencesRule? + */ + protected void sequence_GeneratorsRule(ISerializationContext context, Generators semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * GeneratorReferenceRule returns LoopVariable + * FunctionReferenceRule returns LoopVariable + * LoopVariableReference returns LoopVariable + * + * Constraint: + * definition=[ForStatement|ID] + */ + protected void sequence_LoopVariableReference(ISerializationContext context, LoopVariable semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.LOOP_VARIABLE__DEFINITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.LOOP_VARIABLE__DEFINITION)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getLoopVariableReferenceAccess().getDefinitionForStatementIDTerminalRuleCall_1_0_1(), semanticObject.eGet(GeneratorDSLPackage.Literals.LOOP_VARIABLE__DEFINITION, false)); + feeder.finish(); + } + + + /** + * Contexts: + * FunctionReferenceRule returns ParametrizedFunctionDefinitionReference + * FunctionDefReferenceRule returns ParametrizedFunctionDefinitionReference + * ParametrizedFunctionDefinitionReferenceRule returns ParametrizedFunctionDefinitionReference + * + * Constraint: + * definition=[FunctionDefinitionReference|StringOrId] + */ + protected void sequence_ParametrizedFunctionDefinitionReferenceRule(ISerializationContext context, ParametrizedFunctionDefinitionReference semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getParametrizedFunctionDefinitionReferenceRuleAccess().getDefinitionFunctionDefinitionReferenceStringOrIdParserRuleCall_2_0_1(), semanticObject.eGet(GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION_REFERENCE__DEFINITION, false)); + feeder.finish(); + } + + + /** + * Contexts: + * ParametrizedFunctionDefinitionRule returns ParametrizedFunctionDefinition + * + * Constraint: + * (name=StringOrId definition=InstanceRule) + */ + protected void sequence_ParametrizedFunctionDefinitionRule(ISerializationContext context, ParametrizedFunctionDefinition semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION__NAME)); + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.PARAMETRIZED_FUNCTION_DEFINITION__DEFINITION)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getNameStringOrIdParserRuleCall_1_0(), semanticObject.getName()); + feeder.accept(grammarAccess.getParametrizedFunctionDefinitionRuleAccess().getDefinitionInstanceRuleParserRuleCall_3_0(), semanticObject.getDefinition()); + feeder.finish(); + } + + + /** + * Contexts: + * UseRule returns Use + * + * Constraint: + * importURI=STRING + */ + protected void sequence_UseRule(ISerializationContext context, Use semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, GeneratorDSLPackage.Literals.USE__IMPORT_URI) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, GeneratorDSLPackage.Literals.USE__IMPORT_URI)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getUseRuleAccess().getImportURISTRINGTerminalRuleCall_1_0(), semanticObject.getImportURI()); + feeder.finish(); + } + + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/serializer/GeneratorDSLSyntacticSequencer.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/serializer/GeneratorDSLSyntacticSequencer.java new file mode 100644 index 00000000..3fd4c63a --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/serializer/GeneratorDSLSyntacticSequencer.java @@ -0,0 +1,61 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.serializer; + +import com.google.inject.Inject; +import de.evoal.languages.model.generator.dsl.services.GeneratorDSLGrammarAccess; +import java.util.List; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.IGrammarAccess; +import org.eclipse.xtext.RuleCall; +import org.eclipse.xtext.nodemodel.INode; +import org.eclipse.xtext.serializer.analysis.GrammarAlias.AbstractElementAlias; +import org.eclipse.xtext.serializer.analysis.GrammarAlias.GroupAlias; +import org.eclipse.xtext.serializer.analysis.GrammarAlias.TokenAlias; +import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynNavigable; +import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynTransition; +import org.eclipse.xtext.serializer.sequencer.AbstractSyntacticSequencer; + +@SuppressWarnings("all") +public class GeneratorDSLSyntacticSequencer extends AbstractSyntacticSequencer { + + protected GeneratorDSLGrammarAccess grammarAccess; + protected AbstractElementAlias match_InstanceRule___LeftCurlyBracketKeyword_1_0_RightCurlyBracketKeyword_1_2__q; + + @Inject + protected void init(IGrammarAccess access) { + grammarAccess = (GeneratorDSLGrammarAccess) access; + match_InstanceRule___LeftCurlyBracketKeyword_1_0_RightCurlyBracketKeyword_1_2__q = new GroupAlias(false, true, new TokenAlias(false, false, grammarAccess.getInstanceRuleAccess().getLeftCurlyBracketKeyword_1_0()), new TokenAlias(false, false, grammarAccess.getInstanceRuleAccess().getRightCurlyBracketKeyword_1_2())); + } + + @Override + protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) { + return ""; + } + + + @Override + protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) { + if (transition.getAmbiguousSyntaxes().isEmpty()) return; + List<INode> transitionNodes = collectNodes(fromNode, toNode); + for (AbstractElementAlias syntax : transition.getAmbiguousSyntaxes()) { + List<INode> syntaxNodes = getNodesFor(transitionNodes, syntax); + if (match_InstanceRule___LeftCurlyBracketKeyword_1_0_RightCurlyBracketKeyword_1_2__q.equals(syntax)) + emit_InstanceRule___LeftCurlyBracketKeyword_1_0_RightCurlyBracketKeyword_1_2__q(semanticObject, getLastNavigableState(), syntaxNodes); + else acceptNodes(getLastNavigableState(), syntaxNodes); + } + } + + /** + * Ambiguous syntax: + * ('{' '}')? + * + * This ambiguous syntax occurs at: + * name=[TypeDefinition|StringOrId] (ambiguity) (rule end) + */ + protected void emit_InstanceRule___LeftCurlyBracketKeyword_1_0_RightCurlyBracketKeyword_1_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) { + acceptNodes(transition, nodes); + } + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/services/GeneratorDSLGrammarAccess.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/services/GeneratorDSLGrammarAccess.java new file mode 100644 index 00000000..da9c61da --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/services/GeneratorDSLGrammarAccess.java @@ -0,0 +1,1511 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.services; + +import com.google.inject.Inject; +import com.google.inject.Singleton; +import de.evoal.languages.model.el.dsl.services.ExpressionLanguageGrammarAccess; +import de.evoal.languages.model.instance.dsl.services.InstanceLanguageGrammarAccess; +import java.util.List; +import org.eclipse.xtext.Action; +import org.eclipse.xtext.Alternatives; +import org.eclipse.xtext.Assignment; +import org.eclipse.xtext.CrossReference; +import org.eclipse.xtext.EnumRule; +import org.eclipse.xtext.Grammar; +import org.eclipse.xtext.GrammarUtil; +import org.eclipse.xtext.Group; +import org.eclipse.xtext.Keyword; +import org.eclipse.xtext.ParserRule; +import org.eclipse.xtext.RuleCall; +import org.eclipse.xtext.TerminalRule; +import org.eclipse.xtext.common.services.TerminalsGrammarAccess; +import org.eclipse.xtext.service.AbstractElementFinder; +import org.eclipse.xtext.service.GrammarProvider; + +@Singleton +public class GeneratorDSLGrammarAccess extends AbstractElementFinder.AbstractGrammarElementFinder { + + public class ConfigurationRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.ConfigurationRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cUsesAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final RuleCall cUsesUseRuleParserRuleCall_0_0 = (RuleCall)cUsesAssignment_0.eContents().get(0); + private final Assignment cGeneratorsAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0 = (RuleCall)cGeneratorsAssignment_1.eContents().get(0); + private final Assignment cFunctionsAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0 = (RuleCall)cFunctionsAssignment_2.eContents().get(0); + private final Assignment cStatementsAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cStatementsStatementRuleParserRuleCall_3_0 = (RuleCall)cStatementsAssignment_3.eContents().get(0); + + //ConfigurationRule returns Configuration: + // (uses += UseRule)* + // (generators += GeneratorDefinitionRule)* + // (functions += ParametrizedFunctionDefinitionRule)* + // (statements += StatementRule)* + //; + @Override public ParserRule getRule() { return rule; } + + //(uses += UseRule)* + //(generators += GeneratorDefinitionRule)* + //(functions += ParametrizedFunctionDefinitionRule)* + //(statements += StatementRule)* + public Group getGroup() { return cGroup; } + + //(uses += UseRule)* + public Assignment getUsesAssignment_0() { return cUsesAssignment_0; } + + //UseRule + public RuleCall getUsesUseRuleParserRuleCall_0_0() { return cUsesUseRuleParserRuleCall_0_0; } + + //(generators += GeneratorDefinitionRule)* + public Assignment getGeneratorsAssignment_1() { return cGeneratorsAssignment_1; } + + //GeneratorDefinitionRule + public RuleCall getGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0() { return cGeneratorsGeneratorDefinitionRuleParserRuleCall_1_0; } + + //(functions += ParametrizedFunctionDefinitionRule)* + public Assignment getFunctionsAssignment_2() { return cFunctionsAssignment_2; } + + //ParametrizedFunctionDefinitionRule + public RuleCall getFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0() { return cFunctionsParametrizedFunctionDefinitionRuleParserRuleCall_2_0; } + + //(statements += StatementRule)* + public Assignment getStatementsAssignment_3() { return cStatementsAssignment_3; } + + //StatementRule + public RuleCall getStatementsStatementRuleParserRuleCall_3_0() { return cStatementsStatementRuleParserRuleCall_3_0; } + } + public class UseRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.UseRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cUseKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cImportURIAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cImportURISTRINGTerminalRuleCall_1_0 = (RuleCall)cImportURIAssignment_1.eContents().get(0); + private final Keyword cSemicolonKeyword_2 = (Keyword)cGroup.eContents().get(2); + + //UseRule returns Use: + // 'use' importURI = STRING ';' + //; + @Override public ParserRule getRule() { return rule; } + + //'use' importURI = STRING ';' + public Group getGroup() { return cGroup; } + + //'use' + public Keyword getUseKeyword_0() { return cUseKeyword_0; } + + //importURI = STRING + public Assignment getImportURIAssignment_1() { return cImportURIAssignment_1; } + + //STRING + public RuleCall getImportURISTRINGTerminalRuleCall_1_0() { return cImportURISTRINGTerminalRuleCall_1_0; } + + //';' + public Keyword getSemicolonKeyword_2() { return cSemicolonKeyword_2; } + } + public class ParametrizedFunctionDefinitionRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.ParametrizedFunctionDefinitionRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cFunctionKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameStringOrIdParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + private final Keyword cUsingKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cDefinitionAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cDefinitionInstanceRuleParserRuleCall_3_0 = (RuleCall)cDefinitionAssignment_3.eContents().get(0); + private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4); + + //ParametrizedFunctionDefinitionRule returns ParametrizedFunctionDefinition: + // 'function' name = StringOrId 'using' + // definition = InstanceRule + // ';' + //; + @Override public ParserRule getRule() { return rule; } + + //'function' name = StringOrId 'using' + // definition = InstanceRule + //';' + public Group getGroup() { return cGroup; } + + //'function' + public Keyword getFunctionKeyword_0() { return cFunctionKeyword_0; } + + //name = StringOrId + public Assignment getNameAssignment_1() { return cNameAssignment_1; } + + //StringOrId + public RuleCall getNameStringOrIdParserRuleCall_1_0() { return cNameStringOrIdParserRuleCall_1_0; } + + //'using' + public Keyword getUsingKeyword_2() { return cUsingKeyword_2; } + + //definition = InstanceRule + public Assignment getDefinitionAssignment_3() { return cDefinitionAssignment_3; } + + //InstanceRule + public RuleCall getDefinitionInstanceRuleParserRuleCall_3_0() { return cDefinitionInstanceRuleParserRuleCall_3_0; } + + //';' + public Keyword getSemicolonKeyword_4() { return cSemicolonKeyword_4; } + } + public class GeneratorDefinitionRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorDefinitionRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cGeneratorKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameStringOrIdParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + private final Keyword cUsingKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cDefinitionAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cDefinitionInstanceRuleParserRuleCall_3_0 = (RuleCall)cDefinitionAssignment_3.eContents().get(0); + private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4); + + //GeneratorDefinitionRule returns GeneratorDefinition: + // 'generator' name = StringOrId 'using' + // definition = InstanceRule + // ';' + //; + @Override public ParserRule getRule() { return rule; } + + //'generator' name = StringOrId 'using' + // definition = InstanceRule + //';' + public Group getGroup() { return cGroup; } + + //'generator' + public Keyword getGeneratorKeyword_0() { return cGeneratorKeyword_0; } + + //name = StringOrId + public Assignment getNameAssignment_1() { return cNameAssignment_1; } + + //StringOrId + public RuleCall getNameStringOrIdParserRuleCall_1_0() { return cNameStringOrIdParserRuleCall_1_0; } + + //'using' + public Keyword getUsingKeyword_2() { return cUsingKeyword_2; } + + //definition = InstanceRule + public Assignment getDefinitionAssignment_3() { return cDefinitionAssignment_3; } + + //InstanceRule + public RuleCall getDefinitionInstanceRuleParserRuleCall_3_0() { return cDefinitionInstanceRuleParserRuleCall_3_0; } + + //';' + public Keyword getSemicolonKeyword_4() { return cSemicolonKeyword_4; } + } + public class StatementRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.StatementRule"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cForStatementRuleParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cApplyStatementRuleParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + + //StatementRule returns Statement: + // ForStatementRule | ApplyStatementRule + //; + @Override public ParserRule getRule() { return rule; } + + //ForStatementRule | ApplyStatementRule + public Alternatives getAlternatives() { return cAlternatives; } + + //ForStatementRule + public RuleCall getForStatementRuleParserRuleCall_0() { return cForStatementRuleParserRuleCall_0; } + + //ApplyStatementRule + public RuleCall getApplyStatementRuleParserRuleCall_1() { return cApplyStatementRuleParserRuleCall_1; } + } + public class ForStatementRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.ForStatementRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cForKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + private final Keyword cInKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cRangeAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cRangeRangeRuleParserRuleCall_3_0 = (RuleCall)cRangeAssignment_3.eContents().get(0); + private final Keyword cLoopKeyword_4 = (Keyword)cGroup.eContents().get(4); + private final Assignment cStatementsAssignment_5 = (Assignment)cGroup.eContents().get(5); + private final RuleCall cStatementsStatementRuleParserRuleCall_5_0 = (RuleCall)cStatementsAssignment_5.eContents().get(0); + private final Keyword cEndKeyword_6 = (Keyword)cGroup.eContents().get(6); + + //ForStatementRule returns ForStatement: + // 'for' name = ID 'in' range = RangeRule 'loop' + // (statements += StatementRule)* + // 'end' + //; + @Override public ParserRule getRule() { return rule; } + + //'for' name = ID 'in' range = RangeRule 'loop' + // (statements += StatementRule)* + //'end' + public Group getGroup() { return cGroup; } + + //'for' + public Keyword getForKeyword_0() { return cForKeyword_0; } + + //name = ID + public Assignment getNameAssignment_1() { return cNameAssignment_1; } + + //ID + public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; } + + //'in' + public Keyword getInKeyword_2() { return cInKeyword_2; } + + //range = RangeRule + public Assignment getRangeAssignment_3() { return cRangeAssignment_3; } + + //RangeRule + public RuleCall getRangeRangeRuleParserRuleCall_3_0() { return cRangeRangeRuleParserRuleCall_3_0; } + + //'loop' + public Keyword getLoopKeyword_4() { return cLoopKeyword_4; } + + //(statements += StatementRule)* + public Assignment getStatementsAssignment_5() { return cStatementsAssignment_5; } + + //StatementRule + public RuleCall getStatementsStatementRuleParserRuleCall_5_0() { return cStatementsStatementRuleParserRuleCall_5_0; } + + //'end' + public Keyword getEndKeyword_6() { return cEndKeyword_6; } + } + public class RangeRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.RangeRule"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cFunctionsRuleParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cGeneratorsRuleParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final RuleCall cCounterRangeRuleParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + + //RangeRule returns Range: + // FunctionsRule | GeneratorsRule | CounterRangeRule + //; + @Override public ParserRule getRule() { return rule; } + + //FunctionsRule | GeneratorsRule | CounterRangeRule + public Alternatives getAlternatives() { return cAlternatives; } + + //FunctionsRule + public RuleCall getFunctionsRuleParserRuleCall_0() { return cFunctionsRuleParserRuleCall_0; } + + //GeneratorsRule + public RuleCall getGeneratorsRuleParserRuleCall_1() { return cGeneratorsRuleParserRuleCall_1; } + + //CounterRangeRule + public RuleCall getCounterRangeRuleParserRuleCall_2() { return cCounterRangeRuleParserRuleCall_2; } + } + public class CounterRangeRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.CounterRangeRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cLeftSquareBracketKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cStartAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cStartINTTerminalRuleCall_1_0 = (RuleCall)cStartAssignment_1.eContents().get(0); + private final Keyword cToKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cEndAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cEndINTTerminalRuleCall_3_0 = (RuleCall)cEndAssignment_3.eContents().get(0); + private final Keyword cRightSquareBracketKeyword_4 = (Keyword)cGroup.eContents().get(4); + + //CounterRangeRule returns CounterRange: + // '[' start = INT 'to' end = INT ']' + //; + @Override public ParserRule getRule() { return rule; } + + //'[' start = INT 'to' end = INT ']' + public Group getGroup() { return cGroup; } + + //'[' + public Keyword getLeftSquareBracketKeyword_0() { return cLeftSquareBracketKeyword_0; } + + //start = INT + public Assignment getStartAssignment_1() { return cStartAssignment_1; } + + //INT + public RuleCall getStartINTTerminalRuleCall_1_0() { return cStartINTTerminalRuleCall_1_0; } + + //'to' + public Keyword getToKeyword_2() { return cToKeyword_2; } + + //end = INT + public Assignment getEndAssignment_3() { return cEndAssignment_3; } + + //INT + public RuleCall getEndINTTerminalRuleCall_3_0() { return cEndINTTerminalRuleCall_3_0; } + + //']' + public Keyword getRightSquareBracketKeyword_4() { return cRightSquareBracketKeyword_4; } + } + public class FunctionsRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionsRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Action cFunctionsAction_0 = (Action)cGroup.eContents().get(0); + private final Keyword cFunctionsKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cFunctionReferencesAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0 = (RuleCall)cFunctionReferencesAssignment_2.eContents().get(0); + + //FunctionsRule returns Functions: + // {Functions} 'functions' (functionReferences = FunctionReferencesRule)? + //; + @Override public ParserRule getRule() { return rule; } + + //{Functions} 'functions' (functionReferences = FunctionReferencesRule)? + public Group getGroup() { return cGroup; } + + //{Functions} + public Action getFunctionsAction_0() { return cFunctionsAction_0; } + + //'functions' + public Keyword getFunctionsKeyword_1() { return cFunctionsKeyword_1; } + + //(functionReferences = FunctionReferencesRule)? + public Assignment getFunctionReferencesAssignment_2() { return cFunctionReferencesAssignment_2; } + + //FunctionReferencesRule + public RuleCall getFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0() { return cFunctionReferencesFunctionReferencesRuleParserRuleCall_2_0; } + } + public class FunctionReferencesRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionReferencesRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cLeftSquareBracketKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cFunctionsAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cFunctionsFunctionDefReferenceRuleParserRuleCall_1_0 = (RuleCall)cFunctionsAssignment_1.eContents().get(0); + private final Group cGroup_2 = (Group)cGroup.eContents().get(2); + private final Keyword cCommaKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0); + private final Assignment cFunctionsAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1); + private final RuleCall cFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0 = (RuleCall)cFunctionsAssignment_2_1.eContents().get(0); + private final Keyword cRightSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3); + + //FunctionReferencesRule returns FunctionReferences: + // '[' functions += FunctionDefReferenceRule (',' functions += FunctionDefReferenceRule)* ']' + //; + @Override public ParserRule getRule() { return rule; } + + //'[' functions += FunctionDefReferenceRule (',' functions += FunctionDefReferenceRule)* ']' + public Group getGroup() { return cGroup; } + + //'[' + public Keyword getLeftSquareBracketKeyword_0() { return cLeftSquareBracketKeyword_0; } + + //functions += FunctionDefReferenceRule + public Assignment getFunctionsAssignment_1() { return cFunctionsAssignment_1; } + + //FunctionDefReferenceRule + public RuleCall getFunctionsFunctionDefReferenceRuleParserRuleCall_1_0() { return cFunctionsFunctionDefReferenceRuleParserRuleCall_1_0; } + + //(',' functions += FunctionDefReferenceRule)* + public Group getGroup_2() { return cGroup_2; } + + //',' + public Keyword getCommaKeyword_2_0() { return cCommaKeyword_2_0; } + + //functions += FunctionDefReferenceRule + public Assignment getFunctionsAssignment_2_1() { return cFunctionsAssignment_2_1; } + + //FunctionDefReferenceRule + public RuleCall getFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0() { return cFunctionsFunctionDefReferenceRuleParserRuleCall_2_1_0; } + + //']' + public Keyword getRightSquareBracketKeyword_3() { return cRightSquareBracketKeyword_3; } + } + public class GeneratorsRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorsRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Action cGeneratorsAction_0 = (Action)cGroup.eContents().get(0); + private final Keyword cGeneratorsKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cGeneratorReferencesAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0 = (RuleCall)cGeneratorReferencesAssignment_2.eContents().get(0); + + //GeneratorsRule returns Generators: + // {Generators} 'generators' (generatorReferences = GeneratorReferencesRule)? + //; + @Override public ParserRule getRule() { return rule; } + + //{Generators} 'generators' (generatorReferences = GeneratorReferencesRule)? + public Group getGroup() { return cGroup; } + + //{Generators} + public Action getGeneratorsAction_0() { return cGeneratorsAction_0; } + + //'generators' + public Keyword getGeneratorsKeyword_1() { return cGeneratorsKeyword_1; } + + //(generatorReferences = GeneratorReferencesRule)? + public Assignment getGeneratorReferencesAssignment_2() { return cGeneratorReferencesAssignment_2; } + + //GeneratorReferencesRule + public RuleCall getGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0() { return cGeneratorReferencesGeneratorReferencesRuleParserRuleCall_2_0; } + } + public class GeneratorReferencesRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorReferencesRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cLeftSquareBracketKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cGeneratorsAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final CrossReference cGeneratorsGeneratorDefinitionCrossReference_1_0 = (CrossReference)cGeneratorsAssignment_1.eContents().get(0); + private final RuleCall cGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_1_0_1 = (RuleCall)cGeneratorsGeneratorDefinitionCrossReference_1_0.eContents().get(1); + private final Group cGroup_2 = (Group)cGroup.eContents().get(2); + private final Keyword cCommaKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0); + private final Assignment cGeneratorsAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1); + private final CrossReference cGeneratorsGeneratorDefinitionCrossReference_2_1_0 = (CrossReference)cGeneratorsAssignment_2_1.eContents().get(0); + private final RuleCall cGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_2_1_0_1 = (RuleCall)cGeneratorsGeneratorDefinitionCrossReference_2_1_0.eContents().get(1); + private final Keyword cRightSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3); + + //GeneratorReferencesRule returns GeneratorReferences: + // '[' generators += [GeneratorDefinition|StringOrId] (',' generators += [GeneratorDefinition|StringOrId])* ']' + //; + @Override public ParserRule getRule() { return rule; } + + //'[' generators += [GeneratorDefinition|StringOrId] (',' generators += [GeneratorDefinition|StringOrId])* ']' + public Group getGroup() { return cGroup; } + + //'[' + public Keyword getLeftSquareBracketKeyword_0() { return cLeftSquareBracketKeyword_0; } + + //generators += [GeneratorDefinition|StringOrId] + public Assignment getGeneratorsAssignment_1() { return cGeneratorsAssignment_1; } + + //[GeneratorDefinition|StringOrId] + public CrossReference getGeneratorsGeneratorDefinitionCrossReference_1_0() { return cGeneratorsGeneratorDefinitionCrossReference_1_0; } + + //StringOrId + public RuleCall getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_1_0_1() { return cGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_1_0_1; } + + //(',' generators += [GeneratorDefinition|StringOrId])* + public Group getGroup_2() { return cGroup_2; } + + //',' + public Keyword getCommaKeyword_2_0() { return cCommaKeyword_2_0; } + + //generators += [GeneratorDefinition|StringOrId] + public Assignment getGeneratorsAssignment_2_1() { return cGeneratorsAssignment_2_1; } + + //[GeneratorDefinition|StringOrId] + public CrossReference getGeneratorsGeneratorDefinitionCrossReference_2_1_0() { return cGeneratorsGeneratorDefinitionCrossReference_2_1_0; } + + //StringOrId + public RuleCall getGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_2_1_0_1() { return cGeneratorsGeneratorDefinitionStringOrIdParserRuleCall_2_1_0_1; } + + //']' + public Keyword getRightSquareBracketKeyword_3() { return cRightSquareBracketKeyword_3; } + } + public class ApplyStatementRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.ApplyStatementRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cWriteKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cFileAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cFileSTRINGTerminalRuleCall_1_0 = (RuleCall)cFileAssignment_1.eContents().get(0); + private final Keyword cWithKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cCountAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cCountINTTerminalRuleCall_3_0 = (RuleCall)cCountAssignment_3.eContents().get(0); + private final Keyword cSamplesKeyword_4 = (Keyword)cGroup.eContents().get(4); + private final Keyword cFromKeyword_5 = (Keyword)cGroup.eContents().get(5); + private final Keyword cApplyingKeyword_6 = (Keyword)cGroup.eContents().get(6); + private final Assignment cFunctionAssignment_7 = (Assignment)cGroup.eContents().get(7); + private final RuleCall cFunctionFunctionReferenceRuleParserRuleCall_7_0 = (RuleCall)cFunctionAssignment_7.eContents().get(0); + private final Keyword cOnKeyword_8 = (Keyword)cGroup.eContents().get(8); + private final Assignment cGeneratorAssignment_9 = (Assignment)cGroup.eContents().get(9); + private final RuleCall cGeneratorGeneratorReferenceRuleParserRuleCall_9_0 = (RuleCall)cGeneratorAssignment_9.eContents().get(0); + private final Keyword cSemicolonKeyword_10 = (Keyword)cGroup.eContents().get(10); + + //ApplyStatementRule returns ApplyStatement: + // 'write' file = STRING 'with' count = INT 'samples' 'from' 'applying' function = FunctionReferenceRule 'on' generator = GeneratorReferenceRule ';' + //; + @Override public ParserRule getRule() { return rule; } + + //'write' file = STRING 'with' count = INT 'samples' 'from' 'applying' function = FunctionReferenceRule 'on' generator = GeneratorReferenceRule ';' + public Group getGroup() { return cGroup; } + + //'write' + public Keyword getWriteKeyword_0() { return cWriteKeyword_0; } + + //file = STRING + public Assignment getFileAssignment_1() { return cFileAssignment_1; } + + //STRING + public RuleCall getFileSTRINGTerminalRuleCall_1_0() { return cFileSTRINGTerminalRuleCall_1_0; } + + //'with' + public Keyword getWithKeyword_2() { return cWithKeyword_2; } + + //count = INT + public Assignment getCountAssignment_3() { return cCountAssignment_3; } + + //INT + public RuleCall getCountINTTerminalRuleCall_3_0() { return cCountINTTerminalRuleCall_3_0; } + + //'samples' + public Keyword getSamplesKeyword_4() { return cSamplesKeyword_4; } + + //'from' + public Keyword getFromKeyword_5() { return cFromKeyword_5; } + + //'applying' + public Keyword getApplyingKeyword_6() { return cApplyingKeyword_6; } + + //function = FunctionReferenceRule + public Assignment getFunctionAssignment_7() { return cFunctionAssignment_7; } + + //FunctionReferenceRule + public RuleCall getFunctionFunctionReferenceRuleParserRuleCall_7_0() { return cFunctionFunctionReferenceRuleParserRuleCall_7_0; } + + //'on' + public Keyword getOnKeyword_8() { return cOnKeyword_8; } + + //generator = GeneratorReferenceRule + public Assignment getGeneratorAssignment_9() { return cGeneratorAssignment_9; } + + //GeneratorReferenceRule + public RuleCall getGeneratorGeneratorReferenceRuleParserRuleCall_9_0() { return cGeneratorGeneratorReferenceRuleParserRuleCall_9_0; } + + //';' + public Keyword getSemicolonKeyword_10() { return cSemicolonKeyword_10; } + } + public class GeneratorReferenceRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorReferenceRule"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cGeneratorDefinitionReferenceRuleParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cLoopVariableReferenceParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + + //GeneratorReferenceRule returns GeneratorReference: + // GeneratorDefinitionReferenceRule | LoopVariableReference + //; + @Override public ParserRule getRule() { return rule; } + + //GeneratorDefinitionReferenceRule | LoopVariableReference + public Alternatives getAlternatives() { return cAlternatives; } + + //GeneratorDefinitionReferenceRule + public RuleCall getGeneratorDefinitionReferenceRuleParserRuleCall_0() { return cGeneratorDefinitionReferenceRuleParserRuleCall_0; } + + //LoopVariableReference + public RuleCall getLoopVariableReferenceParserRuleCall_1() { return cLoopVariableReferenceParserRuleCall_1; } + } + public class GeneratorDefinitionReferenceRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.GeneratorDefinitionReferenceRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cGeneratorKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cDefinitionAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final CrossReference cDefinitionGeneratorDefinitionCrossReference_1_0 = (CrossReference)cDefinitionAssignment_1.eContents().get(0); + private final RuleCall cDefinitionGeneratorDefinitionStringOrIdParserRuleCall_1_0_1 = (RuleCall)cDefinitionGeneratorDefinitionCrossReference_1_0.eContents().get(1); + + //GeneratorDefinitionReferenceRule returns GeneratorDefinitionReference: + // 'generator' definition = [ GeneratorDefinition | StringOrId ] + //; + @Override public ParserRule getRule() { return rule; } + + //'generator' definition = [ GeneratorDefinition | StringOrId ] + public Group getGroup() { return cGroup; } + + //'generator' + public Keyword getGeneratorKeyword_0() { return cGeneratorKeyword_0; } + + //definition = [ GeneratorDefinition | StringOrId ] + public Assignment getDefinitionAssignment_1() { return cDefinitionAssignment_1; } + + //[ GeneratorDefinition | StringOrId ] + public CrossReference getDefinitionGeneratorDefinitionCrossReference_1_0() { return cDefinitionGeneratorDefinitionCrossReference_1_0; } + + //StringOrId + public RuleCall getDefinitionGeneratorDefinitionStringOrIdParserRuleCall_1_0_1() { return cDefinitionGeneratorDefinitionStringOrIdParserRuleCall_1_0_1; } + } + public class FunctionReferenceRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionReferenceRule"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cFunctionDefReferenceRuleParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cLoopVariableReferenceParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + + //FunctionReferenceRule returns FunctionReference: + // FunctionDefReferenceRule | LoopVariableReference + //; + @Override public ParserRule getRule() { return rule; } + + //FunctionDefReferenceRule | LoopVariableReference + public Alternatives getAlternatives() { return cAlternatives; } + + //FunctionDefReferenceRule + public RuleCall getFunctionDefReferenceRuleParserRuleCall_0() { return cFunctionDefReferenceRuleParserRuleCall_0; } + + //LoopVariableReference + public RuleCall getLoopVariableReferenceParserRuleCall_1() { return cLoopVariableReferenceParserRuleCall_1; } + } + public class FunctionDefReferenceRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionDefReferenceRule"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cFunctionDefinitionReferenceRuleParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + + //FunctionDefReferenceRule returns FunctionDefReference: + // FunctionDefinitionReferenceRule | ParametrizedFunctionDefinitionReferenceRule + //; + @Override public ParserRule getRule() { return rule; } + + //FunctionDefinitionReferenceRule | ParametrizedFunctionDefinitionReferenceRule + public Alternatives getAlternatives() { return cAlternatives; } + + //FunctionDefinitionReferenceRule + public RuleCall getFunctionDefinitionReferenceRuleParserRuleCall_0() { return cFunctionDefinitionReferenceRuleParserRuleCall_0; } + + //ParametrizedFunctionDefinitionReferenceRule + public RuleCall getParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1() { return cParametrizedFunctionDefinitionReferenceRuleParserRuleCall_1; } + } + public class LoopVariableReferenceElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.LoopVariableReference"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Action cLoopVariableAction_0 = (Action)cGroup.eContents().get(0); + private final Assignment cDefinitionAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final CrossReference cDefinitionForStatementCrossReference_1_0 = (CrossReference)cDefinitionAssignment_1.eContents().get(0); + private final RuleCall cDefinitionForStatementIDTerminalRuleCall_1_0_1 = (RuleCall)cDefinitionForStatementCrossReference_1_0.eContents().get(1); + + //LoopVariableReference returns LoopVariable: + // {LoopVariable} definition = [ForStatement | ID] + //; + @Override public ParserRule getRule() { return rule; } + + //{LoopVariable} definition = [ForStatement | ID] + public Group getGroup() { return cGroup; } + + //{LoopVariable} + public Action getLoopVariableAction_0() { return cLoopVariableAction_0; } + + //definition = [ForStatement | ID] + public Assignment getDefinitionAssignment_1() { return cDefinitionAssignment_1; } + + //[ForStatement | ID] + public CrossReference getDefinitionForStatementCrossReference_1_0() { return cDefinitionForStatementCrossReference_1_0; } + + //ID + public RuleCall getDefinitionForStatementIDTerminalRuleCall_1_0_1() { return cDefinitionForStatementIDTerminalRuleCall_1_0_1; } + } + public class FunctionDefinitionReferenceRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.FunctionDefinitionReferenceRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Action cFunctionDefinitionReferenceAction_0 = (Action)cGroup.eContents().get(0); + private final Keyword cDefinitionKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cDefinitionAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final CrossReference cDefinitionFunctionDefinitionCrossReference_2_0 = (CrossReference)cDefinitionAssignment_2.eContents().get(0); + private final RuleCall cDefinitionFunctionDefinitionStringOrIdParserRuleCall_2_0_1 = (RuleCall)cDefinitionFunctionDefinitionCrossReference_2_0.eContents().get(1); + + //FunctionDefinitionReferenceRule returns FunctionDefinitionReference: + // {FunctionDefinitionReference} 'definition' definition = [FunctionDefinition|StringOrId] + //; + @Override public ParserRule getRule() { return rule; } + + //{FunctionDefinitionReference} 'definition' definition = [FunctionDefinition|StringOrId] + public Group getGroup() { return cGroup; } + + //{FunctionDefinitionReference} + public Action getFunctionDefinitionReferenceAction_0() { return cFunctionDefinitionReferenceAction_0; } + + //'definition' + public Keyword getDefinitionKeyword_1() { return cDefinitionKeyword_1; } + + //definition = [FunctionDefinition|StringOrId] + public Assignment getDefinitionAssignment_2() { return cDefinitionAssignment_2; } + + //[FunctionDefinition|StringOrId] + public CrossReference getDefinitionFunctionDefinitionCrossReference_2_0() { return cDefinitionFunctionDefinitionCrossReference_2_0; } + + //StringOrId + public RuleCall getDefinitionFunctionDefinitionStringOrIdParserRuleCall_2_0_1() { return cDefinitionFunctionDefinitionStringOrIdParserRuleCall_2_0_1; } + } + public class ParametrizedFunctionDefinitionReferenceRuleElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "de.evoal.languages.model.generator.dsl.GeneratorDSL.ParametrizedFunctionDefinitionReferenceRule"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Action cParametrizedFunctionDefinitionReferenceAction_0 = (Action)cGroup.eContents().get(0); + private final Keyword cFunctionKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cDefinitionAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final CrossReference cDefinitionFunctionDefinitionReferenceCrossReference_2_0 = (CrossReference)cDefinitionAssignment_2.eContents().get(0); + private final RuleCall cDefinitionFunctionDefinitionReferenceStringOrIdParserRuleCall_2_0_1 = (RuleCall)cDefinitionFunctionDefinitionReferenceCrossReference_2_0.eContents().get(1); + + //ParametrizedFunctionDefinitionReferenceRule returns ParametrizedFunctionDefinitionReference: + // {ParametrizedFunctionDefinitionReference} 'function' definition = [FunctionDefinitionReference|StringOrId] + //; + @Override public ParserRule getRule() { return rule; } + + //{ParametrizedFunctionDefinitionReference} 'function' definition = [FunctionDefinitionReference|StringOrId] + public Group getGroup() { return cGroup; } + + //{ParametrizedFunctionDefinitionReference} + public Action getParametrizedFunctionDefinitionReferenceAction_0() { return cParametrizedFunctionDefinitionReferenceAction_0; } + + //'function' + public Keyword getFunctionKeyword_1() { return cFunctionKeyword_1; } + + //definition = [FunctionDefinitionReference|StringOrId] + public Assignment getDefinitionAssignment_2() { return cDefinitionAssignment_2; } + + //[FunctionDefinitionReference|StringOrId] + public CrossReference getDefinitionFunctionDefinitionReferenceCrossReference_2_0() { return cDefinitionFunctionDefinitionReferenceCrossReference_2_0; } + + //StringOrId + public RuleCall getDefinitionFunctionDefinitionReferenceStringOrIdParserRuleCall_2_0_1() { return cDefinitionFunctionDefinitionReferenceStringOrIdParserRuleCall_2_0_1; } + } + + + private final ConfigurationRuleElements pConfigurationRule; + private final UseRuleElements pUseRule; + private final ParametrizedFunctionDefinitionRuleElements pParametrizedFunctionDefinitionRule; + private final GeneratorDefinitionRuleElements pGeneratorDefinitionRule; + private final StatementRuleElements pStatementRule; + private final ForStatementRuleElements pForStatementRule; + private final RangeRuleElements pRangeRule; + private final CounterRangeRuleElements pCounterRangeRule; + private final FunctionsRuleElements pFunctionsRule; + private final FunctionReferencesRuleElements pFunctionReferencesRule; + private final GeneratorsRuleElements pGeneratorsRule; + private final GeneratorReferencesRuleElements pGeneratorReferencesRule; + private final ApplyStatementRuleElements pApplyStatementRule; + private final GeneratorReferenceRuleElements pGeneratorReferenceRule; + private final GeneratorDefinitionReferenceRuleElements pGeneratorDefinitionReferenceRule; + private final FunctionReferenceRuleElements pFunctionReferenceRule; + private final FunctionDefReferenceRuleElements pFunctionDefReferenceRule; + private final LoopVariableReferenceElements pLoopVariableReference; + private final FunctionDefinitionReferenceRuleElements pFunctionDefinitionReferenceRule; + private final ParametrizedFunctionDefinitionReferenceRuleElements pParametrizedFunctionDefinitionReferenceRule; + + private final Grammar grammar; + + private final InstanceLanguageGrammarAccess gaInstanceLanguage; + + private final ExpressionLanguageGrammarAccess gaExpressionLanguage; + + private final TerminalsGrammarAccess gaTerminals; + + @Inject + public GeneratorDSLGrammarAccess(GrammarProvider grammarProvider, + InstanceLanguageGrammarAccess gaInstanceLanguage, + ExpressionLanguageGrammarAccess gaExpressionLanguage, + TerminalsGrammarAccess gaTerminals) { + this.grammar = internalFindGrammar(grammarProvider); + this.gaInstanceLanguage = gaInstanceLanguage; + this.gaExpressionLanguage = gaExpressionLanguage; + this.gaTerminals = gaTerminals; + this.pConfigurationRule = new ConfigurationRuleElements(); + this.pUseRule = new UseRuleElements(); + this.pParametrizedFunctionDefinitionRule = new ParametrizedFunctionDefinitionRuleElements(); + this.pGeneratorDefinitionRule = new GeneratorDefinitionRuleElements(); + this.pStatementRule = new StatementRuleElements(); + this.pForStatementRule = new ForStatementRuleElements(); + this.pRangeRule = new RangeRuleElements(); + this.pCounterRangeRule = new CounterRangeRuleElements(); + this.pFunctionsRule = new FunctionsRuleElements(); + this.pFunctionReferencesRule = new FunctionReferencesRuleElements(); + this.pGeneratorsRule = new GeneratorsRuleElements(); + this.pGeneratorReferencesRule = new GeneratorReferencesRuleElements(); + this.pApplyStatementRule = new ApplyStatementRuleElements(); + this.pGeneratorReferenceRule = new GeneratorReferenceRuleElements(); + this.pGeneratorDefinitionReferenceRule = new GeneratorDefinitionReferenceRuleElements(); + this.pFunctionReferenceRule = new FunctionReferenceRuleElements(); + this.pFunctionDefReferenceRule = new FunctionDefReferenceRuleElements(); + this.pLoopVariableReference = new LoopVariableReferenceElements(); + this.pFunctionDefinitionReferenceRule = new FunctionDefinitionReferenceRuleElements(); + this.pParametrizedFunctionDefinitionReferenceRule = new ParametrizedFunctionDefinitionReferenceRuleElements(); + } + + protected Grammar internalFindGrammar(GrammarProvider grammarProvider) { + Grammar grammar = grammarProvider.getGrammar(this); + while (grammar != null) { + if ("de.evoal.languages.model.generator.dsl.GeneratorDSL".equals(grammar.getName())) { + return grammar; + } + List<Grammar> grammars = grammar.getUsedGrammars(); + if (!grammars.isEmpty()) { + grammar = grammars.iterator().next(); + } else { + return null; + } + } + return grammar; + } + + @Override + public Grammar getGrammar() { + return grammar; + } + + + public InstanceLanguageGrammarAccess getInstanceLanguageGrammarAccess() { + return gaInstanceLanguage; + } + + public ExpressionLanguageGrammarAccess getExpressionLanguageGrammarAccess() { + return gaExpressionLanguage; + } + + public TerminalsGrammarAccess getTerminalsGrammarAccess() { + return gaTerminals; + } + + + //ConfigurationRule returns Configuration: + // (uses += UseRule)* + // (generators += GeneratorDefinitionRule)* + // (functions += ParametrizedFunctionDefinitionRule)* + // (statements += StatementRule)* + //; + public ConfigurationRuleElements getConfigurationRuleAccess() { + return pConfigurationRule; + } + + public ParserRule getConfigurationRuleRule() { + return getConfigurationRuleAccess().getRule(); + } + + //UseRule returns Use: + // 'use' importURI = STRING ';' + //; + public UseRuleElements getUseRuleAccess() { + return pUseRule; + } + + public ParserRule getUseRuleRule() { + return getUseRuleAccess().getRule(); + } + + //ParametrizedFunctionDefinitionRule returns ParametrizedFunctionDefinition: + // 'function' name = StringOrId 'using' + // definition = InstanceRule + // ';' + //; + public ParametrizedFunctionDefinitionRuleElements getParametrizedFunctionDefinitionRuleAccess() { + return pParametrizedFunctionDefinitionRule; + } + + public ParserRule getParametrizedFunctionDefinitionRuleRule() { + return getParametrizedFunctionDefinitionRuleAccess().getRule(); + } + + //GeneratorDefinitionRule returns GeneratorDefinition: + // 'generator' name = StringOrId 'using' + // definition = InstanceRule + // ';' + //; + public GeneratorDefinitionRuleElements getGeneratorDefinitionRuleAccess() { + return pGeneratorDefinitionRule; + } + + public ParserRule getGeneratorDefinitionRuleRule() { + return getGeneratorDefinitionRuleAccess().getRule(); + } + + //StatementRule returns Statement: + // ForStatementRule | ApplyStatementRule + //; + public StatementRuleElements getStatementRuleAccess() { + return pStatementRule; + } + + public ParserRule getStatementRuleRule() { + return getStatementRuleAccess().getRule(); + } + + //ForStatementRule returns ForStatement: + // 'for' name = ID 'in' range = RangeRule 'loop' + // (statements += StatementRule)* + // 'end' + //; + public ForStatementRuleElements getForStatementRuleAccess() { + return pForStatementRule; + } + + public ParserRule getForStatementRuleRule() { + return getForStatementRuleAccess().getRule(); + } + + //RangeRule returns Range: + // FunctionsRule | GeneratorsRule | CounterRangeRule + //; + public RangeRuleElements getRangeRuleAccess() { + return pRangeRule; + } + + public ParserRule getRangeRuleRule() { + return getRangeRuleAccess().getRule(); + } + + //CounterRangeRule returns CounterRange: + // '[' start = INT 'to' end = INT ']' + //; + public CounterRangeRuleElements getCounterRangeRuleAccess() { + return pCounterRangeRule; + } + + public ParserRule getCounterRangeRuleRule() { + return getCounterRangeRuleAccess().getRule(); + } + + //FunctionsRule returns Functions: + // {Functions} 'functions' (functionReferences = FunctionReferencesRule)? + //; + public FunctionsRuleElements getFunctionsRuleAccess() { + return pFunctionsRule; + } + + public ParserRule getFunctionsRuleRule() { + return getFunctionsRuleAccess().getRule(); + } + + //FunctionReferencesRule returns FunctionReferences: + // '[' functions += FunctionDefReferenceRule (',' functions += FunctionDefReferenceRule)* ']' + //; + public FunctionReferencesRuleElements getFunctionReferencesRuleAccess() { + return pFunctionReferencesRule; + } + + public ParserRule getFunctionReferencesRuleRule() { + return getFunctionReferencesRuleAccess().getRule(); + } + + //GeneratorsRule returns Generators: + // {Generators} 'generators' (generatorReferences = GeneratorReferencesRule)? + //; + public GeneratorsRuleElements getGeneratorsRuleAccess() { + return pGeneratorsRule; + } + + public ParserRule getGeneratorsRuleRule() { + return getGeneratorsRuleAccess().getRule(); + } + + //GeneratorReferencesRule returns GeneratorReferences: + // '[' generators += [GeneratorDefinition|StringOrId] (',' generators += [GeneratorDefinition|StringOrId])* ']' + //; + public GeneratorReferencesRuleElements getGeneratorReferencesRuleAccess() { + return pGeneratorReferencesRule; + } + + public ParserRule getGeneratorReferencesRuleRule() { + return getGeneratorReferencesRuleAccess().getRule(); + } + + //ApplyStatementRule returns ApplyStatement: + // 'write' file = STRING 'with' count = INT 'samples' 'from' 'applying' function = FunctionReferenceRule 'on' generator = GeneratorReferenceRule ';' + //; + public ApplyStatementRuleElements getApplyStatementRuleAccess() { + return pApplyStatementRule; + } + + public ParserRule getApplyStatementRuleRule() { + return getApplyStatementRuleAccess().getRule(); + } + + //GeneratorReferenceRule returns GeneratorReference: + // GeneratorDefinitionReferenceRule | LoopVariableReference + //; + public GeneratorReferenceRuleElements getGeneratorReferenceRuleAccess() { + return pGeneratorReferenceRule; + } + + public ParserRule getGeneratorReferenceRuleRule() { + return getGeneratorReferenceRuleAccess().getRule(); + } + + //GeneratorDefinitionReferenceRule returns GeneratorDefinitionReference: + // 'generator' definition = [ GeneratorDefinition | StringOrId ] + //; + public GeneratorDefinitionReferenceRuleElements getGeneratorDefinitionReferenceRuleAccess() { + return pGeneratorDefinitionReferenceRule; + } + + public ParserRule getGeneratorDefinitionReferenceRuleRule() { + return getGeneratorDefinitionReferenceRuleAccess().getRule(); + } + + //FunctionReferenceRule returns FunctionReference: + // FunctionDefReferenceRule | LoopVariableReference + //; + public FunctionReferenceRuleElements getFunctionReferenceRuleAccess() { + return pFunctionReferenceRule; + } + + public ParserRule getFunctionReferenceRuleRule() { + return getFunctionReferenceRuleAccess().getRule(); + } + + //FunctionDefReferenceRule returns FunctionDefReference: + // FunctionDefinitionReferenceRule | ParametrizedFunctionDefinitionReferenceRule + //; + public FunctionDefReferenceRuleElements getFunctionDefReferenceRuleAccess() { + return pFunctionDefReferenceRule; + } + + public ParserRule getFunctionDefReferenceRuleRule() { + return getFunctionDefReferenceRuleAccess().getRule(); + } + + //LoopVariableReference returns LoopVariable: + // {LoopVariable} definition = [ForStatement | ID] + //; + public LoopVariableReferenceElements getLoopVariableReferenceAccess() { + return pLoopVariableReference; + } + + public ParserRule getLoopVariableReferenceRule() { + return getLoopVariableReferenceAccess().getRule(); + } + + //FunctionDefinitionReferenceRule returns FunctionDefinitionReference: + // {FunctionDefinitionReference} 'definition' definition = [FunctionDefinition|StringOrId] + //; + public FunctionDefinitionReferenceRuleElements getFunctionDefinitionReferenceRuleAccess() { + return pFunctionDefinitionReferenceRule; + } + + public ParserRule getFunctionDefinitionReferenceRuleRule() { + return getFunctionDefinitionReferenceRuleAccess().getRule(); + } + + //ParametrizedFunctionDefinitionReferenceRule returns ParametrizedFunctionDefinitionReference: + // {ParametrizedFunctionDefinitionReference} 'function' definition = [FunctionDefinitionReference|StringOrId] + //; + public ParametrizedFunctionDefinitionReferenceRuleElements getParametrizedFunctionDefinitionReferenceRuleAccess() { + return pParametrizedFunctionDefinitionReferenceRule; + } + + public ParserRule getParametrizedFunctionDefinitionReferenceRuleRule() { + return getParametrizedFunctionDefinitionReferenceRuleAccess().getRule(); + } + + //InstanceRule returns Instance: + // name = [dl::TypeDefinition|StringOrId] ('{' + // attributes += AttributeRule* + // '}')? + //; + public InstanceLanguageGrammarAccess.InstanceRuleElements getInstanceRuleAccess() { + return gaInstanceLanguage.getInstanceRuleAccess(); + } + + public ParserRule getInstanceRuleRule() { + return getInstanceRuleAccess().getRule(); + } + + //AttributeRule returns Attribute: + // name = NameOrMiscRule ':=' value = ValueRule ';' + //; + public InstanceLanguageGrammarAccess.AttributeRuleElements getAttributeRuleAccess() { + return gaInstanceLanguage.getAttributeRuleAccess(); + } + + public ParserRule getAttributeRuleRule() { + return getAttributeRuleAccess().getRule(); + } + + //NameOrMiscRule returns NameOrMisc: + // NameRule | MiscRule + //; + public InstanceLanguageGrammarAccess.NameOrMiscRuleElements getNameOrMiscRuleAccess() { + return gaInstanceLanguage.getNameOrMiscRuleAccess(); + } + + public ParserRule getNameOrMiscRuleRule() { + return getNameOrMiscRuleAccess().getRule(); + } + + //NameRule returns Name: + // name = [dl::NamedAttributeDefinition|StringOrId] + //; + public InstanceLanguageGrammarAccess.NameRuleElements getNameRuleAccess() { + return gaInstanceLanguage.getNameRuleAccess(); + } + + public ParserRule getNameRuleRule() { + return getNameRuleAccess().getRule(); + } + + //MiscRule returns Misc: + // name = STRING + //; + public InstanceLanguageGrammarAccess.MiscRuleElements getMiscRuleAccess() { + return gaInstanceLanguage.getMiscRuleAccess(); + } + + public ParserRule getMiscRuleRule() { + return getMiscRuleAccess().getRule(); + } + + //ValueRule returns Value: + // ArrayRule | DataReferenceRule | InstanceRule | LiteralValueRule + //; + public InstanceLanguageGrammarAccess.ValueRuleElements getValueRuleAccess() { + return gaInstanceLanguage.getValueRuleAccess(); + } + + public ParserRule getValueRuleRule() { + return getValueRuleAccess().getRule(); + } + + //ArrayRule returns Array: + // {Array} + // '[' (values += ValueRule (',' values += ValueRule)* )? ']' + //; + public InstanceLanguageGrammarAccess.ArrayRuleElements getArrayRuleAccess() { + return gaInstanceLanguage.getArrayRuleAccess(); + } + + public ParserRule getArrayRuleRule() { + return getArrayRuleAccess().getRule(); + } + + //LiteralValueRule returns LiteralValue: + // literal = LiteralRule + //; + public InstanceLanguageGrammarAccess.LiteralValueRuleElements getLiteralValueRuleAccess() { + return gaInstanceLanguage.getLiteralValueRuleAccess(); + } + + public ParserRule getLiteralValueRuleRule() { + return getLiteralValueRuleAccess().getRule(); + } + + //DataReferenceRule returns DataReference: + // {DataReference} + // 'data' definition = [ddl::DataDescription|StringOrId] + //; + public InstanceLanguageGrammarAccess.DataReferenceRuleElements getDataReferenceRuleAccess() { + return gaInstanceLanguage.getDataReferenceRuleAccess(); + } + + public ParserRule getDataReferenceRuleRule() { + return getDataReferenceRuleAccess().getRule(); + } + + //ExpressionRule returns Expression: + // OrExpressionRule + //; + public ExpressionLanguageGrammarAccess.ExpressionRuleElements getExpressionRuleAccess() { + return gaExpressionLanguage.getExpressionRuleAccess(); + } + + public ParserRule getExpressionRuleRule() { + return getExpressionRuleAccess().getRule(); + } + + //OrExpressionRule returns OrExpression: + // subExpressions += XorExpressionRule ( "OR" subExpressions += XorExpressionRule )* + //; + public ExpressionLanguageGrammarAccess.OrExpressionRuleElements getOrExpressionRuleAccess() { + return gaExpressionLanguage.getOrExpressionRuleAccess(); + } + + public ParserRule getOrExpressionRuleRule() { + return getOrExpressionRuleAccess().getRule(); + } + + //XorExpressionRule returns XorExpression: + // subExpressions += AndExpressionRule ( "XOR" subExpressions += AndExpressionRule )* + //; + public ExpressionLanguageGrammarAccess.XorExpressionRuleElements getXorExpressionRuleAccess() { + return gaExpressionLanguage.getXorExpressionRuleAccess(); + } + + public ParserRule getXorExpressionRuleRule() { + return getXorExpressionRuleAccess().getRule(); + } + + //AndExpressionRule returns AndExpression: + // subExpressions += NotExpressionRule ( "AND" subExpressions += NotExpressionRule )* + //; + public ExpressionLanguageGrammarAccess.AndExpressionRuleElements getAndExpressionRuleAccess() { + return gaExpressionLanguage.getAndExpressionRuleAccess(); + } + + public ParserRule getAndExpressionRuleRule() { + return getAndExpressionRuleAccess().getRule(); + } + + //NotExpressionRule returns NotExpression: + // ( negated ?= "!")? operand = ComparisonExpressionRule + //; + public ExpressionLanguageGrammarAccess.NotExpressionRuleElements getNotExpressionRuleAccess() { + return gaExpressionLanguage.getNotExpressionRuleAccess(); + } + + public ParserRule getNotExpressionRuleRule() { + return getNotExpressionRuleAccess().getRule(); + } + + //ComparisonExpressionRule returns ComparisonExpression: + // leftOperand = AddOrSubtractExpressionRule ( comparison += PartialComparisonExpressionRule )* + //; + public ExpressionLanguageGrammarAccess.ComparisonExpressionRuleElements getComparisonExpressionRuleAccess() { + return gaExpressionLanguage.getComparisonExpressionRuleAccess(); + } + + public ParserRule getComparisonExpressionRuleRule() { + return getComparisonExpressionRuleAccess().getRule(); + } + + //PartialComparisonExpressionRule returns PartialComparisonExpression : + // operator = ComparisonOperatorRule subExpression = AddOrSubtractExpressionRule + //; + public ExpressionLanguageGrammarAccess.PartialComparisonExpressionRuleElements getPartialComparisonExpressionRuleAccess() { + return gaExpressionLanguage.getPartialComparisonExpressionRuleAccess(); + } + + public ParserRule getPartialComparisonExpressionRuleRule() { + return getPartialComparisonExpressionRuleAccess().getRule(); + } + + //enum ComparisonOperatorRule returns ComparisonOperator : + // GreaterThan = ">=" | + // GreaterEqual = ">" | + // Equal = "=" | + // Unequal = "!=" | + // LessEqual = "<" | + // LessThan = "<=" + //; + public ExpressionLanguageGrammarAccess.ComparisonOperatorRuleElements getComparisonOperatorRuleAccess() { + return gaExpressionLanguage.getComparisonOperatorRuleAccess(); + } + + public EnumRule getComparisonOperatorRuleRule() { + return getComparisonOperatorRuleAccess().getRule(); + } + + //AddOrSubtractExpressionRule returns AddOrSubtractExpression: + // leftOperand = MultiplyDivideModuloExpressionRule (operators+=AddOrSubtractOperatorRule operands += MultiplyDivideModuloExpressionRule)* + //; + public ExpressionLanguageGrammarAccess.AddOrSubtractExpressionRuleElements getAddOrSubtractExpressionRuleAccess() { + return gaExpressionLanguage.getAddOrSubtractExpressionRuleAccess(); + } + + public ParserRule getAddOrSubtractExpressionRuleRule() { + return getAddOrSubtractExpressionRuleAccess().getRule(); + } + + //enum AddOrSubtractOperatorRule returns AddOrSubtractOperator: + // Add = '+' | Subtract = '-' + //; + public ExpressionLanguageGrammarAccess.AddOrSubtractOperatorRuleElements getAddOrSubtractOperatorRuleAccess() { + return gaExpressionLanguage.getAddOrSubtractOperatorRuleAccess(); + } + + public EnumRule getAddOrSubtractOperatorRuleRule() { + return getAddOrSubtractOperatorRuleAccess().getRule(); + } + + //MultiplyDivideModuloExpressionRule returns MultiplyDivideModuloExpression : + // leftOperand = PowerOfExpressionRule (operators+= MultiplyDivideModuloOperatorRule operands += PowerOfExpressionRule)* + //; + public ExpressionLanguageGrammarAccess.MultiplyDivideModuloExpressionRuleElements getMultiplyDivideModuloExpressionRuleAccess() { + return gaExpressionLanguage.getMultiplyDivideModuloExpressionRuleAccess(); + } + + public ParserRule getMultiplyDivideModuloExpressionRuleRule() { + return getMultiplyDivideModuloExpressionRuleAccess().getRule(); + } + + //enum MultiplyDivideModuloOperatorRule returns MultiplyDivideModuloOperator: + // Multiply = '*' | Divide = "/" | Modulo = '%' + //; + public ExpressionLanguageGrammarAccess.MultiplyDivideModuloOperatorRuleElements getMultiplyDivideModuloOperatorRuleAccess() { + return gaExpressionLanguage.getMultiplyDivideModuloOperatorRuleAccess(); + } + + public EnumRule getMultiplyDivideModuloOperatorRuleRule() { + return getMultiplyDivideModuloOperatorRuleAccess().getRule(); + } + + //PowerOfExpressionRule returns PowerOfExpression : + // leftOperand = UnaryAddOrSubtractExpressionRule ('^' rightOperand = PowerOfExpressionRule)? + //; + public ExpressionLanguageGrammarAccess.PowerOfExpressionRuleElements getPowerOfExpressionRuleAccess() { + return gaExpressionLanguage.getPowerOfExpressionRuleAccess(); + } + + public ParserRule getPowerOfExpressionRuleRule() { + return getPowerOfExpressionRuleAccess().getRule(); + } + + //UnaryAddOrSubtractExpressionRule returns UnaryAddOrSubtractExpression : + // ( operators+=AddOrSubtractOperatorRule )* subExpression = LiteralOrReferenceRule + //; + public ExpressionLanguageGrammarAccess.UnaryAddOrSubtractExpressionRuleElements getUnaryAddOrSubtractExpressionRuleAccess() { + return gaExpressionLanguage.getUnaryAddOrSubtractExpressionRuleAccess(); + } + + public ParserRule getUnaryAddOrSubtractExpressionRuleRule() { + return getUnaryAddOrSubtractExpressionRuleAccess().getRule(); + } + + //LiteralOrReferenceRule returns CallOrLiteralOrReferenceOrParantheses: + // CallRule | LiteralRule | ParanthesesRule | ValueReferenceRule; + public ExpressionLanguageGrammarAccess.LiteralOrReferenceRuleElements getLiteralOrReferenceRuleAccess() { + return gaExpressionLanguage.getLiteralOrReferenceRuleAccess(); + } + + public ParserRule getLiteralOrReferenceRuleRule() { + return getLiteralOrReferenceRuleAccess().getRule(); + } + + //ParanthesesRule returns Parantheses: + // '(' subExpression = ExpressionRule ')' + //; + public ExpressionLanguageGrammarAccess.ParanthesesRuleElements getParanthesesRuleAccess() { + return gaExpressionLanguage.getParanthesesRuleAccess(); + } + + public ParserRule getParanthesesRuleRule() { + return getParanthesesRuleAccess().getRule(); + } + + //CallRule returns Call: + // function=FunctionNameRule '(' (parameters += ExpressionRule (',' parameters += ExpressionRule)* )? ')' + //; + public ExpressionLanguageGrammarAccess.CallRuleElements getCallRuleAccess() { + return gaExpressionLanguage.getCallRuleAccess(); + } + + public ParserRule getCallRuleRule() { + return getCallRuleAccess().getRule(); + } + + //FunctionNameRule returns FunctionName: + // {FunctionName} 'call' + //; + public ExpressionLanguageGrammarAccess.FunctionNameRuleElements getFunctionNameRuleAccess() { + return gaExpressionLanguage.getFunctionNameRuleAccess(); + } + + public ParserRule getFunctionNameRuleRule() { + return getFunctionNameRuleAccess().getRule(); + } + + //ValueReferenceRule returns ValueReference: + // {ValueReference} 'value' + //; + public ExpressionLanguageGrammarAccess.ValueReferenceRuleElements getValueReferenceRuleAccess() { + return gaExpressionLanguage.getValueReferenceRuleAccess(); + } + + public ParserRule getValueReferenceRuleRule() { + return getValueReferenceRuleAccess().getRule(); + } + + //LiteralRule returns Literal: + // NumberLiteralRule + // | StringLiteralRule + // | BooleanLiteralRule + //; + public ExpressionLanguageGrammarAccess.LiteralRuleElements getLiteralRuleAccess() { + return gaExpressionLanguage.getLiteralRuleAccess(); + } + + public ParserRule getLiteralRuleRule() { + return getLiteralRuleAccess().getRule(); + } + + //NumberLiteralRule returns NumberLiteral: + // DoubleLiteralRule | IntegerLiteralRule + //; + public ExpressionLanguageGrammarAccess.NumberLiteralRuleElements getNumberLiteralRuleAccess() { + return gaExpressionLanguage.getNumberLiteralRuleAccess(); + } + + public ParserRule getNumberLiteralRuleRule() { + return getNumberLiteralRuleAccess().getRule(); + } + + //DoubleLiteralRule returns DoubleLiteral : + // value = DOUBLE + //; + public ExpressionLanguageGrammarAccess.DoubleLiteralRuleElements getDoubleLiteralRuleAccess() { + return gaExpressionLanguage.getDoubleLiteralRuleAccess(); + } + + public ParserRule getDoubleLiteralRuleRule() { + return getDoubleLiteralRuleAccess().getRule(); + } + + //IntegerLiteralRule returns IntegerLiteral: + // value = INT + //; + public ExpressionLanguageGrammarAccess.IntegerLiteralRuleElements getIntegerLiteralRuleAccess() { + return gaExpressionLanguage.getIntegerLiteralRuleAccess(); + } + + public ParserRule getIntegerLiteralRuleRule() { + return getIntegerLiteralRuleAccess().getRule(); + } + + //StringLiteralRule returns StringLiteral: + // value = STRING + //; + public ExpressionLanguageGrammarAccess.StringLiteralRuleElements getStringLiteralRuleAccess() { + return gaExpressionLanguage.getStringLiteralRuleAccess(); + } + + public ParserRule getStringLiteralRuleRule() { + return getStringLiteralRuleAccess().getRule(); + } + + //BooleanLiteralRule returns BooleanLiteral: + // {BooleanLiteral} (value ?= 'true' | 'false') + //; + public ExpressionLanguageGrammarAccess.BooleanLiteralRuleElements getBooleanLiteralRuleAccess() { + return gaExpressionLanguage.getBooleanLiteralRuleAccess(); + } + + public ParserRule getBooleanLiteralRuleRule() { + return getBooleanLiteralRuleAccess().getRule(); + } + + //StringOrId: + // QUOTED_ID | ID; + public ExpressionLanguageGrammarAccess.StringOrIdElements getStringOrIdAccess() { + return gaExpressionLanguage.getStringOrIdAccess(); + } + + public ParserRule getStringOrIdRule() { + return getStringOrIdAccess().getRule(); + } + + //DOUBLE returns ecore::EDouble : INT'.'INT; + public ExpressionLanguageGrammarAccess.DOUBLEElements getDOUBLEAccess() { + return gaExpressionLanguage.getDOUBLEAccess(); + } + + public ParserRule getDOUBLERule() { + return getDOUBLEAccess().getRule(); + } + + //@Override + //terminal STRING: + // '"' ( '\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\'|'"') )* '"'; + public TerminalRule getSTRINGRule() { + return gaExpressionLanguage.getSTRINGRule(); + } + + //terminal QUOTED_ID: + // "'" ( '\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\'|"'") )* "'"; + public TerminalRule getQUOTED_IDRule() { + return gaExpressionLanguage.getQUOTED_IDRule(); + } + + //terminal ID: '^'?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; + public TerminalRule getIDRule() { + return gaTerminals.getIDRule(); + } + + //terminal INT returns ecore::EInt: ('0'..'9')+; + public TerminalRule getINTRule() { + return gaTerminals.getINTRule(); + } + + //terminal ML_COMMENT : '/*' -> '*/'; + public TerminalRule getML_COMMENTRule() { + return gaTerminals.getML_COMMENTRule(); + } + + //terminal SL_COMMENT : '//' !('\n'|'\r')* ('\r'? '\n')?; + public TerminalRule getSL_COMMENTRule() { + return gaTerminals.getSL_COMMENTRule(); + } + + //terminal WS : (' '|'\t'|'\r'|'\n')+; + public TerminalRule getWSRule() { + return gaTerminals.getWSRule(); + } + + //terminal ANY_OTHER: .; + public TerminalRule getANY_OTHERRule() { + return gaTerminals.getANY_OTHERRule(); + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/validation/AbstractGeneratorDSLValidator.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/validation/AbstractGeneratorDSLValidator.java new file mode 100644 index 00000000..5a6fe43d --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/validation/AbstractGeneratorDSLValidator.java @@ -0,0 +1,21 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.validation; + +import de.evoal.languages.model.instance.dsl.validation.InstanceLanguageValidator; +import java.util.ArrayList; +import java.util.List; +import org.eclipse.emf.ecore.EPackage; + +public abstract class AbstractGeneratorDSLValidator extends InstanceLanguageValidator { + + @Override + protected List<EPackage> getEPackages() { + List<EPackage> result = new ArrayList<EPackage>(super.getEPackages()); + result.add(de.evoal.languages.model.generator.dsl.generatorDSL.GeneratorDSLPackage.eINSTANCE); + result.add(EPackage.Registry.INSTANCE.getEPackage("https://www.evoal.de/languages/instance/1.0.0")); + result.add(EPackage.Registry.INSTANCE.getEPackage("https://www.evoal.de/languages/el/1.0.0")); + return result; + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLConfigurableIssueCodesProvider.java b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLConfigurableIssueCodesProvider.java new file mode 100644 index 00000000..341c7d9e --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src-gen/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLConfigurableIssueCodesProvider.java @@ -0,0 +1,22 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.validation; + +import org.eclipse.xtext.preferences.PreferenceKey; +import org.eclipse.xtext.util.IAcceptor; +import org.eclipse.xtext.validation.ConfigurableIssueCodesProvider; +import org.eclipse.xtext.validation.SeverityConverter; + +@SuppressWarnings("restriction") +public class GeneratorDSLConfigurableIssueCodesProvider extends ConfigurableIssueCodesProvider { + protected static final String ISSUE_CODE_PREFIX = "de.evoal.languages.model.generator.dsl."; + + public static final String DEPRECATED_MODEL_PART = ISSUE_CODE_PREFIX + "deprecatedModelPart"; + + @Override + protected void initialize(IAcceptor<PreferenceKey> acceptor) { + super.initialize(acceptor); + acceptor.accept(create(DEPRECATED_MODEL_PART, SeverityConverter.SEVERITY_WARNING)); + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GenerateGeneratorDSL.mwe2 b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GenerateGeneratorDSL.mwe2 new file mode 100644 index 00000000..51c80801 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GenerateGeneratorDSL.mwe2 @@ -0,0 +1,49 @@ +module de.evoal.languages.model.generator.dsl.GenerateGeneratorDSL + +import org.eclipse.xtext.xtext.generator.* +import org.eclipse.xtext.xtext.generator.model.project.* + +var rootPath = ".." + +Workflow { + + component = XtextGenerator { + configuration = { + project = StandardProjectConfig { + baseName = "de.evoal.languages.model.generator.dsl" + rootPath = rootPath + eclipsePlugin = { + enabled = true + } + createEclipseMetaData = true + } + code = { + encoding = "UTF-8" + lineDelimiter = "\n" + fileHeader = "/*\n * generated by Xtext \${version}\n */" + preferXtendStubs = false + } + } + language = StandardLanguage { + name = "de.evoal.languages.model.generator.dsl.GeneratorDSL" + fileExtensions = "generator" + + referencedResource = "platform:/resource/de.evoal.languages.model.instance/model/model.genmodel" + + serializer = { + generateStub = false + } + validator = { + // composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator" + // Generates checks for @Deprecated grammar annotations, an IssueProvider and a corresponding PropertyPage + generateDeprecationValidation = true + } + generator = { + generateXtendStub = true + } + junitSupport = { + junitVersion = "5" + } + } + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSL.xtext b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSL.xtext new file mode 100644 index 00000000..d9e513f9 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSL.xtext @@ -0,0 +1,96 @@ +grammar de.evoal.languages.model.generator.dsl.GeneratorDSL with de.evoal.languages.model.instance.dsl.InstanceLanguage + +generate generatorDSL "http://www.evoal.de/languages/model/generator/dsl/GeneratorDSL" + +import "https://www.evoal.de/languages/dl/1.0.0" + +ConfigurationRule returns Configuration: + (uses += UseRule)* + (generators += GeneratorDefinitionRule)* + (functions += ParametrizedFunctionDefinitionRule)* + + (statements += StatementRule)* +; + +UseRule returns Use: + 'use' importURI = STRING ';' +; + + +ParametrizedFunctionDefinitionRule returns ParametrizedFunctionDefinition: + 'function' name = StringOrId 'using' + definition = InstanceRule + ';' +; + +GeneratorDefinitionRule returns GeneratorDefinition: + 'generator' name = StringOrId 'using' + definition = InstanceRule + ';' +; + +StatementRule returns Statement: + ForStatementRule | ApplyStatementRule +; + +ForStatementRule returns ForStatement: + 'for' name = ID 'in' range = RangeRule 'loop' + (statements += StatementRule)* + 'end' +; + +RangeRule returns Range: + FunctionsRule | GeneratorsRule | CounterRangeRule +; + +CounterRangeRule returns CounterRange: + '[' start = INT 'to' end = INT ']' +; + +FunctionsRule returns Functions: + {Functions} 'functions' (functionReferences = FunctionReferencesRule)? +; + +FunctionReferencesRule returns FunctionReferences: + '[' functions += FunctionDefReferenceRule (',' functions += FunctionDefReferenceRule)* ']' +; + +GeneratorsRule returns Generators: + {Generators} 'generators' (generatorReferences = GeneratorReferencesRule)? +; + +GeneratorReferencesRule returns GeneratorReferences: + '[' generators += [GeneratorDefinition|StringOrId] (',' generators += [GeneratorDefinition|StringOrId])* ']' +; + +ApplyStatementRule returns ApplyStatement: + 'write' file = STRING 'with' count = INT 'samples' 'from' 'applying' function = FunctionReferenceRule 'on' generator = GeneratorReferenceRule ';' +; + +GeneratorReferenceRule returns GeneratorReference: + GeneratorDefinitionReferenceRule | LoopVariableReference +; + +GeneratorDefinitionReferenceRule returns GeneratorDefinitionReference: + 'generator' definition = [ GeneratorDefinition | StringOrId ] +; + +FunctionReferenceRule returns FunctionReference: + FunctionDefReferenceRule | LoopVariableReference +; + +FunctionDefReferenceRule returns FunctionDefReference: + FunctionDefinitionReferenceRule | ParametrizedFunctionDefinitionReferenceRule +; + +LoopVariableReference returns LoopVariable: + {LoopVariable} definition = [ForStatement | ID] +; + +FunctionDefinitionReferenceRule returns FunctionDefinitionReference: + {FunctionDefinitionReference} 'definition' definition = [FunctionDefinition|StringOrId] +; + +ParametrizedFunctionDefinitionReferenceRule returns ParametrizedFunctionDefinitionReference: + {ParametrizedFunctionDefinitionReference} 'function' definition = [FunctionDefinitionReference|StringOrId] +; \ No newline at end of file diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSLRuntimeModule.java b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSLRuntimeModule.java new file mode 100644 index 00000000..c0b47969 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSLRuntimeModule.java @@ -0,0 +1,25 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl; + +import org.eclipse.xtext.conversion.IValueConverterService; +import org.eclipse.xtext.scoping.IGlobalScopeProvider; +import org.eclipse.xtext.scoping.impl.ImportUriGlobalScopeProvider; + +import de.evoal.languages.model.generator.dsl.converter.ValueConverterService; + +/** + * Use this class to register components to be used at runtime / without the Equinox extension registry. + */ +public class GeneratorDSLRuntimeModule extends AbstractGeneratorDSLRuntimeModule { + @Override + public Class<? extends IGlobalScopeProvider> bindIGlobalScopeProvider() { + return ImportUriGlobalScopeProvider.class; + } + + @Override + public Class<? extends IValueConverterService> bindIValueConverterService() { + return ValueConverterService.class; + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSLStandaloneSetup.java b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSLStandaloneSetup.java new file mode 100644 index 00000000..f94b5413 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/GeneratorDSLStandaloneSetup.java @@ -0,0 +1,15 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl; + + +/** + * Initialization support for running Xtext languages without Equinox extension registry. + */ +public class GeneratorDSLStandaloneSetup extends GeneratorDSLStandaloneSetupGenerated { + + public static void doSetup() { + new GeneratorDSLStandaloneSetup().createInjectorAndDoEMFRegistration(); + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/converter/StringStripperConverter.java b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/converter/StringStripperConverter.java new file mode 100644 index 00000000..f93de66d --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/converter/StringStripperConverter.java @@ -0,0 +1,52 @@ +package de.evoal.languages.model.generator.dsl.converter; + +import java.util.regex.Pattern; + +import org.eclipse.xtext.conversion.IValueConverter; +import org.eclipse.xtext.nodemodel.INode; + +/** + * A Xtext value converter that is applicable for rules, such as: + * + * <pre> + * MyRule returns ecore::EString: + * ID | STRING; + * </pre> + * + * The converter will strip the quotes or apostrophes in the String case. + * + * @author Bernhard J. Berger + */ +public class StringStripperConverter implements IValueConverter<String> { + private final static Pattern ID_PATTERN = Pattern.compile("[^a-zA-Z0-9]"); + + @Override + public String toValue(final String string, final INode node) { + if (string == null) { + return null; + } + + if (string.startsWith("'")) { + return string.substring(1, string.length() - 1); + } else { + return string; + } + } + + @Override + public String toString(final String value) { + if (value == null) { + return null; + } + + if (isID(value)) { + return value; + } else { + return String.format("'%s'", value); + } + } + + private boolean isID(final String value) { + return !ID_PATTERN.matcher(value).find(); + } +} \ No newline at end of file diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/converter/ValueConverterService.java b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/converter/ValueConverterService.java new file mode 100644 index 00000000..99c4037a --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/converter/ValueConverterService.java @@ -0,0 +1,12 @@ +package de.evoal.languages.model.generator.dsl.converter; + +import org.eclipse.xtext.common.services.DefaultTerminalConverters; +import org.eclipse.xtext.conversion.IValueConverter; +import org.eclipse.xtext.conversion.ValueConverter; + +public class ValueConverterService extends DefaultTerminalConverters { + @ValueConverter(rule = "StringOrId") + public IValueConverter<String> StringOrId() { + return new StringStripperConverter(); + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/generator/GeneratorDSLGenerator.xtend b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/generator/GeneratorDSLGenerator.xtend new file mode 100644 index 00000000..d0e7f135 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/generator/GeneratorDSLGenerator.xtend @@ -0,0 +1,25 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.generator + +import org.eclipse.emf.ecore.resource.Resource +import org.eclipse.xtext.generator.AbstractGenerator +import org.eclipse.xtext.generator.IFileSystemAccess2 +import org.eclipse.xtext.generator.IGeneratorContext + +/** + * Generates code from your model files on save. + * + * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#code-generation + */ +class GeneratorDSLGenerator extends AbstractGenerator { + + override void doGenerate(Resource resource, IFileSystemAccess2 fsa, IGeneratorContext context) { +// fsa.generateFile('greetings.txt', 'People to greet: ' + +// resource.allContents +// .filter(Greeting) +// .map[name] +// .join(', ')) + } +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/scoping/GeneratorDSLScopeProvider.java b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/scoping/GeneratorDSLScopeProvider.java new file mode 100644 index 00000000..344b2082 --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/scoping/GeneratorDSLScopeProvider.java @@ -0,0 +1,15 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.scoping; + + +/** + * This class contains custom scoping description. + * + * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#scoping + * on how and when to use it. + */ +public class GeneratorDSLScopeProvider extends AbstractGeneratorDSLScopeProvider { + +} diff --git a/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLValidator.java b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLValidator.java new file mode 100644 index 00000000..3278e70c --- /dev/null +++ b/src/languages/de.evoal.languages.model.generator.dsl/src/de/evoal/languages/model/generator/dsl/validation/GeneratorDSLValidator.java @@ -0,0 +1,25 @@ +/* + * generated by Xtext 2.25.0 + */ +package de.evoal.languages.model.generator.dsl.validation; + + +/** + * This class contains custom validation rules. + * + * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#validation + */ +public class GeneratorDSLValidator extends AbstractGeneratorDSLValidator { + +// public static final String INVALID_NAME = "invalidName"; +// +// @Check +// public void checkGreetingStartsWithCapital(Greeting greeting) { +// if (!Character.isUpperCase(greeting.getName().charAt(0))) { +// warning("Name should start with a capital", +// GeneratorDSLPackage.Literals.GREETING__NAME, +// INVALID_NAME); +// } +// } + +} diff --git a/src/languages/de.evoal.languages.releng.feature/feature.xml b/src/languages/de.evoal.languages.releng.feature/feature.xml index ba484ec4..3f3bd32b 100644 --- a/src/languages/de.evoal.languages.releng.feature/feature.xml +++ b/src/languages/de.evoal.languages.releng.feature/feature.xml @@ -225,4 +225,25 @@ version="0.0.0" unpack="false"/> + <plugin + id="de.evoal.languages.model.generator.dsl" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + <plugin + id="de.evoal.languages.model.generator.dsl.ide" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + <plugin + id="de.evoal.languages.model.generator.dsl.ui" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + </feature> diff --git a/src/languages/de.evoal.languages.releng.parent/pom.xml b/src/languages/de.evoal.languages.releng.parent/pom.xml index af1950bf..45a30c21 100644 --- a/src/languages/de.evoal.languages.releng.parent/pom.xml +++ b/src/languages/de.evoal.languages.releng.parent/pom.xml @@ -301,6 +301,10 @@ <module>../de.evoal.languages.model.eal.dsl.ide</module> <module>../de.evoal.languages.model.eal.dsl.ui</module> + <module>../de.evoal.languages.model.generator.dsl</module> + <module>../de.evoal.languages.model.generator.dsl.ide</module> + <module>../de.evoal.languages.model.generator.dsl.ui</module> + <module>../de.evoal.languages.releng.feature</module> <module>../de.evoal.languages.releng.site</module> </modules> -- GitLab