Showing preview only (4,784K chars total). Download the full file or copy to clipboard to get everything.
Repository: JaDogg/expressPython
Branch: master
Commit: 960854d7f7dd
Files: 465
Total size: 4.5 MB
Directory structure:
gitextract_b4lykdd7/
├── .astylerc
├── .github/
│ └── workflows/
│ └── main.yml
├── .gitignore
├── .gitmodules
├── ANTLR/
│ ├── Python3.g4
│ ├── Python3.interp
│ ├── Python3.tokens
│ ├── Python3BaseListener.cpp
│ ├── Python3BaseListener.h
│ ├── Python3Lexer.cpp
│ ├── Python3Lexer.h
│ ├── Python3Lexer.interp
│ ├── Python3Lexer.tokens
│ ├── Python3Listener.cpp
│ ├── Python3Listener.h
│ ├── Python3Parser.cpp
│ ├── Python3Parser.h
│ ├── customtoken.cpp
│ └── customtoken.h
├── ANTLR4runtime/
│ ├── CMakeLists.txt
│ ├── LICENSE.txt
│ ├── README.md
│ ├── VERSION
│ ├── cmake/
│ │ ├── Antlr4Package.md
│ │ ├── ExternalAntlr4Cpp.cmake
│ │ ├── FindANTLR.cmake
│ │ ├── README.md
│ │ ├── antlr4-generator.cmake.in
│ │ └── antlr4-runtime.cmake.in
│ ├── demo/
│ │ ├── CMakeLists.txt
│ │ ├── Linux/
│ │ │ └── main.cpp
│ │ ├── Mac/
│ │ │ ├── antlr4-cpp-demo/
│ │ │ │ └── main.cpp
│ │ │ ├── antlrcpp Tests/
│ │ │ │ ├── Info.plist
│ │ │ │ ├── InputHandlingTests.mm
│ │ │ │ ├── MiscClassTests.mm
│ │ │ │ └── antlrcpp_Tests.mm
│ │ │ ├── antlrcpp-demo.xcodeproj/
│ │ │ │ ├── project.pbxproj
│ │ │ │ ├── project.xcworkspace/
│ │ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ │ └── xcshareddata/
│ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ │ └── xcshareddata/
│ │ │ │ └── xcschemes/
│ │ │ │ ├── antlr4-cpp-demo.xcscheme
│ │ │ │ └── antlrcpp Tests.xcscheme
│ │ │ └── build.sh
│ │ ├── README.md
│ │ ├── TLexer.g4
│ │ ├── TLexer.tokens
│ │ ├── TParser.g4
│ │ ├── Windows/
│ │ │ ├── antlr4-cpp-demo/
│ │ │ │ ├── antlr4-cpp-demo-vs2015.vcxproj
│ │ │ │ ├── antlr4-cpp-demo-vs2015.vcxproj.filters
│ │ │ │ ├── antlr4-cpp-demo.vcxproj
│ │ │ │ ├── antlr4-cpp-demo.vcxproj.filters
│ │ │ │ └── main.cpp
│ │ │ ├── antlr4cpp-vs2013.sln
│ │ │ └── antlr4cpp-vs2015.sln
│ │ ├── generate.cmd
│ │ └── generate.sh
│ ├── deploy-macos.sh
│ ├── deploy-source.sh
│ ├── deploy-windows.cmd
│ └── runtime/
│ ├── CMakeCache.txt
│ ├── CMakeFiles/
│ │ ├── 3.16.3/
│ │ │ ├── CMakeCCompiler.cmake
│ │ │ ├── CMakeCXXCompiler.cmake
│ │ │ ├── CMakeSystem.cmake
│ │ │ ├── CompilerIdC/
│ │ │ │ └── CMakeCCompilerId.c
│ │ │ └── CompilerIdCXX/
│ │ │ └── CMakeCXXCompilerId.cpp
│ │ ├── CMakeDirectoryInformation.cmake
│ │ ├── CMakeRuleHashes.txt
│ │ ├── TargetDirectories.txt
│ │ ├── cmake.check_cache
│ │ └── progress.marks
│ ├── CMakeLists.txt
│ ├── CPackConfig.cmake
│ ├── CPackSourceConfig.cmake
│ ├── antlr4cpp-vs2013.vcxproj
│ ├── antlr4cpp-vs2013.vcxproj.filters
│ ├── antlr4cpp-vs2015.vcxproj
│ ├── antlr4cpp-vs2015.vcxproj.filters
│ ├── antlr4cpp-vs2017.vcxproj
│ ├── antlr4cpp-vs2017.vcxproj.filters
│ ├── antlr4cpp-vs2019.vcxproj
│ ├── antlr4cpp-vs2019.vcxproj.filters
│ ├── antlrcpp-ios/
│ │ ├── Info.plist
│ │ └── antlrcpp_ios.h
│ ├── antlrcpp.xcodeproj/
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace/
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata/
│ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcshareddata/
│ │ └── xcschemes/
│ │ ├── antlr4.xcscheme
│ │ ├── antlr4_ios.xcscheme
│ │ └── antlr4_static.xcscheme
│ ├── cmake_install.cmake
│ ├── install_manifest.txt
│ ├── runtime/
│ │ ├── CMakeFiles/
│ │ │ ├── CMakeDirectoryInformation.cmake
│ │ │ ├── antlr4_shared.dir/
│ │ │ │ ├── CXX.includecache
│ │ │ │ ├── DependInfo.cmake
│ │ │ │ ├── build.make
│ │ │ │ ├── cmake_clean.cmake
│ │ │ │ ├── depend.internal
│ │ │ │ ├── depend.make
│ │ │ │ ├── flags.make
│ │ │ │ ├── link.txt
│ │ │ │ └── progress.make
│ │ │ ├── antlr4_static.dir/
│ │ │ │ ├── CXX.includecache
│ │ │ │ ├── DependInfo.cmake
│ │ │ │ ├── build.make
│ │ │ │ ├── cmake_clean.cmake
│ │ │ │ ├── cmake_clean_target.cmake
│ │ │ │ ├── depend.internal
│ │ │ │ ├── depend.make
│ │ │ │ ├── flags.make
│ │ │ │ ├── link.txt
│ │ │ │ └── progress.make
│ │ │ ├── make_lib_output_dir.dir/
│ │ │ │ ├── DependInfo.cmake
│ │ │ │ ├── build.make
│ │ │ │ ├── cmake_clean.cmake
│ │ │ │ ├── depend.internal
│ │ │ │ ├── depend.make
│ │ │ │ └── progress.make
│ │ │ └── progress.marks
│ │ └── cmake_install.cmake
│ └── src/
│ ├── .vscode/
│ │ └── settings.json
│ ├── ANTLRErrorListener.cpp
│ ├── ANTLRErrorListener.h
│ ├── ANTLRErrorStrategy.cpp
│ ├── ANTLRErrorStrategy.h
│ ├── ANTLRFileStream.cpp
│ ├── ANTLRFileStream.h
│ ├── ANTLRInputStream.cpp
│ ├── ANTLRInputStream.h
│ ├── BailErrorStrategy.cpp
│ ├── BailErrorStrategy.h
│ ├── BaseErrorListener.cpp
│ ├── BaseErrorListener.h
│ ├── BufferedTokenStream.cpp
│ ├── BufferedTokenStream.h
│ ├── CharStream.cpp
│ ├── CharStream.h
│ ├── CommonToken.cpp
│ ├── CommonToken.h
│ ├── CommonTokenFactory.cpp
│ ├── CommonTokenFactory.h
│ ├── CommonTokenStream.cpp
│ ├── CommonTokenStream.h
│ ├── ConsoleErrorListener.cpp
│ ├── ConsoleErrorListener.h
│ ├── DefaultErrorStrategy.cpp
│ ├── DefaultErrorStrategy.h
│ ├── DiagnosticErrorListener.cpp
│ ├── DiagnosticErrorListener.h
│ ├── Exceptions.cpp
│ ├── Exceptions.h
│ ├── FailedPredicateException.cpp
│ ├── FailedPredicateException.h
│ ├── InputMismatchException.cpp
│ ├── InputMismatchException.h
│ ├── IntStream.cpp
│ ├── IntStream.h
│ ├── InterpreterRuleContext.cpp
│ ├── InterpreterRuleContext.h
│ ├── Lexer.cpp
│ ├── Lexer.h
│ ├── LexerInterpreter.cpp
│ ├── LexerInterpreter.h
│ ├── LexerNoViableAltException.cpp
│ ├── LexerNoViableAltException.h
│ ├── ListTokenSource.cpp
│ ├── ListTokenSource.h
│ ├── NoViableAltException.cpp
│ ├── NoViableAltException.h
│ ├── Parser.cpp
│ ├── Parser.h
│ ├── ParserInterpreter.cpp
│ ├── ParserInterpreter.h
│ ├── ParserRuleContext.cpp
│ ├── ParserRuleContext.h
│ ├── ProxyErrorListener.cpp
│ ├── ProxyErrorListener.h
│ ├── RecognitionException.cpp
│ ├── RecognitionException.h
│ ├── Recognizer.cpp
│ ├── Recognizer.h
│ ├── RuleContext.cpp
│ ├── RuleContext.h
│ ├── RuleContextWithAltNum.cpp
│ ├── RuleContextWithAltNum.h
│ ├── RuntimeMetaData.cpp
│ ├── RuntimeMetaData.h
│ ├── Token.cpp
│ ├── Token.h
│ ├── TokenFactory.h
│ ├── TokenSource.cpp
│ ├── TokenSource.h
│ ├── TokenStream.cpp
│ ├── TokenStream.h
│ ├── TokenStreamRewriter.cpp
│ ├── TokenStreamRewriter.h
│ ├── UnbufferedCharStream.cpp
│ ├── UnbufferedCharStream.h
│ ├── UnbufferedTokenStream.cpp
│ ├── UnbufferedTokenStream.h
│ ├── Vocabulary.cpp
│ ├── Vocabulary.h
│ ├── WritableToken.cpp
│ ├── WritableToken.h
│ ├── antlr4-common.h
│ ├── antlr4-runtime.h
│ ├── atn/
│ │ ├── ATN.cpp
│ │ ├── ATN.h
│ │ ├── ATNConfig.cpp
│ │ ├── ATNConfig.h
│ │ ├── ATNConfigSet.cpp
│ │ ├── ATNConfigSet.h
│ │ ├── ATNDeserializationOptions.cpp
│ │ ├── ATNDeserializationOptions.h
│ │ ├── ATNDeserializer.cpp
│ │ ├── ATNDeserializer.h
│ │ ├── ATNSerializer.cpp
│ │ ├── ATNSerializer.h
│ │ ├── ATNSimulator.cpp
│ │ ├── ATNSimulator.h
│ │ ├── ATNState.cpp
│ │ ├── ATNState.h
│ │ ├── ATNType.h
│ │ ├── AbstractPredicateTransition.cpp
│ │ ├── AbstractPredicateTransition.h
│ │ ├── ActionTransition.cpp
│ │ ├── ActionTransition.h
│ │ ├── AmbiguityInfo.cpp
│ │ ├── AmbiguityInfo.h
│ │ ├── ArrayPredictionContext.cpp
│ │ ├── ArrayPredictionContext.h
│ │ ├── AtomTransition.cpp
│ │ ├── AtomTransition.h
│ │ ├── BasicBlockStartState.cpp
│ │ ├── BasicBlockStartState.h
│ │ ├── BasicState.cpp
│ │ ├── BasicState.h
│ │ ├── BlockEndState.cpp
│ │ ├── BlockEndState.h
│ │ ├── BlockStartState.cpp
│ │ ├── BlockStartState.h
│ │ ├── ContextSensitivityInfo.cpp
│ │ ├── ContextSensitivityInfo.h
│ │ ├── DecisionEventInfo.cpp
│ │ ├── DecisionEventInfo.h
│ │ ├── DecisionInfo.cpp
│ │ ├── DecisionInfo.h
│ │ ├── DecisionState.cpp
│ │ ├── DecisionState.h
│ │ ├── EmptyPredictionContext.cpp
│ │ ├── EmptyPredictionContext.h
│ │ ├── EpsilonTransition.cpp
│ │ ├── EpsilonTransition.h
│ │ ├── ErrorInfo.cpp
│ │ ├── ErrorInfo.h
│ │ ├── LL1Analyzer.cpp
│ │ ├── LL1Analyzer.h
│ │ ├── LexerATNConfig.cpp
│ │ ├── LexerATNConfig.h
│ │ ├── LexerATNSimulator.cpp
│ │ ├── LexerATNSimulator.h
│ │ ├── LexerAction.cpp
│ │ ├── LexerAction.h
│ │ ├── LexerActionExecutor.cpp
│ │ ├── LexerActionExecutor.h
│ │ ├── LexerActionType.h
│ │ ├── LexerChannelAction.cpp
│ │ ├── LexerChannelAction.h
│ │ ├── LexerCustomAction.cpp
│ │ ├── LexerCustomAction.h
│ │ ├── LexerIndexedCustomAction.cpp
│ │ ├── LexerIndexedCustomAction.h
│ │ ├── LexerModeAction.cpp
│ │ ├── LexerModeAction.h
│ │ ├── LexerMoreAction.cpp
│ │ ├── LexerMoreAction.h
│ │ ├── LexerPopModeAction.cpp
│ │ ├── LexerPopModeAction.h
│ │ ├── LexerPushModeAction.cpp
│ │ ├── LexerPushModeAction.h
│ │ ├── LexerSkipAction.cpp
│ │ ├── LexerSkipAction.h
│ │ ├── LexerTypeAction.cpp
│ │ ├── LexerTypeAction.h
│ │ ├── LookaheadEventInfo.cpp
│ │ ├── LookaheadEventInfo.h
│ │ ├── LoopEndState.cpp
│ │ ├── LoopEndState.h
│ │ ├── NotSetTransition.cpp
│ │ ├── NotSetTransition.h
│ │ ├── OrderedATNConfigSet.cpp
│ │ ├── OrderedATNConfigSet.h
│ │ ├── ParseInfo.cpp
│ │ ├── ParseInfo.h
│ │ ├── ParserATNSimulator.cpp
│ │ ├── ParserATNSimulator.h
│ │ ├── PlusBlockStartState.cpp
│ │ ├── PlusBlockStartState.h
│ │ ├── PlusLoopbackState.cpp
│ │ ├── PlusLoopbackState.h
│ │ ├── PrecedencePredicateTransition.cpp
│ │ ├── PrecedencePredicateTransition.h
│ │ ├── PredicateEvalInfo.cpp
│ │ ├── PredicateEvalInfo.h
│ │ ├── PredicateTransition.cpp
│ │ ├── PredicateTransition.h
│ │ ├── PredictionContext.cpp
│ │ ├── PredictionContext.h
│ │ ├── PredictionMode.cpp
│ │ ├── PredictionMode.h
│ │ ├── ProfilingATNSimulator.cpp
│ │ ├── ProfilingATNSimulator.h
│ │ ├── RangeTransition.cpp
│ │ ├── RangeTransition.h
│ │ ├── RuleStartState.cpp
│ │ ├── RuleStartState.h
│ │ ├── RuleStopState.cpp
│ │ ├── RuleStopState.h
│ │ ├── RuleTransition.cpp
│ │ ├── RuleTransition.h
│ │ ├── SemanticContext.cpp
│ │ ├── SemanticContext.h
│ │ ├── SetTransition.cpp
│ │ ├── SetTransition.h
│ │ ├── SingletonPredictionContext.cpp
│ │ ├── SingletonPredictionContext.h
│ │ ├── StarBlockStartState.cpp
│ │ ├── StarBlockStartState.h
│ │ ├── StarLoopEntryState.cpp
│ │ ├── StarLoopEntryState.h
│ │ ├── StarLoopbackState.cpp
│ │ ├── StarLoopbackState.h
│ │ ├── TokensStartState.cpp
│ │ ├── TokensStartState.h
│ │ ├── Transition.cpp
│ │ ├── Transition.h
│ │ ├── WildcardTransition.cpp
│ │ └── WildcardTransition.h
│ ├── dfa/
│ │ ├── DFA.cpp
│ │ ├── DFA.h
│ │ ├── DFASerializer.cpp
│ │ ├── DFASerializer.h
│ │ ├── DFAState.cpp
│ │ ├── DFAState.h
│ │ ├── LexerDFASerializer.cpp
│ │ └── LexerDFASerializer.h
│ ├── misc/
│ │ ├── InterpreterDataReader.cpp
│ │ ├── InterpreterDataReader.h
│ │ ├── Interval.cpp
│ │ ├── Interval.h
│ │ ├── IntervalSet.cpp
│ │ ├── IntervalSet.h
│ │ ├── MurmurHash.cpp
│ │ ├── MurmurHash.h
│ │ ├── Predicate.cpp
│ │ └── Predicate.h
│ ├── support/
│ │ ├── Any.cpp
│ │ ├── Any.h
│ │ ├── Arrays.cpp
│ │ ├── Arrays.h
│ │ ├── BitSet.h
│ │ ├── CPPUtils.cpp
│ │ ├── CPPUtils.h
│ │ ├── Declarations.h
│ │ ├── StringUtils.cpp
│ │ ├── StringUtils.h
│ │ ├── guid.cpp
│ │ └── guid.h
│ └── tree/
│ ├── AbstractParseTreeVisitor.h
│ ├── ErrorNode.cpp
│ ├── ErrorNode.h
│ ├── ErrorNodeImpl.cpp
│ ├── ErrorNodeImpl.h
│ ├── IterativeParseTreeWalker.cpp
│ ├── IterativeParseTreeWalker.h
│ ├── ParseTree.cpp
│ ├── ParseTree.h
│ ├── ParseTreeListener.cpp
│ ├── ParseTreeListener.h
│ ├── ParseTreeProperty.h
│ ├── ParseTreeVisitor.cpp
│ ├── ParseTreeVisitor.h
│ ├── ParseTreeWalker.cpp
│ ├── ParseTreeWalker.h
│ ├── TerminalNode.cpp
│ ├── TerminalNode.h
│ ├── TerminalNodeImpl.cpp
│ ├── TerminalNodeImpl.h
│ ├── Trees.cpp
│ ├── Trees.h
│ ├── pattern/
│ │ ├── Chunk.cpp
│ │ ├── Chunk.h
│ │ ├── ParseTreeMatch.cpp
│ │ ├── ParseTreeMatch.h
│ │ ├── ParseTreePattern.cpp
│ │ ├── ParseTreePattern.h
│ │ ├── ParseTreePatternMatcher.cpp
│ │ ├── ParseTreePatternMatcher.h
│ │ ├── RuleTagToken.cpp
│ │ ├── RuleTagToken.h
│ │ ├── TagChunk.cpp
│ │ ├── TagChunk.h
│ │ ├── TextChunk.cpp
│ │ ├── TextChunk.h
│ │ ├── TokenTagToken.cpp
│ │ └── TokenTagToken.h
│ └── xpath/
│ ├── XPath.cpp
│ ├── XPath.h
│ ├── XPathElement.cpp
│ ├── XPathElement.h
│ ├── XPathLexer.cpp
│ ├── XPathLexer.g4
│ ├── XPathLexer.h
│ ├── XPathLexer.tokens
│ ├── XPathLexerErrorListener.cpp
│ ├── XPathLexerErrorListener.h
│ ├── XPathRuleAnywhereElement.cpp
│ ├── XPathRuleAnywhereElement.h
│ ├── XPathRuleElement.cpp
│ ├── XPathRuleElement.h
│ ├── XPathTokenAnywhereElement.cpp
│ ├── XPathTokenAnywhereElement.h
│ ├── XPathTokenElement.cpp
│ ├── XPathTokenElement.h
│ ├── XPathWildcardAnywhereElement.cpp
│ ├── XPathWildcardAnywhereElement.h
│ ├── XPathWildcardElement.cpp
│ └── XPathWildcardElement.h
├── About.htm
├── CMakeLists.txt
├── CodeEditor/
│ ├── antlrsyntaxhighlighter.cpp
│ ├── antlrsyntaxhighlighter.h
│ ├── codeeditor.cpp
│ ├── codeeditor.h
│ ├── codelineedit.cpp
│ └── codelineedit.h
├── Features/
│ ├── autocomplete.txt
│ ├── snippets.cpp
│ ├── snippets.h
│ ├── xquestion.cpp
│ ├── xquestion.h
│ ├── xtute.cpp
│ └── xtute.h
├── Icons/
│ └── PyRunImg.icns
├── LICENSE
├── PyRun.pro
├── PyRunResources.qrc
├── PythonAccess/
│ ├── emb.cpp
│ ├── emb.h
│ ├── jedi.cpp
│ ├── jedi.h
│ ├── pythonworker.cpp
│ └── pythonworker.h
├── README.md
├── UI/
│ ├── mainview.cpp
│ ├── mainview.h
│ └── mainview.ui
├── WindowsResources/
│ ├── win_rsrc.rc
│ └── xpmanifest.xml
├── _config.yml
├── appveyor.yml
├── build.cmd
├── build.sh
├── ep_jedi.py
├── ep_runner.py
├── main.cpp
└── share/
└── expressPython.desktop
================================================
FILE CONTENTS
================================================
================================================
FILE: .astylerc
================================================
style=google
================================================
FILE: .github/workflows/main.yml
================================================
name: CI
on:
push:
branches:
- '*'
pull_request:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-20.04
strategy:
matrix:
python-version: [3.8]
steps:
- uses: actions/checkout@v2
- name: Build expressPython
run: |
sudo ./build.sh
- uses: actions/upload-artifact@v2
with:
name: expressPython-0.1.1-Linux.deb
path: /home/runner/work/expressPython/expressPython/build/expressPython-0.1.1-Linux.deb
================================================
FILE: .gitignore
================================================
# Created by https://www.gitignore.io
### C++ ###
# Compiled Object files
*.slo
*.lo
*.o
*.obj
# Precompiled Headers
*.gch
*.pch
# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Fortran module files
*.mod
# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Executables
*.exe
*.out
*.app
### Qt ###
# C++ objects and libs
*.slo
*.lo
*.o
*.a
*.la
*.lai
*.so
*.dll
*.dylib
# Qt-es
/.qmake.cache
/.qmake.stash
*.pro.user
*.pro.user.*
*.moc
moc_*.cpp
qrc_*.cpp
ui_*.h
Makefile*
*-build-*
# QtCreator
*.autosave
#QtCtreator Qml
*.qmlproject.user
*.qmlproject.user.*
### Windows ###
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msm
*.msp
# Windows shortcuts
*.lnk
### Linux ###
*~
# KDE directory preferences
.directory
### Python ###
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
# C extensions
*.so
# Distribution / packaging
.Python
env/
build/
run/
develop-eggs/
dist/
downloads/
eggs/
lib/
lib64/
parts/
sdist/
var/
*.egg-info/
.installed.cfg
*.egg
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.cache
nosetests.xml
coverage.xml
# Translations
*.mo
*.pot
# Django stuff:
*.log
# Sphinx documentation
docs/_build/
# PyBuilder
target/
### OSX ###
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear on external disk
.Spotlight-V100
.Trashes
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
================================================
FILE: .gitmodules
================================================
[submodule "qtermwidget"]
path = qtermwidget
url = https://github.com/lxqt/qtermwidget
[submodule "lxqt-build-tools"]
path = lxqt-build-tools
url = https://github.com/lxqt/lxqt-build-tools
================================================
FILE: ANTLR/Python3.g4
================================================
/*
* The MIT License (MIT)
*
* Copyright (c) 2014 by Bart Kiers
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
* Project : python3-parser; an ANTLR4 grammar for Python 3
* https://github.com/bkiers/python3-parser
* Developed by : Bart Kiers, bart@big-o.nl
*/
grammar Python3;
// All comments that start with "///" are copy-pasted from
// The Python Language Reference
tokens { INDENT, DEDENT }
@lexer::header{
#include<bits/stdc++.h>
#include "Python3Parser.h"
using namespace std;
using namespace antlr4;
}
@lexer::members {
private:
// A queue where extra tokens are pushed on (see the NEWLINE lexer rule).
list<unique_ptr<Token>> Tokens;
// The stack that keeps track of the indentation level.
stack<int> Indents;
// The amount of opened braces, brackets and parenthesis.
int Opened = 0;
// The most recently produced token.
Token* LastToken;
public:
void emit2(unique_ptr<Token> token) override
{
setToken(move(token));
// Tokens.push_back(move(token));
}
private:
CommonToken* commonToken(size_t type, string text)
{
int stop = this->getCharIndex() - 1;
int start = text.length() == 0 ? stop : stop - text.length() + 1;
return new CommonToken(this->_tokenFactorySourcePair, type, DEFAULT_TOKEN_CHANNEL, start, stop);
}
public:
unique_ptr<Token> createDedent()
{
CommonToken* dedent = new CommonToken(Python3Parser::DEDENT, "");
dedent->setLine(LastToken->getLine());
Token* obj = dedent;
unique_ptr<Token> ptr(obj);
return ptr;
}
unique_ptr<Token> nextToken()
{
// Check if the end-of-file is ahead and there are still some DEDENTS expected.
if (_input->LA(1) == EOF && this->Indents.size() != 0)
{
// Remove any trailing EOF tokens from our buffer.
for(auto ptr = Tokens.begin(); ptr != Tokens.end(); ptr++) {
if((*ptr)->getType() == EOF) {
Tokens.erase(ptr);
}
}
Token* obj = commonToken(NEWLINE, "\n");
unique_ptr<Token> uptr(obj);
// First emit an extra line break that serves as the end of the statement.
emit2(move(uptr));
// Now emit as much DEDENT tokens as needed.
while (Indents.size() != 0)
{
emit2(createDedent());
Indents.pop();
}
// Put the EOF back on the token stream.
obj = commonToken(EOF, "<EOF>");
unique_ptr<Token> uptr2(obj);
emit2(move(uptr2));
}
auto next = antlr4::Lexer::nextToken();
if (next->getChannel() == DEFAULT_TOKEN_CHANNEL)
{
// Keep track of the last token on the default channel.
LastToken = next.get();
}
if (Tokens.size() == 0)
{
return next;
}
else
{
return move(next);
// auto x = move(Tokens.back()); Tokens.pop_back();
// return x;
}
}
// Calculates the indentation of the provided spaces, taking the
// following rules into account:
//
// "Tabs are replaced (from left to right) by one to eight spaces
// such that the total number of characters up to and including
// the replacement is a multiple of eight [...]"
//
// -- https://docs.python.org/3.1/reference/lexical_analysis.html#indentation
static int getIndentationCount(string spaces)
{
int count = 0;
char charArray[spaces.length()];
strcpy(charArray, spaces.c_str());
for(char ch : charArray)
{
count += ch == '\t' ? 8 - (count % 8) : 1;
}
return count;
}
bool atStartOfInput()
{
return getCharPositionInLine() == 0 && getLine() == 1;
}
}
/*
* parser rules
*/
single_input: NEWLINE | simple_stmt | compound_stmt NEWLINE;
file_input: (NEWLINE | stmt)* EOF;
eval_input: testlist NEWLINE* EOF;
decorator: '@' dotted_name ( '(' (arglist)? ')' )? NEWLINE;
decorators: decorator+;
decorated: decorators (classdef | funcdef | async_funcdef);
async_funcdef: ASYNC funcdef;
funcdef: 'def' NAME parameters ('->' test)? ':' suite;
parameters: '(' (typedargslist)? ')';
typedargslist: (tfpdef ('=' test)? (',' tfpdef ('=' test)?)* (',' (
'*' (tfpdef)? (',' tfpdef ('=' test)?)* (',' ('**' tfpdef (',')?)?)?
| '**' tfpdef (',')?)?)?
| '*' (tfpdef)? (',' tfpdef ('=' test)?)* (',' ('**' tfpdef (',')?)?)?
| '**' tfpdef (',')?);
tfpdef: NAME (':' test)?;
varargslist: (vfpdef ('=' test)? (',' vfpdef ('=' test)?)* (',' (
'*' (vfpdef)? (',' vfpdef ('=' test)?)* (',' ('**' vfpdef (',')?)?)?
| '**' vfpdef (',')?)?)?
| '*' (vfpdef)? (',' vfpdef ('=' test)?)* (',' ('**' vfpdef (',')?)?)?
| '**' vfpdef (',')?
);
vfpdef: NAME;
stmt: simple_stmt | compound_stmt;
simple_stmt: small_stmt (';' small_stmt)* (';')? NEWLINE;
small_stmt: (expr_stmt | del_stmt | pass_stmt | flow_stmt |
import_stmt | global_stmt | nonlocal_stmt | assert_stmt);
expr_stmt: testlist_star_expr (annassign | augassign (yield_expr|testlist) |
('=' (yield_expr|testlist_star_expr))*);
annassign: ':' test ('=' test)?;
testlist_star_expr: (test|star_expr) (',' (test|star_expr))* (',')?;
augassign: ('+=' | '-=' | '*=' | '@=' | '/=' | '%=' | '&=' | '|=' | '^=' |
'<<=' | '>>=' | '**=' | '//=');
// For normal and annotated assignments, additional restrictions enforced by the interpreter
del_stmt: 'del' exprlist;
pass_stmt: 'pass';
flow_stmt: break_stmt | continue_stmt | return_stmt | raise_stmt | yield_stmt;
break_stmt: 'break';
continue_stmt: 'continue';
return_stmt: 'return' (testlist)?;
yield_stmt: yield_expr;
raise_stmt: 'raise' (test ('from' test)?)?;
import_stmt: import_name | import_from;
import_name: 'import' dotted_as_names;
// note below: the ('.' | '...') is necessary because '...' is tokenized as ELLIPSIS
import_from: ('from' (('.' | '...')* dotted_name | ('.' | '...')+)
'import' ('*' | '(' import_as_names ')' | import_as_names));
import_as_name: NAME ('as' NAME)?;
dotted_as_name: dotted_name ('as' NAME)?;
import_as_names: import_as_name (',' import_as_name)* (',')?;
dotted_as_names: dotted_as_name (',' dotted_as_name)*;
dotted_name: NAME ('.' NAME)*;
global_stmt: 'global' NAME (',' NAME)*;
nonlocal_stmt: 'nonlocal' NAME (',' NAME)*;
assert_stmt: 'assert' test (',' test)?;
compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt | with_stmt | funcdef | classdef | decorated | async_stmt;
async_stmt: ASYNC (funcdef | with_stmt | for_stmt);
if_stmt: 'if' test ':' suite ('elif' test ':' suite)* ('else' ':' suite)?;
while_stmt: 'while' test ':' suite ('else' ':' suite)?;
for_stmt: 'for' exprlist 'in' testlist ':' suite ('else' ':' suite)?;
try_stmt: ('try' ':' suite
((except_clause ':' suite)+
('else' ':' suite)?
('finally' ':' suite)? |
'finally' ':' suite));
with_stmt: 'with' with_item (',' with_item)* ':' suite;
with_item: test ('as' expr)?;
// NB compile.c makes sure that the default except clause is last
except_clause: 'except' (test ('as' NAME)?)?;
suite: simple_stmt | NEWLINE INDENT stmt+ DEDENT;
test: or_test ('if' or_test 'else' test)? | lambdef;
test_nocond: or_test | lambdef_nocond;
lambdef: 'lambda' (varargslist)? ':' test;
lambdef_nocond: 'lambda' (varargslist)? ':' test_nocond;
or_test: and_test ('or' and_test)*;
and_test: not_test ('and' not_test)*;
not_test: 'not' not_test | comparison;
comparison: expr (comp_op expr)*;
// <> isn't actually a valid comparison operator in Python. It's here for the
// sake of a __future__ import described in PEP 401 (which really works :-)
comp_op: '<'|'>'|'=='|'>='|'<='|'<>'|'!='|'in'|'not' 'in'|'is'|'is' 'not';
star_expr: '*' expr;
expr: xor_expr ('|' xor_expr)*;
xor_expr: and_expr ('^' and_expr)*;
and_expr: shift_expr ('&' shift_expr)*;
shift_expr: arith_expr (('<<'|'>>') arith_expr)*;
arith_expr: term (('+'|'-') term)*;
term: factor (('*'|'@'|'/'|'%'|'//') factor)*;
factor: ('+'|'-'|'~') factor | power;
power: atom_expr ('**' factor)?;
atom_expr: (AWAIT)? atom trailer*;
atom: ('(' (yield_expr|testlist_comp)? ')' |
'[' (testlist_comp)? ']' |
'{' (dictorsetmaker)? '}' |
NAME | NUMBER | STRING+ | '...' | 'None' | 'True' | 'False');
testlist_comp: (test|star_expr) ( comp_for | (',' (test|star_expr))* (',')? );
trailer: '(' (arglist)? ')' | '[' subscriptlist ']' | '.' NAME;
subscriptlist: subscript (',' subscript)* (',')?;
subscript: test | (test)? ':' (test)? (sliceop)?;
sliceop: ':' (test)?;
exprlist: (expr|star_expr) (',' (expr|star_expr))* (',')?;
testlist: test (',' test)* (',')?;
dictorsetmaker: ( ((test ':' test | '**' expr)
(comp_for | (',' (test ':' test | '**' expr))* (',')?)) |
((test | star_expr)
(comp_for | (',' (test | star_expr))* (',')?)) );
classdef: 'class' NAME ('(' (arglist)? ')')? ':' suite;
arglist: argument (',' argument)* (',')?;
// The reason that keywords are test nodes instead of NAME is that using NAME
// results in an ambiguity. ast.c makes sure it's a NAME.
// "test '=' test" is really "keyword '=' test", but we have no such token.
// These need to be in a single rule to avoid grammar that is ambiguous
// to our LL(1) parser. Even though 'test' includes '*expr' in star_expr,
// we explicitly match '*' here, too, to give it proper precedence.
// Illegal combinations and orderings are blocked in ast.c:
// multiple (test comp_for) arguments are blocked; keyword unpackings
// that precede iterable unpackings are blocked; etc.
argument: ( test (comp_for)? |
test '=' test |
'**' test |
'*' test );
comp_iter: comp_for | comp_if;
comp_for: (ASYNC)? 'for' exprlist 'in' or_test (comp_iter)?;
comp_if: 'if' test_nocond (comp_iter)?;
// not used in grammar, but may appear in "node" passed from Parser to Compiler
encoding_decl: NAME;
yield_expr: 'yield' (yield_arg)?;
yield_arg: 'from' test | testlist;
/*
* lexer rules
*/
STRING_LONG
: STRING_LONG_LITERAL
| BYTES_LONG_LITERAL
;
STRING_SHORT
: STRING_SHORT_LITERAL
| BYTES_SHORT_LITERAL
;
STRING
: STRING_LITERAL
| BYTES_LITERAL
;
COMMENTS: COMMENT;
NUMBER
: INTEGER
| FLOAT_NUMBER
| IMAG_NUMBER
;
INTEGER
: DECIMAL_INTEGER
| OCT_INTEGER
| HEX_INTEGER
| BIN_INTEGER
;
HACKISH: '__' NAME '__';
PRIVATE: '_' NAME;
SPECIAL: 'self' | '_';
BUG: '?' | '$';
DIVMOD:'divmod';
INPUT: 'input';
OPEN: 'open';
STATICMETHOD:'staticmethod';
ALL:'all';
ENUMERATE:'enumerate';
INT:'int';
ORD:'ord';
STR:'str';
ANY:'any';
EVAL:'eval';
ISINSTANCE:'isinstance';
POW:'pow';
SUM:'sum';
BASESTRING:'basestring';
EXECFILE:'execfile';
ISSUBCLASS:'issubclass';
ABS: 'abs';
SUPER: 'super';
BIN: 'bin';
FILE:'file';
ITER: 'iter';
PROPERTY: 'property';
TUPLE: 'tuple';
BOOL: 'bool';
FILTER: 'filter';
LEN: 'len';
RANGE: 'range';
TYPE: 'type';
BYTEARRAY: 'bytearray';
FLOAT: 'float';
LIST: 'list';
RAW_INPUT: 'raw_input';
UNICHR: 'unichr';
CALLABLE: 'callable';
FORMAT: 'format';
LOCALS: 'locals';
REDUCE: 'reduce';
UNICODE: 'unicode';
CHR: 'chr';
FROZENSET: 'frozenset';
LONG: 'long';
RELOAD: 'reload';
VARS: 'vars';
CLASSMETHOD: 'classmethod';
GETATTR: 'getattr';
MAP: 'map';
REPR: 'repr';
XRANGE: 'xrange';
CMP: 'cmp';
GLOBALS: 'globals';
MAX: 'max';
REVERSED: 'reversed';
ZIP: 'zip';
COMPILE: 'compile';
HASATTR: 'hasattr';
MEMORYVIEW: 'memoryview';
ROUND: 'round';
UNDERSCORE_IMPORT: '__import__';
COMPLEX: 'complex';
HASH: 'hash';
MIN: 'min';
SET: 'set';
APPLY: 'apply';
DELATTR: 'delattr';
HELP: 'help';
NEXT: 'next';
SETATTR: 'setattr';
BUFFER: 'buffer';
DICT: 'dict';
HEX: 'hex';
OBJECT: 'object';
SLICE: 'slice';
COERCE: 'coerce';
DIR: 'dir';
ID: 'id';
OCT: 'oct';
SORTED: 'sorted';
INTERN: 'intern';
BASE_EXCEPTION: 'BaseException';
SYSTEM_EXIT: 'SystemExit';
KEYBOARD_INTERRUPT: 'KeyboardInterrupt';
GENERATOR_EXIT: 'GeneratorExit';
EXCEPTION: 'Exception';
STOP_ITERATION: 'StopIteration';
ARITHMETIC_ERROR: 'ArithmeticError';
FLOATINGPOINT_ERROR: 'FloatingPointError';
OVERFLOW_ERROR: 'OverflowError';
ZERO_DIVISION_ERROR: 'ZeroDivisionError';
ASSERTION_ERROR: 'AssertionError';
ATTRIBUTE_ERROR:'AttributeError';
BUFFER_ERROR:'BufferError';
EOF_ERROR:'EOFError';
IMPORT_ERROR:'ImportError';
LOOKUP_ERROR:'LookupError';
INDEX_ERROR:'IndexError';
KEY_ERROR:'KeyError';
MEMORY_ERROR:'MemoryError';
NAME_ERROR:'NameError';
UNBOUND_LOCAL_ERROR:'UnboundLocalError';
OS_ERROR:'OSError';
BLOCKING_IO_ERROR:'BlockingIOError';
CHILD_PROCESS_ERROR:'ChildProcessError';
CONNECTION_ERROR:'ConnectionError';
BROKEN_PIPE_ERROR:'BrokenPipeError';
CONNECTION_ABORTED_ERROR:'ConnectionAbortedError';
CONNECTION_REFUSED_ERROR:'ConnectionRefusedError';
CONNECTION_RESET_ERROR:'ConnectionResetError';
FILE_EXISTS_ERROR:'FileExistsError';
FILE_NOT_FOUND_ERROR:'FileNotFoundError';
INTERRUPTED_ERROR:'InterruptedError';
IS_A_DIRECTORY_ERROR:'IsADirectoryError';
NOT_A_DIRECTORY_ERROR:'NotADirectoryError';
PERMISSION_ERROR:'PermissionError';
PROCESS_LOOKUP_ERROR:'ProcessLookupError';
TIMEOUT_ERROR:'TimeoutError';
REFERENCE_ERROR:'ReferenceError';
RUNTIME_ERROR:'RuntimeError';
NOT_IMPLEMENTED_ERROR:'NotImplementedError';
SYNTAX_ERROR:'SyntaxError';
INDENTATION_ERROR:'IndentationError';
TAB_ERROR:'TabError';
SYSTEM_ERROR:'SystemError';
TYPE_ERROR:'TypeError';
VALUE_ERROR:'ValueError';
UNICODE_ERROR:'UnicodeError';
UNICODE_DECODE_ERROR:'UnicodeDecodeError';
UNICODE_ENCODE_ERROR:'UnicodeEncodeError';
UNICODE_TRANSLATE_ERROR:'UnicodeTranslateError';
WARNING:'Warning';
DEPRECATION_WARNING:'DeprecationWarning';
PENDING_DEPRECATION_WARNING:'PendingDeprecationWarning';
RUNTIME_WARNING:'RuntimeWarning';
SYNTAX_WARNING:'SyntaxWarning';
USER_WARNING:'UserWarning';
FUTURE_WARNING:'FutureWarning';
IMPORT_WARNING:'ImportWarning';
UNICODE_WARNING:'UnicodeWarning';
BYTES_WARNING:'BytesWarning';
RESOURCE_WARNING:'ResourceWarning';
PRINT: 'print';
DEF : 'def';
RETURN : 'return';
RAISE : 'raise';
FROM : 'from';
IMPORT : 'import';
AS : 'as';
GLOBAL : 'global';
NONLOCAL : 'nonlocal';
ASSERT : 'assert';
IF : 'if';
ELIF : 'elif';
ELSE : 'else';
WHILE : 'while';
FOR : 'for';
IN : 'in';
TRY : 'try';
FINALLY : 'finally';
WITH : 'with';
EXCEPT : 'except';
LAMBDA : 'lambda';
OR : 'or';
AND : 'and';
NOT : 'not';
IS : 'is';
NONE : 'None';
TRUE : 'True';
FALSE : 'False';
CLASS : 'class';
YIELD : 'yield';
DEL : 'del';
PASS : 'pass';
CONTINUE : 'continue';
BREAK : 'break';
ASYNC : 'async';
AWAIT : 'await';
NEWLINE
: ( {atStartOfInput()}? SPACES
| ( '\r'? '\n' | '\r' | '\f' ) SPACES?
)
{
regex re ("[^\r\n\f]+");
auto newLine = regex_replace(getText(), re, "");
regex re2("[\r\n\f]+");
auto spaces = regex_replace(getText(), re2, "");
// Strip newlines inside open clauses except if we are near EOF. We keep NEWLINEs near EOF to
// satisfy the final newline needed by the single_put rule used by the REPL.
int next = _input->LA(1);
int nextnext = _input->LA(2);
if (Opened > 0 || (nextnext != -1 && (next == '\r' || next == '\n' || next == '\f' || next == '#')))
{
// If we're inside a list or on a blank line, ignore all indents,
// dedents and line breaks.
skip();
}
else
{
Token* obj = commonToken(NEWLINE, newLine);
unique_ptr<Token> uptr(obj);
emit2(move(uptr));
int indent = getIndentationCount(spaces);
int previous = Indents.size() == 0 ? 0 : Indents.top();
if (indent == previous)
{
// skip indents of the same size as the present indent-size
skip();
}
else if (indent > previous) {
Indents.push(indent);
Token* obj = commonToken(Python3Parser::INDENT, spaces);
unique_ptr<Token> uptr(obj);
emit2(move(uptr));
}
else {
// Possibly emit more than 1 DEDENT token.
while(Indents.size() != 0 && Indents.top() > indent)
{
this->emit2(createDedent());
Indents.pop();
}
}
}
}
;
/// identifier ::= id_start id_continue*
NAME
: ID_START ID_CONTINUE*
;
/// stringliteral ::= [stringprefix](shortstring | longstring)
/// stringprefix ::= "r" | "u" | "R" | "U" | "f" | "F"
/// | "fr" | "Fr" | "fR" | "FR" | "rf" | "rF" | "Rf" | "RF"
STRING_LITERAL
: ( [rR] | [uU] | [fF] | ( [fF] [rR] ) | ( [rR] [fF] ) )? ( SHORT_STRING | LONG_STRING )
;
STRING_LONG_LITERAL
: ( [rR] | [uU] | [fF] | ( [fF] [rR] ) | ( [rR] [fF] ) )? LONG_STRING
;
STRING_SHORT_LITERAL
: ( [rR] | [uU] | [fF] | ( [fF] [rR] ) | ( [rR] [fF] ) )? SHORT_STRING
;
/// bytesliteral ::= bytesprefix(shortbytes | longbytes)
/// bytesprefix ::= "b" | "B" | "br" | "Br" | "bR" | "BR" | "rb" | "rB" | "Rb" | "RB"
BYTES_LITERAL
: ( [bB] | ( [bB] [rR] ) | ( [rR] [bB] ) ) ( SHORT_BYTES | LONG_BYTES )
;
BYTES_LONG_LITERAL
: ( [bB] | ( [bB] [rR] ) | ( [rR] [bB] ) ) LONG_BYTES
;
BYTES_SHORT_LITERAL
: ( [bB] | ( [bB] [rR] ) | ( [rR] [bB] ) ) SHORT_BYTES
;
/// decimalinteger ::= nonzerodigit digit* | "0"+
DECIMAL_INTEGER
: NON_ZERO_DIGIT DIGIT*
| '0'+
;
/// octinteger ::= "0" ("o" | "O") octdigit+
OCT_INTEGER
: '0' [oO] OCT_DIGIT+
;
/// hexinteger ::= "0" ("x" | "X") hexdigit+
HEX_INTEGER
: '0' [xX] HEX_DIGIT+
;
/// bininteger ::= "0" ("b" | "B") bindigit+
BIN_INTEGER
: '0' [bB] BIN_DIGIT+
;
/// floatnumber ::= pointfloat | exponentfloat
FLOAT_NUMBER
: POINT_FLOAT
| EXPONENT_FLOAT
;
/// imagnumber ::= (floatnumber | intpart) ("j" | "J")
IMAG_NUMBER
: ( FLOAT_NUMBER | INT_PART ) [jJ]
;
DOT : '.';
ELLIPSIS : '...';
STAR : '*';
OPEN_PAREN : '(' {Opened++;};
CLOSE_PAREN : ')' {Opened--;};
COMMA : ',';
COLON : ':';
SEMI_COLON : ';';
POWER : '**';
ASSIGN : '=';
OPEN_BRACK : '[' {Opened++;};
CLOSE_BRACK : ']' {Opened--;};
OR_OP : '|';
XOR : '^';
AND_OP : '&';
LEFT_SHIFT : '<<';
RIGHT_SHIFT : '>>';
ADD : '+';
MINUS : '-';
DIV : '/';
MOD : '%';
IDIV : '//';
NOT_OP : '~';
OPEN_BRACE : '{' {Opened++;};
CLOSE_BRACE : '}' {Opened--;};
LESS_THAN : '<';
GREATER_THAN : '>';
EQUALS : '==';
GT_EQ : '>=';
LT_EQ : '<=';
NOT_EQ_1 : '<>';
NOT_EQ_2 : '!=';
AT : '@';
ARROW : '->';
ADD_ASSIGN : '+=';
SUB_ASSIGN : '-=';
MULT_ASSIGN : '*=';
AT_ASSIGN : '@=';
DIV_ASSIGN : '/=';
MOD_ASSIGN : '%=';
AND_ASSIGN : '&=';
OR_ASSIGN : '|=';
XOR_ASSIGN : '^=';
LEFT_SHIFT_ASSIGN : '<<=';
RIGHT_SHIFT_ASSIGN : '>>=';
POWER_ASSIGN : '**=';
IDIV_ASSIGN : '//=';
SKIP_
: ( SPACES | LINE_JOINING ) -> skip
;
UNKNOWN_CHAR
: .
;
/*
* fragments
*/
/// shortstring ::= "'" shortstringitem* "'" | '"' shortstringitem* '"'
/// shortstringitem ::= shortstringchar | stringescapeseq
/// shortstringchar ::= <any source character except "\" or newline or the quote>
fragment SHORT_STRING
: '\'' ( STRING_ESCAPE_SEQ | ~[\\\r\n\f'] )* '\''
| '"' ( STRING_ESCAPE_SEQ | ~[\\\r\n\f"] )* '"'
;
/// longstring ::= "'''" longstringitem* "'''" | '"""' longstringitem* '"""'
fragment LONG_STRING
: '\'\'\'' LONG_STRING_ITEM*? '\'\'\''
| '"""' LONG_STRING_ITEM*? '"""'
;
/// longstringitem ::= longstringchar | stringescapeseq
fragment LONG_STRING_ITEM
: LONG_STRING_CHAR
| STRING_ESCAPE_SEQ
;
/// longstringchar ::= <any source character except "\">
fragment LONG_STRING_CHAR
: ~'\\'
;
/// stringescapeseq ::= "\" <any source character>
fragment STRING_ESCAPE_SEQ
: '\\' .
| '\\' NEWLINE
;
/// nonzerodigit ::= "1"..."9"
fragment NON_ZERO_DIGIT
: [1-9]
;
/// digit ::= "0"..."9"
fragment DIGIT
: [0-9]
;
/// octdigit ::= "0"..."7"
fragment OCT_DIGIT
: [0-7]
;
/// hexdigit ::= digit | "a"..."f" | "A"..."F"
fragment HEX_DIGIT
: [0-9a-fA-F]
;
/// bindigit ::= "0" | "1"
fragment BIN_DIGIT
: [01]
;
/// pointfloat ::= [intpart] fraction | intpart "."
fragment POINT_FLOAT
: INT_PART? FRACTION
| INT_PART '.'
;
/// exponentfloat ::= (intpart | pointfloat) exponent
fragment EXPONENT_FLOAT
: ( INT_PART | POINT_FLOAT ) EXPONENT
;
/// intpart ::= digit+
fragment INT_PART
: DIGIT+
;
/// fraction ::= "." digit+
fragment FRACTION
: '.' DIGIT+
;
/// exponent ::= ("e" | "E") ["+" | "-"] digit+
fragment EXPONENT
: [eE] [+-]? DIGIT+
;
/// shortbytes ::= "'" shortbytesitem* "'" | '"' shortbytesitem* '"'
/// shortbytesitem ::= shortbyteschar | bytesescapeseq
fragment SHORT_BYTES
: '\'' ( SHORT_BYTES_CHAR_NO_SINGLE_QUOTE | BYTES_ESCAPE_SEQ )* '\''
| '"' ( SHORT_BYTES_CHAR_NO_DOUBLE_QUOTE | BYTES_ESCAPE_SEQ )* '"'
;
/// longbytes ::= "'''" longbytesitem* "'''" | '"""' longbytesitem* '"""'
fragment LONG_BYTES
: '\'\'\'' LONG_BYTES_ITEM*? '\'\'\''
| '"""' LONG_BYTES_ITEM*? '"""'
;
/// longbytesitem ::= longbyteschar | bytesescapeseq
fragment LONG_BYTES_ITEM
: LONG_BYTES_CHAR
| BYTES_ESCAPE_SEQ
;
/// shortbyteschar ::= <any ASCII character except "\" or newline or the quote>
fragment SHORT_BYTES_CHAR_NO_SINGLE_QUOTE
: [\u0000-\u0009]
| [\u000B-\u000C]
| [\u000E-\u0026]
| [\u0028-\u005B]
| [\u005D-\u007F]
;
fragment SHORT_BYTES_CHAR_NO_DOUBLE_QUOTE
: [\u0000-\u0009]
| [\u000B-\u000C]
| [\u000E-\u0021]
| [\u0023-\u005B]
| [\u005D-\u007F]
;
/// longbyteschar ::= <any ASCII character except "\">
fragment LONG_BYTES_CHAR
: [\u0000-\u005B]
| [\u005D-\u007F]
;
/// bytesescapeseq ::= "\" <any ASCII character>
fragment BYTES_ESCAPE_SEQ
: '\\' [\u0000-\u007F]
;
fragment SPACES
: [ \t]+
;
fragment COMMENT
: '#' ~[\r\n\f]*
;
fragment LINE_JOINING
: '\\' SPACES? ( '\r'? '\n' | '\r' | '\f')
;
/// id_start ::= <all characters in general categories Lu, Ll, Lt, Lm, Lo, Nl, the underscore, and characters with the Other_ID_Start property>
fragment ID_START
: '_'
| [A-Z]
| [a-z]
| '\u00AA'
| '\u00B5'
| '\u00BA'
| [\u00C0-\u00D6]
| [\u00D8-\u00F6]
| [\u00F8-\u01BA]
| '\u01BB'
| [\u01BC-\u01BF]
| [\u01C0-\u01C3]
| [\u01C4-\u0241]
| [\u0250-\u02AF]
| [\u02B0-\u02C1]
| [\u02C6-\u02D1]
| [\u02E0-\u02E4]
| '\u02EE'
| '\u037A'
| '\u0386'
| [\u0388-\u038A]
| '\u038C'
| [\u038E-\u03A1]
| [\u03A3-\u03CE]
| [\u03D0-\u03F5]
| [\u03F7-\u0481]
| [\u048A-\u04CE]
| [\u04D0-\u04F9]
| [\u0500-\u050F]
| [\u0531-\u0556]
| '\u0559'
| [\u0561-\u0587]
| [\u05D0-\u05EA]
| [\u05F0-\u05F2]
| [\u0621-\u063A]
| '\u0640'
| [\u0641-\u064A]
| [\u066E-\u066F]
| [\u0671-\u06D3]
| '\u06D5'
| [\u06E5-\u06E6]
| [\u06EE-\u06EF]
| [\u06FA-\u06FC]
| '\u06FF'
| '\u0710'
| [\u0712-\u072F]
| [\u074D-\u076D]
| [\u0780-\u07A5]
| '\u07B1'
| [\u0904-\u0939]
| '\u093D'
| '\u0950'
| [\u0958-\u0961]
| '\u097D'
| [\u0985-\u098C]
| [\u098F-\u0990]
| [\u0993-\u09A8]
| [\u09AA-\u09B0]
| '\u09B2'
| [\u09B6-\u09B9]
| '\u09BD'
| '\u09CE'
| [\u09DC-\u09DD]
| [\u09DF-\u09E1]
| [\u09F0-\u09F1]
| [\u0A05-\u0A0A]
| [\u0A0F-\u0A10]
| [\u0A13-\u0A28]
| [\u0A2A-\u0A30]
| [\u0A32-\u0A33]
| [\u0A35-\u0A36]
| [\u0A38-\u0A39]
| [\u0A59-\u0A5C]
| '\u0A5E'
| [\u0A72-\u0A74]
| [\u0A85-\u0A8D]
| [\u0A8F-\u0A91]
| [\u0A93-\u0AA8]
| [\u0AAA-\u0AB0]
| [\u0AB2-\u0AB3]
| [\u0AB5-\u0AB9]
| '\u0ABD'
| '\u0AD0'
| [\u0AE0-\u0AE1]
| [\u0B05-\u0B0C]
| [\u0B0F-\u0B10]
| [\u0B13-\u0B28]
| [\u0B2A-\u0B30]
| [\u0B32-\u0B33]
| [\u0B35-\u0B39]
| '\u0B3D'
| [\u0B5C-\u0B5D]
| [\u0B5F-\u0B61]
| '\u0B71'
| '\u0B83'
| [\u0B85-\u0B8A]
| [\u0B8E-\u0B90]
| [\u0B92-\u0B95]
| [\u0B99-\u0B9A]
| '\u0B9C'
| [\u0B9E-\u0B9F]
| [\u0BA3-\u0BA4]
| [\u0BA8-\u0BAA]
| [\u0BAE-\u0BB9]
| [\u0C05-\u0C0C]
| [\u0C0E-\u0C10]
| [\u0C12-\u0C28]
| [\u0C2A-\u0C33]
| [\u0C35-\u0C39]
| [\u0C60-\u0C61]
| [\u0C85-\u0C8C]
| [\u0C8E-\u0C90]
| [\u0C92-\u0CA8]
| [\u0CAA-\u0CB3]
| [\u0CB5-\u0CB9]
| '\u0CBD'
| '\u0CDE'
| [\u0CE0-\u0CE1]
| [\u0D05-\u0D0C]
| [\u0D0E-\u0D10]
| [\u0D12-\u0D28]
| [\u0D2A-\u0D39]
| [\u0D60-\u0D61]
| [\u0D85-\u0D96]
| [\u0D9A-\u0DB1]
| [\u0DB3-\u0DBB]
| '\u0DBD'
| [\u0DC0-\u0DC6]
| [\u0E01-\u0E30]
| [\u0E32-\u0E33]
| [\u0E40-\u0E45]
| '\u0E46'
| [\u0E81-\u0E82]
| '\u0E84'
| [\u0E87-\u0E88]
| '\u0E8A'
| '\u0E8D'
| [\u0E94-\u0E97]
| [\u0E99-\u0E9F]
| [\u0EA1-\u0EA3]
| '\u0EA5'
| '\u0EA7'
| [\u0EAA-\u0EAB]
| [\u0EAD-\u0EB0]
| [\u0EB2-\u0EB3]
| '\u0EBD'
| [\u0EC0-\u0EC4]
| '\u0EC6'
| [\u0EDC-\u0EDD]
| '\u0F00'
| [\u0F40-\u0F47]
| [\u0F49-\u0F6A]
| [\u0F88-\u0F8B]
| [\u1000-\u1021]
| [\u1023-\u1027]
| [\u1029-\u102A]
| [\u1050-\u1055]
| [\u10A0-\u10C5]
| [\u10D0-\u10FA]
| '\u10FC'
| [\u1100-\u1159]
| [\u115F-\u11A2]
| [\u11A8-\u11F9]
| [\u1200-\u1248]
| [\u124A-\u124D]
| [\u1250-\u1256]
| '\u1258'
| [\u125A-\u125D]
| [\u1260-\u1288]
| [\u128A-\u128D]
| [\u1290-\u12B0]
| [\u12B2-\u12B5]
| [\u12B8-\u12BE]
| '\u12C0'
| [\u12C2-\u12C5]
| [\u12C8-\u12D6]
| [\u12D8-\u1310]
| [\u1312-\u1315]
| [\u1318-\u135A]
| [\u1380-\u138F]
| [\u13A0-\u13F4]
| [\u1401-\u166C]
| [\u166F-\u1676]
| [\u1681-\u169A]
| [\u16A0-\u16EA]
| [\u16EE-\u16F0]
| [\u1700-\u170C]
| [\u170E-\u1711]
| [\u1720-\u1731]
| [\u1740-\u1751]
| [\u1760-\u176C]
| [\u176E-\u1770]
| [\u1780-\u17B3]
| '\u17D7'
| '\u17DC'
| [\u1820-\u1842]
| '\u1843'
| [\u1844-\u1877]
| [\u1880-\u18A8]
| [\u1900-\u191C]
| [\u1950-\u196D]
| [\u1970-\u1974]
| [\u1980-\u19A9]
| [\u19C1-\u19C7]
| [\u1A00-\u1A16]
| [\u1D00-\u1D2B]
| [\u1D2C-\u1D61]
| [\u1D62-\u1D77]
| '\u1D78'
| [\u1D79-\u1D9A]
| [\u1D9B-\u1DBF]
| [\u1E00-\u1E9B]
| [\u1EA0-\u1EF9]
| [\u1F00-\u1F15]
| [\u1F18-\u1F1D]
| [\u1F20-\u1F45]
| [\u1F48-\u1F4D]
| [\u1F50-\u1F57]
| '\u1F59'
| '\u1F5B'
| '\u1F5D'
| [\u1F5F-\u1F7D]
| [\u1F80-\u1FB4]
| [\u1FB6-\u1FBC]
| '\u1FBE'
| [\u1FC2-\u1FC4]
| [\u1FC6-\u1FCC]
| [\u1FD0-\u1FD3]
| [\u1FD6-\u1FDB]
| [\u1FE0-\u1FEC]
| [\u1FF2-\u1FF4]
| [\u1FF6-\u1FFC]
| '\u2071'
| '\u207F'
| [\u2090-\u2094]
| '\u2102'
| '\u2107'
| [\u210A-\u2113]
| '\u2115'
| '\u2118'
| [\u2119-\u211D]
| '\u2124'
| '\u2126'
| '\u2128'
| [\u212A-\u212D]
| '\u212E'
| [\u212F-\u2131]
| [\u2133-\u2134]
| [\u2135-\u2138]
| '\u2139'
| [\u213C-\u213F]
| [\u2145-\u2149]
| [\u2160-\u2183]
| [\u2C00-\u2C2E]
| [\u2C30-\u2C5E]
| [\u2C80-\u2CE4]
| [\u2D00-\u2D25]
| [\u2D30-\u2D65]
| '\u2D6F'
| [\u2D80-\u2D96]
| [\u2DA0-\u2DA6]
| [\u2DA8-\u2DAE]
| [\u2DB0-\u2DB6]
| [\u2DB8-\u2DBE]
| [\u2DC0-\u2DC6]
| [\u2DC8-\u2DCE]
| [\u2DD0-\u2DD6]
| [\u2DD8-\u2DDE]
| '\u3005'
| '\u3006'
| '\u3007'
| [\u3021-\u3029]
| [\u3031-\u3035]
| [\u3038-\u303A]
| '\u303B'
| '\u303C'
| [\u3041-\u3096]
| [\u309B-\u309C]
| [\u309D-\u309E]
| '\u309F'
| [\u30A1-\u30FA]
| [\u30FC-\u30FE]
| '\u30FF'
| [\u3105-\u312C]
| [\u3131-\u318E]
| [\u31A0-\u31B7]
| [\u31F0-\u31FF]
| [\u3400-\u4DB5]
| [\u4E00-\u9FBB]
| [\uA000-\uA014]
| '\uA015'
| [\uA016-\uA48C]
| [\uA800-\uA801]
| [\uA803-\uA805]
| [\uA807-\uA80A]
| [\uA80C-\uA822]
| [\uAC00-\uD7A3]
| [\uF900-\uFA2D]
| [\uFA30-\uFA6A]
| [\uFA70-\uFAD9]
| [\uFB00-\uFB06]
| [\uFB13-\uFB17]
| '\uFB1D'
| [\uFB1F-\uFB28]
| [\uFB2A-\uFB36]
| [\uFB38-\uFB3C]
| '\uFB3E'
| [\uFB40-\uFB41]
| [\uFB43-\uFB44]
| [\uFB46-\uFBB1]
| [\uFBD3-\uFD3D]
| [\uFD50-\uFD8F]
| [\uFD92-\uFDC7]
| [\uFDF0-\uFDFB]
| [\uFE70-\uFE74]
| [\uFE76-\uFEFC]
| [\uFF21-\uFF3A]
| [\uFF41-\uFF5A]
| [\uFF66-\uFF6F]
| '\uFF70'
| [\uFF71-\uFF9D]
| [\uFF9E-\uFF9F]
| [\uFFA0-\uFFBE]
| [\uFFC2-\uFFC7]
| [\uFFCA-\uFFCF]
| [\uFFD2-\uFFD7]
| [\uFFDA-\uFFDC]
;
/// id_continue ::= <all characters in id_start, plus characters in the categories Mn, Mc, Nd, Pc and others with the Other_ID_Continue property>
fragment ID_CONTINUE
: ID_START
| [0-9]
| [\u0300-\u036F]
| [\u0483-\u0486]
| [\u0591-\u05B9]
| [\u05BB-\u05BD]
| '\u05BF'
| [\u05C1-\u05C2]
| [\u05C4-\u05C5]
| '\u05C7'
| [\u0610-\u0615]
| [\u064B-\u065E]
| [\u0660-\u0669]
| '\u0670'
| [\u06D6-\u06DC]
| [\u06DF-\u06E4]
| [\u06E7-\u06E8]
| [\u06EA-\u06ED]
| [\u06F0-\u06F9]
| '\u0711'
| [\u0730-\u074A]
| [\u07A6-\u07B0]
| [\u0901-\u0902]
| '\u0903'
| '\u093C'
| [\u093E-\u0940]
| [\u0941-\u0948]
| [\u0949-\u094C]
| '\u094D'
| [\u0951-\u0954]
| [\u0962-\u0963]
| [\u0966-\u096F]
| '\u0981'
| [\u0982-\u0983]
| '\u09BC'
| [\u09BE-\u09C0]
| [\u09C1-\u09C4]
| [\u09C7-\u09C8]
| [\u09CB-\u09CC]
| '\u09CD'
| '\u09D7'
| [\u09E2-\u09E3]
| [\u09E6-\u09EF]
| [\u0A01-\u0A02]
| '\u0A03'
| '\u0A3C'
| [\u0A3E-\u0A40]
| [\u0A41-\u0A42]
| [\u0A47-\u0A48]
| [\u0A4B-\u0A4D]
| [\u0A66-\u0A6F]
| [\u0A70-\u0A71]
| [\u0A81-\u0A82]
| '\u0A83'
| '\u0ABC'
| [\u0ABE-\u0AC0]
| [\u0AC1-\u0AC5]
| [\u0AC7-\u0AC8]
| '\u0AC9'
| [\u0ACB-\u0ACC]
| '\u0ACD'
| [\u0AE2-\u0AE3]
| [\u0AE6-\u0AEF]
| '\u0B01'
| [\u0B02-\u0B03]
| '\u0B3C'
| '\u0B3E'
| '\u0B3F'
| '\u0B40'
| [\u0B41-\u0B43]
| [\u0B47-\u0B48]
| [\u0B4B-\u0B4C]
| '\u0B4D'
| '\u0B56'
| '\u0B57'
| [\u0B66-\u0B6F]
| '\u0B82'
| [\u0BBE-\u0BBF]
| '\u0BC0'
| [\u0BC1-\u0BC2]
| [\u0BC6-\u0BC8]
| [\u0BCA-\u0BCC]
| '\u0BCD'
| '\u0BD7'
| [\u0BE6-\u0BEF]
| [\u0C01-\u0C03]
| [\u0C3E-\u0C40]
| [\u0C41-\u0C44]
| [\u0C46-\u0C48]
| [\u0C4A-\u0C4D]
| [\u0C55-\u0C56]
| [\u0C66-\u0C6F]
| [\u0C82-\u0C83]
| '\u0CBC'
| '\u0CBE'
| '\u0CBF'
| [\u0CC0-\u0CC4]
| '\u0CC6'
| [\u0CC7-\u0CC8]
| [\u0CCA-\u0CCB]
| [\u0CCC-\u0CCD]
| [\u0CD5-\u0CD6]
| [\u0CE6-\u0CEF]
| [\u0D02-\u0D03]
| [\u0D3E-\u0D40]
| [\u0D41-\u0D43]
| [\u0D46-\u0D48]
| [\u0D4A-\u0D4C]
| '\u0D4D'
| '\u0D57'
| [\u0D66-\u0D6F]
| [\u0D82-\u0D83]
| '\u0DCA'
| [\u0DCF-\u0DD1]
| [\u0DD2-\u0DD4]
| '\u0DD6'
| [\u0DD8-\u0DDF]
| [\u0DF2-\u0DF3]
| '\u0E31'
| [\u0E34-\u0E3A]
| [\u0E47-\u0E4E]
| [\u0E50-\u0E59]
| '\u0EB1'
| [\u0EB4-\u0EB9]
| [\u0EBB-\u0EBC]
| [\u0EC8-\u0ECD]
| [\u0ED0-\u0ED9]
| [\u0F18-\u0F19]
| [\u0F20-\u0F29]
| '\u0F35'
| '\u0F37'
| '\u0F39'
| [\u0F3E-\u0F3F]
| [\u0F71-\u0F7E]
| '\u0F7F'
| [\u0F80-\u0F84]
| [\u0F86-\u0F87]
| [\u0F90-\u0F97]
| [\u0F99-\u0FBC]
| '\u0FC6'
| '\u102C'
| [\u102D-\u1030]
| '\u1031'
| '\u1032'
| [\u1036-\u1037]
| '\u1038'
| '\u1039'
| [\u1040-\u1049]
| [\u1056-\u1057]
| [\u1058-\u1059]
| '\u135F'
| [\u1369-\u1371]
| [\u1712-\u1714]
| [\u1732-\u1734]
| [\u1752-\u1753]
| [\u1772-\u1773]
| '\u17B6'
| [\u17B7-\u17BD]
| [\u17BE-\u17C5]
| '\u17C6'
| [\u17C7-\u17C8]
| [\u17C9-\u17D3]
| '\u17DD'
| [\u17E0-\u17E9]
| [\u180B-\u180D]
| [\u1810-\u1819]
| '\u18A9'
| [\u1920-\u1922]
| [\u1923-\u1926]
| [\u1927-\u1928]
| [\u1929-\u192B]
| [\u1930-\u1931]
| '\u1932'
| [\u1933-\u1938]
| [\u1939-\u193B]
| [\u1946-\u194F]
| [\u19B0-\u19C0]
| [\u19C8-\u19C9]
| [\u19D0-\u19D9]
| [\u1A17-\u1A18]
| [\u1A19-\u1A1B]
| [\u1DC0-\u1DC3]
| [\u203F-\u2040]
| '\u2054'
| [\u20D0-\u20DC]
| '\u20E1'
| [\u20E5-\u20EB]
| [\u302A-\u302F]
| [\u3099-\u309A]
| '\uA802'
| '\uA806'
| '\uA80B'
| [\uA823-\uA824]
| [\uA825-\uA826]
| '\uA827'
| '\uFB1E'
| [\uFE00-\uFE0F]
| [\uFE20-\uFE23]
| [\uFE33-\uFE34]
| [\uFE4D-\uFE4F]
| [\uFF10-\uFF19]
| '\uFF3F'
;
================================================
FILE: ANTLR/Python3.interp
================================================
token literal names:
null
null
null
null
null
null
null
null
null
null
null
'divmod'
'input'
'open'
'staticmethod'
'all'
'enumerate'
'int'
'ord'
'str'
'any'
'eval'
'isinstance'
'pow'
'sum'
'basestring'
'execfile'
'issubclass'
'abs'
'super'
'bin'
'file'
'iter'
'property'
'tuple'
'bool'
'filter'
'len'
'range'
'type'
'bytearray'
'float'
'list'
'raw_input'
'unichr'
'callable'
'format'
'locals'
'reduce'
'unicode'
'chr'
'frozenset'
'long'
'reload'
'vars'
'classmethod'
'getattr'
'map'
'repr'
'xrange'
'cmp'
'globals'
'max'
'reversed'
'zip'
'compile'
'hasattr'
'memoryview'
'round'
'__import__'
'complex'
'hash'
'min'
'set'
'apply'
'delattr'
'help'
'next'
'setattr'
'buffer'
'dict'
'hex'
'object'
'slice'
'coerce'
'dir'
'id'
'oct'
'sorted'
'intern'
'BaseException'
'SystemExit'
'KeyboardInterrupt'
'GeneratorExit'
'Exception'
'StopIteration'
'ArithmeticError'
'FloatingPointError'
'OverflowError'
'ZeroDivisionError'
'AssertionError'
'AttributeError'
'BufferError'
'EOFError'
'ImportError'
'LookupError'
'IndexError'
'KeyError'
'MemoryError'
'NameError'
'UnboundLocalError'
'OSError'
'BlockingIOError'
'ChildProcessError'
'ConnectionError'
'BrokenPipeError'
'ConnectionAbortedError'
'ConnectionRefusedError'
'ConnectionResetError'
'FileExistsError'
'FileNotFoundError'
'InterruptedError'
'IsADirectoryError'
'NotADirectoryError'
'PermissionError'
'ProcessLookupError'
'TimeoutError'
'ReferenceError'
'RuntimeError'
'NotImplementedError'
'SyntaxError'
'IndentationError'
'TabError'
'SystemError'
'TypeError'
'ValueError'
'UnicodeError'
'UnicodeDecodeError'
'UnicodeEncodeError'
'UnicodeTranslateError'
'Warning'
'DeprecationWarning'
'PendingDeprecationWarning'
'RuntimeWarning'
'SyntaxWarning'
'UserWarning'
'FutureWarning'
'ImportWarning'
'UnicodeWarning'
'BytesWarning'
'ResourceWarning'
'print'
'def'
'return'
'raise'
'from'
'import'
'as'
'global'
'nonlocal'
'assert'
'if'
'elif'
'else'
'while'
'for'
'in'
'try'
'finally'
'with'
'except'
'lambda'
'or'
'and'
'not'
'is'
'None'
'True'
'False'
'class'
'yield'
'del'
'pass'
'continue'
'break'
'async'
'await'
null
null
null
null
null
null
null
null
null
null
null
null
null
null
'.'
'...'
'*'
'('
')'
','
':'
';'
'**'
'='
'['
']'
'|'
'^'
'&'
'<<'
'>>'
'+'
'-'
'/'
'%'
'//'
'~'
'{'
'}'
'<'
'>'
'=='
'>='
'<='
'<>'
'!='
'@'
'->'
'+='
'-='
'*='
'@='
'/='
'%='
'&='
'|='
'^='
'<<='
'>>='
'**='
'//='
null
null
null
null
token symbolic names:
null
STRING_LONG
STRING_SHORT
STRING
COMMENTS
NUMBER
INTEGER
HACKISH
PRIVATE
SPECIAL
BUG
DIVMOD
INPUT
OPEN
STATICMETHOD
ALL
ENUMERATE
INT
ORD
STR
ANY
EVAL
ISINSTANCE
POW
SUM
BASESTRING
EXECFILE
ISSUBCLASS
ABS
SUPER
BIN
FILE
ITER
PROPERTY
TUPLE
BOOL
FILTER
LEN
RANGE
TYPE
BYTEARRAY
FLOAT
LIST
RAW_INPUT
UNICHR
CALLABLE
FORMAT
LOCALS
REDUCE
UNICODE
CHR
FROZENSET
LONG
RELOAD
VARS
CLASSMETHOD
GETATTR
MAP
REPR
XRANGE
CMP
GLOBALS
MAX
REVERSED
ZIP
COMPILE
HASATTR
MEMORYVIEW
ROUND
UNDERSCORE_IMPORT
COMPLEX
HASH
MIN
SET
APPLY
DELATTR
HELP
NEXT
SETATTR
BUFFER
DICT
HEX
OBJECT
SLICE
COERCE
DIR
ID
OCT
SORTED
INTERN
BASE_EXCEPTION
SYSTEM_EXIT
KEYBOARD_INTERRUPT
GENERATOR_EXIT
EXCEPTION
STOP_ITERATION
ARITHMETIC_ERROR
FLOATINGPOINT_ERROR
OVERFLOW_ERROR
ZERO_DIVISION_ERROR
ASSERTION_ERROR
ATTRIBUTE_ERROR
BUFFER_ERROR
EOF_ERROR
IMPORT_ERROR
LOOKUP_ERROR
INDEX_ERROR
KEY_ERROR
MEMORY_ERROR
NAME_ERROR
UNBOUND_LOCAL_ERROR
OS_ERROR
BLOCKING_IO_ERROR
CHILD_PROCESS_ERROR
CONNECTION_ERROR
BROKEN_PIPE_ERROR
CONNECTION_ABORTED_ERROR
CONNECTION_REFUSED_ERROR
CONNECTION_RESET_ERROR
FILE_EXISTS_ERROR
FILE_NOT_FOUND_ERROR
INTERRUPTED_ERROR
IS_A_DIRECTORY_ERROR
NOT_A_DIRECTORY_ERROR
PERMISSION_ERROR
PROCESS_LOOKUP_ERROR
TIMEOUT_ERROR
REFERENCE_ERROR
RUNTIME_ERROR
NOT_IMPLEMENTED_ERROR
SYNTAX_ERROR
INDENTATION_ERROR
TAB_ERROR
SYSTEM_ERROR
TYPE_ERROR
VALUE_ERROR
UNICODE_ERROR
UNICODE_DECODE_ERROR
UNICODE_ENCODE_ERROR
UNICODE_TRANSLATE_ERROR
WARNING
DEPRECATION_WARNING
PENDING_DEPRECATION_WARNING
RUNTIME_WARNING
SYNTAX_WARNING
USER_WARNING
FUTURE_WARNING
IMPORT_WARNING
UNICODE_WARNING
BYTES_WARNING
RESOURCE_WARNING
PRINT
DEF
RETURN
RAISE
FROM
IMPORT
AS
GLOBAL
NONLOCAL
ASSERT
IF
ELIF
ELSE
WHILE
FOR
IN
TRY
FINALLY
WITH
EXCEPT
LAMBDA
OR
AND
NOT
IS
NONE
TRUE
FALSE
CLASS
YIELD
DEL
PASS
CONTINUE
BREAK
ASYNC
AWAIT
NEWLINE
NAME
STRING_LITERAL
STRING_LONG_LITERAL
STRING_SHORT_LITERAL
BYTES_LITERAL
BYTES_LONG_LITERAL
BYTES_SHORT_LITERAL
DECIMAL_INTEGER
OCT_INTEGER
HEX_INTEGER
BIN_INTEGER
FLOAT_NUMBER
IMAG_NUMBER
DOT
ELLIPSIS
STAR
OPEN_PAREN
CLOSE_PAREN
COMMA
COLON
SEMI_COLON
POWER
ASSIGN
OPEN_BRACK
CLOSE_BRACK
OR_OP
XOR
AND_OP
LEFT_SHIFT
RIGHT_SHIFT
ADD
MINUS
DIV
MOD
IDIV
NOT_OP
OPEN_BRACE
CLOSE_BRACE
LESS_THAN
GREATER_THAN
EQUALS
GT_EQ
LT_EQ
NOT_EQ_1
NOT_EQ_2
AT
ARROW
ADD_ASSIGN
SUB_ASSIGN
MULT_ASSIGN
AT_ASSIGN
DIV_ASSIGN
MOD_ASSIGN
AND_ASSIGN
OR_ASSIGN
XOR_ASSIGN
LEFT_SHIFT_ASSIGN
RIGHT_SHIFT_ASSIGN
POWER_ASSIGN
IDIV_ASSIGN
SKIP_
UNKNOWN_CHAR
INDENT
DEDENT
rule names:
single_input
file_input
eval_input
decorator
decorators
decorated
async_funcdef
funcdef
parameters
typedargslist
tfpdef
varargslist
vfpdef
stmt
simple_stmt
small_stmt
expr_stmt
annassign
testlist_star_expr
augassign
del_stmt
pass_stmt
flow_stmt
break_stmt
continue_stmt
return_stmt
yield_stmt
raise_stmt
import_stmt
import_name
import_from
import_as_name
dotted_as_name
import_as_names
dotted_as_names
dotted_name
global_stmt
nonlocal_stmt
assert_stmt
compound_stmt
async_stmt
if_stmt
while_stmt
for_stmt
try_stmt
with_stmt
with_item
except_clause
suite
test
test_nocond
lambdef
lambdef_nocond
or_test
and_test
not_test
comparison
comp_op
star_expr
expr
xor_expr
and_expr
shift_expr
arith_expr
term
factor
power
atom_expr
atom
testlist_comp
trailer
subscriptlist
subscript
sliceop
exprlist
testlist
dictorsetmaker
classdef
arglist
argument
comp_iter
comp_for
comp_if
encoding_decl
yield_expr
yield_arg
atn:
[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 253, 1106, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 5, 2, 180, 10, 2, 3, 3, 3, 3, 7, 3, 184, 10, 3, 12, 3, 14, 3, 187, 11, 3, 3, 3, 3, 3, 3, 4, 3, 4, 7, 4, 193, 10, 4, 12, 4, 14, 4, 196, 11, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 204, 10, 5, 3, 5, 5, 5, 207, 10, 5, 3, 5, 3, 5, 3, 6, 6, 6, 212, 10, 6, 13, 6, 14, 6, 213, 3, 7, 3, 7, 3, 7, 3, 7, 5, 7, 220, 10, 7, 3, 8, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 5, 9, 230, 10, 9, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 5, 10, 237, 10, 10, 3, 10, 3, 10, 3, 11, 3, 11, 3, 11, 5, 11, 244, 10, 11, 3, 11, 3, 11, 3, 11, 3, 11, 5, 11, 250, 10, 11, 7, 11, 252, 10, 11, 12, 11, 14, 11, 255, 11, 11, 3, 11, 3, 11, 3, 11, 5, 11, 260, 10, 11, 3, 11, 3, 11, 3, 11, 3, 11, 5, 11, 266, 10, 11, 7, 11, 268, 10, 11, 12, 11, 14, 11, 271, 11, 11, 3, 11, 3, 11, 3, 11, 3, 11, 5, 11, 277, 10, 11, 5, 11, 279, 10, 11, 5, 11, 281, 10, 11, 3, 11, 3, 11, 3, 11, 5, 11, 286, 10, 11, 5, 11, 288, 10, 11, 5, 11, 290, 10, 11, 3, 11, 3, 11, 5, 11, 294, 10, 11, 3, 11, 3, 11, 3, 11, 3, 11, 5, 11, 300, 10, 11, 7, 11, 302, 10, 11, 12, 11, 14, 11, 305, 11, 11, 3, 11, 3, 11, 3, 11, 3, 11, 5, 11, 311, 10, 11, 5, 11, 313, 10, 11, 5, 11, 315, 10, 11, 3, 11, 3, 11, 3, 11, 5, 11, 320, 10, 11, 5, 11, 322, 10, 11, 3, 12, 3, 12, 3, 12, 5, 12, 327, 10, 12, 3, 13, 3, 13, 3, 13, 5, 13, 332, 10, 13, 3, 13, 3, 13, 3, 13, 3, 13, 5, 13, 338, 10, 13, 7, 13, 340, 10, 13, 12, 13, 14, 13, 343, 11, 13, 3, 13, 3, 13, 3, 13, 5, 13, 348, 10, 13, 3, 13, 3, 13, 3, 13, 3, 13, 5, 13, 354, 10, 13, 7, 13, 356, 10, 13, 12, 13, 14, 13, 359, 11, 13, 3, 13, 3, 13, 3, 13, 3, 13, 5, 13, 365, 10, 13, 5, 13, 367, 10, 13, 5, 13, 369, 10, 13, 3, 13, 3, 13, 3, 13, 5, 13, 374, 10, 13, 5, 13, 376, 10, 13, 5, 13, 378, 10, 13, 3, 13, 3, 13, 5, 13, 382, 10, 13, 3, 13, 3, 13, 3, 13, 3, 13, 5, 13, 388, 10, 13, 7, 13, 390, 10, 13, 12, 13, 14, 13, 393, 11, 13, 3, 13, 3, 13, 3, 13, 3, 13, 5, 13, 399, 10, 13, 5, 13, 401, 10, 13, 5, 13, 403, 10, 13, 3, 13, 3, 13, 3, 13, 5, 13, 408, 10, 13, 5, 13, 410, 10, 13, 3, 14, 3, 14, 3, 15, 3, 15, 5, 15, 416, 10, 15, 3, 16, 3, 16, 3, 16, 7, 16, 421, 10, 16, 12, 16, 14, 16, 424, 11, 16, 3, 16, 5, 16, 427, 10, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 5, 17, 439, 10, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 5, 18, 446, 10, 18, 3, 18, 3, 18, 3, 18, 5, 18, 451, 10, 18, 7, 18, 453, 10, 18, 12, 18, 14, 18, 456, 11, 18, 5, 18, 458, 10, 18, 3, 19, 3, 19, 3, 19, 3, 19, 5, 19, 464, 10, 19, 3, 20, 3, 20, 5, 20, 468, 10, 20, 3, 20, 3, 20, 3, 20, 5, 20, 473, 10, 20, 7, 20, 475, 10, 20, 12, 20, 14, 20, 478, 11, 20, 3, 20, 5, 20, 481, 10, 20, 3, 21, 3, 21, 3, 22, 3, 22, 3, 22, 3, 23, 3, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 5, 24, 495, 10, 24, 3, 25, 3, 25, 3, 26, 3, 26, 3, 27, 3, 27, 5, 27, 503, 10, 27, 3, 28, 3, 28, 3, 29, 3, 29, 3, 29, 3, 29, 5, 29, 511, 10, 29, 5, 29, 513, 10, 29, 3, 30, 3, 30, 5, 30, 517, 10, 30, 3, 31, 3, 31, 3, 31, 3, 32, 3, 32, 7, 32, 524, 10, 32, 12, 32, 14, 32, 527, 11, 32, 3, 32, 3, 32, 6, 32, 531, 10, 32, 13, 32, 14, 32, 532, 5, 32, 535, 10, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 5, 32, 544, 10, 32, 3, 33, 3, 33, 3, 33, 5, 33, 549, 10, 33, 3, 34, 3, 34, 3, 34, 5, 34, 554, 10, 34, 3, 35, 3, 35, 3, 35, 7, 35, 559, 10, 35, 12, 35, 14, 35, 562, 11, 35, 3, 35, 5, 35, 565, 10, 35, 3, 36, 3, 36, 3, 36, 7, 36, 570, 10, 36, 12, 36, 14, 36, 573, 11, 36, 3, 37, 3, 37, 3, 37, 7, 37, 578, 10, 37, 12, 37, 14, 37, 581, 11, 37, 3, 38, 3, 38, 3, 38, 3, 38, 7, 38, 587, 10, 38, 12, 38, 14, 38, 590, 11, 38, 3, 39, 3, 39, 3, 39, 3, 39, 7, 39, 596, 10, 39, 12, 39, 14, 39, 599, 11, 39, 3, 40, 3, 40, 3, 40, 3, 40, 5, 40, 605, 10, 40, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 5, 41, 616, 10, 41, 3, 42, 3, 42, 3, 42, 3, 42, 5, 42, 622, 10, 42, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 7, 43, 633, 10, 43, 12, 43, 14, 43, 636, 11, 43, 3, 43, 3, 43, 3, 43, 5, 43, 641, 10, 43, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 5, 44, 650, 10, 44, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 5, 45, 661, 10, 45, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 6, 46, 670, 10, 46, 13, 46, 14, 46, 671, 3, 46, 3, 46, 3, 46, 5, 46, 677, 10, 46, 3, 46, 3, 46, 3, 46, 5, 46, 682, 10, 46, 3, 46, 3, 46, 3, 46, 5, 46, 687, 10, 46, 3, 47, 3, 47, 3, 47, 3, 47, 7, 47, 693, 10, 47, 12, 47, 14, 47, 696, 11, 47, 3, 47, 3, 47, 3, 47, 3, 48, 3, 48, 3, 48, 5, 48, 704, 10, 48, 3, 49, 3, 49, 3, 49, 3, 49, 5, 49, 710, 10, 49, 5, 49, 712, 10, 49, 3, 50, 3, 50, 3, 50, 3, 50, 6, 50, 718, 10, 50, 13, 50, 14, 50, 719, 3, 50, 3, 50, 5, 50, 724, 10, 50, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 5, 51, 732, 10, 51, 3, 51, 5, 51, 735, 10, 51, 3, 52, 3, 52, 5, 52, 739, 10, 52, 3, 53, 3, 53, 5, 53, 743, 10, 53, 3, 53, 3, 53, 3, 53, 3, 54, 3, 54, 5, 54, 750, 10, 54, 3, 54, 3, 54, 3, 54, 3, 55, 3, 55, 3, 55, 7, 55, 758, 10, 55, 12, 55, 14, 55, 761, 11, 55, 3, 56, 3, 56, 3, 56, 7, 56, 766, 10, 56, 12, 56, 14, 56, 769, 11, 56, 3, 57, 3, 57, 3, 57, 5, 57, 774, 10, 57, 3, 58, 3, 58, 3, 58, 3, 58, 7, 58, 780, 10, 58, 12, 58, 14, 58, 783, 11, 58, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 5, 59, 798, 10, 59, 3, 60, 3, 60, 3, 60, 3, 61, 3, 61, 3, 61, 7, 61, 806, 10, 61, 12, 61, 14, 61, 809, 11, 61, 3, 62, 3, 62, 3, 62, 7, 62, 814, 10, 62, 12, 62, 14, 62, 817, 11, 62, 3, 63, 3, 63, 3, 63, 7, 63, 822, 10, 63, 12, 63, 14, 63, 825, 11, 63, 3, 64, 3, 64, 3, 64, 7, 64, 830, 10, 64, 12, 64, 14, 64, 833, 11, 64, 3, 65, 3, 65, 3, 65, 7, 65, 838, 10, 65, 12, 65, 14, 65, 841, 11, 65, 3, 66, 3, 66, 3, 66, 7, 66, 846, 10, 66, 12, 66, 14, 66, 849, 11, 66, 3, 67, 3, 67, 3, 67, 5, 67, 854, 10, 67, 3, 68, 3, 68, 3, 68, 5, 68, 859, 10, 68, 3, 69, 5, 69, 862, 10, 69, 3, 69, 3, 69, 7, 69, 866, 10, 69, 12, 69, 14, 69, 869, 11, 69, 3, 70, 3, 70, 3, 70, 5, 70, 874, 10, 70, 3, 70, 3, 70, 3, 70, 5, 70, 879, 10, 70, 3, 70, 3, 70, 3, 70, 5, 70, 884, 10, 70, 3, 70, 3, 70, 3, 70, 3, 70, 6, 70, 890, 10, 70, 13, 70, 14, 70, 891, 3, 70, 3, 70, 3, 70, 3, 70, 5, 70, 898, 10, 70, 3, 71, 3, 71, 5, 71, 902, 10, 71, 3, 71, 3, 71, 3, 71, 3, 71, 5, 71, 908, 10, 71, 7, 71, 910, 10, 71, 12, 71, 14, 71, 913, 11, 71, 3, 71, 5, 71, 916, 10, 71, 5, 71, 918, 10, 71, 3, 72, 3, 72, 5, 72, 922, 10, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 5, 72, 931, 10, 72, 3, 73, 3, 73, 3, 73, 7, 73, 936, 10, 73, 12, 73, 14, 73, 939, 11, 73, 3, 73, 5, 73, 942, 10, 73, 3, 74, 3, 74, 5, 74, 946, 10, 74, 3, 74, 3, 74, 5, 74, 950, 10, 74, 3, 74, 5, 74, 953, 10, 74, 5, 74, 955, 10, 74, 3, 75, 3, 75, 5, 75, 959, 10, 75, 3, 76, 3, 76, 5, 76, 963, 10, 76, 3, 76, 3, 76, 3, 76, 5, 76, 968, 10, 76, 7, 76, 970, 10, 76, 12, 76, 14, 76, 973, 11, 76, 3, 76, 5, 76, 976, 10, 76, 3, 77, 3, 77, 3, 77, 7, 77, 981, 10, 77, 12, 77, 14, 77, 984, 11, 77, 3, 77, 5, 77, 987, 10, 77, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 5, 78, 995, 10, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 5, 78, 1005, 10, 78, 7, 78, 1007, 10, 78, 12, 78, 14, 78, 1010, 11, 78, 3, 78, 5, 78, 1013, 10, 78, 5, 78, 1015, 10, 78, 3, 78, 3, 78, 5, 78, 1019, 10, 78, 3, 78, 3, 78, 3, 78, 3, 78, 5, 78, 1025, 10, 78, 7, 78, 1027, 10, 78, 12, 78, 14, 78, 1030, 11, 78, 3, 78, 5, 78, 1033, 10, 78, 5, 78, 1035, 10, 78, 5, 78, 1037, 10, 78, 3, 79, 3, 79, 3, 79, 3, 79, 5, 79, 1043, 10, 79, 3, 79, 5, 79, 1046, 10, 79, 3, 79, 3, 79, 3, 79, 3, 80, 3, 80, 3, 80, 7, 80, 1054, 10, 80, 12, 80, 14, 80, 1057, 11, 80, 3, 80, 5, 80, 1060, 10, 80, 3, 81, 3, 81, 5, 81, 1064, 10, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 5, 81, 1074, 10, 81, 3, 82, 3, 82, 5, 82, 1078, 10, 82, 3, 83, 5, 83, 1081, 10, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 5, 83, 1088, 10, 83, 3, 84, 3, 84, 3, 84, 5, 84, 1093, 10, 84, 3, 85, 3, 85, 3, 86, 3, 86, 5, 86, 1099, 10, 86, 3, 87, 3, 87, 3, 87, 5, 87, 1104, 10, 87, 3, 87, 2, 2, 88, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 2, 8, 3, 2, 237, 249, 3, 2, 203, 204, 3, 2, 218, 219, 3, 2, 220, 221, 5, 2, 205, 205, 222, 224, 235, 235, 4, 2, 220, 221, 225, 225, 2, 1231, 2, 179, 3, 2, 2, 2, 4, 185, 3, 2, 2, 2, 6, 190, 3, 2, 2, 2, 8, 199, 3, 2, 2, 2, 10, 211, 3, 2, 2, 2, 12, 215, 3, 2, 2, 2, 14, 221, 3, 2, 2, 2, 16, 224, 3, 2, 2, 2, 18, 234, 3, 2, 2, 2, 20, 321, 3, 2, 2, 2, 22, 323, 3, 2, 2, 2, 24, 409, 3, 2, 2, 2, 26, 411, 3, 2, 2, 2, 28, 415, 3, 2, 2, 2, 30, 417, 3, 2, 2, 2, 32, 438, 3, 2, 2, 2, 34, 440, 3, 2, 2, 2, 36, 459, 3, 2, 2, 2, 38, 467, 3, 2, 2, 2, 40, 482, 3, 2, 2, 2, 42, 484, 3, 2, 2, 2, 44, 487, 3, 2, 2, 2, 46, 494, 3, 2, 2, 2, 48, 496, 3, 2, 2, 2, 50, 498, 3, 2, 2, 2, 52, 500, 3, 2, 2, 2, 54, 504, 3, 2, 2, 2, 56, 506, 3, 2, 2, 2, 58, 516, 3, 2, 2, 2, 60, 518, 3, 2, 2, 2, 62, 521, 3, 2, 2, 2, 64, 545, 3, 2, 2, 2, 66, 550, 3, 2, 2, 2, 68, 555, 3, 2, 2, 2, 70, 566, 3, 2, 2, 2, 72, 574, 3, 2, 2, 2, 74, 582, 3, 2, 2, 2, 76, 591, 3, 2, 2, 2, 78, 600, 3, 2, 2, 2, 80, 615, 3, 2, 2, 2, 82, 617, 3, 2, 2, 2, 84, 623, 3, 2, 2, 2, 86, 642, 3, 2, 2, 2, 88, 651, 3, 2, 2, 2, 90, 662, 3, 2, 2, 2, 92, 688, 3, 2, 2, 2, 94, 700, 3, 2, 2, 2, 96, 705, 3, 2, 2, 2, 98, 723, 3, 2, 2, 2, 100, 734, 3, 2, 2, 2, 102, 738, 3, 2, 2, 2, 104, 740, 3, 2, 2, 2, 106, 747, 3, 2, 2, 2, 108, 754, 3, 2, 2, 2, 110, 762, 3, 2, 2, 2, 112, 773, 3, 2, 2, 2, 114, 775, 3, 2, 2, 2, 116, 797, 3, 2, 2, 2, 118, 799, 3, 2, 2, 2, 120, 802, 3, 2, 2, 2, 122, 810, 3, 2, 2, 2, 124, 818, 3, 2, 2, 2, 126, 826, 3, 2, 2, 2, 128, 834, 3, 2, 2, 2, 130, 842, 3, 2, 2, 2, 132, 853, 3, 2, 2, 2, 134, 855, 3, 2, 2, 2, 136, 861, 3, 2, 2, 2, 138, 897, 3, 2, 2, 2, 140, 901, 3, 2, 2, 2, 142, 930, 3, 2, 2, 2, 144, 932, 3, 2, 2, 2, 146, 954, 3, 2, 2, 2, 148, 956, 3, 2, 2, 2, 150, 962, 3, 2, 2, 2, 152, 977, 3, 2, 2, 2, 154, 1036, 3, 2, 2, 2, 156, 1038, 3, 2, 2, 2, 158, 1050, 3, 2, 2, 2, 160, 1073, 3, 2, 2, 2, 162, 1077, 3, 2, 2, 2, 164, 1080, 3, 2, 2, 2, 166, 1089, 3, 2, 2, 2, 168, 1094, 3, 2, 2, 2, 170, 1096, 3, 2, 2, 2, 172, 1103, 3, 2, 2, 2, 174, 180, 7, 189, 2, 2, 175, 180, 5, 30, 16, 2, 176, 177, 5, 80, 41, 2, 177, 178, 7, 189, 2, 2, 178, 180, 3, 2, 2, 2, 179, 174, 3, 2, 2, 2, 179, 175, 3, 2, 2, 2, 179, 176, 3, 2, 2, 2, 180, 3, 3, 2, 2, 2, 181, 184, 7, 189, 2, 2, 182, 184, 5, 28, 15, 2, 183, 181, 3, 2, 2, 2, 183, 182, 3, 2, 2, 2, 184, 187, 3, 2, 2, 2, 185, 183, 3, 2, 2, 2, 185, 186, 3, 2, 2, 2, 186, 188, 3, 2, 2, 2, 187, 185, 3, 2, 2, 2, 188, 189, 7, 2, 2, 3, 189, 5, 3, 2, 2, 2, 190, 194, 5, 152, 77, 2, 191, 193, 7, 189, 2, 2, 192, 191, 3, 2, 2, 2, 193, 196, 3, 2, 2, 2, 194, 192, 3, 2, 2, 2, 194, 195, 3, 2, 2, 2, 195, 197, 3, 2, 2, 2, 196, 194, 3, 2, 2, 2, 197, 198, 7, 2, 2, 3, 198, 7, 3, 2, 2, 2, 199, 200, 7, 235, 2, 2, 200, 206, 5, 72, 37, 2, 201, 203, 7, 206, 2, 2, 202, 204, 5, 158, 80, 2, 203, 202, 3, 2, 2, 2, 203, 204, 3, 2, 2, 2, 204, 205, 3, 2, 2, 2, 205, 207, 7, 207, 2, 2, 206, 201, 3, 2, 2, 2, 206, 207, 3, 2, 2, 2, 207, 208, 3, 2, 2, 2, 208, 209, 7, 189, 2, 2, 209, 9, 3, 2, 2, 2, 210, 212, 5, 8, 5, 2, 211, 210, 3, 2, 2, 2, 212, 213, 3, 2, 2, 2, 213, 211, 3, 2, 2, 2, 213, 214, 3, 2, 2, 2, 214, 11, 3, 2, 2, 2, 215, 219, 5, 10, 6, 2, 216, 220, 5, 156, 79, 2, 217, 220, 5, 16, 9, 2, 218, 220, 5, 14, 8, 2, 219, 216, 3, 2, 2, 2, 219, 217, 3, 2, 2, 2, 219, 218, 3, 2, 2, 2, 220, 13, 3, 2, 2, 2, 221, 222, 7, 187, 2, 2, 222, 223, 5, 16, 9, 2, 223, 15, 3, 2, 2, 2, 224, 225, 7, 154, 2, 2, 225, 226, 7, 190, 2, 2, 226, 229, 5, 18, 10, 2, 227, 228, 7, 236, 2, 2, 228, 230, 5, 100, 51, 2, 229, 227, 3, 2, 2, 2, 229, 230, 3, 2, 2, 2, 230, 231, 3, 2, 2, 2, 231, 232, 7, 209, 2, 2, 232, 233, 5, 98, 50, 2, 233, 17, 3, 2, 2, 2, 234, 236, 7, 206, 2, 2, 235, 237, 5, 20, 11, 2, 236, 235, 3, 2, 2, 2, 236, 237, 3, 2, 2, 2, 237, 238, 3, 2, 2, 2, 238, 239, 7, 207, 2, 2, 239, 19, 3, 2, 2, 2, 240, 243, 5, 22, 12, 2, 241, 242, 7, 212, 2, 2, 242, 244, 5, 100, 51, 2, 243, 241, 3, 2, 2, 2, 243, 244, 3, 2, 2, 2, 244, 253, 3, 2, 2, 2, 245, 246, 7, 208, 2, 2, 246, 249, 5, 22, 12, 2, 247, 248, 7, 212, 2, 2, 248, 250, 5, 100, 51, 2, 249, 247, 3, 2, 2, 2, 249, 250, 3, 2, 2, 2, 250, 252, 3, 2, 2, 2, 251, 245, 3, 2, 2, 2, 252, 255, 3, 2, 2, 2, 253, 251, 3, 2, 2, 2, 253, 254, 3, 2, 2, 2, 254, 289, 3, 2, 2, 2, 255, 253, 3, 2, 2, 2, 256, 287, 7, 208, 2, 2, 257, 259, 7, 205, 2, 2, 258, 260, 5, 22, 12, 2, 259, 258, 3, 2, 2, 2, 259, 260, 3, 2, 2, 2, 260, 269, 3, 2, 2, 2, 261, 262, 7, 208, 2, 2, 262, 265, 5, 22, 12, 2, 263, 264, 7, 212, 2, 2, 264, 266, 5, 100, 51, 2, 265, 263, 3, 2, 2, 2, 265, 266, 3, 2, 2, 2, 266, 268, 3, 2, 2, 2, 267, 261, 3, 2, 2, 2, 268, 271, 3, 2, 2, 2, 269, 267, 3, 2, 2, 2, 269, 270, 3, 2, 2, 2, 270, 280, 3, 2, 2, 2, 271, 269, 3, 2, 2, 2, 272, 278, 7, 208, 2, 2, 273, 274, 7, 211, 2, 2, 274, 276, 5, 22, 12, 2, 275, 277, 7, 208, 2, 2, 276, 275, 3, 2, 2, 2, 276, 277, 3, 2, 2, 2, 277, 279, 3, 2, 2, 2, 278, 273, 3, 2, 2, 2, 278, 279, 3, 2, 2, 2, 279, 281, 3, 2, 2, 2, 280, 272, 3, 2, 2, 2, 280, 281, 3, 2, 2, 2, 281, 288, 3, 2, 2, 2, 282, 283, 7, 211, 2, 2, 283, 285, 5, 22, 12, 2, 284, 286, 7, 208, 2, 2, 285, 284, 3, 2, 2, 2, 285, 286, 3, 2, 2, 2, 286, 288, 3, 2, 2, 2, 287, 257, 3, 2, 2, 2, 287, 282, 3, 2, 2, 2, 287, 288, 3, 2, 2, 2, 288, 290, 3, 2, 2, 2, 289, 256, 3, 2, 2, 2, 289, 290, 3, 2, 2, 2, 290, 322, 3, 2, 2, 2, 291, 293, 7, 205, 2, 2, 292, 294, 5, 22, 12, 2, 293, 292, 3, 2, 2, 2, 293, 294, 3, 2, 2, 2, 294, 303, 3, 2, 2, 2, 295, 296, 7, 208, 2, 2, 296, 299, 5, 22, 12, 2, 297, 298, 7, 212, 2, 2, 298, 300, 5, 100, 51, 2, 299, 297, 3, 2, 2, 2, 299, 300, 3, 2, 2, 2, 300, 302, 3, 2, 2, 2, 301, 295, 3, 2, 2, 2, 302, 305, 3, 2, 2, 2, 303, 301, 3, 2, 2, 2, 303, 304, 3, 2, 2, 2, 304, 314, 3, 2, 2, 2, 305, 303, 3, 2, 2, 2, 306, 312, 7, 208, 2, 2, 307, 308, 7, 211, 2, 2, 308, 310, 5, 22, 12, 2, 309, 311, 7, 208, 2, 2, 310, 309, 3, 2, 2, 2, 310, 311, 3, 2, 2, 2, 311, 313, 3, 2, 2, 2, 312, 307, 3, 2, 2, 2, 312, 313, 3, 2, 2, 2, 313, 315, 3, 2, 2, 2, 314, 306, 3, 2, 2, 2, 314, 315, 3, 2, 2, 2, 315, 322, 3, 2, 2, 2, 316, 317, 7, 211, 2, 2, 317, 319, 5, 22, 12, 2, 318, 320, 7, 208, 2, 2, 319, 318, 3, 2, 2, 2, 319, 320, 3, 2, 2, 2, 320, 322, 3, 2, 2, 2, 321, 240, 3, 2, 2, 2, 321, 291, 3, 2, 2, 2, 321, 316, 3, 2, 2, 2, 322, 21, 3, 2, 2, 2, 323, 326, 7, 190, 2, 2, 324, 325, 7, 209, 2, 2, 325, 327, 5, 100, 51, 2, 326, 324, 3, 2, 2, 2, 326, 327, 3, 2, 2, 2, 327, 23, 3, 2, 2, 2, 328, 331, 5, 26, 14, 2, 329, 330, 7, 212, 2, 2, 330, 332, 5, 100, 51, 2, 331, 329, 3, 2, 2, 2, 331, 332, 3, 2, 2, 2, 332, 341, 3, 2, 2, 2, 333, 334, 7, 208, 2, 2, 334, 337, 5, 26, 14, 2, 335, 336, 7, 212, 2, 2, 336, 338, 5, 100, 51, 2, 337, 335, 3, 2, 2, 2, 337, 338, 3, 2, 2, 2, 338, 340, 3, 2, 2, 2, 339, 333, 3, 2, 2, 2, 340, 343, 3, 2, 2, 2, 341, 339, 3, 2, 2, 2, 341, 342, 3, 2, 2, 2, 342, 377, 3, 2, 2, 2, 343, 341, 3, 2, 2, 2, 344, 375, 7, 208, 2, 2, 345, 347, 7, 205, 2, 2, 346, 348, 5, 26, 14, 2, 347, 346, 3, 2, 2, 2, 347, 348, 3, 2, 2, 2, 348, 357, 3, 2, 2, 2, 349, 350, 7, 208, 2, 2, 350, 353, 5, 26, 14, 2, 351, 352, 7, 212, 2, 2, 352, 354, 5, 100, 51, 2, 353, 351, 3, 2, 2, 2, 353, 354, 3, 2, 2, 2, 354, 356, 3, 2, 2, 2, 355, 349, 3, 2, 2, 2, 356, 359, 3, 2, 2, 2, 357, 355, 3, 2, 2, 2, 357, 358, 3, 2, 2, 2, 358, 368, 3, 2, 2, 2, 359, 357, 3, 2, 2, 2, 360, 366, 7, 208, 2, 2, 361, 362, 7, 211, 2, 2, 362, 364, 5, 26, 14, 2, 363, 365, 7, 208, 2, 2, 364, 363, 3, 2, 2, 2, 364, 365, 3, 2, 2, 2, 365, 367, 3, 2, 2, 2, 366, 361, 3, 2, 2, 2, 366, 367, 3, 2, 2, 2, 367, 369, 3, 2, 2, 2, 368, 360, 3, 2, 2, 2, 368, 369, 3, 2, 2, 2, 369, 376, 3, 2, 2, 2, 370, 371, 7, 211, 2, 2, 371, 373, 5, 26, 14, 2, 372, 374, 7, 208, 2, 2, 373, 372, 3, 2, 2, 2, 373, 374, 3, 2, 2, 2, 374, 376, 3, 2, 2, 2, 375, 345, 3, 2, 2, 2, 375, 370, 3, 2, 2, 2, 375, 376, 3, 2, 2, 2, 376, 378, 3, 2, 2, 2, 377, 344, 3, 2, 2, 2, 377, 378, 3, 2, 2, 2, 378, 410, 3, 2, 2, 2, 379, 381, 7, 205, 2, 2, 380, 382, 5, 26, 14, 2, 381, 380, 3, 2, 2, 2, 381, 382, 3, 2, 2, 2, 382, 391, 3, 2, 2, 2, 383, 384, 7, 208, 2, 2, 384, 387, 5, 26, 14, 2, 385, 386, 7, 212, 2, 2, 386, 388, 5, 100, 51, 2, 387, 385, 3, 2, 2, 2, 387, 388, 3, 2, 2, 2, 388, 390, 3, 2, 2, 2, 389, 383, 3, 2, 2, 2, 390, 393, 3, 2, 2, 2, 391, 389, 3, 2, 2, 2, 391, 392, 3, 2, 2, 2, 392, 402, 3, 2, 2, 2, 393, 391, 3, 2, 2, 2, 394, 400, 7, 208, 2, 2, 395, 396, 7, 211, 2, 2, 396, 398, 5, 26, 14, 2, 397, 399, 7, 208, 2, 2, 398, 397, 3, 2, 2, 2, 398, 399, 3, 2, 2, 2, 399, 401, 3, 2, 2, 2, 400, 395, 3, 2, 2, 2, 400, 401, 3, 2, 2, 2, 401, 403, 3, 2, 2, 2, 402, 394, 3, 2, 2, 2, 402, 403, 3, 2, 2, 2, 403, 410, 3, 2, 2, 2, 404, 405, 7, 211, 2, 2, 405, 407, 5, 26, 14, 2, 406, 408, 7, 208, 2, 2, 407, 406, 3, 2, 2, 2, 407, 408, 3, 2, 2, 2, 408, 410, 3, 2, 2, 2, 409, 328, 3, 2, 2, 2, 409, 379, 3, 2, 2, 2, 409, 404, 3, 2, 2, 2, 410, 25, 3, 2, 2, 2, 411, 412, 7, 190, 2, 2, 412, 27, 3, 2, 2, 2, 413, 416, 5, 30, 16, 2, 414, 416, 5, 80, 41, 2, 415, 413, 3, 2, 2, 2, 415, 414, 3, 2, 2, 2, 416, 29, 3, 2, 2, 2, 417, 422, 5, 32, 17, 2, 418, 419, 7, 210, 2, 2, 419, 421, 5, 32, 17, 2, 420, 418, 3, 2, 2, 2, 421, 424, 3, 2, 2, 2, 422, 420, 3, 2, 2, 2, 422, 423, 3, 2, 2, 2, 423, 426, 3, 2, 2, 2, 424, 422, 3, 2, 2, 2, 425, 427, 7, 210, 2, 2, 426, 425, 3, 2, 2, 2, 426, 427, 3, 2, 2, 2, 427, 428, 3, 2, 2, 2, 428, 429, 7, 189, 2, 2, 429, 31, 3, 2, 2, 2, 430, 439, 5, 34, 18, 2, 431, 439, 5, 42, 22, 2, 432, 439, 5, 44, 23, 2, 433, 439, 5, 46, 24, 2, 434, 439, 5, 58, 30, 2, 435, 439, 5, 74, 38, 2, 436, 439, 5, 76, 39, 2, 437, 439, 5, 78, 40, 2, 438, 430, 3, 2, 2, 2, 438, 431, 3, 2, 2, 2, 438, 432, 3, 2, 2, 2, 438, 433, 3, 2, 2, 2, 438, 434, 3, 2, 2, 2, 438, 435, 3, 2, 2, 2, 438, 436, 3, 2, 2, 2, 438, 437, 3, 2, 2, 2, 439, 33, 3, 2, 2, 2, 440, 457, 5, 38, 20, 2, 441, 458, 5, 36, 19, 2, 442, 445, 5, 40, 21, 2, 443, 446, 5, 170, 86, 2, 444, 446, 5, 152, 77, 2, 445, 443, 3, 2, 2, 2, 445, 444, 3, 2, 2, 2, 446, 458, 3, 2, 2, 2, 447, 450, 7, 212, 2, 2, 448, 451, 5, 170, 86, 2, 449, 451, 5, 38, 20, 2, 450, 448, 3, 2, 2, 2, 450, 449, 3, 2, 2, 2, 451, 453, 3, 2, 2, 2, 452, 447, 3, 2, 2, 2, 453, 456, 3, 2, 2, 2, 454, 452, 3, 2, 2, 2, 454, 455, 3, 2, 2, 2, 455, 458, 3, 2, 2, 2, 456, 454, 3, 2, 2, 2, 457, 441, 3, 2, 2, 2, 457, 442, 3, 2, 2, 2, 457, 454, 3, 2, 2, 2, 458, 35, 3, 2, 2, 2, 459, 460, 7, 209, 2, 2, 460, 463, 5, 100, 51, 2, 461, 462, 7, 212, 2, 2, 462, 464, 5, 100, 51, 2, 463, 461, 3, 2, 2, 2, 463, 464, 3, 2, 2, 2, 464, 37, 3, 2, 2, 2, 465, 468, 5, 100, 51, 2, 466, 468, 5, 118, 60, 2, 467, 465, 3, 2, 2, 2, 467, 466, 3, 2, 2, 2, 468, 476, 3, 2, 2, 2, 469, 472, 7, 208, 2, 2, 470, 473, 5, 100, 51, 2, 471, 473, 5, 118, 60, 2, 472, 470, 3, 2, 2, 2, 472, 471, 3, 2, 2, 2, 473, 475, 3, 2, 2, 2, 474, 469, 3, 2, 2, 2, 475, 478, 3, 2, 2, 2, 476, 474, 3, 2, 2, 2, 476, 477, 3, 2, 2, 2, 477, 480, 3, 2, 2, 2, 478, 476, 3, 2, 2, 2, 479, 481, 7, 208, 2, 2, 480, 479, 3, 2, 2, 2, 480, 481, 3, 2, 2, 2, 481, 39, 3, 2, 2, 2, 482, 483, 9, 2, 2, 2, 483, 41, 3, 2, 2, 2, 484, 485, 7, 183, 2, 2, 485, 486, 5, 150, 76, 2, 486, 43, 3, 2, 2, 2, 487, 488, 7, 184, 2, 2, 488, 45, 3, 2, 2, 2, 489, 495, 5, 48, 25, 2, 490, 495, 5, 50, 26, 2, 491, 495, 5, 52, 27, 2, 492, 495, 5, 56, 29, 2, 493, 495, 5, 54, 28, 2, 494, 489, 3, 2, 2, 2, 494, 490, 3, 2, 2, 2, 494, 491, 3, 2, 2, 2, 494, 492, 3, 2, 2, 2, 494, 493, 3, 2, 2, 2, 495, 47, 3, 2, 2, 2, 496, 497, 7, 186, 2, 2, 497, 49, 3, 2, 2, 2, 498, 499, 7, 185, 2, 2, 499, 51, 3, 2, 2, 2, 500, 502, 7, 155, 2, 2, 501, 503, 5, 152, 77, 2, 502, 501, 3, 2, 2, 2, 502, 503, 3, 2, 2, 2, 503, 53, 3, 2, 2, 2, 504, 505, 5, 170, 86, 2, 505, 55, 3, 2, 2, 2, 506, 512, 7, 156, 2, 2, 507, 510, 5, 100, 51, 2, 508, 509, 7, 157, 2, 2, 509, 511, 5, 100, 51, 2, 510, 508, 3, 2, 2, 2, 510, 511, 3, 2, 2, 2, 511, 513, 3, 2, 2, 2, 512, 507, 3, 2, 2, 2, 512, 513, 3, 2, 2, 2, 513, 57, 3, 2, 2, 2, 514, 517, 5, 60, 31, 2, 515, 517, 5, 62, 32, 2, 516, 514, 3, 2, 2, 2, 516, 515, 3, 2, 2, 2, 517, 59, 3, 2, 2, 2, 518, 519, 7, 158, 2, 2, 519, 520, 5, 70, 36, 2, 520, 61, 3, 2, 2, 2, 521, 534, 7, 157, 2, 2, 522, 524, 9, 3, 2, 2, 523, 522, 3, 2, 2, 2, 524, 527, 3, 2, 2, 2, 525, 523, 3, 2, 2, 2, 525, 526, 3, 2, 2, 2, 526, 528, 3, 2, 2, 2, 527, 525, 3, 2, 2, 2, 528, 535, 5, 72, 37, 2, 529, 531, 9, 3, 2, 2, 530, 529, 3, 2, 2, 2, 531, 532, 3, 2, 2, 2, 532, 530, 3, 2, 2, 2, 532, 533, 3, 2, 2, 2, 533, 535, 3, 2, 2, 2, 534, 525, 3, 2, 2, 2, 534, 530, 3, 2, 2, 2, 535, 536, 3, 2, 2, 2, 536, 543, 7, 158, 2, 2, 537, 544, 7, 205, 2, 2, 538, 539, 7, 206, 2, 2, 539, 540, 5, 68, 35, 2, 540, 541, 7, 207, 2, 2, 541, 544, 3, 2, 2, 2, 542, 544, 5, 68, 35, 2, 543, 537, 3, 2, 2, 2, 543, 538, 3, 2, 2, 2, 543, 542, 3, 2, 2, 2, 544, 63, 3, 2, 2, 2, 545, 548, 7, 190, 2, 2, 546, 547, 7, 159, 2, 2, 547, 549, 7, 190, 2, 2, 548, 546, 3, 2, 2, 2, 548, 549, 3, 2, 2, 2, 549, 65, 3, 2, 2, 2, 550, 553, 5, 72, 37, 2, 551, 552, 7, 159, 2, 2, 552, 554, 7, 190, 2, 2, 553, 551, 3, 2, 2, 2, 553, 554, 3, 2, 2, 2, 554, 67, 3, 2, 2, 2, 555, 560, 5, 64, 33, 2, 556, 557, 7, 208, 2, 2, 557, 559, 5, 64, 33, 2, 558, 556, 3, 2, 2, 2, 559, 562, 3, 2, 2, 2, 560, 558, 3, 2, 2, 2, 560, 561, 3, 2, 2, 2, 561, 564, 3, 2, 2, 2, 562, 560, 3, 2, 2, 2, 563, 565, 7, 208, 2, 2, 564, 563, 3, 2, 2, 2, 564, 565, 3, 2, 2, 2, 565, 69, 3, 2, 2, 2, 566, 571, 5, 66, 34, 2, 567, 568, 7, 208, 2, 2, 568, 570, 5, 66, 34, 2, 569, 567, 3, 2, 2, 2, 570, 573, 3, 2, 2, 2, 571, 569, 3, 2, 2, 2, 571, 572, 3, 2, 2, 2, 572, 71, 3, 2, 2, 2, 573, 571, 3, 2, 2, 2, 574, 579, 7, 190, 2, 2, 575, 576, 7, 203, 2, 2, 576, 578, 7, 190, 2, 2, 577, 575, 3, 2, 2, 2, 578, 581, 3, 2, 2, 2, 579, 577, 3, 2, 2, 2, 579, 580, 3, 2, 2, 2, 580, 73, 3, 2, 2, 2, 581, 579, 3, 2, 2, 2, 582, 583, 7, 160, 2, 2, 583, 588, 7, 190, 2, 2, 584, 585, 7, 208, 2, 2, 585, 587, 7, 190, 2, 2, 586, 584, 3, 2, 2, 2, 587, 590, 3, 2, 2, 2, 588, 586, 3, 2, 2, 2, 588, 589, 3, 2, 2, 2, 589, 75, 3, 2, 2, 2, 590, 588, 3, 2, 2, 2, 591, 592, 7, 161, 2, 2, 592, 597, 7, 190, 2, 2, 593, 594, 7, 208, 2, 2, 594, 596, 7, 190, 2, 2, 595, 593, 3, 2, 2, 2, 596, 599, 3, 2, 2, 2, 597, 595, 3, 2, 2, 2, 597, 598, 3, 2, 2, 2, 598, 77, 3, 2, 2, 2, 599, 597, 3, 2, 2, 2, 600, 601, 7, 162, 2, 2, 601, 604, 5, 100, 51, 2, 602, 603, 7, 208, 2, 2, 603, 605, 5, 100, 51, 2, 604, 602, 3, 2, 2, 2, 604, 605, 3, 2, 2, 2, 605, 79, 3, 2, 2, 2, 606, 616, 5, 84, 43, 2, 607, 616, 5, 86, 44, 2, 608, 616, 5, 88, 45, 2, 609, 616, 5, 90, 46, 2, 610, 616, 5, 92, 47, 2, 611, 616, 5, 16, 9, 2, 612, 616, 5, 156, 79, 2, 613, 616, 5, 12, 7, 2, 614, 616, 5, 82, 42, 2, 615, 606, 3, 2, 2, 2, 615, 607, 3, 2, 2, 2, 615, 608, 3, 2, 2, 2, 615, 609, 3, 2, 2, 2, 615, 610, 3, 2, 2, 2, 615, 611, 3, 2, 2, 2, 615, 612, 3, 2, 2, 2, 615, 613, 3, 2, 2, 2, 615, 614, 3, 2, 2, 2, 616, 81, 3, 2, 2, 2, 617, 621, 7, 187, 2, 2, 618, 622, 5, 16, 9, 2, 619, 622, 5, 92, 47, 2, 620, 622, 5, 88, 45, 2, 621, 618, 3, 2, 2, 2, 621, 619, 3, 2, 2, 2, 621, 620, 3, 2, 2, 2, 622, 83, 3, 2, 2, 2, 623, 624, 7, 163, 2, 2, 624, 625, 5, 100, 51, 2, 625, 626, 7, 209, 2, 2, 626, 634, 5, 98, 50, 2, 627, 628, 7, 164, 2, 2, 628, 629, 5, 100, 51, 2, 629, 630, 7, 209, 2, 2, 630, 631, 5, 98, 50, 2, 631, 633, 3, 2, 2, 2, 632, 627, 3, 2, 2, 2, 633, 636, 3, 2, 2, 2, 634, 632, 3, 2, 2, 2, 634, 635, 3, 2, 2, 2, 635, 640, 3, 2, 2, 2, 636, 634, 3, 2, 2, 2, 637, 638, 7, 165, 2, 2, 638, 639, 7, 209, 2, 2, 639, 641, 5, 98, 50, 2, 640, 637, 3, 2, 2, 2, 640, 641, 3, 2, 2, 2, 641, 85, 3, 2, 2, 2, 642, 643, 7, 166, 2, 2, 643, 644, 5, 100, 51, 2, 644, 645, 7, 209, 2, 2, 645, 649, 5, 98, 50, 2, 646, 647, 7, 165, 2, 2, 647, 648, 7, 209, 2, 2, 648, 650, 5, 98, 50, 2, 649, 646, 3, 2, 2, 2, 649, 650, 3, 2, 2, 2, 650, 87, 3, 2, 2, 2, 651, 652, 7, 167, 2, 2, 652, 653, 5, 150, 76, 2, 653, 654, 7, 168, 2, 2, 654, 655, 5, 152, 77, 2, 655, 656, 7, 209, 2, 2, 656, 660, 5, 98, 50, 2, 657, 658, 7, 165, 2, 2, 658, 659, 7, 209, 2, 2, 659, 661, 5, 98, 50, 2, 660, 657, 3, 2, 2, 2, 660, 661, 3, 2, 2, 2, 661, 89, 3, 2, 2, 2, 662, 663, 7, 169, 2, 2, 663, 664, 7, 209, 2, 2, 664, 686, 5, 98, 50, 2, 665, 666, 5, 96, 49, 2, 666, 667, 7, 209, 2, 2, 667, 668, 5, 98, 50, 2, 668, 670, 3, 2, 2, 2, 669, 665, 3, 2, 2, 2, 670, 671, 3, 2, 2, 2, 671, 669, 3, 2, 2, 2, 671, 672, 3, 2, 2, 2, 672, 676, 3, 2, 2, 2, 673, 674, 7, 165, 2, 2, 674, 675, 7, 209, 2, 2, 675, 677, 5, 98, 50, 2, 676, 673, 3, 2, 2, 2, 676, 677, 3, 2, 2, 2, 677, 681, 3, 2, 2, 2, 678, 679, 7, 170, 2, 2, 679, 680, 7, 209, 2, 2, 680, 682, 5, 98, 50, 2, 681, 678, 3, 2, 2, 2, 681, 682, 3, 2, 2, 2, 682, 687, 3, 2, 2, 2, 683, 684, 7, 170, 2, 2, 684, 685, 7, 209, 2, 2, 685, 687, 5, 98, 50, 2, 686, 669, 3, 2, 2, 2, 686, 683, 3, 2, 2, 2, 687, 91, 3, 2, 2, 2, 688, 689, 7, 171, 2, 2, 689, 694, 5, 94, 48, 2, 690, 691, 7, 208, 2, 2, 691, 693, 5, 94, 48, 2, 692, 690, 3, 2, 2, 2, 693, 696, 3, 2, 2, 2, 694, 692, 3, 2, 2, 2, 694, 695, 3, 2, 2, 2, 695, 697, 3, 2, 2, 2, 696, 694, 3, 2, 2, 2, 697, 698, 7, 209, 2, 2, 698, 699, 5, 98, 50, 2, 699, 93, 3, 2, 2, 2, 700, 703, 5, 100, 51, 2, 701, 702, 7, 159, 2, 2, 702, 704, 5, 120, 61, 2, 703, 701, 3, 2, 2, 2, 703, 704, 3, 2, 2, 2, 704, 95, 3, 2, 2, 2, 705, 711, 7, 172, 2, 2, 706, 709, 5, 100, 51, 2, 707, 708, 7, 159, 2, 2, 708, 710, 7, 190, 2, 2, 709, 707, 3, 2, 2, 2, 709, 710, 3, 2, 2, 2, 710, 712, 3, 2, 2, 2, 711, 706, 3, 2, 2, 2, 711, 712, 3, 2, 2, 2, 712, 97, 3, 2, 2, 2, 713, 724, 5, 30, 16, 2, 714, 715, 7, 189, 2, 2, 715, 717, 7, 252, 2, 2, 716, 718, 5, 28, 15, 2, 717, 716, 3, 2, 2, 2, 718, 719, 3, 2, 2, 2, 719, 717, 3, 2, 2, 2, 719, 720, 3, 2, 2, 2, 720, 721, 3, 2, 2, 2, 721, 722, 7, 253, 2, 2, 722, 724, 3, 2, 2, 2, 723, 713, 3, 2, 2, 2, 723, 714, 3, 2, 2, 2, 724, 99, 3, 2, 2, 2, 725, 731, 5, 108, 55, 2, 726, 727, 7, 163, 2, 2, 727, 728, 5, 108, 55, 2, 728, 729, 7, 165, 2, 2, 729, 730, 5, 100, 51, 2, 730, 732, 3, 2, 2, 2, 731, 726, 3, 2, 2, 2, 731, 732, 3, 2, 2, 2, 732, 735, 3, 2, 2, 2, 733, 735, 5, 104, 53, 2, 734, 725, 3, 2, 2, 2, 734, 733, 3, 2, 2, 2, 735, 101, 3, 2, 2, 2, 736, 739, 5, 108, 55, 2, 737, 739, 5, 106, 54, 2, 738, 736, 3, 2, 2, 2, 738, 737, 3, 2, 2, 2, 739, 103, 3, 2, 2, 2, 740, 742, 7, 173, 2, 2, 741, 743, 5, 24, 13, 2, 742, 741, 3, 2, 2, 2, 742, 743, 3, 2, 2, 2, 743, 744, 3, 2, 2, 2, 744, 745, 7, 209, 2, 2, 745, 746, 5, 100, 51, 2, 746, 105, 3, 2, 2, 2, 747, 749, 7, 173, 2, 2, 748, 750, 5, 24, 13, 2, 749, 748, 3, 2, 2, 2, 749, 750, 3, 2, 2, 2, 750, 751, 3, 2, 2, 2, 751, 752, 7, 209, 2, 2, 752, 753, 5, 102, 52, 2, 753, 107, 3, 2, 2, 2, 754, 759, 5, 110, 56, 2, 755, 756, 7, 174, 2, 2, 756, 758, 5, 110, 56, 2, 757, 755, 3, 2, 2, 2, 758, 761, 3, 2, 2, 2, 759, 757, 3, 2, 2, 2, 759, 760, 3, 2, 2, 2, 760, 109, 3, 2, 2, 2, 761, 759, 3, 2, 2, 2, 762, 767, 5, 112, 57, 2, 763, 764, 7, 175, 2, 2, 764, 766, 5, 112, 57, 2, 765, 763, 3, 2, 2, 2, 766, 769, 3, 2, 2, 2, 767, 765, 3, 2, 2, 2, 767, 768, 3, 2, 2, 2, 768, 111, 3, 2, 2, 2, 769, 767, 3, 2, 2, 2, 770, 771, 7, 176, 2, 2, 771, 774, 5, 112, 57, 2, 772, 774, 5, 114, 58, 2, 773, 770, 3, 2, 2, 2, 773, 772, 3, 2, 2, 2, 774, 113, 3, 2, 2, 2, 775, 781, 5, 120, 61, 2, 776, 777, 5, 116, 59, 2, 777, 778, 5, 120, 61, 2, 778, 780, 3, 2, 2, 2, 779, 776, 3, 2, 2, 2, 780, 783, 3, 2, 2, 2, 781, 779, 3, 2, 2, 2, 781, 782, 3, 2, 2, 2, 782, 115, 3, 2, 2, 2, 783, 781, 3, 2, 2, 2, 784, 798, 7, 228, 2, 2, 785, 798, 7, 229, 2, 2, 786, 798, 7, 230, 2, 2, 787, 798, 7, 231, 2, 2, 788, 798, 7, 232, 2, 2, 789, 798, 7, 233, 2, 2, 790, 798, 7, 234, 2, 2, 791, 798, 7, 168, 2, 2, 792, 793, 7, 176, 2, 2, 793, 798, 7, 168, 2, 2, 794, 798, 7, 177, 2, 2, 795, 796, 7, 177, 2, 2, 796, 798, 7, 176, 2, 2, 797, 784, 3, 2, 2, 2, 797, 785, 3, 2, 2, 2, 797, 786, 3, 2, 2, 2, 797, 787, 3, 2, 2, 2, 797, 788, 3, 2, 2, 2, 797, 789, 3, 2, 2, 2, 797, 790, 3, 2, 2, 2, 797, 791, 3, 2, 2, 2, 797, 792, 3, 2, 2, 2, 797, 794, 3, 2, 2, 2, 797, 795, 3, 2, 2, 2, 798, 117, 3, 2, 2, 2, 799, 800, 7, 205, 2, 2, 800, 801, 5, 120, 61, 2, 801, 119, 3, 2, 2, 2, 802, 807, 5, 122, 62, 2, 803, 804, 7, 215, 2, 2, 804, 806, 5, 122, 62, 2, 805, 803, 3, 2, 2, 2, 806, 809, 3, 2, 2, 2, 807, 805, 3, 2, 2, 2, 807, 808, 3, 2, 2, 2, 808, 121, 3, 2, 2, 2, 809, 807, 3, 2, 2, 2, 810, 815, 5, 124, 63, 2, 811, 812, 7, 216, 2, 2, 812, 814, 5, 124, 63, 2, 813, 811, 3, 2, 2, 2, 814, 817, 3, 2, 2, 2, 815, 813, 3, 2, 2, 2, 815, 816, 3, 2, 2, 2, 816, 123, 3, 2, 2, 2, 817, 815, 3, 2, 2, 2, 818, 823, 5, 126, 64, 2, 819, 820, 7, 217, 2, 2, 820, 822, 5, 126, 64, 2, 821, 819, 3, 2, 2, 2, 822, 825, 3, 2, 2, 2, 823, 821, 3, 2, 2, 2, 823, 824, 3, 2, 2, 2, 824, 125, 3, 2, 2, 2, 825, 823, 3, 2, 2, 2, 826, 831, 5, 128, 65, 2, 827, 828, 9, 4, 2, 2, 828, 830, 5, 128, 65, 2, 829, 827, 3, 2, 2, 2, 830, 833, 3, 2, 2, 2, 831, 829, 3, 2, 2, 2, 831, 832, 3, 2, 2, 2, 832, 127, 3, 2, 2, 2, 833, 831, 3, 2, 2, 2, 834, 839, 5, 130, 66, 2, 835, 836, 9, 5, 2, 2, 836, 838, 5, 130, 66, 2, 837, 835, 3, 2, 2, 2, 838, 841, 3, 2, 2, 2, 839, 837, 3, 2, 2, 2, 839, 840, 3, 2, 2, 2, 840, 129, 3, 2, 2, 2, 841, 839, 3, 2, 2, 2, 842, 847, 5, 132, 67, 2, 843, 844, 9, 6, 2, 2, 844, 846, 5, 132, 67, 2, 845, 843, 3, 2, 2, 2, 846, 849, 3, 2, 2, 2, 847, 845, 3, 2, 2, 2, 847, 848, 3, 2, 2, 2, 848, 131, 3, 2, 2, 2, 849, 847, 3, 2, 2, 2, 850, 851, 9, 7, 2, 2, 851, 854, 5, 132, 67, 2, 852, 854, 5, 134, 68, 2, 853, 850, 3, 2, 2, 2, 853, 852, 3, 2, 2, 2, 854, 133, 3, 2, 2, 2, 855, 858, 5, 136, 69, 2, 856, 857, 7, 211, 2, 2, 857, 859, 5, 132, 67, 2, 858, 856, 3, 2, 2, 2, 858, 859, 3, 2, 2, 2, 859, 135, 3, 2, 2, 2, 860, 862, 7, 188, 2, 2, 861, 860, 3, 2, 2, 2, 861, 862, 3, 2, 2, 2, 862, 863, 3, 2, 2, 2, 863, 867, 5, 138, 70, 2, 864, 866, 5, 142, 72, 2, 865, 864, 3, 2, 2, 2, 866, 869, 3, 2, 2, 2, 867, 865, 3, 2, 2, 2, 867, 868, 3, 2, 2, 2, 868, 137, 3, 2, 2, 2, 869, 867, 3, 2, 2, 2, 870, 873, 7, 206, 2, 2, 871, 874, 5, 170, 86, 2, 872, 874, 5, 140, 71, 2, 873, 871, 3, 2, 2, 2, 873, 872, 3, 2, 2, 2, 873, 874, 3, 2, 2, 2, 874, 875, 3, 2, 2, 2, 875, 898, 7, 207, 2, 2, 876, 878, 7, 213, 2, 2, 877, 879, 5, 140, 71, 2, 878, 877, 3, 2, 2, 2, 878, 879, 3, 2, 2, 2, 879, 880, 3, 2, 2, 2, 880, 898, 7, 214, 2, 2, 881, 883, 7, 226, 2, 2, 882, 884, 5, 154, 78, 2, 883, 882, 3, 2, 2, 2, 883, 884, 3, 2, 2, 2, 884, 885, 3, 2, 2, 2, 885, 898, 7, 227, 2, 2, 886, 898, 7, 190, 2, 2, 887, 898, 7, 7, 2, 2, 888, 890, 7, 5, 2, 2, 889, 888, 3, 2, 2, 2, 890, 891, 3, 2, 2, 2, 891, 889, 3, 2, 2, 2, 891, 892, 3, 2, 2, 2, 892, 898, 3, 2, 2, 2, 893, 898, 7, 204, 2, 2, 894, 898, 7, 178, 2, 2, 895, 898, 7, 179, 2, 2, 896, 898, 7, 180, 2, 2, 897, 870, 3, 2, 2, 2, 897, 876, 3, 2, 2, 2, 897, 881, 3, 2, 2, 2, 897, 886, 3, 2, 2, 2, 897, 887, 3, 2, 2, 2, 897, 889, 3, 2, 2, 2, 897, 893, 3, 2, 2, 2, 897, 894, 3, 2, 2, 2, 897, 895, 3, 2, 2, 2, 897, 896, 3, 2, 2, 2, 898, 139, 3, 2, 2, 2, 899, 902, 5, 100, 51, 2, 900, 902, 5, 118, 60, 2, 901, 899, 3, 2, 2, 2, 901, 900, 3, 2, 2, 2, 902, 917, 3, 2, 2, 2, 903, 918, 5, 164, 83, 2, 904, 907, 7, 208, 2, 2, 905, 908, 5, 100, 51, 2, 906, 908, 5, 118, 60, 2, 907, 905, 3, 2, 2, 2, 907, 906, 3, 2, 2, 2, 908, 910, 3, 2, 2, 2, 909, 904, 3, 2, 2, 2, 910, 913, 3, 2, 2, 2, 911, 909, 3, 2, 2, 2, 911, 912, 3, 2, 2, 2, 912, 915, 3, 2, 2, 2, 913, 911, 3, 2, 2, 2, 914, 916, 7, 208, 2, 2, 915, 914, 3, 2, 2, 2, 915, 916, 3, 2, 2, 2, 916, 918, 3, 2, 2, 2, 917, 903, 3, 2, 2, 2, 917, 911, 3, 2, 2, 2, 918, 141, 3, 2, 2, 2, 919, 921, 7, 206, 2, 2, 920, 922, 5, 158, 80, 2, 921, 920, 3, 2, 2, 2, 921, 922, 3, 2, 2, 2, 922, 923, 3, 2, 2, 2, 923, 931, 7, 207, 2, 2, 924, 925, 7, 213, 2, 2, 925, 926, 5, 144, 73, 2, 926, 927, 7, 214, 2, 2, 927, 931, 3, 2, 2, 2, 928, 929, 7, 203, 2, 2, 929, 931, 7, 190, 2, 2, 930, 919, 3, 2, 2, 2, 930, 924, 3, 2, 2, 2, 930, 928, 3, 2, 2, 2, 931, 143, 3, 2, 2, 2, 932, 937, 5, 146, 74, 2, 933, 934, 7, 208, 2, 2, 934, 936, 5, 146, 74, 2, 935, 933, 3, 2, 2, 2, 936, 939, 3, 2, 2, 2, 937, 935, 3, 2, 2, 2, 937, 938, 3, 2, 2, 2, 938, 941, 3, 2, 2, 2, 939, 937, 3, 2, 2, 2, 940, 942, 7, 208, 2, 2, 941, 940, 3, 2, 2, 2, 941, 942, 3, 2, 2, 2, 942, 145, 3, 2, 2, 2, 943, 955, 5, 100, 51, 2, 944, 946, 5, 100, 51, 2, 945, 944, 3, 2, 2, 2, 945, 946, 3, 2, 2, 2, 946, 947, 3, 2, 2, 2, 947, 949, 7, 209, 2, 2, 948, 950, 5, 100, 51, 2, 949, 948, 3, 2, 2, 2, 949, 950, 3, 2, 2, 2, 950, 952, 3, 2, 2, 2, 951, 953, 5, 148, 75, 2, 952, 951, 3, 2, 2, 2, 952, 953, 3, 2, 2, 2, 953, 955, 3, 2, 2, 2, 954, 943, 3, 2, 2, 2, 954, 945, 3, 2, 2, 2, 955, 147, 3, 2, 2, 2, 956, 958, 7, 209, 2, 2, 957, 959, 5, 100, 51, 2, 958, 957, 3, 2, 2, 2, 958, 959, 3, 2, 2, 2, 959, 149, 3, 2, 2, 2, 960, 963, 5, 120, 61, 2, 961, 963, 5, 118, 60, 2, 962, 960, 3, 2, 2, 2, 962, 961, 3, 2, 2, 2, 963, 971, 3, 2, 2, 2, 964, 967, 7, 208, 2, 2, 965, 968, 5, 120, 61, 2, 966, 968, 5, 118, 60, 2, 967, 965, 3, 2, 2, 2, 967, 966, 3, 2, 2, 2, 968, 970, 3, 2, 2, 2, 969, 964, 3, 2, 2, 2, 970, 973, 3, 2, 2, 2, 971, 969, 3, 2, 2, 2, 971, 972, 3, 2, 2, 2, 972, 975, 3, 2, 2, 2, 973, 971, 3, 2, 2, 2, 974, 976, 7, 208, 2, 2, 975, 974, 3, 2, 2, 2, 975, 976, 3, 2, 2, 2, 976, 151, 3, 2, 2, 2, 977, 982, 5, 100, 51, 2, 978, 979, 7, 208, 2, 2, 979, 981, 5, 100, 51, 2, 980, 978, 3, 2, 2, 2, 981, 984, 3, 2, 2, 2, 982, 980, 3, 2, 2, 2, 982, 983, 3, 2, 2, 2, 983, 986, 3, 2, 2, 2, 984, 982, 3, 2, 2, 2, 985, 987, 7, 208, 2, 2, 986, 985, 3, 2, 2, 2, 986, 987, 3, 2, 2, 2, 987, 153, 3, 2, 2, 2, 988, 989, 5, 100, 51, 2, 989, 990, 7, 209, 2, 2, 990, 991, 5, 100, 51, 2, 991, 995, 3, 2, 2, 2, 992, 993, 7, 211, 2, 2, 993, 995, 5, 120, 61, 2, 994, 988, 3, 2, 2, 2, 994, 992, 3, 2, 2, 2, 995, 1014, 3, 2, 2, 2, 996, 1015, 5, 164, 83, 2, 997, 1004, 7, 208, 2, 2, 998, 999, 5, 100, 51, 2, 999, 1000, 7, 209, 2, 2, 1000, 1001, 5, 100, 51, 2, 1001, 1005, 3, 2, 2, 2, 1002, 1003, 7, 211, 2, 2, 1003, 1005, 5, 120, 61, 2, 1004, 998, 3, 2, 2, 2, 1004, 1002, 3, 2, 2, 2, 1005, 1007, 3, 2, 2, 2, 1006, 997, 3, 2, 2, 2, 1007, 1010, 3, 2, 2, 2, 1008, 1006, 3, 2, 2, 2, 1008, 1009, 3, 2, 2, 2, 1009, 1012, 3, 2, 2, 2, 1010, 1008, 3, 2, 2, 2, 1011, 1013, 7, 208, 2, 2, 1012, 1011, 3, 2, 2, 2, 1012, 1013, 3, 2, 2, 2, 1013, 1015, 3, 2, 2, 2, 1014, 996, 3, 2, 2, 2, 1014, 1008, 3, 2, 2, 2, 1015, 1037, 3, 2, 2, 2, 1016, 1019, 5, 100, 51, 2, 1017, 1019, 5, 118, 60, 2, 1018, 1016, 3, 2, 2, 2, 1018, 1017, 3, 2, 2, 2, 1019, 1034, 3, 2, 2, 2, 1020, 1035, 5, 164, 83, 2, 1021, 1024, 7, 208, 2, 2, 1022, 1025, 5, 100, 51, 2, 1023, 1025, 5, 118, 60, 2, 1024, 1022, 3, 2, 2, 2, 1024, 1023, 3, 2, 2, 2, 1025, 1027, 3, 2, 2, 2, 1026, 1021, 3, 2, 2, 2, 1027, 1030, 3, 2, 2, 2, 1028, 1026, 3, 2, 2, 2, 1028, 1029, 3, 2, 2, 2, 1029, 1032, 3, 2, 2, 2, 1030, 1028, 3, 2, 2, 2, 1031, 1033, 7, 208, 2, 2, 1032, 1031, 3, 2, 2, 2, 1032, 1033, 3, 2, 2, 2, 1033, 1035, 3, 2, 2, 2, 1034, 1020, 3, 2, 2, 2, 1034, 1028, 3, 2, 2, 2, 1035, 1037, 3, 2, 2, 2, 1036, 994, 3, 2, 2, 2, 1036, 1018, 3, 2, 2, 2, 1037, 155, 3, 2, 2, 2, 1038, 1039, 7, 181, 2, 2, 1039, 1045, 7, 190, 2, 2, 1040, 1042, 7, 206, 2, 2, 1041, 1043, 5, 158, 80, 2, 1042, 1041, 3, 2, 2, 2, 1042, 1043, 3, 2, 2, 2, 1043, 1044, 3, 2, 2, 2, 1044, 1046, 7, 207, 2, 2, 1045, 1040, 3, 2, 2, 2, 1045, 1046, 3, 2, 2, 2, 1046, 1047, 3, 2, 2, 2, 1047, 1048, 7, 209, 2, 2, 1048, 1049, 5, 98, 50, 2, 1049, 157, 3, 2, 2, 2, 1050, 1055, 5, 160, 81, 2, 1051, 1052, 7, 208, 2, 2, 1052, 1054, 5, 160, 81, 2, 1053, 1051, 3, 2, 2, 2, 1054, 1057, 3, 2, 2, 2, 1055, 1053, 3, 2, 2, 2, 1055, 1056, 3, 2, 2, 2, 1056, 1059, 3, 2, 2, 2, 1057, 1055, 3, 2, 2, 2, 1058, 1060, 7, 208, 2, 2, 1059, 1058, 3, 2, 2, 2, 1059, 1060, 3, 2, 2, 2, 1060, 159, 3, 2, 2, 2, 1061, 1063, 5, 100, 51, 2, 1062, 1064, 5, 164, 83, 2, 1063, 1062, 3, 2, 2, 2, 1063, 1064, 3, 2, 2, 2, 1064, 1074, 3, 2, 2, 2, 1065, 1066, 5, 100, 51, 2, 1066, 1067, 7, 212, 2, 2, 1067, 1068, 5, 100, 51, 2, 1068, 1074, 3, 2, 2, 2, 1069, 1070, 7, 211, 2, 2, 1070, 1074, 5, 100, 51, 2, 1071, 1072, 7, 205, 2, 2, 1072, 1074, 5, 100, 51, 2, 1073, 1061, 3, 2, 2, 2, 1073, 1065, 3, 2, 2, 2, 1073, 1069, 3, 2, 2, 2, 1073, 1071, 3, 2, 2, 2, 1074, 161, 3, 2, 2, 2, 1075, 1078, 5, 164, 83, 2, 1076, 1078, 5, 166, 84, 2, 1077, 1075, 3, 2, 2, 2, 1077, 1076, 3, 2, 2, 2, 1078, 163, 3, 2, 2, 2, 1079, 1081, 7, 187, 2, 2, 1080, 1079, 3, 2, 2, 2, 1080, 1081, 3, 2, 2, 2, 1081, 1082, 3, 2, 2, 2, 1082, 1083, 7, 167, 2, 2, 1083, 1084, 5, 150, 76, 2, 1084, 1085, 7, 168, 2, 2, 1085, 1087, 5, 108, 55, 2, 1086, 1088, 5, 162, 82, 2, 1087, 1086, 3, 2, 2, 2, 1087, 1088, 3, 2, 2, 2, 1088, 165, 3, 2, 2, 2, 1089, 1090, 7, 163, 2, 2, 1090, 1092, 5, 102, 52, 2, 1091, 1093, 5, 162, 82, 2, 1092, 1091, 3, 2, 2, 2, 1092, 1093, 3, 2, 2, 2, 1093, 167, 3, 2, 2, 2, 1094, 1095, 7, 190, 2, 2, 1095, 169, 3, 2, 2, 2, 1096, 1098, 7, 182, 2, 2, 1097, 1099, 5, 172, 87, 2, 1098, 1097, 3, 2, 2, 2, 1098, 1099, 3, 2, 2, 2, 1099, 171, 3, 2, 2, 2, 1100, 1101, 7, 157, 2, 2, 1101, 1104, 5, 100, 51, 2, 1102, 1104, 5, 152, 77, 2, 1103, 1100, 3, 2, 2, 2, 1103, 1102, 3, 2, 2, 2, 1104, 173, 3, 2, 2, 2, 168, 179, 183, 185, 194, 203, 206, 213, 219, 229, 236, 243, 249, 253, 259, 265, 269, 276, 278, 280, 285, 287, 289, 293, 299, 303, 310, 312, 314, 319, 321, 326, 331, 337, 341, 347, 353, 357, 364, 366, 368, 373, 375, 377, 381, 387, 391, 398, 400, 402, 407, 409, 415, 422, 426, 438, 445, 450, 454, 457, 463, 467, 472, 476, 480, 494, 502, 510, 512, 516, 525, 532, 534, 543, 548, 553, 560, 564, 571, 579, 588, 597, 604, 615, 621, 634, 640, 649, 660, 671, 676, 681, 686, 694, 703, 709, 711, 719, 723, 731, 734, 738, 742, 749, 759, 767, 773, 781, 797, 807, 815, 823, 831, 839, 847, 853, 858, 861, 867, 873, 878, 883, 891, 897, 901, 907, 911, 915, 917, 921, 930, 937, 941, 945, 949, 952, 954, 958, 962, 967, 971, 975, 982, 986, 994, 1004, 1008, 1012, 1014, 1018, 1024, 1028, 1032, 1034, 1036, 1042, 1045, 1055, 1059, 1063, 1073, 1077, 1080, 1087, 1092, 1098, 1103]
================================================
FILE: ANTLR/Python3.tokens
================================================
STRING_LONG=1
STRING_SHORT=2
STRING=3
COMMENTS=4
NUMBER=5
INTEGER=6
HACKISH=7
PRIVATE=8
SPECIAL=9
BUG=10
DIVMOD=11
INPUT=12
OPEN=13
STATICMETHOD=14
ALL=15
ENUMERATE=16
INT=17
ORD=18
STR=19
ANY=20
EVAL=21
ISINSTANCE=22
POW=23
SUM=24
BASESTRING=25
EXECFILE=26
ISSUBCLASS=27
ABS=28
SUPER=29
BIN=30
FILE=31
ITER=32
PROPERTY=33
TUPLE=34
BOOL=35
FILTER=36
LEN=37
RANGE=38
TYPE=39
BYTEARRAY=40
FLOAT=41
LIST=42
RAW_INPUT=43
UNICHR=44
CALLABLE=45
FORMAT=46
LOCALS=47
REDUCE=48
UNICODE=49
CHR=50
FROZENSET=51
LONG=52
RELOAD=53
VARS=54
CLASSMETHOD=55
GETATTR=56
MAP=57
REPR=58
XRANGE=59
CMP=60
GLOBALS=61
MAX=62
REVERSED=63
ZIP=64
COMPILE=65
HASATTR=66
MEMORYVIEW=67
ROUND=68
UNDERSCORE_IMPORT=69
COMPLEX=70
HASH=71
MIN=72
SET=73
APPLY=74
DELATTR=75
HELP=76
NEXT=77
SETATTR=78
BUFFER=79
DICT=80
HEX=81
OBJECT=82
SLICE=83
COERCE=84
DIR=85
ID=86
OCT=87
SORTED=88
INTERN=89
BASE_EXCEPTION=90
SYSTEM_EXIT=91
KEYBOARD_INTERRUPT=92
GENERATOR_EXIT=93
EXCEPTION=94
STOP_ITERATION=95
ARITHMETIC_ERROR=96
FLOATINGPOINT_ERROR=97
OVERFLOW_ERROR=98
ZERO_DIVISION_ERROR=99
ASSERTION_ERROR=100
ATTRIBUTE_ERROR=101
BUFFER_ERROR=102
EOF_ERROR=103
IMPORT_ERROR=104
LOOKUP_ERROR=105
INDEX_ERROR=106
KEY_ERROR=107
MEMORY_ERROR=108
NAME_ERROR=109
UNBOUND_LOCAL_ERROR=110
OS_ERROR=111
BLOCKING_IO_ERROR=112
CHILD_PROCESS_ERROR=113
CONNECTION_ERROR=114
BROKEN_PIPE_ERROR=115
CONNECTION_ABORTED_ERROR=116
CONNECTION_REFUSED_ERROR=117
CONNECTION_RESET_ERROR=118
FILE_EXISTS_ERROR=119
FILE_NOT_FOUND_ERROR=120
INTERRUPTED_ERROR=121
IS_A_DIRECTORY_ERROR=122
NOT_A_DIRECTORY_ERROR=123
PERMISSION_ERROR=124
PROCESS_LOOKUP_ERROR=125
TIMEOUT_ERROR=126
REFERENCE_ERROR=127
RUNTIME_ERROR=128
NOT_IMPLEMENTED_ERROR=129
SYNTAX_ERROR=130
INDENTATION_ERROR=131
TAB_ERROR=132
SYSTEM_ERROR=133
TYPE_ERROR=134
VALUE_ERROR=135
UNICODE_ERROR=136
UNICODE_DECODE_ERROR=137
UNICODE_ENCODE_ERROR=138
UNICODE_TRANSLATE_ERROR=139
WARNING=140
DEPRECATION_WARNING=141
PENDING_DEPRECATION_WARNING=142
RUNTIME_WARNING=143
SYNTAX_WARNING=144
USER_WARNING=145
FUTURE_WARNING=146
IMPORT_WARNING=147
UNICODE_WARNING=148
BYTES_WARNING=149
RESOURCE_WARNING=150
PRINT=151
DEF=152
RETURN=153
RAISE=154
FROM=155
IMPORT=156
AS=157
GLOBAL=158
NONLOCAL=159
ASSERT=160
IF=161
ELIF=162
ELSE=163
WHILE=164
FOR=165
IN=166
TRY=167
FINALLY=168
WITH=169
EXCEPT=170
LAMBDA=171
OR=172
AND=173
NOT=174
IS=175
NONE=176
TRUE=177
FALSE=178
CLASS=179
YIELD=180
DEL=181
PASS=182
CONTINUE=183
BREAK=184
ASYNC=185
AWAIT=186
NEWLINE=187
NAME=188
STRING_LITERAL=189
STRING_LONG_LITERAL=190
STRING_SHORT_LITERAL=191
BYTES_LITERAL=192
BYTES_LONG_LITERAL=193
BYTES_SHORT_LITERAL=194
DECIMAL_INTEGER=195
OCT_INTEGER=196
HEX_INTEGER=197
BIN_INTEGER=198
FLOAT_NUMBER=199
IMAG_NUMBER=200
DOT=201
ELLIPSIS=202
STAR=203
OPEN_PAREN=204
CLOSE_PAREN=205
COMMA=206
COLON=207
SEMI_COLON=208
POWER=209
ASSIGN=210
OPEN_BRACK=211
CLOSE_BRACK=212
OR_OP=213
XOR=214
AND_OP=215
LEFT_SHIFT=216
RIGHT_SHIFT=217
ADD=218
MINUS=219
DIV=220
MOD=221
IDIV=222
NOT_OP=223
OPEN_BRACE=224
CLOSE_BRACE=225
LESS_THAN=226
GREATER_THAN=227
EQUALS=228
GT_EQ=229
LT_EQ=230
NOT_EQ_1=231
NOT_EQ_2=232
AT=233
ARROW=234
ADD_ASSIGN=235
SUB_ASSIGN=236
MULT_ASSIGN=237
AT_ASSIGN=238
DIV_ASSIGN=239
MOD_ASSIGN=240
AND_ASSIGN=241
OR_ASSIGN=242
XOR_ASSIGN=243
LEFT_SHIFT_ASSIGN=244
RIGHT_SHIFT_ASSIGN=245
POWER_ASSIGN=246
IDIV_ASSIGN=247
SKIP_=248
UNKNOWN_CHAR=249
INDENT=250
DEDENT=251
'divmod'=11
'input'=12
'open'=13
'staticmethod'=14
'all'=15
'enumerate'=16
'int'=17
'ord'=18
'str'=19
'any'=20
'eval'=21
'isinstance'=22
'pow'=23
'sum'=24
'basestring'=25
'execfile'=26
'issubclass'=27
'abs'=28
'super'=29
'bin'=30
'file'=31
'iter'=32
'property'=33
'tuple'=34
'bool'=35
'filter'=36
'len'=37
'range'=38
'type'=39
'bytearray'=40
'float'=41
'list'=42
'raw_input'=43
'unichr'=44
'callable'=45
'format'=46
'locals'=47
'reduce'=48
'unicode'=49
'chr'=50
'frozenset'=51
'long'=52
'reload'=53
'vars'=54
'classmethod'=55
'getattr'=56
'map'=57
'repr'=58
'xrange'=59
'cmp'=60
'globals'=61
'max'=62
'reversed'=63
'zip'=64
'compile'=65
'hasattr'=66
'memoryview'=67
'round'=68
'__import__'=69
'complex'=70
'hash'=71
'min'=72
'set'=73
'apply'=74
'delattr'=75
'help'=76
'next'=77
'setattr'=78
'buffer'=79
'dict'=80
'hex'=81
'object'=82
'slice'=83
'coerce'=84
'dir'=85
'id'=86
'oct'=87
'sorted'=88
'intern'=89
'BaseException'=90
'SystemExit'=91
'KeyboardInterrupt'=92
'GeneratorExit'=93
'Exception'=94
'StopIteration'=95
'ArithmeticError'=96
'FloatingPointError'=97
'OverflowError'=98
'ZeroDivisionError'=99
'AssertionError'=100
'AttributeError'=101
'BufferError'=102
'EOFError'=103
'ImportError'=104
'LookupError'=105
'IndexError'=106
'KeyError'=107
'MemoryError'=108
'NameError'=109
'UnboundLocalError'=110
'OSError'=111
'BlockingIOError'=112
'ChildProcessError'=113
'ConnectionError'=114
'BrokenPipeError'=115
'ConnectionAbortedError'=116
'ConnectionRefusedError'=117
'ConnectionResetError'=118
'FileExistsError'=119
'FileNotFoundError'=120
'InterruptedError'=121
'IsADirectoryError'=122
'NotADirectoryError'=123
'PermissionError'=124
'ProcessLookupError'=125
'TimeoutError'=126
'ReferenceError'=127
'RuntimeError'=128
'NotImplementedError'=129
'SyntaxError'=130
'IndentationError'=131
'TabError'=132
'SystemError'=133
'TypeError'=134
'ValueError'=135
'UnicodeError'=136
'UnicodeDecodeError'=137
'UnicodeEncodeError'=138
'UnicodeTranslateError'=139
'Warning'=140
'DeprecationWarning'=141
'PendingDeprecationWarning'=142
'RuntimeWarning'=143
'SyntaxWarning'=144
'UserWarning'=145
'FutureWarning'=146
'ImportWarning'=147
'UnicodeWarning'=148
'BytesWarning'=149
'ResourceWarning'=150
'print'=151
'def'=152
'return'=153
'raise'=154
'from'=155
'import'=156
'as'=157
'global'=158
'nonlocal'=159
'assert'=160
'if'=161
'elif'=162
'else'=163
'while'=164
'for'=165
'in'=166
'try'=167
'finally'=168
'with'=169
'except'=170
'lambda'=171
'or'=172
'and'=173
'not'=174
'is'=175
'None'=176
'True'=177
'False'=178
'class'=179
'yield'=180
'del'=181
'pass'=182
'continue'=183
'break'=184
'async'=185
'await'=186
'.'=201
'...'=202
'*'=203
'('=204
')'=205
','=206
':'=207
';'=208
'**'=209
'='=210
'['=211
']'=212
'|'=213
'^'=214
'&'=215
'<<'=216
'>>'=217
'+'=218
'-'=219
'/'=220
'%'=221
'//'=222
'~'=223
'{'=224
'}'=225
'<'=226
'>'=227
'=='=228
'>='=229
'<='=230
'<>'=231
'!='=232
'@'=233
'->'=234
'+='=235
'-='=236
'*='=237
'@='=238
'/='=239
'%='=240
'&='=241
'|='=242
'^='=243
'<<='=244
'>>='=245
'**='=246
'//='=247
================================================
FILE: ANTLR/Python3BaseListener.cpp
================================================
// Generated from Python3.g4 by ANTLR 4.8
#include "Python3BaseListener.h"
================================================
FILE: ANTLR/Python3BaseListener.h
================================================
// Generated from Python3.g4 by ANTLR 4.8
#pragma once
#include "antlr4-runtime.h"
#include "Python3Listener.h"
/**
* This class provides an empty implementation of Python3Listener,
* which can be extended to create a listener which only needs to handle a subset
* of the available methods.
*/
class Python3BaseListener : public Python3Listener {
public:
virtual void enterSingle_input(Python3Parser::Single_inputContext * /*ctx*/) override { }
virtual void exitSingle_input(Python3Parser::Single_inputContext * /*ctx*/) override { }
virtual void enterFile_input(Python3Parser::File_inputContext * /*ctx*/) override { }
virtual void exitFile_input(Python3Parser::File_inputContext * /*ctx*/) override { }
virtual void enterEval_input(Python3Parser::Eval_inputContext * /*ctx*/) override { }
virtual void exitEval_input(Python3Parser::Eval_inputContext * /*ctx*/) override { }
virtual void enterDecorator(Python3Parser::DecoratorContext * /*ctx*/) override { }
virtual void exitDecorator(Python3Parser::DecoratorContext * /*ctx*/) override { }
virtual void enterDecorators(Python3Parser::DecoratorsContext * /*ctx*/) override { }
virtual void exitDecorators(Python3Parser::DecoratorsContext * /*ctx*/) override { }
virtual void enterDecorated(Python3Parser::DecoratedContext * /*ctx*/) override { }
virtual void exitDecorated(Python3Parser::DecoratedContext * /*ctx*/) override { }
virtual void enterAsync_funcdef(Python3Parser::Async_funcdefContext * /*ctx*/) override { }
virtual void exitAsync_funcdef(Python3Parser::Async_funcdefContext * /*ctx*/) override { }
virtual void enterFuncdef(Python3Parser::FuncdefContext * /*ctx*/) override { }
virtual void exitFuncdef(Python3Parser::FuncdefContext * /*ctx*/) override { }
virtual void enterParameters(Python3Parser::ParametersContext * /*ctx*/) override { }
virtual void exitParameters(Python3Parser::ParametersContext * /*ctx*/) override { }
virtual void enterTypedargslist(Python3Parser::TypedargslistContext * /*ctx*/) override { }
virtual void exitTypedargslist(Python3Parser::TypedargslistContext * /*ctx*/) override { }
virtual void enterTfpdef(Python3Parser::TfpdefContext * /*ctx*/) override { }
virtual void exitTfpdef(Python3Parser::TfpdefContext * /*ctx*/) override { }
virtual void enterVarargslist(Python3Parser::VarargslistContext * /*ctx*/) override { }
virtual void exitVarargslist(Python3Parser::VarargslistContext * /*ctx*/) override { }
virtual void enterVfpdef(Python3Parser::VfpdefContext * /*ctx*/) override { }
virtual void exitVfpdef(Python3Parser::VfpdefContext * /*ctx*/) override { }
virtual void enterStmt(Python3Parser::StmtContext * /*ctx*/) override { }
virtual void exitStmt(Python3Parser::StmtContext * /*ctx*/) override { }
virtual void enterSimple_stmt(Python3Parser::Simple_stmtContext * /*ctx*/) override { }
virtual void exitSimple_stmt(Python3Parser::Simple_stmtContext * /*ctx*/) override { }
virtual void enterSmall_stmt(Python3Parser::Small_stmtContext * /*ctx*/) override { }
virtual void exitSmall_stmt(Python3Parser::Small_stmtContext * /*ctx*/) override { }
virtual void enterExpr_stmt(Python3Parser::Expr_stmtContext * /*ctx*/) override { }
virtual void exitExpr_stmt(Python3Parser::Expr_stmtContext * /*ctx*/) override { }
virtual void enterAnnassign(Python3Parser::AnnassignContext * /*ctx*/) override { }
virtual void exitAnnassign(Python3Parser::AnnassignContext * /*ctx*/) override { }
virtual void enterTestlist_star_expr(Python3Parser::Testlist_star_exprContext * /*ctx*/) override { }
virtual void exitTestlist_star_expr(Python3Parser::Testlist_star_exprContext * /*ctx*/) override { }
virtual void enterAugassign(Python3Parser::AugassignContext * /*ctx*/) override { }
virtual void exitAugassign(Python3Parser::AugassignContext * /*ctx*/) override { }
virtual void enterDel_stmt(Python3Parser::Del_stmtContext * /*ctx*/) override { }
virtual void exitDel_stmt(Python3Parser::Del_stmtContext * /*ctx*/) override { }
virtual void enterPass_stmt(Python3Parser::Pass_stmtContext * /*ctx*/) override { }
virtual void exitPass_stmt(Python3Parser::Pass_stmtContext * /*ctx*/) override { }
virtual void enterFlow_stmt(Python3Parser::Flow_stmtContext * /*ctx*/) override { }
virtual void exitFlow_stmt(Python3Parser::Flow_stmtContext * /*ctx*/) override { }
virtual void enterBreak_stmt(Python3Parser::Break_stmtContext * /*ctx*/) override { }
virtual void exitBreak_stmt(Python3Parser::Break_stmtContext * /*ctx*/) override { }
virtual void enterContinue_stmt(Python3Parser::Continue_stmtContext * /*ctx*/) override { }
virtual void exitContinue_stmt(Python3Parser::Continue_stmtContext * /*ctx*/) override { }
virtual void enterReturn_stmt(Python3Parser::Return_stmtContext * /*ctx*/) override { }
virtual void exitReturn_stmt(Python3Parser::Return_stmtContext * /*ctx*/) override { }
virtual void enterYield_stmt(Python3Parser::Yield_stmtContext * /*ctx*/) override { }
virtual void exitYield_stmt(Python3Parser::Yield_stmtContext * /*ctx*/) override { }
virtual void enterRaise_stmt(Python3Parser::Raise_stmtContext * /*ctx*/) override { }
virtual void exitRaise_stmt(Python3Parser::Raise_stmtContext * /*ctx*/) override { }
virtual void enterImport_stmt(Python3Parser::Import_stmtContext * /*ctx*/) override { }
virtual void exitImport_stmt(Python3Parser::Import_stmtContext * /*ctx*/) override { }
virtual void enterImport_name(Python3Parser::Import_nameContext * /*ctx*/) override { }
virtual void exitImport_name(Python3Parser::Import_nameContext * /*ctx*/) override { }
virtual void enterImport_from(Python3Parser::Import_fromContext * /*ctx*/) override { }
virtual void exitImport_from(Python3Parser::Import_fromContext * /*ctx*/) override { }
virtual void enterImport_as_name(Python3Parser::Import_as_nameContext * /*ctx*/) override { }
virtual void exitImport_as_name(Python3Parser::Import_as_nameContext * /*ctx*/) override { }
virtual void enterDotted_as_name(Python3Parser::Dotted_as_nameContext * /*ctx*/) override { }
virtual void exitDotted_as_name(Python3Parser::Dotted_as_nameContext * /*ctx*/) override { }
virtual void enterImport_as_names(Python3Parser::Import_as_namesContext * /*ctx*/) override { }
virtual void exitImport_as_names(Python3Parser::Import_as_namesContext * /*ctx*/) override { }
virtual void enterDotted_as_names(Python3Parser::Dotted_as_namesContext * /*ctx*/) override { }
virtual void exitDotted_as_names(Python3Parser::Dotted_as_namesContext * /*ctx*/) override { }
virtual void enterDotted_name(Python3Parser::Dotted_nameContext * /*ctx*/) override { }
virtual void exitDotted_name(Python3Parser::Dotted_nameContext * /*ctx*/) override { }
virtual void enterGlobal_stmt(Python3Parser::Global_stmtContext * /*ctx*/) override { }
virtual void exitGlobal_stmt(Python3Parser::Global_stmtContext * /*ctx*/) override { }
virtual void enterNonlocal_stmt(Python3Parser::Nonlocal_stmtContext * /*ctx*/) override { }
virtual void exitNonlocal_stmt(Python3Parser::Nonlocal_stmtContext * /*ctx*/) override { }
virtual void enterAssert_stmt(Python3Parser::Assert_stmtContext * /*ctx*/) override { }
virtual void exitAssert_stmt(Python3Parser::Assert_stmtContext * /*ctx*/) override { }
virtual void enterCompound_stmt(Python3Parser::Compound_stmtContext * /*ctx*/) override { }
virtual void exitCompound_stmt(Python3Parser::Compound_stmtContext * /*ctx*/) override { }
virtual void enterAsync_stmt(Python3Parser::Async_stmtContext * /*ctx*/) override { }
virtual void exitAsync_stmt(Python3Parser::Async_stmtContext * /*ctx*/) override { }
virtual void enterIf_stmt(Python3Parser::If_stmtContext * /*ctx*/) override { }
virtual void exitIf_stmt(Python3Parser::If_stmtContext * /*ctx*/) override { }
virtual void enterWhile_stmt(Python3Parser::While_stmtContext * /*ctx*/) override { }
virtual void exitWhile_stmt(Python3Parser::While_stmtContext * /*ctx*/) override { }
virtual void enterFor_stmt(Python3Parser::For_stmtContext * /*ctx*/) override { }
virtual void exitFor_stmt(Python3Parser::For_stmtContext * /*ctx*/) override { }
virtual void enterTry_stmt(Python3Parser::Try_stmtContext * /*ctx*/) override { }
virtual void exitTry_stmt(Python3Parser::Try_stmtContext * /*ctx*/) override { }
virtual void enterWith_stmt(Python3Parser::With_stmtContext * /*ctx*/) override { }
virtual void exitWith_stmt(Python3Parser::With_stmtContext * /*ctx*/) override { }
virtual void enterWith_item(Python3Parser::With_itemContext * /*ctx*/) override { }
virtual void exitWith_item(Python3Parser::With_itemContext * /*ctx*/) override { }
virtual void enterExcept_clause(Python3Parser::Except_clauseContext * /*ctx*/) override { }
virtual void exitExcept_clause(Python3Parser::Except_clauseContext * /*ctx*/) override { }
virtual void enterSuite(Python3Parser::SuiteContext * /*ctx*/) override { }
virtual void exitSuite(Python3Parser::SuiteContext * /*ctx*/) override { }
virtual void enterTest(Python3Parser::TestContext * /*ctx*/) override { }
virtual void exitTest(Python3Parser::TestContext * /*ctx*/) override { }
virtual void enterTest_nocond(Python3Parser::Test_nocondContext * /*ctx*/) override { }
virtual void exitTest_nocond(Python3Parser::Test_nocondContext * /*ctx*/) override { }
virtual void enterLambdef(Python3Parser::LambdefContext * /*ctx*/) override { }
virtual void exitLambdef(Python3Parser::LambdefContext * /*ctx*/) override { }
virtual void enterLambdef_nocond(Python3Parser::Lambdef_nocondContext * /*ctx*/) override { }
virtual void exitLambdef_nocond(Python3Parser::Lambdef_nocondContext * /*ctx*/) override { }
virtual void enterOr_test(Python3Parser::Or_testContext * /*ctx*/) override { }
virtual void exitOr_test(Python3Parser::Or_testContext * /*ctx*/) override { }
virtual void enterAnd_test(Python3Parser::And_testContext * /*ctx*/) override { }
virtual void exitAnd_test(Python3Parser::And_testContext * /*ctx*/) override { }
virtual void enterNot_test(Python3Parser::Not_testContext * /*ctx*/) override { }
virtual void exitNot_test(Python3Parser::Not_testContext * /*ctx*/) override { }
virtual void enterComparison(Python3Parser::ComparisonContext * /*ctx*/) override { }
virtual void exitComparison(Python3Parser::ComparisonContext * /*ctx*/) override { }
virtual void enterComp_op(Python3Parser::Comp_opContext * /*ctx*/) override { }
virtual void exitComp_op(Python3Parser::Comp_opContext * /*ctx*/) override { }
virtual void enterStar_expr(Python3Parser::Star_exprContext * /*ctx*/) override { }
virtual void exitStar_expr(Python3Parser::Star_exprContext * /*ctx*/) override { }
virtual void enterExpr(Python3Parser::ExprContext * /*ctx*/) override { }
virtual void exitExpr(Python3Parser::ExprContext * /*ctx*/) override { }
virtual void enterXor_expr(Python3Parser::Xor_exprContext * /*ctx*/) override { }
virtual void exitXor_expr(Python3Parser::Xor_exprContext * /*ctx*/) override { }
virtual void enterAnd_expr(Python3Parser::And_exprContext * /*ctx*/) override { }
virtual void exitAnd_expr(Python3Parser::And_exprContext * /*ctx*/) override { }
virtual void enterShift_expr(Python3Parser::Shift_exprContext * /*ctx*/) override { }
virtual void exitShift_expr(Python3Parser::Shift_exprContext * /*ctx*/) override { }
virtual void enterArith_expr(Python3Parser::Arith_exprContext * /*ctx*/) override { }
virtual void exitArith_expr(Python3Parser::Arith_exprContext * /*ctx*/) override { }
virtual void enterTerm(Python3Parser::TermContext * /*ctx*/) override { }
virtual void exitTerm(Python3Parser::TermContext * /*ctx*/) override { }
virtual void enterFactor(Python3Parser::FactorContext * /*ctx*/) override { }
virtual void exitFactor(Python3Parser::FactorContext * /*ctx*/) override { }
virtual void enterPower(Python3Parser::PowerContext * /*ctx*/) override { }
virtual void exitPower(Python3Parser::PowerContext * /*ctx*/) override { }
virtual void enterAtom_expr(Python3Parser::Atom_exprContext * /*ctx*/) override { }
virtual void exitAtom_expr(Python3Parser::Atom_exprContext * /*ctx*/) override { }
virtual void enterAtom(Python3Parser::AtomContext * /*ctx*/) override { }
virtual void exitAtom(Python3Parser::AtomContext * /*ctx*/) override { }
virtual void enterTestlist_comp(Python3Parser::Testlist_compContext * /*ctx*/) override { }
virtual void exitTestlist_comp(Python3Parser::Testlist_compContext * /*ctx*/) override { }
virtual void enterTrailer(Python3Parser::TrailerContext * /*ctx*/) override { }
virtual void exitTrailer(Python3Parser::TrailerContext * /*ctx*/) override { }
virtual void enterSubscriptlist(Python3Parser::SubscriptlistContext * /*ctx*/) override { }
virtual void exitSubscriptlist(Python3Parser::SubscriptlistContext * /*ctx*/) override { }
virtual void enterSubscript(Python3Parser::SubscriptContext * /*ctx*/) override { }
virtual void exitSubscript(Python3Parser::SubscriptContext * /*ctx*/) override { }
virtual void enterSliceop(Python3Parser::SliceopContext * /*ctx*/) override { }
virtual void exitSliceop(Python3Parser::SliceopContext * /*ctx*/) override { }
virtual void enterExprlist(Python3Parser::ExprlistContext * /*ctx*/) override { }
virtual void exitExprlist(Python3Parser::ExprlistContext * /*ctx*/) override { }
virtual void enterTestlist(Python3Parser::TestlistContext * /*ctx*/) override { }
virtual void exitTestlist(Python3Parser::TestlistContext * /*ctx*/) override { }
virtual void enterDictorsetmaker(Python3Parser::DictorsetmakerContext * /*ctx*/) override { }
virtual void exitDictorsetmaker(Python3Parser::DictorsetmakerContext * /*ctx*/) override { }
virtual void enterClassdef(Python3Parser::ClassdefContext * /*ctx*/) override { }
virtual void exitClassdef(Python3Parser::ClassdefContext * /*ctx*/) override { }
virtual void enterArglist(Python3Parser::ArglistContext * /*ctx*/) override { }
virtual void exitArglist(Python3Parser::ArglistContext * /*ctx*/) override { }
virtual void enterArgument(Python3Parser::ArgumentContext * /*ctx*/) override { }
virtual void exitArgument(Python3Parser::ArgumentContext * /*ctx*/) override { }
virtual void enterComp_iter(Python3Parser::Comp_iterContext * /*ctx*/) override { }
virtual void exitComp_iter(Python3Parser::Comp_iterContext * /*ctx*/) override { }
virtual void enterComp_for(Python3Parser::Comp_forContext * /*ctx*/) override { }
virtual void exitComp_for(Python3Parser::Comp_forContext * /*ctx*/) override { }
virtual void enterComp_if(Python3Parser::Comp_ifContext * /*ctx*/) override { }
virtual void exitComp_if(Python3Parser::Comp_ifContext * /*ctx*/) override { }
virtual void enterEncoding_decl(Python3Parser::Encoding_declContext * /*ctx*/) override { }
virtual void exitEncoding_decl(Python3Parser::Encoding_declContext * /*ctx*/) override { }
virtual void enterYield_expr(Python3Parser::Yield_exprContext * /*ctx*/) override { }
virtual void exitYield_expr(Python3Parser::Yield_exprContext * /*ctx*/) override { }
virtual void enterYield_arg(Python3Parser::Yield_argContext * /*ctx*/) override { }
virtual void exitYield_arg(Python3Parser::Yield_argContext * /*ctx*/) override { }
virtual void enterEveryRule(antlr4::ParserRuleContext * /*ctx*/) override { }
virtual void exitEveryRule(antlr4::ParserRuleContext * /*ctx*/) override { }
virtual void visitTerminal(antlr4::tree::TerminalNode * /*node*/) override { }
virtual void visitErrorNode(antlr4::tree::ErrorNode * /*node*/) override { }
};
================================================
FILE: ANTLR/Python3Lexer.cpp
================================================
#include<bits/stdc++.h>
#include "Python3Parser.h"
using namespace std;
using namespace antlr4;
// Generated from Python3.g4 by ANTLR 4.8
#include "Python3Lexer.h"
using namespace antlr4;
Python3Lexer::Python3Lexer(CharStream *input) : Lexer(input) {
_interpreter = new atn::LexerATNSimulator(this, _atn, _decisionToDFA, _sharedContextCache);
}
Python3Lexer::~Python3Lexer() {
delete _interpreter;
}
std::string Python3Lexer::getGrammarFileName() const {
return "Python3.g4";
}
const std::vector<std::string>& Python3Lexer::getRuleNames() const {
return _ruleNames;
}
const std::vector<std::string>& Python3Lexer::getChannelNames() const {
return _channelNames;
}
const std::vector<std::string>& Python3Lexer::getModeNames() const {
return _modeNames;
}
const std::vector<std::string>& Python3Lexer::getTokenNames() const {
return _tokenNames;
}
dfa::Vocabulary& Python3Lexer::getVocabulary() const {
return _vocabulary;
}
const std::vector<uint16_t> Python3Lexer::getSerializedATN() const {
return _serializedATN;
}
const atn::ATN& Python3Lexer::getATN() const {
return _atn;
}
void Python3Lexer::action(RuleContext *context, size_t ruleIndex, size_t actionIndex) {
switch (ruleIndex) {
case 186: NEWLINEAction(dynamic_cast<antlr4::RuleContext *>(context), actionIndex); break;
case 203: OPEN_PARENAction(dynamic_cast<antlr4::RuleContext *>(context), actionIndex); break;
case 204: CLOSE_PARENAction(dynamic_cast<antlr4::RuleContext *>(context), actionIndex); break;
case 210: OPEN_BRACKAction(dynamic_cast<antlr4::RuleContext *>(context), actionIndex); break;
case 211: CLOSE_BRACKAction(dynamic_cast<antlr4::RuleContext *>(context), actionIndex); break;
case 223: OPEN_BRACEAction(dynamic_cast<antlr4::RuleContext *>(context), actionIndex); break;
case 224: CLOSE_BRACEAction(dynamic_cast<antlr4::RuleContext *>(context), actionIndex); break;
default:
break;
}
}
bool Python3Lexer::sempred(RuleContext *context, size_t ruleIndex, size_t predicateIndex) {
switch (ruleIndex) {
case 186: return NEWLINESempred(dynamic_cast<antlr4::RuleContext *>(context), predicateIndex);
default:
break;
}
return true;
}
void Python3Lexer::NEWLINEAction(antlr4::RuleContext *context, size_t actionIndex) {
switch (actionIndex) {
case 0: {
regex re ("[^\r\n\f]+");
auto newLine = regex_replace(getText(), re, "");
regex re2("[\r\n\f]+");
auto spaces = regex_replace(getText(), re2, "");
// Strip newlines inside open clauses except if we are near EOF. We keep NEWLINEs near EOF to
// satisfy the final newline needed by the single_put rule used by the REPL.
int next = _input->LA(1);
int nextnext = _input->LA(2);
if (Opened > 0 || (nextnext != -1 && (next == '\r' || next == '\n' || next == '\f' || next == '#')))
{
// If we're inside a list or on a blank line, ignore all indents,
// dedents and line breaks.
skip();
}
else
{
Token* obj = commonToken(NEWLINE, newLine);
unique_ptr<Token> uptr(obj);
emit2(move(uptr));
int indent = getIndentationCount(spaces);
int previous = Indents.size() == 0 ? 0 : Indents.top();
if (indent == previous)
{
// skip indents of the same size as the present indent-size
skip();
}
else if (indent > previous) {
Indents.push(indent);
Token* obj = commonToken(Python3Parser::INDENT, spaces);
unique_ptr<Token> uptr(obj);
emit2(move(uptr));
}
else {
// Possibly emit more than 1 DEDENT token.
while(Indents.size() != 0 && Indents.top() > indent)
{
this->emit2(createDedent());
Indents.pop();
}
}
}
break;
}
default:
break;
}
}
void Python3Lexer::OPEN_PARENAction(antlr4::RuleContext *context, size_t actionIndex) {
switch (actionIndex) {
case 1: Opened++; break;
default:
break;
}
}
void Python3Lexer::CLOSE_PARENAction(antlr4::RuleContext *context, size_t actionIndex) {
switch (actionIndex) {
case 2: Opened--; break;
default:
break;
}
}
void Python3Lexer::OPEN_BRACKAction(antlr4::RuleContext *context, size_t actionIndex) {
switch (actionIndex) {
case 3: Opened++; break;
default:
break;
}
}
void Python3Lexer::CLOSE_BRACKAction(antlr4::RuleContext *context, size_t actionIndex) {
switch (actionIndex) {
case 4: Opened--; break;
default:
break;
}
}
void Python3Lexer::OPEN_BRACEAction(antlr4::RuleContext *context, size_t actionIndex) {
switch (actionIndex) {
case 5: Opened++; break;
default:
break;
}
}
void Python3Lexer::CLOSE_BRACEAction(antlr4::RuleContext *context, size_t actionIndex) {
switch (actionIndex) {
case 6: Opened--; break;
default:
break;
}
}
bool Python3Lexer::NEWLINESempred(antlr4::RuleContext *_localctx, size_t predicateIndex) {
switch (predicateIndex) {
case 0: return atStartOfInput();
default:
break;
}
return true;
}
// Static vars and initialization.
std::vector<dfa::DFA> Python3Lexer::_decisionToDFA;
atn::PredictionContextCache Python3Lexer::_sharedContextCache;
// We own the ATN which in turn owns the ATN states.
atn::ATN Python3Lexer::_atn;
std::vector<uint16_t> Python3Lexer::_serializedATN;
std::vector<std::string> Python3Lexer::_ruleNames = {
u8"STRING_LONG", u8"STRING_SHORT", u8"STRING", u8"COMMENTS", u8"NUMBER",
u8"INTEGER", u8"HACKISH", u8"PRIVATE", u8"SPECIAL", u8"BUG", u8"DIVMOD",
u8"INPUT", u8"OPEN", u8"STATICMETHOD", u8"ALL", u8"ENUMERATE", u8"INT",
u8"ORD", u8"STR", u8"ANY", u8"EVAL", u8"ISINSTANCE", u8"POW", u8"SUM",
u8"BASESTRING", u8"EXECFILE", u8"ISSUBCLASS", u8"ABS", u8"SUPER", u8"BIN",
u8"FILE", u8"ITER", u8"PROPERTY", u8"TUPLE", u8"BOOL", u8"FILTER", u8"LEN",
u8"RANGE", u8"TYPE", u8"BYTEARRAY", u8"FLOAT", u8"LIST", u8"RAW_INPUT",
u8"UNICHR", u8"CALLABLE", u8"FORMAT", u8"LOCALS", u8"REDUCE", u8"UNICODE",
u8"CHR", u8"FROZENSET", u8"LONG", u8"RELOAD", u8"VARS", u8"CLASSMETHOD",
u8"GETATTR", u8"MAP", u8"REPR", u8"XRANGE", u8"CMP", u8"GLOBALS", u8"MAX",
u8"REVERSED", u8"ZIP", u8"COMPILE", u8"HASATTR", u8"MEMORYVIEW", u8"ROUND",
u8"UNDERSCORE_IMPORT", u8"COMPLEX", u8"HASH", u8"MIN", u8"SET", u8"APPLY",
u8"DELATTR", u8"HELP", u8"NEXT", u8"SETATTR", u8"BUFFER", u8"DICT", u8"HEX",
u8"OBJECT", u8"SLICE", u8"COERCE", u8"DIR", u8"ID", u8"OCT", u8"SORTED",
u8"INTERN", u8"BASE_EXCEPTION", u8"SYSTEM_EXIT", u8"KEYBOARD_INTERRUPT",
u8"GENERATOR_EXIT", u8"EXCEPTION", u8"STOP_ITERATION", u8"ARITHMETIC_ERROR",
u8"FLOATINGPOINT_ERROR", u8"OVERFLOW_ERROR", u8"ZERO_DIVISION_ERROR",
u8"ASSERTION_ERROR", u8"ATTRIBUTE_ERROR", u8"BUFFER_ERROR", u8"EOF_ERROR",
u8"IMPORT_ERROR", u8"LOOKUP_ERROR", u8"INDEX_ERROR", u8"KEY_ERROR", u8"MEMORY_ERROR",
u8"NAME_ERROR", u8"UNBOUND_LOCAL_ERROR", u8"OS_ERROR", u8"BLOCKING_IO_ERROR",
u8"CHILD_PROCESS_ERROR", u8"CONNECTION_ERROR", u8"BROKEN_PIPE_ERROR",
u8"CONNECTION_ABORTED_ERROR", u8"CONNECTION_REFUSED_ERROR", u8"CONNECTION_RESET_ERROR",
u8"FILE_EXISTS_ERROR", u8"FILE_NOT_FOUND_ERROR", u8"INTERRUPTED_ERROR",
u8"IS_A_DIRECTORY_ERROR", u8"NOT_A_DIRECTORY_ERROR", u8"PERMISSION_ERROR",
u8"PROCESS_LOOKUP_ERROR", u8"TIMEOUT_ERROR", u8"REFERENCE_ERROR", u8"RUNTIME_ERROR",
u8"NOT_IMPLEMENTED_ERROR", u8"SYNTAX_ERROR", u8"INDENTATION_ERROR", u8"TAB_ERROR",
u8"SYSTEM_ERROR", u8"TYPE_ERROR", u8"VALUE_ERROR", u8"UNICODE_ERROR",
u8"UNICODE_DECODE_ERROR", u8"UNICODE_ENCODE_ERROR", u8"UNICODE_TRANSLATE_ERROR",
u8"WARNING", u8"DEPRECATION_WARNING", u8"PENDING_DEPRECATION_WARNING",
u8"RUNTIME_WARNING", u8"SYNTAX_WARNING", u8"USER_WARNING", u8"FUTURE_WARNING",
u8"IMPORT_WARNING", u8"UNICODE_WARNING", u8"BYTES_WARNING", u8"RESOURCE_WARNING",
u8"PRINT", u8"DEF", u8"RETURN", u8"RAISE", u8"FROM", u8"IMPORT", u8"AS",
u8"GLOBAL", u8"NONLOCAL", u8"ASSERT", u8"IF", u8"ELIF", u8"ELSE", u8"WHILE",
u8"FOR", u8"IN", u8"TRY", u8"FINALLY", u8"WITH", u8"EXCEPT", u8"LAMBDA",
u8"OR", u8"AND", u8"NOT", u8"IS", u8"NONE", u8"TRUE", u8"FALSE", u8"CLASS",
u8"YIELD", u8"DEL", u8"PASS", u8"CONTINUE", u8"BREAK", u8"ASYNC", u8"AWAIT",
u8"NEWLINE", u8"NAME", u8"STRING_LITERAL", u8"STRING_LONG_LITERAL", u8"STRING_SHORT_LITERAL",
u8"BYTES_LITERAL", u8"BYTES_LONG_LITERAL", u8"BYTES_SHORT_LITERAL", u8"DECIMAL_INTEGER",
u8"OCT_INTEGER", u8"HEX_INTEGER", u8"BIN_INTEGER", u8"FLOAT_NUMBER", u8"IMAG_NUMBER",
u8"DOT", u8"ELLIPSIS", u8"STAR", u8"OPEN_PAREN", u8"CLOSE_PAREN", u8"COMMA",
u8"COLON", u8"SEMI_COLON", u8"POWER", u8"ASSIGN", u8"OPEN_BRACK", u8"CLOSE_BRACK",
u8"OR_OP", u8"XOR", u8"AND_OP", u8"LEFT_SHIFT", u8"RIGHT_SHIFT", u8"ADD",
u8"MINUS", u8"DIV", u8"MOD", u8"IDIV", u8"NOT_OP", u8"OPEN_BRACE", u8"CLOSE_BRACE",
u8"LESS_THAN", u8"GREATER_THAN", u8"EQUALS", u8"GT_EQ", u8"LT_EQ", u8"NOT_EQ_1",
u8"NOT_EQ_2", u8"AT", u8"ARROW", u8"ADD_ASSIGN", u8"SUB_ASSIGN", u8"MULT_ASSIGN",
u8"AT_ASSIGN", u8"DIV_ASSIGN", u8"MOD_ASSIGN", u8"AND_ASSIGN", u8"OR_ASSIGN",
u8"XOR_ASSIGN", u8"LEFT_SHIFT_ASSIGN", u8"RIGHT_SHIFT_ASSIGN", u8"POWER_ASSIGN",
u8"IDIV_ASSIGN", u8"SKIP_", u8"UNKNOWN_CHAR", u8"SHORT_STRING", u8"LONG_STRING",
u8"LONG_STRING_ITEM", u8"LONG_STRING_CHAR", u8"STRING_ESCAPE_SEQ", u8"NON_ZERO_DIGIT",
u8"DIGIT", u8"OCT_DIGIT", u8"HEX_DIGIT", u8"BIN_DIGIT", u8"POINT_FLOAT",
u8"EXPONENT_FLOAT", u8"INT_PART", u8"FRACTION", u8"EXPONENT", u8"SHORT_BYTES",
u8"LONG_BYTES", u8"LONG_BYTES_ITEM", u8"SHORT_BYTES_CHAR_NO_SINGLE_QUOTE",
u8"SHORT_BYTES_CHAR_NO_DOUBLE_QUOTE", u8"LONG_BYTES_CHAR", u8"BYTES_ESCAPE_SEQ",
u8"SPACES", u8"COMMENT", u8"LINE_JOINING", u8"ID_START", u8"ID_CONTINUE"
};
std::vector<std::string> Python3Lexer::_channelNames = {
"DEFAULT_TOKEN_CHANNEL", "HIDDEN"
};
std::vector<std::string> Python3Lexer::_modeNames = {
u8"DEFAULT_MODE"
};
std::vector<std::string> Python3Lexer::_literalNames = {
"", "", "", "", "", "", "", "", "", "", "", u8"'divmod'", u8"'input'",
u8"'open'", u8"'staticmethod'", u8"'all'", u8"'enumerate'", u8"'int'",
u8"'ord'", u8"'str'", u8"'any'", u8"'eval'", u8"'isinstance'", u8"'pow'",
u8"'sum'", u8"'basestring'", u8"'execfile'", u8"'issubclass'", u8"'abs'",
u8"'super'", u8"'bin'", u8"'file'", u8"'iter'", u8"'property'", u8"'tuple'",
u8"'bool'", u8"'filter'", u8"'len'", u8"'range'", u8"'type'", u8"'bytearray'",
u8"'float'", u8"'list'", u8"'raw_input'", u8"'unichr'", u8"'callable'",
u8"'format'", u8"'locals'", u8"'reduce'", u8"'unicode'", u8"'chr'", u8"'frozenset'",
u8"'long'", u8"'reload'", u8"'vars'", u8"'classmethod'", u8"'getattr'",
u8"'map'", u8"'repr'", u8"'xrange'", u8"'cmp'", u8"'globals'", u8"'max'",
u8"'reversed'", u8"'zip'", u8"'compile'", u8"'hasattr'", u8"'memoryview'",
u8"'round'", u8"'__import__'", u8"'complex'", u8"'hash'", u8"'min'", u8"'set'",
u8"'apply'", u8"'delattr'", u8"'help'", u8"'next'", u8"'setattr'", u8"'buffer'",
u8"'dict'", u8"'hex'", u8"'object'", u8"'slice'", u8"'coerce'", u8"'dir'",
u8"'id'", u8"'oct'", u8"'sorted'", u8"'intern'", u8"'BaseException'",
u8"'SystemExit'", u8"'KeyboardInterrupt'", u8"'GeneratorExit'", u8"'Exception'",
u8"'StopIteration'", u8"'ArithmeticError'", u8"'FloatingPointError'",
u8"'OverflowError'", u8"'ZeroDivisionError'", u8"'AssertionError'", u8"'AttributeError'",
u8"'BufferError'", u8"'EOFError'", u8"'ImportError'", u8"'LookupError'",
u8"'IndexError'", u8"'KeyError'", u8"'MemoryError'", u8"'NameError'",
u8"'UnboundLocalError'", u8"'OSError'", u8"'BlockingIOError'", u8"'ChildProcessError'",
u8"'ConnectionError'", u8"'BrokenPipeError'", u8"'ConnectionAbortedError'",
u8"'ConnectionRefusedError'", u8"'ConnectionResetError'", u8"'FileExistsError'",
u8"'FileNotFoundError'", u8"'InterruptedError'", u8"'IsADirectoryError'",
u8"'NotADirectoryError'", u8"'PermissionError'", u8"'ProcessLookupError'",
u8"'TimeoutError'", u8"'ReferenceError'", u8"'RuntimeError'", u8"'NotImplementedError'",
u8"'SyntaxError'", u8"'IndentationError'", u8"'TabError'", u8"'SystemError'",
u8"'TypeError'", u8"'ValueError'", u8"'UnicodeError'", u8"'UnicodeDecodeError'",
u8"'UnicodeEncodeError'", u8"'UnicodeTranslateError'", u8"'Warning'",
u8"'DeprecationWarning'", u8"'PendingDeprecationWarning'", u8"'RuntimeWarning'",
u8"'SyntaxWarning'", u8"'UserWarning'", u8"'FutureWarning'", u8"'ImportWarning'",
u8"'UnicodeWarning'", u8"'BytesWarning'", u8"'ResourceWarning'", u8"'print'",
u8"'def'", u8"'return'", u8"'raise'", u8"'from'", u8"'import'", u8"'as'",
u8"'global'", u8"'nonlocal'", u8"'assert'", u8"'if'", u8"'elif'", u8"'else'",
u8"'while'", u8"'for'", u8"'in'", u8"'try'", u8"'finally'", u8"'with'",
u8"'except'", u8"'lambda'", u8"'or'", u8"'and'", u8"'not'", u8"'is'",
u8"'None'", u8"'True'", u8"'False'", u8"'class'", u8"'yield'", u8"'del'",
u8"'pass'", u8"'continue'", u8"'break'", u8"'async'", u8"'await'", "",
"", "", "", "", "", "", "", "", "", "", "", "", "", u8"'.'", u8"'...'",
u8"'*'", u8"'('", u8"')'", u8"','", u8"':'", u8"';'", u8"'**'", u8"'='",
u8"'['", u8"']'", u8"'|'", u8"'^'", u8"'&'", u8"'<<'", u8"'>>'", u8"'+'",
u8"'-'", u8"'/'", u8"'%'", u8"'//'", u8"'~'", u8"'{'", u8"'}'", u8"'<'",
u8"'>'", u8"'=='", u8"'>='", u8"'<='", u8"'<>'", u8"'!='", u8"'@'", u8"'->'",
u8"'+='", u8"'-='", u8"'*='", u8"'@='", u8"'/='", u8"'%='", u8"'&='",
u8"'|='", u8"'^='", u8"'<<='", u8"'>>='", u8"'**='", u8"'//='"
};
std::vector<std::string> Python3Lexer::_symbolicNames = {
"", u8"STRING_LONG", u8"STRING_SHORT", u8"STRING", u8"COMMENTS", u8"NUMBER",
u8"INTEGER", u8"HACKISH", u8"PRIVATE", u8"SPECIAL", u8"BUG", u8"DIVMOD",
u8"INPUT", u8"OPEN", u8"STATICMETHOD", u8"ALL", u8"ENUMERATE", u8"INT",
u8"ORD", u8"STR", u8"ANY", u8"EVAL", u8"ISINSTANCE", u8"POW", u8"SUM",
u8"BASESTRING", u8"EXECFILE", u8"ISSUBCLASS", u8"ABS", u8"SUPER", u8"BIN",
u8"FILE", u8"ITER", u8"PROPERTY", u8"TUPLE", u8"BOOL", u8"FILTER", u8"LEN",
u8"RANGE", u8"TYPE", u8"BYTEARRAY", u8"FLOAT", u8"LIST", u8"RAW_INPUT",
u8"UNICHR", u8"CALLABLE", u8"FORMAT", u8"LOCALS", u8"REDUCE", u8"UNICODE",
u8"CHR", u8"FROZENSET", u8"LONG", u8"RELOAD", u8"VARS", u8"CLASSMETHOD",
u8"GETATTR", u8"MAP", u8"REPR", u8"XRANGE", u8"CMP", u8"GLOBALS", u8"MAX",
u8"REVERSED", u8"ZIP", u8"COMPILE", u8"HASATTR", u8"MEMORYVIEW", u8"ROUND",
u8"UNDERSCORE_IMPORT", u8"COMPLEX", u8"HASH", u8"MIN", u8"SET", u8"APPLY",
u8"DELATTR", u8"HELP", u8"NEXT", u8"SETATTR", u8"BUFFER", u8"DICT", u8"HEX",
u8"OBJECT", u8"SLICE", u8"COERCE", u8"DIR", u8"ID", u8"OCT", u8"SORTED",
u8"INTERN", u8"BASE_EXCEPTION", u8"SYSTEM_EXIT", u8"KEYBOARD_INTERRUPT",
u8"GENERATOR_EXIT", u8"EXCEPTION", u8"STOP_ITERATION", u8"ARITHMETIC_ERROR",
u8"FLOATINGPOINT_ERROR", u8"OVERFLOW_ERROR", u8"ZERO_DIVISION_ERROR",
u8"ASSERTION_ERROR", u8"ATTRIBUTE_ERROR", u8"BUFFER_ERROR", u8"EOF_ERROR",
u8"IMPORT_ERROR", u8"LOOKUP_ERROR", u8"INDEX_ERROR", u8"KEY_ERROR", u8"MEMORY_ERROR",
u8"NAME_ERROR", u8"UNBOUND_LOCAL_ERROR", u8"OS_ERROR", u8"BLOCKING_IO_ERROR",
u8"CHILD_PROCESS_ERROR", u8"CONNECTION_ERROR", u8"BROKEN_PIPE_ERROR",
u8"CONNECTION_ABORTED_ERROR", u8"CONNECTION_REFUSED_ERROR", u8"CONNECTION_RESET_ERROR",
u8"FILE_EXISTS_ERROR", u8"FILE_NOT_FOUND_ERROR", u8"INTERRUPTED_ERROR",
u8"IS_A_DIRECTORY_ERROR", u8"NOT_A_DIRECTORY_ERROR", u8"PERMISSION_ERROR",
u8"PROCESS_LOOKUP_ERROR", u8"TIMEOUT_ERROR", u8"REFERENCE_ERROR", u8"RUNTIME_ERROR",
u8"NOT_IMPLEMENTED_ERROR", u8"SYNTAX_ERROR", u8"INDENTATION_ERROR", u8"TAB_ERROR",
u8"SYSTEM_ERROR", u8"TYPE_ERROR", u8"VALUE_ERROR", u8"UNICODE_ERROR",
u8"UNICODE_DECODE_ERROR", u8"UNICODE_ENCODE_ERROR", u8"UNICODE_TRANSLATE_ERROR",
u8"WARNING", u8"DEPRECATION_WARNING", u8"PENDING_DEPRECATION_WARNING",
u8"RUNTIME_WARNING", u8"SYNTAX_WARNING", u8"USER_WARNING", u8"FUTURE_WARNING",
u8"IMPORT_WARNING", u8"UNICODE_WARNING", u8"BYTES_WARNING", u8"RESOURCE_WARNING",
u8"PRINT", u8"DEF", u8"RETURN", u8"RAISE", u8"FROM", u8"IMPORT", u8"AS",
u8"GLOBAL", u8"NONLOCAL", u8"ASSERT", u8"IF", u8"ELIF", u8"ELSE", u8"WHILE",
u8"FOR", u8"IN", u8"TRY", u8"FINALLY", u8"WITH", u8"EXCEPT", u8"LAMBDA",
u8"OR", u8"AND", u8"NOT", u8"IS", u8"NONE", u8"TRUE", u8"FALSE", u8"CLASS",
u8"YIELD", u8"DEL", u8"PASS", u8"CONTINUE", u8"BREAK", u8"ASYNC", u8"AWAIT",
u8"NEWLINE", u8"NAME", u8"STRING_LITERAL", u8"STRING_LONG_LITERAL", u8"STRING_SHORT_LITERAL",
u8"BYTES_LITERAL", u8"BYTES_LONG_LITERAL", u8"BYTES_SHORT_LITERAL", u8"DECIMAL_INTEGER",
u8"OCT_INTEGER", u8"HEX_INTEGER", u8"BIN_INTEGER", u8"FLOAT_NUMBER", u8"IMAG_NUMBER",
u8"DOT", u8"ELLIPSIS", u8"STAR", u8"OPEN_PAREN", u8"CLOSE_PAREN", u8"COMMA",
u8"COLON", u8"SEMI_COLON", u8"POWER", u8"ASSIGN", u8"OPEN_BRACK", u8"CLOSE_BRACK",
u8"OR_OP", u8"XOR", u8"AND_OP", u8"LEFT_SHIFT", u8"RIGHT_SHIFT", u8"ADD",
u8"MINUS", u8"DIV", u8"MOD", u8"IDIV", u8"NOT_OP", u8"OPEN_BRACE", u8"CLOSE_BRACE",
u8"LESS_THAN", u8"GREATER_THAN", u8"EQUALS", u8"GT_EQ", u8"LT_EQ", u8"NOT_EQ_1",
u8"NOT_EQ_2", u8"AT", u8"ARROW", u8"ADD_ASSIGN", u8"SUB_ASSIGN", u8"MULT_ASSIGN",
u8"AT_ASSIGN", u8"DIV_ASSIGN", u8"MOD_ASSIGN", u8"AND_ASSIGN", u8"OR_ASSIGN",
u8"XOR_ASSIGN", u8"LEFT_SHIFT_ASSIGN", u8"RIGHT_SHIFT_ASSIGN", u8"POWER_ASSIGN",
u8"IDIV_ASSIGN", u8"SKIP_", u8"UNKNOWN_CHAR"
};
dfa::Vocabulary Python3Lexer::_vocabulary(_literalNames, _symbolicNames);
std::vector<std::string> Python3Lexer::_tokenNames;
Python3Lexer::Initializer::Initializer() {
// This code could be in a static initializer lambda, but VS doesn't allow access to private class members from there.
for (size_t i = 0; i < _symbolicNames.size(); ++i) {
std::string name = _vocabulary.getLiteralName(i);
if (name.empty()) {
name = _vocabulary.getSymbolicName(i);
}
if (name.empty()) {
_tokenNames.push_back("<INVALID>");
} else {
_tokenNames.push_back(name);
}
}
static uint16_t serializedATNSegment0[] = {
0x3, 0x608b, 0xa72a, 0x8133, 0xb9ed, 0x417c, 0x3be7, 0x7786, 0x5964,
0x2, 0xfb, 0xa7f, 0x8, 0x1, 0x4, 0x2, 0x9, 0x2, 0x4, 0x3, 0x9, 0x3,
0x4, 0x4, 0x9, 0x4, 0x4, 0x5, 0x9, 0x5, 0x4, 0x6, 0x9, 0x6, 0x4,
0x7, 0x9, 0x7, 0x4, 0x8, 0x9, 0x8, 0x4, 0x9, 0x9, 0x9, 0x4, 0xa,
0x9, 0xa, 0x4, 0xb, 0x9, 0xb, 0x4, 0xc, 0x9, 0xc, 0x4, 0xd, 0x9,
0xd, 0x4, 0xe, 0x9, 0xe, 0x4, 0xf, 0x9, 0xf, 0x4, 0x10, 0x9, 0x10,
0x4, 0x11, 0x9, 0x11, 0x4, 0x12, 0x9, 0x12, 0x4, 0x13, 0x9, 0x13,
0x4, 0x14, 0x9, 0x14, 0x4, 0x15, 0x9, 0x15, 0x4, 0x16, 0x9, 0x16,
0x4, 0x17, 0x9, 0x17, 0x4, 0x18, 0x9, 0x18, 0x4, 0x19, 0x9, 0x19,
0x4, 0x1a, 0x9, 0x1a, 0x4, 0x1b, 0x9, 0x1b, 0x4, 0x1c, 0x9, 0x1c,
0x4, 0x1d, 0x9, 0x1d, 0x4, 0x1e, 0x9, 0x1e, 0x4, 0x1f, 0x9, 0x1f,
0x4, 0x20, 0x9, 0x20, 0x4, 0x21, 0x9, 0x21, 0x4, 0x22, 0x9, 0x22,
0x4, 0x23, 0x9, 0x23, 0x4, 0x24, 0x9, 0x24, 0x4, 0x25, 0x9, 0x25,
0x4, 0x26, 0x9, 0x26, 0x4, 0x27, 0x9, 0x27, 0x4, 0x28, 0x9, 0x28,
0x4, 0x29, 0x9, 0x29, 0x4, 0x2a, 0x9, 0x2a, 0x4, 0x2b, 0x9, 0x2b,
0x4, 0x2c, 0x9, 0x2c, 0x4, 0x2d, 0x9, 0x2d, 0x4, 0x2e, 0x9, 0x2e,
0x4, 0x2f, 0x9, 0x2f, 0x4, 0x30, 0x9, 0x30, 0x4, 0x31, 0x9, 0x31,
0x4, 0x32, 0x9, 0x32, 0x4, 0x33, 0x9, 0x33, 0x4, 0x34, 0x9, 0x34,
0x4, 0x35, 0x9, 0x35, 0x4, 0x36, 0x9, 0x36, 0x4, 0x37, 0x9, 0x37,
0x4, 0x38, 0x9, 0x38, 0x4, 0x39, 0x9, 0x39, 0x4, 0x3a, 0x9, 0x3a,
0x4, 0x3b, 0x9, 0x3b, 0x4, 0x3c, 0x9, 0x3c, 0x4, 0x3d, 0x9, 0x3d,
0x4, 0x3e, 0x9, 0x3e, 0x4, 0x3f, 0x9, 0x3f, 0x4, 0x40, 0x9, 0x40,
0x4, 0x41, 0x9, 0x41, 0x4, 0x42, 0x9, 0x42, 0x4, 0x43, 0x9, 0x43,
0x4, 0x44, 0x9, 0x44, 0x4, 0x45, 0x9, 0x45, 0x4, 0x46, 0x9, 0x46,
0x4, 0x47, 0x9, 0x47, 0x4, 0x48, 0x9, 0x48, 0x4, 0x49, 0x9, 0x49,
0x4, 0x4a, 0x9, 0x4a, 0x4, 0x4b, 0x9, 0x4b, 0x4, 0x4c, 0x9, 0x4c,
0x4, 0x4d, 0x9, 0x4d, 0x4, 0x4e, 0x9, 0x4e, 0x4, 0x4f, 0x9, 0x4f,
0x4, 0x50, 0x9, 0x50, 0x4, 0x51, 0x9, 0x51, 0x4, 0x52, 0x9, 0x52,
0x4, 0x53, 0x9, 0x53, 0x4, 0x54, 0x9, 0x54, 0x4, 0x55, 0x9, 0x55,
0x4, 0x56, 0x9, 0x56, 0x4, 0x57, 0x9, 0x57, 0x4, 0x58, 0x9, 0x58,
0x4, 0x59, 0x9, 0x59, 0x4, 0x5a, 0x9, 0x5a, 0x4, 0x5b, 0x9, 0x5b,
0x4, 0x5c, 0x9, 0x5c, 0x4, 0x5d, 0x9, 0x5d, 0x4, 0x5e, 0x9, 0x5e,
0x4, 0x5f, 0x9, 0x5f, 0x4, 0x60, 0x9, 0x60, 0x4, 0x61, 0x9, 0x61,
0x4, 0x62, 0x9, 0x62, 0x4, 0x63, 0x9, 0x63, 0x4, 0x64, 0x9, 0x64,
0x4, 0x65, 0x9, 0x65, 0x4, 0x66, 0x9, 0x66, 0x4, 0x67, 0x9, 0x67,
0x4, 0x68, 0x9, 0x68, 0x4, 0x69, 0x9, 0x69, 0x4, 0x6a, 0x9, 0x6a,
0x4, 0x6b, 0x9, 0x6b, 0x4, 0x6c, 0x9, 0x6c, 0x4, 0x6d, 0x9, 0x6d,
0x4, 0x6e, 0x9, 0x6e, 0x4, 0x6f, 0x9, 0x6f, 0x4, 0x70, 0x9, 0x70,
0x4, 0x71, 0x9, 0x71, 0x4, 0x72, 0x9, 0x72, 0x4, 0x73, 0x9, 0x73,
0x4, 0x74, 0x9, 0x74, 0x4, 0x75, 0x9, 0x75, 0x4, 0x76, 0x9, 0x76,
0x4, 0x77, 0x9, 0x77, 0x4, 0x78, 0x9, 0x78, 0x4, 0x79, 0x9, 0x79,
0x4, 0x7a, 0x9, 0x7a, 0x4, 0x7b, 0x9, 0x7b, 0x4, 0x7c, 0x9, 0x7c,
0x4, 0x7d, 0x9, 0x7d, 0x4, 0x7e, 0x9, 0x7e, 0x4, 0x7f, 0x9, 0x7f,
0x4, 0x80, 0x9, 0x80, 0x4, 0x81, 0x9, 0x81, 0x4, 0x82, 0x9, 0x82,
0x4, 0x83, 0x9, 0x83, 0x4, 0x84, 0x9, 0x84, 0x4, 0x85, 0x9, 0x85,
0x4, 0x86, 0x9, 0x86, 0x4, 0x87, 0x9, 0x87, 0x4, 0x88, 0x9, 0x88,
0x4, 0x89, 0x9, 0x89, 0x4, 0x8a, 0x9, 0x8a, 0x4, 0x8b, 0x9, 0x8b,
0x4, 0x8c, 0x9, 0x8c, 0x4, 0x8d, 0x9, 0x8d, 0x4, 0x8e, 0x9, 0x8e,
0x4, 0x8f, 0x9, 0x8f, 0x4, 0x90, 0x9, 0x90, 0x4, 0x91, 0x9, 0x91,
0x4, 0x92, 0x9, 0x92, 0x4, 0x93, 0x9, 0x93, 0x4, 0x94, 0x9, 0x94,
0x4, 0x95, 0x9, 0x95, 0x4, 0x96, 0x9, 0x96, 0x4, 0x97, 0x9, 0x97,
0x4, 0x98, 0x9, 0x98, 0x4, 0x99, 0x9, 0x99, 0x4, 0x9a, 0x9, 0x9a,
0x4, 0x9b, 0x9, 0x9b, 0x4, 0x9c, 0x9, 0x9c, 0x4, 0x9d, 0x9, 0x9d,
0x4, 0x9e, 0x9, 0x9e, 0x4, 0x9f, 0x9, 0x9f, 0x4, 0xa0, 0x9, 0xa0,
0x4, 0xa1, 0x9, 0xa1, 0x4, 0xa2, 0x9, 0xa2, 0x4, 0xa3, 0x9, 0xa3,
0x4, 0xa4, 0x9, 0xa4, 0x4, 0xa5, 0x9, 0xa5, 0x4, 0xa6, 0x9, 0xa6,
0x4, 0xa7, 0x9, 0xa7, 0x4, 0xa8, 0x9, 0xa8, 0x4, 0xa9, 0x9, 0xa9,
0x4, 0xaa, 0x9, 0xaa, 0x4, 0xab, 0x9, 0xab, 0x4, 0xac, 0x9, 0xac,
0x4, 0xad, 0x9, 0xad, 0x4, 0xae, 0x9, 0xae, 0x4, 0xaf, 0x9, 0xaf,
0x4, 0xb0, 0x9, 0xb0, 0x4, 0xb1, 0x9, 0xb1, 0x4, 0xb2, 0x9, 0xb2,
0x4, 0xb3, 0x9, 0xb3, 0x4, 0xb4, 0x9, 0xb4, 0x4, 0xb5, 0x9, 0xb5,
0x4, 0xb6, 0x9, 0xb6, 0x4, 0xb7, 0x9, 0xb7, 0x4, 0xb8, 0x9, 0xb8,
0x4, 0xb9, 0x9, 0xb9, 0x4, 0xba, 0x9, 0xba, 0x4, 0xbb, 0x9, 0xbb,
0x4, 0xbc, 0x9, 0xbc, 0x4, 0xbd, 0x9, 0xbd, 0x4, 0xbe, 0x9, 0xbe,
0x4, 0xbf, 0x9, 0xbf, 0x4, 0xc0, 0x9, 0xc0, 0x4, 0xc1, 0x9, 0xc1,
0x4, 0xc2, 0x9, 0xc2, 0x4, 0xc3, 0x9, 0xc3, 0x4, 0xc4, 0x9, 0xc4,
0x4, 0xc5, 0x9, 0xc5, 0x4, 0xc6, 0x9, 0xc6, 0x4, 0xc7, 0x9, 0xc7,
0x4, 0xc8, 0x9, 0xc8, 0x4, 0xc9, 0x9, 0xc9, 0x4, 0xca, 0x9, 0xca,
0x4, 0xcb, 0x9, 0xcb, 0x4, 0xcc, 0x9, 0xcc, 0x4, 0xcd, 0x9, 0xcd,
0x4, 0xce, 0x9, 0xce, 0x4, 0xcf, 0x9, 0xcf, 0x4, 0xd0, 0x9, 0xd0,
0x4, 0xd1, 0x9, 0xd1, 0x4, 0xd2, 0x9, 0xd2, 0x4, 0xd3, 0x9, 0xd3,
0x4, 0xd4, 0x9, 0xd4, 0x4, 0xd5, 0x9, 0xd5, 0x4, 0xd6, 0x9, 0xd6,
0x4, 0xd7, 0x9, 0xd7, 0x4, 0xd8, 0x9, 0xd8, 0x4, 0xd9, 0x9, 0xd9,
0x4, 0xda, 0x9, 0xda, 0x4, 0xdb, 0x9, 0xdb, 0x4, 0xdc, 0x9, 0xdc,
0x4, 0xdd, 0x9, 0xdd, 0x4, 0xde, 0x9, 0xde, 0x4, 0xdf, 0x9, 0xdf,
0x4, 0xe0, 0x9, 0xe0, 0x4, 0xe1, 0x9, 0xe1, 0x4, 0xe2, 0x9, 0xe2,
0x4, 0xe3, 0x9, 0xe3, 0x4, 0xe4, 0x9, 0xe4, 0x4, 0xe5, 0x9, 0xe5,
0x4, 0xe6, 0x9, 0xe6, 0x4, 0xe7, 0x9, 0xe7, 0x4, 0xe8, 0x9, 0xe8,
0x4, 0xe9, 0x9, 0xe9, 0x4, 0xea, 0x9, 0xea, 0x4, 0xeb, 0x9, 0xeb,
0x4, 0xec, 0x9, 0xec, 0x4, 0xed, 0x9, 0xed, 0x4, 0xee, 0x9, 0xee,
0x4, 0xef, 0x9, 0xef, 0x4, 0xf0, 0x9, 0xf0, 0x4, 0xf1, 0x9, 0xf1,
0x4, 0xf2, 0x9, 0xf2, 0x4, 0xf3, 0x9, 0xf3, 0x4, 0xf4, 0x9, 0xf4,
0x4, 0xf5, 0x9, 0xf5, 0x4, 0xf6, 0x9, 0xf6, 0x4, 0xf7, 0x9, 0xf7,
0x4, 0xf8, 0x9, 0xf8, 0x4, 0xf9, 0x9, 0xf9, 0x4, 0xfa, 0x9, 0xfa,
0x4, 0xfb, 0x9, 0xfb, 0x4, 0xfc, 0x9, 0xfc, 0x4, 0xfd, 0x9, 0xfd,
0x4, 0xfe, 0x9, 0xfe, 0x4, 0xff, 0x9, 0xff, 0x4, 0x100, 0x9, 0x100,
0x4, 0x101, 0x9, 0x101, 0x4, 0x102, 0x9, 0x102, 0x4, 0x103, 0x9,
0x103, 0x4, 0x104, 0x9, 0x104, 0x4, 0x105, 0x9, 0x105, 0x4, 0x106,
0x9, 0x106, 0x4, 0x107, 0x9, 0x107, 0x4, 0x108, 0x9, 0x108, 0x4,
0x109, 0x9, 0x109, 0x4, 0x10a, 0x9, 0x10a, 0x4, 0x10b, 0x9, 0x10b,
0x4, 0x10c, 0x9, 0x10c, 0x4, 0x10d, 0x9, 0x10d, 0x4, 0x10e, 0x9,
0x10e, 0x4, 0x10f, 0x9, 0x10f, 0x4, 0x110, 0x9, 0x110, 0x4, 0x111,
0x9, 0x111, 0x4, 0x112, 0x9, 0x112, 0x4, 0x113, 0x9, 0x113, 0x4,
0x114, 0x9, 0x114, 0x4, 0x115, 0x9, 0x115, 0x3, 0x2, 0x3, 0x2, 0x5,
0x2, 0x22e, 0xa, 0x2, 0x3, 0x3, 0x3, 0x3, 0x5, 0x3, 0x232, 0xa, 0x3,
0x3, 0x4, 0x3, 0x4, 0x5, 0x4, 0x236, 0xa, 0x4, 0x3, 0x5, 0x3, 0x5,
0x3, 0x6, 0x3, 0x6, 0x3, 0x6, 0x5, 0x6, 0x23d, 0xa, 0x6, 0x3, 0x7,
0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x5, 0x7, 0x243, 0xa, 0x7, 0x3, 0x8,
0x3, 0x8, 0x3, 0x8, 0x3, 0x8, 0x3, 0x8, 0x3, 0x8, 0x3, 0x8, 0x3,
0x9, 0x3, 0x9, 0x3, 0x9, 0x3, 0xa, 0x3, 0xa, 0x3, 0xa, 0x3, 0xa,
0x3, 0xa, 0x5, 0xa, 0x254, 0xa, 0xa, 0x3, 0xb, 0x3, 0xb, 0x3, 0xc,
0x3, 0xc, 0x3, 0xc, 0x3, 0xc, 0x3, 0xc, 0x3, 0xc, 0x3, 0xc, 0x3,
0xd, 0x3, 0xd, 0x3, 0xd, 0x3, 0xd, 0x3, 0xd, 0x3, 0xd, 0x3, 0xe,
0x3, 0xe, 0x3, 0xe, 0x3, 0xe, 0x3, 0xe, 0x3, 0xf, 0x3, 0xf, 0x3,
0xf, 0x3, 0xf, 0x3, 0xf, 0x3, 0xf, 0x3, 0xf, 0x3, 0xf, 0x3, 0xf,
0x3, 0xf, 0x3, 0xf, 0x3, 0xf, 0x3, 0xf, 0x3, 0x10, 0x3, 0x10, 0x3,
0x10, 0x3, 0x10, 0x3, 0x11, 0x3, 0x11, 0x3, 0x11, 0x3, 0x11, 0x3,
0x11, 0x3, 0x11, 0x3, 0x11, 0x3, 0x11, 0x3, 0x11, 0x3, 0x11, 0x3,
0x12, 0x3, 0x12, 0x3, 0x12, 0x3, 0x12, 0x3, 0x13, 0x3, 0x13, 0x3,
0x13, 0x3, 0x13, 0x3, 0x14, 0x3, 0x14, 0x3, 0x14, 0x3, 0x14, 0x3,
0x15, 0x3, 0x15, 0x3, 0x15, 0x3, 0x15, 0x3, 0x16, 0x3, 0x16, 0x3,
0x16, 0x3, 0x16, 0x3, 0x16, 0x3, 0x17, 0x3, 0x17, 0x3, 0x17, 0x3,
0x17, 0x3, 0x17, 0x3, 0x17, 0x3, 0x17, 0x3, 0x17, 0x3, 0x17, 0x3,
0x17, 0x3, 0x17, 0x3, 0x18, 0x3, 0x18, 0x3, 0x18, 0x3, 0x18, 0x3,
0x19, 0x3, 0x19, 0x3, 0x19, 0x3, 0x19, 0x3, 0x1a, 0x3, 0x1a, 0x3,
0x1a, 0x3, 0x1a, 0x3, 0x1a, 0x3, 0x1a, 0x3, 0x1a, 0x3, 0x1a, 0x3,
0x1a, 0x3, 0x1a, 0x3, 0x1a, 0x3, 0x1b, 0x3, 0x1b, 0x3, 0x1b, 0x3,
0x1b, 0x3, 0x1b, 0x3, 0x1b, 0x3, 0x1b, 0x3, 0x1b, 0x3, 0x1b, 0x3,
0x1c, 0x3, 0x1c, 0x3, 0x1c, 0x3, 0x1c, 0x3, 0x1c, 0x3, 0x1c, 0x3,
0x1c, 0x3, 0x1c, 0x3, 0x1c, 0x3, 0x1c, 0x3, 0x1c, 0x3, 0x1d, 0x3,
0x1d, 0x3, 0x1d, 0x3, 0x1d, 0x3, 0x1e, 0x3, 0x1e, 0x3, 0x1e, 0x3,
0x1e, 0x3, 0x1e, 0x3, 0x1e, 0x3, 0x1f, 0x3, 0x1f, 0x3, 0x1f, 0x3,
0x1f, 0x3, 0x20, 0x3, 0x20, 0x3, 0x20, 0x3, 0x20, 0x3, 0x20, 0x3,
0x21, 0x3, 0x21, 0x3, 0x21, 0x3, 0x21, 0x3, 0x21, 0x3, 0x22, 0x3,
0x22, 0x3, 0x22, 0x3, 0x22, 0x3, 0x22, 0x3, 0x22, 0x3, 0x22, 0x3,
0x22, 0x3, 0x22, 0x3, 0x23, 0x3, 0x23, 0x3, 0x23, 0x3, 0x23, 0x3,
0x23, 0x3, 0x23, 0x3, 0x24, 0x3, 0x24, 0x3, 0x24, 0x3, 0x24, 0x3,
0x24, 0x3, 0x25, 0x3, 0x25, 0x3, 0x25, 0x3, 0x25, 0x3, 0x25, 0x3,
0x25, 0x3, 0x25, 0x3, 0x26, 0x3, 0x26, 0x3, 0x26, 0x3, 0x26, 0x3,
0x27, 0x3, 0x27, 0x3, 0x27, 0x3, 0x27, 0x3, 0x27, 0x3, 0x27, 0x3,
0x28, 0x3, 0x28, 0x3, 0x28, 0x3, 0x28, 0x3, 0x28, 0x3, 0x29, 0x3,
0x29, 0x3, 0x29, 0x3, 0x29, 0x3, 0x29, 0x3, 0x29, 0x3, 0x29, 0x3,
0x29, 0x3, 0x29, 0x3, 0x29, 0x3, 0x2a, 0x3, 0x2a, 0x3, 0x2a, 0x3,
0x2a, 0x3, 0x2a, 0x3, 0x2a, 0x3, 0x2b, 0x3, 0x2b, 0x3, 0x2b, 0x3,
0x2b, 0x3, 0x2b, 0x3, 0x2c, 0x3, 0x2c, 0x3, 0x2c, 0x3, 0x2c, 0x3,
0x2c, 0x3, 0x2c, 0x3, 0x2c, 0x3, 0x2c, 0x3, 0x2c, 0x3, 0x2c, 0x3,
0x2d, 0x3, 0x2d, 0x3, 0x2d, 0x3, 0x2d, 0x3, 0x2d, 0x3, 0x2d, 0x3,
0x2d, 0x3, 0x2e, 0x3, 0x2e, 0x3, 0x2e, 0x3, 0x2e, 0x3, 0x2e, 0x3,
0x2e, 0x3, 0x2e, 0x3, 0x2e, 0x3, 0x2e, 0x3, 0x2f, 0x3, 0x2f, 0x3,
0x2f, 0x3, 0x2f, 0x3, 0x2f, 0x3, 0x2f, 0x3, 0x2f, 0x3, 0x30, 0x3,
0x30, 0x3, 0x30, 0x3, 0x30, 0x3, 0x30, 0x3, 0x30, 0x3, 0x30, 0x3,
0x31, 0x3, 0x31, 0x3, 0x31, 0x3, 0x31, 0x3, 0x31, 0x3, 0x31, 0x3,
0x31, 0x3, 0x32, 0x3, 0x32, 0x3, 0x32, 0x3, 0x32, 0x3, 0x32, 0x3,
0x32, 0x3, 0x32, 0x3, 0x32, 0x3, 0x33, 0x3, 0x33, 0x3, 0x33, 0x3,
0x33, 0x3, 0x34, 0x3, 0x34, 0x3, 0x34, 0x3, 0x34, 0x3, 0x34, 0x3,
0x34, 0x3, 0x34, 0x3, 0x34, 0x3, 0x34, 0x3, 0x34, 0x3, 0x35, 0x3,
0x35, 0x3, 0x35, 0x3, 0x35, 0x3, 0x35, 0x3, 0x36, 0x3, 0x36, 0x3,
0x36, 0x3, 0x36, 0x3, 0x36, 0x3, 0x36, 0x3, 0x36, 0x3, 0x37, 0x3,
0x37, 0x3, 0x37, 0x3, 0x37, 0x3, 0x37, 0x3, 0x38, 0x3, 0x38, 0x3,
0x38, 0x3, 0x38, 0x3, 0x38, 0x3, 0x38, 0x3, 0x38, 0x3, 0x38, 0x3,
0x38, 0x3, 0x38, 0x3, 0x38, 0x3, 0x38, 0x3, 0x39, 0x3, 0x39, 0x3,
0x39, 0x3, 0x39, 0x3, 0x39, 0x3, 0x39, 0x3, 0x39, 0x3, 0x39, 0x3,
0x3a, 0x3, 0x3a, 0x3, 0x3a, 0x3, 0x3a, 0x3, 0x3b, 0x3, 0x3b, 0x3,
0x3b, 0x3, 0x3b, 0x3, 0x3b, 0x3, 0x3c, 0x3, 0x3c, 0x3, 0x3c, 0x3,
0x3c, 0x3, 0x3c, 0x3, 0x3c, 0x3, 0x3c, 0x3, 0x3d, 0x3, 0x3d, 0x3,
0x3d, 0x3, 0x3d, 0x3, 0x3e, 0x3, 0x3e, 0x3, 0x3e, 0x3, 0x3e, 0x3,
0x3e, 0x3, 0x3e, 0x3, 0x3e, 0x3, 0x3e, 0x3, 0x3f, 0x3, 0x3f, 0x3,
0x3f, 0x3, 0x3f, 0x3, 0x40, 0x3, 0x40, 0x3, 0x40, 0x3, 0x40, 0x3,
0x40, 0x3, 0x40, 0x3, 0x40, 0x3, 0x40, 0x3, 0x40, 0x3, 0x41, 0x3,
0x41, 0x3, 0x41, 0x3, 0x41, 0x3, 0x42, 0x3, 0x42, 0x3, 0x42, 0x3,
0x42, 0x3, 0x42, 0x3, 0x42, 0x3, 0x42, 0x3, 0x42, 0x3, 0x43, 0x3,
0x43, 0x3, 0x43, 0x3, 0x43, 0x3, 0x43, 0x3, 0x43, 0x3, 0x43, 0x3,
0x43, 0x3, 0x44, 0x3, 0x44, 0x3, 0x44, 0x3, 0x44, 0x3, 0x44, 0x3,
0x44, 0x3, 0x44, 0x3, 0x44, 0x3, 0x44, 0x3, 0x44, 0x3, 0x44, 0x3,
0x45, 0x3, 0x45, 0x3, 0x45, 0x3, 0x45, 0x3, 0x45, 0x3, 0x45, 0x3,
0x46, 0x3, 0x46, 0x3, 0x46, 0x3, 0x46, 0x3, 0x46, 0x3, 0x46, 0x3,
0x46, 0x3, 0x46, 0x3, 0x46, 0x3, 0x46, 0x3, 0x46, 0x3, 0x47, 0x3,
0x47, 0x3, 0x47, 0x3, 0x47, 0x3, 0x47, 0x3, 0x47, 0x3, 0x47, 0x3,
0x47, 0x3, 0x48, 0x3, 0x48, 0x3, 0x48, 0x3, 0x48, 0x3, 0x48, 0x3,
0x49, 0x3, 0x49, 0x3, 0x49, 0x3, 0x49, 0x3, 0x4a, 0x3, 0x4a, 0x3,
0x4a, 0x3, 0x4a, 0x3, 0x4b, 0x3, 0x4b, 0x3, 0x4b, 0x3, 0x4b, 0x3,
0x4b, 0x3, 0x4b, 0x3, 0x4c, 0x3, 0x4c, 0x3, 0x4c, 0x3, 0x4c, 0x3,
0x4c, 0x3, 0x4c, 0x3, 0x4c, 0x3, 0x4c, 0x3, 0x4d, 0x3, 0x4d, 0x3,
0x4d, 0x3, 0x4d, 0x3, 0x4d, 0x3, 0x4e, 0x3, 0x4e, 0x3, 0x4e, 0x3,
0x4e, 0x3, 0x4e, 0x3, 0x4f, 0x3, 0x4f, 0x3, 0x4f, 0x3, 0x4f, 0x3,
0x4f, 0x3, 0x4f, 0x3, 0x4f, 0x3, 0x4f, 0x3, 0x50, 0x3, 0x50, 0x3,
0x50, 0x3, 0x50, 0x3, 0x50, 0x3, 0x50, 0x3, 0x50, 0x3, 0x51, 0x3,
0x51, 0x3, 0x51, 0x3, 0x51, 0x3, 0x51, 0x3, 0x52, 0x3, 0x52, 0x3,
0x52, 0x3, 0x52, 0x3, 0x53, 0x3, 0x53, 0x3, 0x53, 0x3, 0x53, 0x3,
0x53, 0x3, 0x53, 0x3, 0x53, 0x3, 0x54, 0x3, 0x54, 0x3, 0x54, 0x3,
0x54, 0x3, 0x54, 0x3, 0x54, 0x3, 0x55, 0x3, 0x55, 0x3, 0x55, 0x3,
0x55, 0x3, 0x55, 0x3, 0x55, 0x3, 0x55, 0x3, 0x56, 0x3, 0x56, 0x3,
0x56, 0x3, 0x56, 0x3, 0x57, 0x3, 0x57, 0x3, 0x57, 0x3, 0x58, 0x3,
0x58, 0x3, 0x58, 0x3, 0x58, 0x3, 0x59, 0x3, 0x59, 0x3, 0x59, 0x3,
0x59, 0x3, 0x59, 0x3, 0x59, 0x3, 0x59, 0x3, 0x5a, 0x3, 0x5a, 0x3,
0x5a, 0x3, 0x5a, 0x3, 0x5a, 0x3, 0x5a, 0x3, 0x5a, 0x3, 0x5b, 0x3,
0x5b, 0x3, 0x5b, 0x3, 0x5b, 0x3, 0x5b, 0x3, 0x5b, 0x3, 0x5b, 0x3,
0x5b, 0x3, 0x5b, 0x3, 0x5b, 0x3, 0x5b, 0x3, 0x5b, 0x3, 0x5b, 0x3,
0x5b, 0x3, 0x5c, 0x3, 0x5c, 0x3, 0x5c, 0x3, 0x5c, 0x3, 0x5c, 0x3,
0x5c, 0x3, 0x5c, 0x3, 0x5c, 0x3, 0x5c, 0x3, 0x5c, 0x3, 0x5c, 0x3,
0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3,
0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3,
0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3, 0x5d, 0x3,
0x5e, 0x3, 0x5e, 0x3, 0x5e, 0x3, 0x5e, 0x3, 0x5e, 0x3, 0x5e, 0x3,
0x5e, 0x3, 0x5e, 0x3, 0x5e, 0x3, 0x5e, 0x3, 0x5e, 0x3, 0x5e, 0x3,
0x5e, 0x3, 0x5e, 0x3, 0x5f, 0x3, 0x5f, 0x3, 0x5f, 0x3, 0x5f, 0x3,
0x5f, 0x3, 0x5f, 0x3, 0x5f, 0x3, 0x5f, 0x3, 0x5f, 0x3, 0x5f, 0x3,
0x60, 0x3, 0x60, 0x3, 0x60, 0x3, 0x60, 0x3, 0x60, 0x3, 0x60, 0x3,
0x60, 0x3, 0x60, 0x3, 0x60, 0x3, 0x60, 0x3, 0x60, 0x3, 0x60, 0x3,
0x60, 0x3, 0x60, 0x3, 0x61, 0x3, 0x61, 0x3, 0x61, 0x3, 0x61, 0x3,
0x61, 0x3, 0x61, 0x3, 0x61, 0x3, 0x61, 0x3, 0x61, 0x3, 0x61, 0x3,
0x61, 0x3, 0x61, 0x3, 0x61, 0x3, 0x61, 0x3, 0x61, 0x3, 0x61, 0x3,
0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3,
0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3,
0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3, 0x62, 0x3,
0x62, 0x3, 0x63, 0x3, 0x63, 0x3, 0x63, 0x3, 0x63, 0x3, 0x63, 0x3,
0x63, 0x3, 0x63, 0x3, 0x63, 0x3, 0x63, 0x3, 0x63, 0x3, 0x63, 0x3,
0x63, 0x3, 0x63, 0x3, 0x63, 0x3, 0x64, 0x3, 0x64, 0x3, 0x64, 0x3,
0x64, 0x3, 0x64, 0x3, 0x64, 0x3, 0x64, 0x3, 0x64, 0x3, 0x64, 0x3,
0x64, 0x3, 0x64, 0x3, 0x64, 0x3, 0x64, 0x3, 0x64, 0x3, 0x64, 0x3,
0x64, 0x3, 0x64, 0x3, 0x64, 0x3, 0x65, 0x3, 0x65, 0x3, 0x65, 0x3,
0x65, 0x3, 0x65, 0x3, 0x65, 0x3, 0x65, 0x3, 0x65, 0x3, 0x65, 0x3,
0x65, 0x3, 0x65, 0x3, 0x65, 0x3, 0x65, 0x3, 0x65, 0x3, 0x65, 0x3,
0x66, 0x3, 0x66, 0x3, 0x66, 0x3, 0x66, 0x3, 0x66, 0x3, 0x66, 0x3,
0x66, 0x3, 0x66, 0x3, 0x66, 0x3, 0x66, 0x3, 0x66, 0x3, 0x66, 0x3,
0x66, 0x3, 0x66, 0x3, 0x66, 0x3, 0x67, 0x3, 0x67, 0x3, 0x67, 0x3,
0x67, 0x3, 0x67, 0x3, 0x67, 0x3, 0x67, 0x3, 0x67, 0x3, 0x67, 0x3,
0x67, 0x3, 0x67, 0x3, 0x67, 0x3, 0x68, 0x3, 0x68, 0x3, 0x68, 0x3,
0x68, 0x3, 0x68, 0x3, 0x68, 0x3, 0x68, 0x3, 0x68, 0x3, 0x68, 0x3,
0x69, 0x3, 0x69, 0x3, 0x69, 0x3, 0x69, 0x3, 0x69, 0x3, 0x69, 0x3,
0x69, 0x3, 0x69, 0x3, 0x69, 0x3, 0x69, 0x3, 0x69, 0x3, 0x69, 0x3,
0x6a, 0x3, 0x6a, 0x3, 0x6a, 0x3, 0x6a, 0x3, 0x6a, 0x3, 0x6a, 0x3,
0x6a, 0x3, 0x6a, 0x3, 0x6a, 0x3, 0x6a, 0x3, 0x6a, 0x3, 0x6a, 0x3,
0x6b, 0x3, 0x6b, 0x3, 0x6b, 0x3, 0x6b, 0x3, 0x6b, 0x3, 0x6b, 0x3,
0x6b, 0x3, 0x6b, 0x3, 0x6b, 0x3, 0x6b, 0x3, 0x6b, 0x3, 0x6c, 0x3,
0x6c, 0x3, 0x6c, 0x3, 0x6c, 0x3, 0x6c, 0x3, 0x6c, 0x3, 0x6c, 0x3,
0x6c, 0x3, 0x6c, 0x3, 0x6d, 0x3, 0x6d, 0x3, 0x6d, 0x3, 0x6d, 0x3,
0x6d, 0x3, 0x6d, 0x3, 0x6d, 0x3, 0x6d, 0x3, 0x6d, 0x3, 0x6d, 0x3,
0x6d, 0x3, 0x6d, 0x3, 0x6e, 0x3, 0x6e, 0x3, 0x6e, 0x3, 0x6e, 0x3,
0x6e, 0x3, 0x6e, 0x3, 0x6e, 0x3, 0x6e, 0x3, 0x6e, 0x3, 0x6e, 0x3,
0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3,
0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3,
0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3, 0x6f, 0x3,
0x70, 0x3, 0x70, 0x3, 0x70, 0x3, 0x70, 0x3, 0x70, 0x3, 0x70, 0x3,
0x70, 0x3, 0x70, 0x3, 0x71, 0x3, 0x71, 0x3, 0x71, 0x3, 0x71, 0x3,
0x71, 0x3, 0x71, 0x3, 0x71, 0x3, 0x71, 0x3, 0x71, 0x3, 0x71, 0x3,
0x71, 0x3, 0x71, 0x3, 0x71, 0x3, 0x71, 0x3, 0x71, 0x3, 0x71, 0x3,
0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3,
0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3,
0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3, 0x72, 0x3,
0x73, 0x3, 0x73, 0x3, 0x73, 0x3, 0x73, 0x3, 0x73, 0x3, 0x73, 0x3,
0x73, 0x3, 0x73, 0x3, 0x73, 0x3, 0x73, 0x3, 0x73, 0x3, 0x73, 0x3,
0x73, 0x3, 0x73, 0x3, 0x73, 0x3, 0x73, 0x3, 0x74, 0x3, 0x74, 0x3,
0x74, 0x3, 0x74, 0x3, 0x74, 0x3, 0x74, 0x3, 0x74, 0x3, 0x74, 0x3,
0x74, 0x3, 0x74, 0x3, 0x74, 0x3, 0x74, 0x3, 0x74, 0x3, 0x74, 0x3,
0x74, 0x3, 0x74, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3,
0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3,
0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3,
0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3, 0x75, 0x3,
0x75, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3,
0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3,
0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3,
0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3, 0x76, 0x3,
0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3,
0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3,
0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x77, 0x3,
0x77, 0x3, 0x77, 0x3, 0x77, 0x3, 0x78, 0x3, 0x78, 0x3, 0x78, 0x3,
0x78, 0x3, 0x78, 0x3, 0x78, 0x3, 0x78, 0x3, 0x78, 0x3, 0x78, 0x3,
0x78, 0x3, 0x78, 0x3, 0x78, 0x3, 0x78, 0x3, 0x78, 0x3, 0x78, 0x3,
0x78, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3,
0x79, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3,
0x79, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3, 0x79, 0x3,
0x79, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3,
0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3,
0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3, 0x7a, 0x3,
0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3,
0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3,
0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3, 0x7b, 0x3,
0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3,
0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3,
0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3, 0x7c, 0x3,
0x7c, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3,
0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3,
0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7d, 0x3, 0x7e, 0x3,
0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3,
0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3,
0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3, 0x7e, 0x3,
0x7f, 0x3, 0x7f, 0x3, 0x7f, 0x3, 0x7f, 0x3, 0x7f, 0x3, 0x7f, 0x3,
0x7f, 0x3, 0x7f, 0x3, 0x7f, 0x3, 0x7f, 0x3, 0x7f, 0x3, 0x7f, 0x3,
0x7f, 0x3, 0x80, 0x3, 0x80, 0x3, 0x80, 0x3, 0x80, 0x3, 0x80, 0x3,
0x80, 0x3, 0x80, 0x3, 0x80, 0x3, 0x80, 0x3, 0x80, 0x3, 0x80, 0x3,
0x80, 0x3, 0x80, 0x3, 0x80, 0x3, 0x80, 0x3, 0x81, 0x3, 0x81, 0x3,
0x81, 0x3, 0x81, 0x3, 0x81, 0x3, 0x81, 0x3, 0x81, 0x3, 0x81, 0x3,
0x81, 0x3, 0x81, 0x3, 0x81, 0x3, 0x81, 0x3, 0x81, 0x3, 0x82, 0x3,
0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3,
0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3,
0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3, 0x82, 0x3,
0x82, 0x3, 0x83, 0x3, 0x83, 0x3, 0x83, 0x3, 0x83, 0x3, 0x83, 0x3,
0x83, 0x3, 0x83, 0x3, 0x83, 0x3, 0x83, 0x3, 0x83, 0x3, 0x83, 0x3,
0x83, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3,
0x84, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3,
0x84, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3, 0x84, 0x3,
0x85, 0x3, 0x85, 0x3, 0x85, 0x3, 0x85, 0x3, 0x85, 0x3, 0x85, 0x3,
0x85, 0x3, 0x85, 0x3, 0x85, 0x3, 0x86, 0x3, 0x86, 0x3, 0x86, 0x3,
0x86, 0x3, 0x86, 0x3, 0x86, 0x3, 0x86, 0x3, 0x86, 0x3, 0x86, 0x3,
0x86, 0x3, 0x86, 0x3, 0x86, 0x3, 0x87, 0x3, 0x87, 0x3, 0x87, 0x3,
0x87, 0x3, 0x87, 0x3, 0x87, 0x3, 0x87, 0x3, 0x87, 0x3, 0x87, 0x3,
0x87, 0x3, 0x88, 0x3, 0x88, 0x3, 0x88, 0x3, 0x88, 0x3, 0x88, 0x3,
0x88, 0x3, 0x88, 0x3, 0x88, 0x3, 0x88, 0x3, 0x88, 0x3, 0x88, 0x3,
0x89, 0x3, 0x89, 0x3, 0x89, 0x3, 0x89, 0x3, 0x89, 0x3, 0x89, 0x3,
0x89, 0x3, 0x89, 0x3, 0x89, 0x3, 0x89, 0x3, 0x89, 0x3, 0x89, 0x3,
0x89, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3,
0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3,
0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3, 0x8a, 0x3,
0x8a, 0x3, 0x8a, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3,
0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3,
0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3,
0x8b, 0x3, 0x8b, 0x3, 0x8b, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3,
0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3,
0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3,
0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3, 0x8c, 0x3,
0x8c, 0x3, 0x8d, 0x3, 0x8d, 0x3, 0x8d, 0x3, 0x8d, 0x3, 0x8d, 0x3,
0x8d, 0x3, 0x8d, 0x3, 0x8d, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3,
0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3,
0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3,
0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8e, 0x3, 0x8f, 0x3, 0x8f, 0x3,
0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3,
0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3,
0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3,
0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3, 0x8f, 0x3,
0x90, 0x3, 0x90, 0x3, 0x90, 0x3, 0x90, 0x3, 0x90, 0x3, 0x90, 0x3,
0x90, 0x3, 0x90, 0x3, 0x90, 0x3, 0x90, 0x3, 0x90, 0x3, 0x90, 0x3,
0x90, 0x3, 0x90, 0x3, 0x90, 0x3, 0x91, 0x3, 0x91, 0x3, 0x91, 0x3,
0x91, 0x3, 0x91, 0x3, 0x91, 0x3, 0x91, 0x3, 0x91, 0x3, 0x91, 0x3,
0x91, 0x3, 0x91, 0x3, 0x91, 0x3, 0x91, 0x3, 0x91, 0x3, 0x92, 0x3,
0x92, 0x3, 0x92, 0x3, 0x92, 0x3, 0x92, 0x3, 0x92, 0x3, 0x92, 0x3,
0x92, 0x3, 0x92, 0x3, 0x92, 0x3, 0x92, 0x3, 0x92, 0x3, 0x93, 0x3,
0x93, 0x3, 0x93, 0x3, 0x93, 0x3, 0x93, 0x3, 0x93, 0x3, 0x93, 0x3,
0x93, 0x3, 0x93, 0x3, 0x93, 0x3, 0x93, 0x3, 0x93, 0x3, 0x93, 0x3,
0x93, 0x3, 0x94, 0x3, 0x94, 0x3, 0x94, 0x3, 0x94, 0x3, 0x94, 0x3,
0x94, 0x3, 0x94, 0x3, 0x94, 0x3, 0x94, 0x3, 0x94, 0x3, 0x94, 0x3,
0x94, 0x3, 0x94, 0x3, 0x94, 0x3, 0x95, 0x3, 0x95, 0x3, 0x95, 0x3,
0x95, 0x3, 0x95, 0x3, 0x95, 0x3, 0x95, 0x3, 0x95, 0x3, 0x95, 0x3,
0x95, 0x3, 0x95, 0x3, 0x95, 0x3, 0x95, 0x3, 0x95, 0x3, 0x95, 0x3,
0x96, 0x3, 0x96, 0x3, 0x96, 0x3, 0x96, 0x3, 0x96, 0x3, 0x96, 0x3,
0x96, 0x3, 0x96, 0x3, 0x96, 0x3, 0x96, 0x3, 0x96, 0x3, 0x96, 0x3,
0x96, 0x3, 0x97, 0x3, 0x97, 0x3, 0x97, 0x3, 0x97, 0x3, 0x97, 0x3,
0x97, 0x3, 0x97, 0x3, 0x97, 0x3, 0x97, 0x3, 0x97, 0x3, 0x97, 0x3,
0x97, 0x3, 0x97, 0x3, 0x97, 0x3, 0x97, 0x3, 0x97, 0x3, 0x98, 0x3,
0x98, 0x3, 0x98, 0x3, 0x98, 0x3, 0x98, 0x3, 0x98, 0x3, 0x99, 0x3,
0x99, 0x3, 0x99, 0x3, 0x99, 0x3, 0x9a, 0x3, 0x9a, 0x3, 0x9a, 0x3,
0x9a, 0x3, 0x9a, 0x3, 0x9a, 0x3, 0x9a, 0x3, 0x9b, 0x3, 0x9b, 0x3,
0x9b, 0x3, 0x9b, 0x3, 0x9b, 0x3, 0x9b, 0x3, 0x9c, 0x3, 0x9c, 0x3,
0x9c, 0x3, 0x9c, 0x3, 0x9c, 0x3, 0x9d, 0x3, 0x9d, 0x3, 0x9d, 0x3,
0x9d, 0x3, 0x9d, 0x3, 0x9d, 0x3, 0x9d, 0x3, 0x9e, 0x3, 0x9e, 0x3,
0x9e, 0x3, 0x9f, 0x3, 0x9f, 0x3, 0x9f, 0x3, 0x9f, 0x3, 0x9f, 0x3,
0x9f, 0x3, 0x9f, 0x3, 0xa0, 0x3, 0xa0, 0x3, 0xa0, 0x3, 0xa0, 0x3,
0xa0, 0x3, 0xa0, 0x3, 0xa0, 0x3, 0xa0, 0x3, 0xa0, 0x3, 0xa1, 0x3,
0xa1, 0x3, 0xa1, 0x3, 0xa1, 0x3, 0xa1, 0x3, 0xa1, 0x3, 0xa1, 0x3,
0xa2, 0x3, 0xa2, 0x3, 0xa2, 0x3, 0xa3, 0x3, 0xa3, 0x3, 0xa3, 0x3,
0xa3, 0x3, 0xa3, 0x3, 0xa4, 0x3, 0xa4, 0x3, 0xa4, 0x3, 0xa4, 0x3,
0xa4, 0x3, 0xa5, 0x3, 0xa5, 0x3, 0xa5, 0x3, 0xa5, 0x3, 0xa5, 0x3,
0xa5, 0x3, 0xa6, 0x3, 0xa6, 0x3, 0xa6, 0x3, 0xa6, 0x3, 0xa7, 0x3,
0xa7, 0x3, 0xa7, 0x3, 0xa8, 0x3, 0xa8, 0x3, 0xa8, 0x3, 0xa8, 0x3,
0xa9, 0x3, 0xa9, 0x3, 0xa9, 0x3, 0xa9, 0x3, 0xa9, 0x3, 0xa9, 0x3,
0xa9, 0x3, 0xa9, 0x3, 0xaa, 0x3, 0xaa, 0x3, 0xaa, 0x3, 0xaa, 0x3,
0xaa, 0x3, 0xab, 0x3, 0xab, 0x3, 0xab, 0x3, 0xab, 0x3, 0xab, 0x3,
0xab, 0x3, 0xab, 0x3, 0xac, 0x3, 0xac, 0x3, 0xac, 0x3, 0xac, 0x3,
0xac, 0x3, 0xac, 0x3, 0xac, 0x3, 0xad, 0x3, 0xad, 0x3, 0xad, 0x3,
0xae, 0x3, 0xae, 0x3, 0xae, 0x3, 0xae, 0x3, 0xaf, 0x3, 0xaf, 0x3,
0xaf, 0x3, 0xaf, 0x3, 0xb0, 0x3, 0xb0, 0x3, 0xb0, 0x3, 0xb1, 0x3,
0xb1, 0x3, 0xb1, 0x3, 0xb1, 0x3, 0xb1, 0x3, 0xb2, 0x3, 0xb2, 0x3,
0xb2, 0x3, 0xb2, 0x3, 0xb2, 0x3, 0xb3, 0x3, 0xb3, 0x3, 0xb3, 0x3,
0xb3, 0x3, 0xb3, 0x3, 0xb3, 0x3, 0xb4, 0x3, 0xb4, 0x3, 0xb4, 0x3,
0xb4, 0x3, 0xb4, 0x3, 0xb4, 0x3, 0xb5, 0x3, 0xb5, 0x3, 0xb5, 0x3,
0xb5, 0x3, 0xb5, 0x3, 0xb5, 0x3, 0xb6, 0x3, 0xb6, 0x3, 0xb6, 0x3,
0xb6, 0x3, 0xb7, 0x3, 0xb7, 0x3, 0xb7, 0x3, 0xb7, 0x3, 0xb7, 0x3,
0xb8, 0x3, 0xb8, 0x3, 0xb8, 0x3, 0xb8, 0x3, 0xb8, 0x3, 0xb8, 0x3,
0xb8, 0x3, 0xb8, 0x3, 0xb8, 0x3, 0xb9, 0x3, 0xb9, 0x3, 0xb9, 0x3,
0xb9, 0x3, 0xb9, 0x3, 0xb9, 0x3, 0xba, 0x3, 0xba, 0x3, 0xba, 0x3,
0xba, 0x3, 0xba, 0x3, 0xba, 0x3, 0xbb, 0x3, 0xbb, 0x3, 0xbb, 0x3,
0xbb, 0x3, 0xbb, 0x3, 0xbb, 0x3, 0xbc, 0x3, 0xbc, 0x3, 0xbc, 0x5,
0xbc, 0x8b5, 0xa, 0xbc, 0x3, 0xbc, 0x3, 0xbc, 0x5, 0xbc, 0x8b9, 0xa,
0xbc, 0x3, 0xbc, 0x5, 0xbc, 0x8bc, 0xa, 0xbc, 0x5, 0xbc, 0x8be, 0xa,
0xbc, 0x3, 0xbc, 0x3, 0xbc, 0x3, 0xbd, 0x3, 0xbd, 0x7, 0xbd, 0x8c4,
0xa, 0xbd, 0xc, 0xbd, 0xe, 0xbd, 0x8c7, 0xb, 0xbd, 0x3, 0xbe, 0x3,
0xbe, 0x3, 0xbe, 0x3, 0xbe, 0x3, 0xbe, 0x5, 0xbe, 0x8ce, 0xa, 0xbe,
0x3, 0xbe, 0x3, 0xbe, 0x5, 0xbe, 0x8d2, 0xa, 0xbe, 0x3, 0xbf, 0x3,
0xbf, 0x3, 0xbf, 0x3, 0xbf, 0x3, 0xbf, 0x5, 0xbf, 0x8d9, 0xa, 0xbf,
0x3, 0xbf, 0x3, 0xbf, 0x3, 0xc0, 0x3, 0xc0, 0x3, 0xc0, 0x3, 0xc0,
0x3, 0xc0, 0x5, 0xc0, 0x8e2, 0xa, 0xc0, 0x3, 0xc0, 0x3, 0xc0, 0x3,
0xc1, 0x3, 0xc1, 0x3, 0xc1, 0x3, 0xc1, 0x3, 0xc1, 0x5, 0xc1, 0x8eb,
0xa, 0xc1, 0x3, 0xc1, 0x3, 0xc1, 0x5, 0xc1, 0x8ef, 0xa, 0xc1, 0x3,
0xc2, 0x3, 0xc2, 0x3, 0xc2, 0x3, 0xc2, 0x3, 0xc2, 0x5, 0xc2, 0x8f6,
0xa, 0xc2, 0x3, 0xc2, 0x3, 0xc2, 0x3, 0xc3, 0x3, 0xc3, 0x3, 0xc3,
0x3, 0xc3, 0x3, 0xc3, 0x5, 0xc3, 0x8ff, 0xa, 0xc3, 0x3, 0xc3, 0x3,
0xc3, 0x3, 0xc4, 0x3, 0xc4, 0x7, 0xc4, 0x905, 0xa, 0xc4, 0xc, 0xc4,
0xe, 0xc4, 0x908, 0xb, 0xc4, 0x3, 0xc4, 0x6, 0xc4, 0x90b, 0xa, 0xc4,
0xd, 0xc4, 0xe, 0xc4, 0x90c, 0x5, 0xc4, 0x90f, 0xa, 0xc4, 0x3, 0xc5,
0x3, 0xc5, 0x3, 0xc5, 0x6, 0xc5, 0x914, 0xa, 0xc5, 0xd, 0xc5, 0xe,
0xc5, 0x915, 0x3, 0xc6, 0x3, 0xc6, 0x3, 0xc6, 0x6, 0xc6, 0x91b, 0xa,
0xc6, 0xd, 0xc6, 0xe, 0xc6, 0x91c, 0x3, 0xc7, 0x3, 0xc7, 0x3, 0xc7,
0x6, 0xc7, 0x922, 0xa, 0xc7, 0xd, 0xc7, 0xe, 0xc7, 0x923, 0x3, 0xc8,
0x3, 0xc8, 0x5, 0xc8, 0x928, 0xa, 0xc8, 0x3, 0xc9, 0x3, 0xc9, 0x5,
0xc9, 0x92c, 0xa, 0xc9, 0x3, 0xc9, 0x3, 0xc9, 0x3, 0xca, 0x3, 0xca,
0x3, 0xcb, 0x3, 0xcb, 0x3, 0xcb, 0x3, 0xcb, 0x3, 0xcc, 0x3, 0xcc,
0x3, 0xcd, 0x3, 0xcd, 0x3, 0xcd, 0x3, 0xce, 0x3, 0xce, 0x3, 0xce,
0x3, 0xcf, 0x3, 0xcf, 0x3, 0xd0, 0x3, 0xd0, 0x3, 0xd1, 0x3, 0xd1,
0x3, 0xd2, 0x3, 0xd2, 0x3, 0xd2, 0x3, 0xd3, 0x3, 0xd3, 0x3, 0xd4,
0x3, 0xd4, 0x3, 0xd4, 0x3, 0xd5, 0x3, 0xd5, 0x3, 0xd5, 0x3, 0xd6,
0x3, 0xd6, 0x3, 0xd7, 0x3, 0xd7, 0x3, 0xd8, 0x3, 0xd8, 0x3, 0xd9,
0x3, 0xd9, 0x3, 0xd9, 0x3, 0xda, 0x3, 0xda, 0x3, 0xda, 0x3, 0xdb,
0x3, 0xdb, 0x3, 0xdc, 0x3, 0xdc, 0x3, 0xdd, 0x3, 0xdd, 0x3, 0xde,
0x3, 0xde, 0x3, 0xdf, 0x3, 0xdf, 0x3, 0xdf, 0x3, 0xe0, 0x3, 0xe0,
0x3, 0xe1, 0x3, 0xe1, 0x3, 0xe1, 0x3, 0xe2, 0x3, 0xe2, 0x3, 0xe2,
0x3, 0xe3, 0x3, 0xe3, 0x3, 0xe4, 0x3, 0xe4, 0x3, 0xe5, 0x3, 0xe5,
0x3, 0xe5, 0x3, 0xe6, 0x3, 0xe6, 0x3, 0xe6, 0x3, 0xe7, 0x3, 0xe7,
0x3, 0xe7, 0x3, 0xe8, 0x3, 0xe8, 0x3, 0xe8, 0x3, 0xe9, 0x3, 0xe9,
0x3, 0xe9, 0x3, 0xea, 0x3, 0xea, 0x3, 0xeb, 0x3, 0xeb, 0x3, 0xeb,
0x3, 0xec, 0x3, 0xec, 0x3, 0xec, 0x3, 0xed, 0x3, 0xed, 0x3, 0xed,
0x3, 0xee, 0x3, 0xee, 0x3, 0xee, 0x3, 0xef, 0x3, 0xef, 0x3, 0xef,
0x3, 0xf0, 0x3, 0xf0, 0x3, 0xf0, 0x3, 0xf1, 0x3, 0xf1, 0x3, 0xf1,
0x3, 0xf2, 0x3, 0xf2, 0x3, 0xf2, 0x3, 0xf3, 0x3, 0xf3, 0x3, 0xf3,
0x3, 0xf4, 0x3, 0xf4, 0x3, 0xf4, 0x3, 0xf5, 0x3, 0xf5, 0x3, 0xf5,
0x3, 0xf5, 0x3, 0xf6, 0x3, 0xf6, 0x3, 0xf6, 0x3, 0xf6, 0x3, 0xf7,
0x3, 0xf7, 0x3, 0xf7, 0x3, 0xf7, 0x3, 0xf8, 0x3, 0xf8, 0x3, 0xf8,
0x3, 0xf8, 0x3, 0xf9, 0x3, 0xf9, 0x5, 0xf9, 0x9b3, 0xa, 0xf9, 0x3,
0xf9, 0x3, 0xf9, 0x3, 0xfa, 0x3, 0xfa, 0x3, 0xfb, 0x3, 0xfb, 0x3,
0xfb, 0x7, 0xfb, 0x9bc, 0xa, 0xfb, 0xc, 0xfb, 0xe, 0xfb, 0x9bf, 0xb,
0xfb, 0x3, 0xfb, 0x3, 0xfb, 0x3, 0xfb, 0x3, 0xfb, 0x7, 0xfb, 0x9c5,
0xa, 0xfb, 0xc, 0xfb, 0xe, 0xfb, 0x9c8, 0xb, 0xfb, 0x3, 0xfb, 0x5,
0xfb, 0x9cb, 0xa, 0xfb, 0x3, 0xfc, 0x3, 0xfc, 0x3, 0xfc, 0x3, 0xfc,
0x3, 0xfc, 0x7, 0xfc, 0x9d2, 0xa, 0xfc, 0xc, 0xfc, 0xe, 0xfc, 0x9d5,
0xb, 0xfc, 0x3, 0xfc, 0x3, 0xfc, 0x3, 0xfc, 0x3, 0xfc, 0x3, 0xfc,
0x3, 0xfc, 0x3, 0xfc, 0x3, 0xfc, 0x7, 0xfc, 0x9df, 0xa, 0xfc, 0xc,
0xfc, 0xe, 0xfc, 0x9e2, 0xb, 0xfc, 0x3, 0xfc, 0x3, 0xfc, 0x3, 0xfc,
0x5, 0xfc, 0x9e7, 0xa, 0xfc, 0x3, 0xfd, 0x3, 0xfd, 0x5, 0xfd, 0x9eb,
0xa, 0xfd, 0x3, 0xfe, 0x3, 0xfe, 0x3, 0xff, 0x3, 0xff, 0x3, 0xff,
0x3, 0xff, 0x5, 0xff, 0x9f3, 0xa, 0xff, 0x3, 0x100, 0x3, 0x100, 0x3,
0x101, 0x3, 0x101, 0x3, 0x102, 0x3, 0x102, 0x3, 0x103, 0x3, 0x103,
0x3, 0x104, 0x3, 0x104, 0x3, 0x105, 0x5, 0x105, 0xa00, 0xa, 0x105,
0x3, 0x105, 0x3, 0x105, 0x3, 0x105, 0x3, 0x105, 0x5, 0x105, 0xa06,
0xa, 0x105, 0x3, 0x106, 0x3, 0x106, 0x5, 0x106, 0xa0a, 0xa, 0x106,
0x3, 0x106, 0x3, 0x106, 0x3, 0x107, 0x6, 0x107, 0xa0f, 0xa, 0x107,
0xd, 0x107, 0xe, 0x107, 0xa10, 0x3, 0x108, 0x3, 0x108, 0x6, 0x108,
0xa15, 0xa, 0x108, 0xd, 0x108, 0xe, 0x108, 0xa16, 0x3, 0x109, 0x3,
0x109, 0x5, 0x109, 0xa1b, 0xa, 0x109, 0x3, 0x109, 0x6, 0x109, 0xa1e,
0xa, 0x109, 0xd, 0x109, 0xe, 0x109, 0xa1f, 0x3, 0x10a, 0x3, 0x10a,
0x3, 0x10a, 0x7, 0x10a, 0xa25, 0xa, 0x10a, 0xc, 0x10a, 0xe, 0x10a,
0xa28, 0xb, 0x10a, 0x3, 0x10a, 0x3, 0x10a, 0x3, 0x10a, 0x3, 0x10a,
0x7, 0x10a, 0xa2e, 0xa, 0x10a, 0xc, 0x10a, 0xe, 0x10a, 0xa31, 0xb,
0x10a, 0x3, 0x10a, 0x5, 0x10a, 0xa34, 0xa, 0x10a, 0x3, 0x10b, 0x3,
0x10b, 0x3, 0x10b, 0x3, 0x10b, 0x3, 0x10b, 0x7, 0x10b, 0xa3b, 0xa,
0x10b, 0xc, 0x10b, 0xe, 0x10b, 0xa3e, 0xb, 0x10b, 0x3, 0x10b, 0x3,
0x10b, 0x3, 0x10b, 0x3, 0x10b, 0x3, 0x10b, 0x3, 0x10b, 0x3, 0x10b,
0x3, 0x10b, 0x7, 0x10b, 0xa48, 0xa, 0x10b, 0xc, 0x10b, 0xe, 0x10b,
0xa4b, 0xb, 0x10b, 0x3, 0x10b, 0x3, 0x10b, 0x3, 0x10b, 0x5, 0x10b,
0xa50, 0xa, 0x10b, 0x3, 0x10c, 0x3, 0x10c, 0x5, 0x10c, 0xa54, 0xa,
0x10c, 0x3, 0x10d, 0x5, 0x10d, 0xa57, 0xa, 0x10d, 0x3, 0x10e, 0x5,
0x10e, 0xa5a, 0xa, 0x10e, 0x3, 0x10f, 0x5, 0x10f, 0xa5d, 0xa, 0x10f,
0x3, 0x110, 0x3, 0x110, 0x3, 0x110, 0x3, 0x111, 0x6, 0x111, 0xa63,
0xa, 0x111, 0xd, 0x111, 0xe, 0x111, 0xa64, 0x3, 0x112, 0x3, 0x112,
0x7, 0x112, 0xa69, 0xa, 0x112, 0xc, 0x112, 0xe, 0x112, 0xa6c, 0xb,
0x112, 0x3, 0x113, 0x3, 0x113, 0x5, 0x113, 0xa70, 0xa, 0x113, 0x3,
0x113, 0x5, 0x113, 0xa73, 0xa, 0x113, 0x3, 0x113, 0x3, 0x113, 0x5,
0x113, 0xa77, 0xa, 0x113, 0x3, 0x114, 0x5, 0x114, 0xa7a, 0xa, 0x114,
0x3, 0x115, 0x3, 0x115, 0x5, 0x115, 0xa7e, 0xa, 0x115, 0x6, 0x9d3,
0x9e0, 0xa3c, 0xa49, 0x2, 0x116, 0x3, 0x3, 0x5, 0x4, 0x7, 0x5, 0x9,
0x6, 0xb, 0x7, 0xd, 0x8, 0xf, 0x9, 0x11, 0xa, 0x13, 0xb, 0x15, 0xc,
0x17, 0xd, 0x19, 0xe, 0x1b, 0xf, 0x1d, 0x10, 0x1f, 0x11, 0x21, 0x12,
0x23, 0x13, 0x25, 0x14, 0x27, 0x15, 0x29, 0x16, 0x2b, 0x17, 0x2d,
0x18, 0x2f, 0x19, 0x31, 0x1a, 0x33, 0x1b, 0x35, 0x1c, 0x37, 0x1d,
0x39, 0x1e, 0x3b, 0x1f, 0x3d, 0x20, 0x3f, 0x21, 0x41, 0x22, 0x43,
0x23, 0x45, 0x24, 0x47, 0x25, 0x49, 0x26, 0x4b, 0x27, 0x4d, 0x28,
0x4f, 0x29, 0x51, 0x2a, 0x53, 0x2b, 0x55, 0x2c, 0x57, 0x2d, 0x59,
0x2e, 0x5b, 0x2f, 0x5d, 0x30, 0x5f, 0x31, 0x61, 0x32, 0x63, 0x33,
0x65, 0x34, 0x67, 0x35, 0x69, 0x36, 0x6b, 0x37, 0x6d, 0x38, 0x6f,
0x39, 0x71, 0x3a, 0x73, 0x3b, 0x75, 0x3c, 0x77, 0x3d, 0x79, 0x3e,
0x7b, 0x3f, 0x7d, 0x40, 0x7f, 0x41, 0x81, 0x42, 0x83, 0x43, 0x85,
0x44, 0x87, 0x45, 0x89, 0x46, 0x8b, 0x47, 0x8d, 0x48, 0x8f, 0x49,
0x91, 0x4a, 0x93, 0x4b, 0x95, 0x4c, 0x97, 0x4d, 0x99, 0x4e, 0x9b,
0x4f, 0x9d, 0x50, 0x9f, 0x51, 0xa1, 0x52, 0xa3, 0x53, 0xa5, 0x54,
0xa7, 0x55, 0xa9, 0x56, 0xab, 0x57, 0xad, 0x58, 0xaf, 0x59, 0xb1,
0x5a, 0xb3, 0x5b, 0xb5, 0x5c, 0xb7, 0x5d, 0xb9, 0x5e, 0xbb, 0x5f,
0xbd, 0x60, 0xbf, 0x61, 0xc1, 0x62, 0xc3, 0x63, 0xc5, 0x64, 0xc7,
0x65, 0xc9, 0x66, 0xcb, 0x67, 0xcd, 0x68, 0xcf, 0x69, 0xd1, 0x6a,
0xd3, 0x6b, 0xd5, 0x6c, 0xd7, 0x6d, 0xd9, 0x6e, 0xdb, 0x6f, 0xdd,
0x70, 0xdf, 0x71, 0xe1, 0x72, 0xe3, 0x73, 0xe5, 0x74, 0xe7, 0x75,
0xe9, 0x76, 0xeb, 0x77, 0xed, 0x78, 0xef, 0x79, 0xf1, 0x7a, 0xf3,
0x7b, 0xf5, 0x7c, 0xf7, 0x7d, 0xf9, 0x7e, 0xfb, 0x7f, 0xfd, 0x80,
0xff, 0x81, 0x101, 0x82, 0x103, 0x83, 0x105, 0x84, 0x107, 0x85, 0x109,
0x86, 0x10b, 0x87, 0x10d, 0x88, 0x10f, 0x89, 0x111, 0x8a, 0x113,
0x8b, 0x115, 0x8c, 0x117, 0x8d, 0x119, 0x8e, 0x11b, 0x8f, 0x11d,
0x90, 0x11f, 0x91, 0x121, 0x92, 0x123, 0x93, 0x125, 0x94, 0x127,
0x95, 0x129, 0x96, 0x12b, 0x97, 0x12d, 0x98, 0x12f, 0x99, 0x131,
0x9a, 0x133, 0x9b, 0x135, 0x9c, 0x137, 0x9d, 0x139, 0x9e, 0x13b,
0x9f, 0x13d, 0xa0, 0x13f, 0xa1, 0x141, 0xa2, 0x143, 0xa3, 0x145,
0xa4, 0x147, 0xa5, 0x149, 0xa6, 0x14b, 0xa7, 0x14d, 0xa8, 0x14f,
0xa9, 0x151, 0xaa, 0x153, 0xab, 0x155, 0xac, 0x157, 0xad, 0x159,
0xae, 0x15b, 0xaf, 0x15d, 0xb0, 0x15f, 0xb1, 0x161, 0xb2, 0x163,
0xb3, 0x165, 0xb4, 0x167, 0xb5, 0x169, 0xb6, 0x16b, 0xb7, 0x16d,
0xb8, 0x16f, 0xb9, 0x171, 0xba, 0x173, 0xbb, 0x175, 0xbc, 0x177,
0xbd, 0x179, 0xbe, 0x17b, 0xbf, 0x17d, 0xc0, 0x17f, 0xc1, 0x181,
0xc2, 0x183, 0xc3, 0x185, 0xc4, 0x187, 0xc5, 0x189, 0xc6, 0x18b,
0xc7, 0x18d, 0xc8, 0x18f, 0xc9, 0x191, 0xca, 0x193, 0xcb, 0x195,
0xcc, 0x197, 0xcd, 0x199, 0xce, 0x19b, 0xcf, 0x19d, 0xd0, 0x19f,
0xd1, 0x1a1, 0xd2, 0x1a3, 0xd3, 0x1a5, 0xd4, 0x1a7, 0xd5, 0x1a9,
0xd6, 0x1ab, 0xd7, 0x1ad, 0xd8, 0x1af, 0xd9, 0x1b1, 0xda, 0x1b3,
0xdb, 0x1b5, 0xdc, 0x1b7, 0xdd, 0x1b9, 0xde, 0x1bb, 0xdf, 0x1bd,
0xe0, 0x1bf, 0xe1, 0x1c1, 0xe2, 0x1c3, 0xe3, 0x1c5, 0xe4, 0x1c7,
0xe5, 0x1c9, 0xe6, 0x1cb, 0xe7, 0x1cd, 0xe8, 0x1cf, 0xe9, 0x1d1,
0xea, 0x1d3, 0xeb, 0x1d5, 0xec, 0x1d7, 0xed, 0x1d9, 0xee, 0x1db,
0xef, 0x1dd, 0xf0, 0x1df, 0xf1, 0x1e1, 0xf2, 0x1e3, 0xf3, 0x1e5,
0xf4, 0x1e7, 0xf5, 0x1e9, 0xf6, 0x1eb, 0xf7, 0x1ed, 0xf8, 0x1ef,
0xf9, 0x1f1, 0xfa, 0x1f3, 0xfb, 0x1f5, 0x2, 0x1f7, 0x2, 0x1f9, 0x2,
0x1fb, 0x2, 0x1fd, 0x2, 0x1ff, 0x2, 0x201, 0x2, 0x203, 0x2, 0x205,
0x2, 0x207, 0x2, 0x209, 0x2, 0x20b, 0x2, 0x20d, 0x2, 0x20f, 0x2,
0x211, 0x2, 0x213, 0x2, 0x215, 0x2, 0x217, 0x2, 0x219, 0x2, 0x21b,
0x2, 0x21d, 0x2, 0x21f, 0x2, 0x221, 0x2, 0x223, 0x2, 0x225, 0x2,
0x227, 0x2, 0x229, 0x2, 0x3, 0x2, 0x1c, 0x4, 0x2, 0x26, 0x26, 0x41,
0x41, 0x8, 0x2, 0x48, 0x48, 0x54, 0x54, 0x57, 0x57, 0x68, 0x68, 0x74,
0x74, 0x77, 0x77, 0x4, 0x2, 0x48, 0x48, 0x68, 0x68, 0x4, 0x2, 0x54,
0x54, 0x74, 0x74, 0x4, 0x2, 0x44, 0x44, 0x64, 0x64, 0x4, 0x2, 0x51,
0x51, 0x71, 0x71, 0x4, 0x2, 0x5a, 0x5a, 0x7a, 0x7a, 0x4, 0x2, 0x4c,
0x4c, 0x6c, 0x6c, 0x6, 0x2, 0xc, 0xc, 0xe, 0xf, 0x29, 0x29, 0x5e,
0x5e, 0x6, 0x2, 0xc, 0xc, 0xe, 0xf, 0x24, 0x24, 0x5e, 0x5e, 0x3,
0x2, 0x5e, 0x5e, 0x3, 0x2, 0x33, 0x3b, 0x3, 0x2, 0x32, 0x3b, 0x3,
0x2, 0x32, 0x39, 0x5, 0x2, 0x32, 0x3b, 0x43, 0x48, 0x63, 0x68, 0x3,
0x2, 0x32, 0x33, 0x4, 0x2, 0x47, 0x47, 0x67, 0x67, 0x4, 0x2, 0x2d,
0x2d, 0x2f, 0x2f, 0x7, 0x2, 0x2, 0xb, 0xd, 0xe, 0x10, 0x28, 0x2a,
0x5d, 0x5f, 0x81, 0x7, 0x2, 0x2, 0xb, 0xd, 0xe, 0x10, 0x23, 0x25,
0x5d, 0x5f, 0x81, 0x4, 0x2, 0x2, 0x5d, 0x5f, 0x81, 0x3, 0x2, 0x2,
0x81, 0x4, 0x2, 0xb, 0xb, 0x22, 0x22, 0x4, 0x2, 0xc, 0xc, 0xe, 0xf,
0x129, 0x2, 0x43, 0x5c, 0x61, 0x61, 0x63, 0x7c, 0xac, 0xac, 0xb7,
0xb7, 0xbc, 0xbc, 0xc2, 0xd8, 0xda, 0xf8, 0xfa, 0x243, 0x252, 0x2c3,
0x2c8, 0x2d3, 0x2e2, 0x2e6, 0x2f0, 0x2f0, 0x37c, 0x37c, 0x388, 0x388,
0x38a, 0x38c, 0x38e, 0x38e, 0x390, 0x3a3, 0x3a5, 0x3d0, 0x3d2, 0x3f7,
0x3f9, 0x483, 0x48c, 0x4d0, 0x4d2, 0x4fb, 0x502, 0x511, 0x533, 0x558,
0x55b, 0x55b, 0x563, 0x589, 0x5d2, 0x5ec, 0x5f2, 0x5f4, 0x623, 0x63c,
0x642, 0x64c, 0x670, 0x671, 0x673, 0x6d5, 0x6d7, 0x6d7, 0x6e7, 0x6e8,
0x6f0, 0x6f1, 0x6fc, 0x6fe, 0x701, 0x701, 0x712, 0x712, 0x714, 0x731,
0x74f, 0x76f, 0x782, 0x7a7, 0x7b3, 0x7b3, 0x906, 0x93b, 0x93f, 0x93f,
0x952, 0x952, 0x95a, 0x963, 0x97f, 0x97f, 0x987, 0x98e, 0x991, 0x992,
0x995, 0x9aa, 0x9ac, 0x9b2, 0x9b4, 0x9b4, 0x9b8, 0x9bb, 0x9bf, 0x9bf,
0x9d0, 0x9d0, 0x9de, 0x9df, 0x9e1, 0x9e3, 0x9f2, 0x9f3, 0xa07, 0xa0c,
0xa11, 0xa12, 0xa15, 0xa2a, 0xa2c, 0xa32, 0xa34, 0xa35, 0xa37, 0xa38,
0xa3a, 0xa3b, 0xa5b, 0xa5e, 0xa60, 0xa60, 0xa74, 0xa76, 0xa87, 0xa8f,
0xa91, 0xa93, 0xa95, 0xaaa, 0xaac, 0xab2, 0xab4, 0xab5, 0xab7, 0xabb,
0xabf, 0xabf, 0xad2, 0xad2, 0xae2, 0xae3, 0xb07, 0xb0e, 0xb11, 0xb12,
0xb15, 0xb2a, 0xb2c, 0xb32, 0xb34, 0xb35, 0xb37, 0xb3b, 0xb3f, 0xb3f,
0xb5e, 0xb5f, 0xb61, 0xb63, 0xb73, 0xb73, 0xb85, 0xb85, 0xb87, 0xb8c,
0xb90, 0xb92, 0xb94, 0xb97, 0xb9b, 0xb9c, 0xb9e, 0xb9e, 0xba0, 0xba1,
0xba5, 0xba6, 0xbaa, 0xbac, 0xbb0, 0xbbb, 0xc07, 0xc0e, 0xc10, 0xc12,
0xc14, 0xc2a, 0xc2c, 0xc35, 0xc37, 0xc3b, 0xc62, 0xc63, 0xc87, 0xc8e,
0xc90, 0xc92, 0xc94, 0xcaa, 0xcac, 0xcb5, 0xcb7, 0xcbb, 0xcbf, 0xcbf,
0xce0, 0xce0, 0xce2, 0xce3, 0xd07, 0xd0e, 0xd10, 0xd12, 0xd14, 0xd2a,
0xd2c, 0xd3b, 0xd62, 0xd63, 0xd87, 0xd98, 0xd9c, 0xdb3, 0xdb5, 0xdbd,
0xdbf, 0xdbf, 0xdc2, 0xdc8, 0xe03, 0xe32, 0xe34, 0xe35, 0xe42, 0xe48,
0xe83, 0xe84, 0xe86, 0xe86, 0xe89, 0xe8a, 0xe8c, 0xe8c, 0xe8f, 0xe8f,
0xe96, 0xe99, 0xe9b, 0xea1, 0xea3, 0xea5, 0xea7, 0xea7, 0xea9, 0xea9,
0xeac, 0xead, 0xeaf, 0xeb2, 0xeb4, 0xeb5, 0xebf, 0xebf, 0xec2, 0xec6,
0xec8, 0xec8, 0xede, 0xedf, 0xf02, 0xf02, 0xf42, 0xf49, 0xf4b, 0xf6c,
0xf8a, 0xf8d, 0x1002, 0x1023, 0x1025, 0x1029, 0x102b, 0x102c, 0x1052,
0x1057, 0x10a2, 0x10c7, 0x10d2, 0x10fc, 0x10fe, 0x10fe, 0x1102, 0x115b,
0x1161, 0x11a4, 0x11aa, 0x11fb, 0x1202, 0x124a, 0x124c, 0x124f, 0x1252,
0x1258, 0x125a, 0x125a, 0x125c, 0x125f, 0x1262, 0x128a, 0x128c, 0x128f,
0x1292, 0x12b2, 0x12b4, 0x12b7, 0x12ba, 0x12c0, 0x12c2, 0x12c2, 0x12c4,
0x12c7, 0x12ca, 0x12d8, 0x12da, 0x1312, 0x1314, 0x1317, 0x131a, 0x135c,
0x1382, 0x1391, 0x13a2, 0x13f6, 0x1403, 0x166e, 0x1671, 0x1678, 0x1683,
0x169c, 0x16a2, 0x16ec, 0x16f0, 0x16f2, 0x1702, 0x170e, 0x1710, 0x1713,
0x1722, 0x1733, 0x1742, 0x1753, 0x1762, 0x176e, 0x1770, 0x1772, 0x1782,
0x17b5, 0x17d9, 0x17d9, 0x17de, 0x17de, 0x1822, 0x1879, 0x1882, 0x18aa,
0x1902, 0x191e, 0x1952, 0x196f, 0x1972, 0x1976, 0x1982, 0x19ab, 0x19c3,
0x19c9, 0x1a02, 0x1a18, 0x1d02, 0x1dc1, 0x1e02, 0x1e9d, 0x1ea2, 0x1efb,
0x1f02, 0x1f17, 0x1f1a, 0x1f1f, 0x1f22, 0x1f47, 0x1f4a, 0x1f4f, 0x1f52,
0x1f59, 0x1f5b, 0x1f5b, 0x1f5d, 0x1f5d, 0x1f5f, 0x1f5f, 0x1f61, 0x1f7f,
0x1f82, 0x1fb6, 0x1fb8, 0x1fbe, 0x1fc0, 0x1fc0, 0x1fc4, 0x1fc6, 0x1fc8,
0x1fce, 0x1fd2, 0x1fd5, 0x1fd8, 0x1fdd, 0x1fe2, 0x1fee, 0x1ff4, 0x1ff6,
0x1ff8, 0x1ffe, 0x2073, 0x2073, 0x2081, 0x2081, 0x2092, 0x2096, 0x2104,
0x2104, 0x2109, 0x2109, 0x210c, 0x2115, 0x2117, 0x2117, 0x211a, 0x211f,
0x2126, 0x2126, 0x2128, 0x2128, 0x212a, 0x212a, 0x212c, 0x2133, 0x2135,
0x213b, 0x213e, 0x2141, 0x2147, 0x214b, 0x2162, 0x2185, 0x2c02, 0x2c30,
0x2c32, 0x2c60, 0x2c82, 0x2ce6, 0x2d02, 0x2d27, 0x2d32, 0x2d67, 0x2d71,
0x2d71, 0x2d82, 0x2d98, 0x2da2, 0x2da8, 0x2daa, 0x2db0, 0x2db2, 0x2db8,
0x2dba, 0x2dc0, 0x2dc2, 0x2dc8, 0x2dca, 0x2dd0, 0x2dd2, 0x2dd8, 0x2dda,
0x2de0, 0x3007, 0x3009, 0x3023, 0x302b, 0x3033, 0x3037, 0x303a, 0x303e,
0x3043, 0x3098, 0x309d, 0x30a1, 0x30a3, 0x30fc, 0x30fe, 0x3101, 0x3107,
0x312e, 0x3133, 0x3190, 0x31a2, 0x31b9, 0x31f2, 0x3201, 0x3402, 0x4db7,
0x4e02, 0x9fbd, 0xa002, 0xa48e, 0xa802, 0xa803, 0xa805, 0xa807, 0xa809,
0xa80c, 0xa80e, 0xa824, 0xac02, 0xd7a5, 0xf902, 0xfa2f, 0xfa32, 0xfa6c,
0xfa72, 0xfadb, 0xfb02, 0xfb08, 0xfb15, 0xfb19, 0xfb1f, 0xfb1f, 0xfb21,
0xfb2a, 0xfb2c, 0xfb38, 0xfb3a, 0xfb3e, 0xfb40, 0xfb40, 0xfb42, 0xfb43,
0xfb45, 0xfb46, 0xfb48, 0xfbb3, 0xfbd5, 0xfd3f, 0xfd52, 0xfd91, 0xfd94,
0xfdc9, 0xfdf2, 0xfdfd, 0xfe72, 0xfe76, 0xfe78, 0xfefe, 0xff23, 0xff3c,
0xff43, 0xff5c, 0xff68, 0xffc0, 0xffc4, 0xffc9, 0xffcc, 0xffd1, 0xffd4,
0xffd9, 0xffdc, 0xffde, 0x96, 0x2, 0x32, 0x3b, 0x302, 0x371, 0x485,
0x488, 0x593, 0x5bb, 0x5bd, 0x5bf, 0x5c1, 0x5c1, 0x5c3, 0x5c4, 0x5c6,
0x5c7, 0x5c9, 0x5c9, 0x612, 0x617, 0x64d, 0x660, 0x662, 0x66b, 0x672,
0x672, 0x6d8, 0x6de, 0x6e1, 0x6e6, 0x6e9, 0x6ea, 0x6ec, 0x6ef, 0x6f2,
0x6fb, 0x713, 0x713, 0x732, 0x74c, 0x7a8, 0x7b2, 0x903, 0x905, 0x93e,
0x93e, 0x940, 0x94f, 0x953, 0x956, 0x964, 0x965, 0x968, 0x971, 0x983,
0x985, 0x9be, 0x9be, 0x9c0, 0x9c6, 0x9c9, 0x9ca, 0x9cd, 0x9cf, 0x9d9,
0x9d9, 0x9e4, 0x9e5, 0x9e8, 0x9f1, 0xa03, 0xa05, 0xa3e, 0xa3e, 0xa40,
0xa44, 0xa49, 0xa4a, 0xa4d, 0xa4f, 0xa68, 0xa73, 0xa83, 0xa85, 0xabe,
0xabe, 0xac0, 0xac7, 0xac9, 0xacb, 0xacd, 0xacf, 0xae4, 0xae5, 0xae8,
0xaf1, 0xb03, 0xb05, 0xb3e, 0xb3e, 0xb40, 0xb45, 0xb49, 0xb4a, 0xb4d,
0xb4f, 0xb58, 0xb59, 0xb68, 0xb71, 0xb84, 0xb84, 0xbc0, 0xbc4, 0xbc8,
0xbca, 0xbcc, 0xbcf, 0xbd9, 0xbd9, 0xbe8, 0xbf1, 0xc03, 0xc05, 0xc40,
0xc46, 0xc48, 0xc4a, 0xc4c, 0xc4f, 0xc57, 0xc58, 0xc68, 0xc71, 0xc84,
0xc85, 0xcbe, 0xcbe, 0xcc0, 0xcc6, 0xcc8, 0xcca, 0xccc, 0xccf, 0xcd7,
0xcd8, 0xce8, 0xcf1, 0xd04, 0xd05, 0xd40, 0xd45, 0xd48, 0xd4a, 0xd4c,
0xd4f, 0xd59, 0xd59, 0xd68, 0xd71, 0xd84, 0xd85, 0xdcc, 0xdcc, 0xdd1,
0xdd6, 0xdd8, 0xdd8, 0xdda, 0xde1, 0xdf4, 0xdf5, 0xe33, 0xe33, 0xe36,
0xe3c, 0xe49, 0xe50, 0xe52, 0xe5b, 0xeb3, 0xeb3, 0xeb6, 0xebb, 0xebd,
0xebe, 0xeca, 0xecf, 0xed2, 0xedb, 0xf1a, 0xf1b, 0xf22, 0xf2b, 0xf37,
0xf37, 0xf39, 0xf39, 0xf3b, 0xf3b, 0xf40, 0xf41, 0xf73, 0xf86, 0xf88,
0xf89, 0xf92, 0xf99, 0xf9b, 0xfbe, 0xfc8, 0xfc8, 0x102e, 0x1034,
0x1038, 0x103b, 0x1042, 0x104b, 0x1058, 0x105b, 0x1361, 0x1361, 0x136b,
0x1373, 0x1714, 0x1716, 0x1734, 0x1736, 0x1754, 0x1755, 0x1774, 0x1775,
0x17b8, 0x17d5, 0x17df, 0x17df, 0x17e2, 0x17eb, 0x180d, 0x180f, 0x1812,
0x181b, 0x18ab, 0x18ab, 0x1922, 0x192d, 0x1932, 0x193d, 0x1948, 0x1951,
0x19b2, 0x19c2, 0x19ca, 0x19cb, 0x19d2, 0x19db, 0x1a19, 0x1a1d, 0x1dc2,
0x1dc5, 0x2041, 0x2042, 0x2056, 0x2056, 0x20d2, 0x20de, 0x20e3, 0x20e3,
0x20e7, 0x20ed, 0x302c, 0x3031, 0x309b, 0x309c, 0xa804, 0xa804, 0xa808,
0xa808, 0xa80d, 0xa80d, 0xa825, 0xa829, 0xfb20, 0xfb20, 0xfe02, 0xfe11,
0xfe22, 0xfe25, 0xfe35, 0xfe36, 0xfe4f, 0xfe51, 0xff12, 0xff1b, 0xff41,
0xff41, 0x2, 0xaab, 0x2, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x5, 0x3,
0x2, 0x2, 0x2, 0x2, 0x7, 0x3, 0x2, 0x2, 0x2, 0x2, 0x9, 0x3, 0x2,
0x2, 0x2, 0x2, 0xb, 0x3, 0x2, 0x2, 0x2, 0x2, 0xd, 0x3, 0x2, 0x2,
0x2, 0x2, 0xf, 0x3, 0x2, 0x2, 0x2, 0x2, 0x11, 0x3, 0x2, 0x2, 0x2,
0x2, 0x13, 0x3, 0x2, 0x2, 0x2, 0x2, 0x15, 0x3, 0x2, 0x2, 0x2, 0x2,
0x17, 0x3, 0x2, 0x2, 0x2, 0x2, 0x19, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1b,
0x3, 0x2, 0x2, 0x2, 0x2, 0x1d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1f, 0x3,
0x2, 0x2, 0x2, 0x2, 0x21, 0x3, 0x2, 0x2, 0x2, 0x2, 0x23, 0x3, 0x2,
0x2, 0x2, 0x2, 0x25, 0x3, 0x2, 0x2, 0x2, 0x2, 0x27, 0x3, 0x2, 0x2,
0x2, 0x2, 0x29, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2b, 0x3, 0x2, 0x2, 0x2,
0x2, 0x2d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2f, 0x3, 0x2, 0x2, 0x2, 0x2,
0x31, 0x3, 0x2, 0x2, 0x2, 0x2, 0x33, 0x3, 0x2, 0x2, 0x2, 0x2, 0x35,
0x3, 0x2, 0x2, 0x2, 0x2, 0x37, 0x3, 0x2, 0x2, 0x2, 0x2, 0x39, 0x3,
0x2, 0x2, 0x2, 0x2, 0x3b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x3d, 0x3, 0x2,
0x2, 0x2, 0x2, 0x3f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x41, 0x3, 0x2, 0x2,
0x2, 0x2, 0x43, 0x3, 0x2, 0x2, 0x2, 0x2, 0x45, 0x3, 0x2, 0x2, 0x2,
0x2, 0x47, 0x3, 0x2, 0x2, 0x2, 0x2, 0x49, 0x3, 0x2, 0x2, 0x2, 0x2,
0x4b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x4d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x4f,
0x3, 0x2, 0x2, 0x2, 0x2, 0x51, 0x3, 0x2, 0x2, 0x2, 0x2, 0x53, 0x3,
0x2, 0x2, 0x2, 0x2, 0x55, 0x3, 0x2, 0x2, 0x2, 0x2, 0x57, 0x3, 0x2,
0x2, 0x2, 0x2, 0x59, 0x3, 0x2, 0x2, 0x2, 0x2, 0x5b, 0x3, 0x2, 0x2,
0x2, 0x2, 0x5d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x5f, 0x3, 0x2, 0x2, 0x2,
0x2, 0x61, 0x3, 0x2, 0x2, 0x2, 0x2, 0x63, 0x3, 0x2, 0x2, 0x2, 0x2,
0x65, 0x3, 0x2, 0x2, 0x2, 0x2, 0x67, 0x3, 0x2, 0x2, 0x2, 0x2, 0x69,
0x3, 0x2, 0x2, 0x2, 0x2, 0x6b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x6d, 0x3,
0x2, 0x2, 0x2, 0x2, 0x6f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x71, 0x3, 0x2,
0x2, 0x2, 0x2, 0x73, 0x3, 0x2, 0x2, 0x2, 0x2, 0x75, 0x3, 0x2, 0x2,
0x2, 0x2, 0x77, 0x3, 0x2, 0x2, 0x2, 0x2, 0x79, 0x3, 0x2, 0x2, 0x2,
0x2, 0x7b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x7d, 0x3, 0x2, 0x2, 0x2, 0x2,
0x7f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x81, 0x3, 0x2, 0x2, 0x2, 0x2, 0x83,
0x3, 0x2, 0x2, 0x2, 0x2, 0x85, 0x3, 0x2, 0x2, 0x2, 0x2, 0x87, 0x3,
0x2, 0x2, 0x2, 0x2, 0x89, 0x3, 0x2, 0x2, 0x2, 0x2, 0x8b, 0x3, 0x2,
0x2, 0x2, 0x2, 0x8d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x8f, 0x3, 0x2, 0x2,
0x2, 0x2, 0x91, 0x3, 0x2, 0x2, 0x2, 0x2, 0x93, 0x3, 0x2, 0x2, 0x2,
0x2, 0x95, 0x3, 0x2, 0x2, 0x2, 0x2, 0x97, 0x3, 0x2, 0x2, 0x2, 0x2,
0x99, 0x3, 0x2, 0x2, 0x2, 0x2, 0x9b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x9d,
0x3, 0x2, 0x2, 0x2, 0x2, 0x9f, 0x3, 0x2, 0x2, 0x2, 0x2, 0xa1, 0x3,
0x2, 0x2, 0x2, 0x2, 0xa3, 0x3, 0x2, 0x2, 0x2, 0x2, 0xa5, 0x3, 0x2,
0x2, 0x2, 0x2, 0xa7, 0x3, 0x2, 0x2, 0x2, 0x2, 0xa9, 0x3, 0x2, 0x2,
0x2, 0x2, 0xab, 0x3, 0x2, 0x2, 0x2, 0x2, 0xad, 0x3, 0x2, 0x2, 0x2,
0x2, 0xaf, 0x3, 0x2, 0x2, 0x2, 0x2, 0xb1, 0x3, 0x2, 0x2, 0x2, 0x2,
0xb3, 0x3, 0x2, 0x2, 0x2, 0x2, 0xb5, 0x3, 0x2, 0x2, 0x2, 0x2, 0xb7,
0x3, 0x2, 0x2, 0x2, 0x2, 0xb9, 0x3, 0x2, 0x2, 0x2, 0x2, 0xbb, 0x3,
0x2, 0x2, 0x2, 0x2, 0xbd, 0x3, 0x2, 0x2, 0x2, 0x2, 0xbf, 0x3, 0x2,
0x2, 0x2, 0x2, 0xc1, 0x3, 0x2, 0x2, 0x2, 0x2, 0xc3, 0x3, 0x2, 0x2,
0x2, 0x2, 0xc5, 0x3, 0x2, 0x2, 0x2, 0x2, 0xc7, 0x3, 0x2, 0x2, 0x2,
0x2, 0xc9, 0x3, 0x2, 0x2, 0x2, 0x2, 0xcb, 0x3, 0x2, 0x2, 0x2, 0x2,
0xcd, 0x3, 0x2, 0x2, 0x2, 0x2, 0xcf, 0x3, 0x2, 0x2, 0x2, 0x2, 0xd1,
0x3, 0x2, 0x2, 0x2, 0x2, 0xd3, 0x3, 0x2, 0x2, 0x2, 0x2, 0xd5, 0x3,
0x2, 0x2, 0x2, 0x2, 0xd7, 0x3, 0x2, 0x2, 0x2, 0x2, 0xd9, 0x3, 0x2,
0x2, 0x2, 0x2, 0xdb, 0x3, 0x2, 0x2, 0x2, 0x2, 0xdd, 0x3, 0x2, 0x2,
0x2, 0x2, 0xdf, 0x3, 0x2, 0x2, 0x2, 0x2, 0xe1, 0x3, 0x2, 0x2, 0x2,
0x2, 0xe3, 0x3, 0x2, 0x2, 0x2, 0x2, 0xe5, 0x3, 0x2, 0x2, 0x2, 0x2,
0xe7, 0x3, 0x2, 0x2, 0x2, 0x2, 0xe9, 0x3, 0x2, 0x2, 0x2, 0x2, 0xeb,
0x3, 0x2, 0x2, 0x2, 0x2, 0xed, 0x3, 0x2, 0x2, 0x2, 0x2, 0xef, 0x3,
0x2, 0x2, 0x2, 0x2, 0xf1, 0x3, 0x2, 0x2, 0x2, 0x2, 0xf3, 0x3, 0x2,
0x2, 0x2, 0x2, 0xf5, 0x3, 0x2, 0x2, 0x2, 0x2, 0xf7, 0x3, 0x2, 0x2,
0x2, 0x2, 0xf9, 0x3, 0x2, 0x2, 0x2, 0x2, 0xfb, 0x3, 0x2, 0x2, 0x2,
0x2, 0xfd, 0x3, 0x2, 0x2, 0x2, 0x2, 0xff, 0x3, 0x2, 0x2, 0x2, 0x2,
0x101, 0x3, 0x2, 0x2, 0x2, 0x2, 0x103, 0x3, 0x2, 0x2, 0x2, 0x2, 0x105,
0x3, 0x2, 0x2, 0x2, 0x2, 0x107, 0x3, 0x2, 0x2, 0x2, 0x2, 0x109, 0x3,
0x2, 0x2, 0x2, 0x2, 0x10b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x10d, 0x3, 0x2,
0x2, 0x2, 0x2, 0x10f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x111, 0x3, 0x2, 0x2,
0x2, 0x2, 0x113, 0x3, 0x2, 0x2, 0x2, 0x2, 0x115, 0x3, 0x2, 0x2, 0x2,
0x2, 0x117, 0x3, 0x2, 0x2, 0x2, 0x2, 0x119, 0x3, 0x2, 0x2, 0x2, 0x2,
0x11b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x11d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x11f,
0x3, 0x2, 0x2, 0x2, 0x2, 0x121, 0x3, 0x2, 0x2, 0x2, 0x2, 0x123, 0x3,
0x2, 0x2, 0x2, 0x2, 0x125, 0x3, 0x2, 0x2, 0x2, 0x2, 0x127, 0x3, 0x2,
0x2, 0x2, 0x2, 0x129, 0x3, 0x2, 0x2, 0x2, 0x2, 0x12b, 0x3, 0x2, 0x2,
0x2, 0x2, 0x12d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x12f, 0x3, 0x2, 0x2, 0x2,
0x2, 0x131, 0x3, 0x2, 0x2, 0x2, 0x2, 0x133, 0x3, 0x2, 0x2, 0x2, 0x2,
0x135, 0x3, 0x2, 0x2, 0x2, 0x2, 0x137, 0x3, 0x2, 0x2, 0x2, 0x2, 0x139,
0x3, 0x2, 0x2, 0x2, 0x2, 0x13b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x13d, 0x3,
0x2, 0x2, 0x2, 0x2, 0x13f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x141, 0x3, 0x2,
0x2, 0x2, 0x2, 0x143, 0x3, 0x2, 0x2, 0x2, 0x2, 0x145, 0x3, 0x2, 0x2,
0x2, 0x2, 0x147, 0x3, 0x2, 0x2, 0x2, 0x2, 0x149, 0x3, 0x2, 0x2, 0x2,
0x2, 0x14b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x14d, 0x3, 0x2, 0x2, 0x2, 0x2,
0x14f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x151, 0x3, 0x2, 0x2, 0x2, 0x2, 0x153,
0x3, 0x2, 0x2, 0x2, 0x2, 0x155, 0x3, 0x2, 0x2, 0x2, 0x2, 0x157, 0x3,
0x2, 0x2, 0x2, 0x2, 0x159, 0x3, 0x2, 0x2, 0x2, 0x2, 0x15b, 0x3, 0x2,
0x2, 0x2, 0x2, 0x15d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x15f, 0x3, 0x2, 0x2,
0x2, 0x2, 0x161, 0x3, 0x2, 0x2, 0x2, 0x2, 0x163, 0x3, 0x2, 0x2, 0x2,
0x2, 0x165, 0x3, 0x2, 0x2, 0x2, 0x2, 0x167, 0x3, 0x2, 0x2, 0x2, 0x2,
0x169, 0x3, 0x2, 0x2, 0x2, 0x2, 0x16b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x16d,
0x3, 0x2, 0x2, 0x2, 0x2, 0x16f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x171, 0x3,
0x2, 0x2, 0x2, 0x2, 0x173, 0x3, 0x2, 0x2, 0x2, 0x2, 0x175, 0x3, 0x2,
0x2, 0x2, 0x2, 0x177, 0x3, 0x2, 0x2, 0x2, 0x2, 0x179, 0x3, 0x2, 0x2,
0x2, 0x2, 0x17b, 0x3, 0x2, 0x2, 0x2, 0x2, 0x17d, 0x3, 0x2, 0x2, 0x2,
0x2, 0x17f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x181, 0x3, 0x2, 0x2, 0x2, 0x2,
0x183, 0x3, 0x2, 0x2, 0x2, 0x2, 0x185, 0x3, 0x2, 0x2, 0x2, 0x2, 0x187,
0x3, 0x2, 0x2, 0x2, 0x2, 0x189, 0x3, 0x2, 0x2, 0x2, 0x2, 0x18b, 0x3,
0x2, 0x2, 0x2, 0x2, 0x18d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x18f, 0x3, 0x2,
0x2, 0x2, 0x2, 0x191, 0x3, 0x2, 0x2, 0x2, 0x2, 0x193, 0x3, 0x2, 0x2,
0x2, 0x2, 0x195, 0x3, 0x2, 0x2, 0x2, 0x2, 0x197, 0x3, 0x2, 0x2, 0x2,
0x2, 0x199, 0x3, 0x2, 0x2, 0x2, 0x2, 0x19b, 0x3, 0x2, 0x2, 0x2, 0x2,
0x19d, 0x3, 0x2, 0x2, 0x2, 0x2, 0x19f, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1a1,
0x3, 0x2, 0x2, 0x2, 0x2, 0x1a3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1a5, 0x3,
0x2, 0x2, 0x2, 0x2, 0x1a7, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1a9, 0x3, 0x2,
0x2, 0x2, 0x2, 0x1ab, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1ad, 0x3, 0x2, 0x2,
0x2, 0x2, 0x1af, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1b1, 0x3, 0x2, 0x2, 0x2,
0x2, 0x1b3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1b5, 0x3, 0x2, 0x2, 0x2, 0x2,
0x1b7, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1b9, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1bb,
0x3, 0x2, 0x2, 0x2, 0x2, 0x1bd, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1bf, 0x3,
0x2, 0x2, 0x2, 0x2, 0x1c1, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1c3, 0x3, 0x2,
0x2, 0x2, 0x2, 0x1c5, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1c7, 0x3, 0x2, 0x2,
0x2, 0x2, 0x1c9, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1cb, 0x3, 0x2, 0x2, 0x2,
0x2, 0x1cd, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1cf, 0x3, 0x2, 0x2, 0x2, 0x2,
0x1d1, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1d3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1d5,
0x3, 0x2, 0x2, 0x2, 0x2, 0x1d7, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1d9, 0x3,
0x2, 0x2, 0x2, 0x2, 0x1db, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1dd, 0x3, 0x2,
0x2, 0x2, 0x2, 0x1df, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1e1, 0x3, 0x2, 0x2,
0x2, 0x2, 0x1e3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1e5, 0x3, 0x2, 0x2, 0x2,
0x2, 0x1e7, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1e9, 0x3, 0x2, 0x2, 0x2, 0x2,
0x1eb, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1ed, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1ef,
0x3, 0x2, 0x2, 0x2, 0x2, 0x1f1, 0x3, 0x2, 0x2, 0x2, 0x2, 0x1f3, 0x3,
0x2, 0x2, 0x2, 0x3, 0x22d, 0x3, 0x2, 0x2, 0x2, 0x5, 0x231, 0x3, 0x2,
0x2, 0x2, 0x7, 0x235, 0x3, 0x2, 0x2, 0x2, 0x9, 0x237, 0x3, 0x2, 0x2,
0x2, 0xb, 0x23c, 0x3, 0x2, 0x2, 0x2, 0xd, 0x242, 0x3, 0x2, 0x2, 0x2,
0xf, 0x244, 0x3, 0x2, 0x2, 0x2, 0x11, 0x24b, 0x3, 0x2, 0x2, 0x2,
0x13, 0x253, 0x3, 0x2, 0x2, 0x2, 0x15, 0x255, 0x3, 0x2, 0x2, 0x2,
0x17, 0x257, 0x3, 0x2, 0x2, 0x2, 0x19, 0x25e, 0x3, 0x2, 0x2, 0x2,
0x1b, 0x264, 0x3, 0x2, 0x2, 0x2, 0x1d, 0x269, 0x3, 0x2, 0x2, 0x2,
0x1f, 0x276, 0x3, 0x2, 0x2, 0x2, 0x21, 0x27a, 0x3, 0x2, 0x2, 0x2,
0x23, 0x284, 0x3, 0x2, 0x2, 0x2, 0x25, 0x288, 0x3, 0x2, 0x2, 0x2,
0x27, 0x28c, 0x3, 0x2, 0x2, 0x2, 0x29, 0x290, 0x3, 0x2, 0x2, 0x2,
0x2b, 0x294, 0x3, 0x2, 0x2, 0x2, 0x2d, 0x299, 0x3, 0x2, 0x2, 0x2,
0x2f, 0x2a4, 0x3, 0x2, 0x2, 0x2, 0x31, 0x2a8, 0x3, 0x2, 0x2, 0x2,
0x33, 0x2ac, 0x3, 0x2, 0x2, 0x2, 0x35, 0x2b7, 0x3, 0x2, 0x2, 0x2,
0x37, 0x2c0, 0x3, 0x2, 0x2, 0x2, 0x39, 0x2cb, 0x3, 0x2, 0x2, 0x2,
0x3b, 0x2cf, 0x3, 0x2, 0x2, 0x2, 0x3d, 0x2d5, 0x3, 0x2, 0x2, 0x2,
0x3f, 0x2d9, 0x3, 0x2, 0x2, 0x2, 0x41, 0x2de, 0x3, 0x2, 0x2, 0x2,
0x43, 0x2e3, 0x3, 0x2, 0x2, 0x2, 0x45, 0x2ec, 0x3, 0x2, 0x2, 0x2,
0x47, 0x2f2, 0x3, 0x2, 0x2, 0x2, 0x49, 0x2f7, 0x3, 0x2, 0x2, 0x2,
0x4b, 0x2fe, 0x3, 0x2, 0x2, 0x2, 0x4d, 0x302, 0x3, 0x2, 0x2, 0x2,
0x4f, 0x308, 0x3, 0x2, 0x2, 0x2, 0x51, 0x30d, 0x3, 0x2, 0x2, 0x2,
0x53, 0x317, 0x3, 0x2, 0x2, 0x2, 0x55, 0x31d, 0x3, 0x2, 0x2, 0x2,
0x57, 0x322, 0x3, 0x2, 0x2, 0x2, 0x59, 0x32c, 0x3, 0x2, 0x2, 0x2,
0x5b, 0x333, 0x3, 0x2, 0x2, 0x2, 0x5d, 0x33c, 0x3, 0x2, 0x2, 0x2,
0x5f, 0x343, 0x3, 0x2, 0x2, 0x2, 0x61, 0x34a, 0x3, 0x2, 0x2, 0x2,
0x63, 0x351, 0x3, 0x2, 0x2, 0x2, 0x65, 0x359, 0x3, 0x2, 0x2, 0x2,
0x67, 0x35d, 0x3, 0x2, 0x2, 0x2, 0x69, 0x367, 0x3, 0x2, 0x2, 0x2,
0x6b, 0x36c, 0x3, 0x2, 0x2, 0x2, 0x6d, 0x373, 0x3, 0x2, 0x2, 0x2,
0x6f, 0x378, 0x3, 0x2, 0x2, 0x2, 0x71, 0x384, 0x3, 0x2, 0x2, 0x2,
0x73, 0x38c, 0x3, 0x2, 0x2, 0x2, 0x75, 0x390, 0x3, 0x2, 0x2, 0x2,
0x77, 0x395, 0x3, 0x2, 0x2, 0x2, 0x79, 0x39c, 0x3, 0x2, 0x2, 0x2,
0x7b, 0x3a0, 0x3, 0x2, 0x2, 0x2, 0x7d, 0x3a8, 0x3, 0x2, 0x2, 0x2,
0x7f, 0x3ac, 0x3, 0x2, 0x2, 0x2, 0x81, 0x3b5, 0x3, 0x2, 0x2, 0x2,
0x83, 0x3b9, 0x3, 0x2, 0x2, 0x2, 0x85, 0x3c1, 0x3, 0x2, 0x2, 0x2,
0x87, 0x3c9, 0x3, 0x2, 0x2, 0x2, 0x89, 0x3d4, 0x3, 0x2, 0x2, 0x2,
0x8b, 0x3da, 0x3, 0x2, 0x2, 0x2, 0x8d, 0x3e5, 0x3, 0x2, 0x2, 0x2,
0x8f, 0x3ed, 0x3, 0x2, 0x2, 0x2, 0x91, 0x3f2, 0x3, 0x2, 0x2, 0x2,
0x93, 0x3f6, 0x3, 0x2, 0x2, 0x2, 0x95, 0x3fa, 0x3, 0x2, 0x2, 0x2,
0x97, 0x400, 0x3, 0x2, 0x2, 0x2, 0x99, 0x408, 0x3, 0x2, 0x2, 0x2,
0x9b, 0x40d, 0x3, 0x2, 0x2, 0x2, 0x9d, 0x412, 0x3, 0x2, 0x2, 0x2,
0x9f, 0x41a, 0x3, 0x2, 0x2, 0x2, 0xa1, 0x421, 0x3, 0x2, 0x2, 0x2,
0xa3, 0x426, 0x3, 0x2, 0x2, 0x2, 0xa5, 0x42a, 0x3, 0x2, 0x2, 0x2,
0xa7, 0x431, 0x3, 0x2, 0x2, 0x2, 0xa9, 0x437, 0x3, 0x2, 0x2, 0x2,
0xab, 0x43e, 0x3, 0x2, 0x2, 0x2, 0xad, 0x442, 0x3, 0x2, 0x2, 0x2,
0xaf, 0x445, 0x3, 0x2, 0x2, 0x2, 0xb1, 0x449, 0x3, 0x2, 0x2, 0x2,
0xb3, 0x450, 0x3, 0x2, 0x2, 0x2, 0xb5, 0x457, 0x3, 0x2, 0x2, 0x2,
0xb7, 0x465, 0x3, 0x2, 0x2, 0x2, 0xb9, 0x470, 0x3, 0x2, 0x2, 0x2,
0xbb, 0x482, 0x3, 0x2, 0x2, 0x2, 0xbd, 0x490, 0x3, 0x2, 0x2, 0x2,
0xbf, 0x49a, 0x3, 0x2, 0x2, 0x2, 0xc1, 0x4a8, 0x3, 0x2, 0x2, 0x2,
0xc3, 0x4b8, 0x3, 0x2, 0x2, 0x2, 0xc5, 0x4cb, 0x3, 0x2, 0x2, 0x2,
0xc7, 0x4d9, 0x3, 0x2, 0x2, 0x2, 0xc9, 0x4eb, 0x3, 0x2, 0x2, 0x2,
0xcb, 0x4fa, 0x3, 0x2, 0x2, 0x2, 0xcd, 0x509, 0x3, 0x2, 0x2, 0x2,
0xcf, 0x515, 0x3, 0x2, 0x2, 0x2, 0xd1, 0x51e, 0x3, 0x2, 0x2, 0x2,
0xd3, 0x52a, 0x3, 0x2, 0x2, 0x2, 0xd5, 0x536, 0x3, 0x2, 0x2, 0x2,
0xd7, 0x541, 0x3, 0x2, 0x2, 0x2, 0xd9, 0x54a, 0x3, 0x2, 0x2, 0x2,
0xdb, 0x556, 0x3, 0x2, 0x2, 0x2, 0xdd, 0x560, 0x3, 0x2, 0x2, 0x2,
0xdf, 0x572, 0x3, 0x2, 0x2, 0x2, 0xe1, 0x57a, 0x3, 0x2, 0x2, 0x2,
0xe3, 0x58a, 0x3, 0x2, 0x2, 0x2, 0xe5, 0x59c, 0x3, 0x2, 0x2, 0x2,
0xe7, 0x5ac, 0x3, 0x2, 0x2, 0x2, 0xe9, 0x5bc, 0x3, 0x2, 0x2, 0x2,
0xeb, 0x5d3, 0x3, 0x2, 0x2, 0x2, 0xed, 0x5ea, 0x3, 0x2, 0x2, 0x2,
0xef, 0x5ff, 0x3, 0x2, 0x2, 0x2, 0xf1, 0x60f, 0x3, 0x2, 0x2, 0x2,
0xf3, 0x621, 0x3, 0x2, 0x2, 0x2, 0xf5, 0x632, 0x3, 0x2, 0x2, 0x2,
0xf7, 0x644, 0x3, 0x2, 0x2, 0x2, 0xf9, 0x657, 0x3, 0x2, 0x2, 0x2,
0xfb, 0x667, 0x3, 0x2, 0x2, 0x2, 0xfd, 0x67a, 0x3, 0x2, 0x2, 0x2,
0xff, 0x687, 0x3, 0x2, 0x2, 0x2, 0x101, 0x696, 0x3, 0x2, 0x2, 0x2,
0x103, 0x6a3, 0x3, 0x2, 0x2, 0x2, 0x105, 0x6b7, 0x3, 0x2, 0x2, 0x2,
0x107, 0x6c3, 0x3, 0x2, 0x2, 0x2, 0x109, 0x6d4, 0x3, 0x2, 0x2, 0x2,
0x10b, 0x6dd, 0x3, 0x2, 0x2, 0x2, 0x10d, 0x6e9, 0x3, 0x2, 0x2, 0x2,
0x10f, 0x6f3, 0x3, 0x2, 0x2, 0x2, 0x111, 0x6fe, 0x3, 0x2, 0x2, 0x2,
0x113, 0x70b, 0x3, 0x2, 0x2, 0x2, 0x115, 0x71e, 0x3, 0x2, 0x2, 0x2,
0x117, 0x731, 0x3, 0x2, 0x2, 0x2, 0x119, 0x747, 0x3, 0x2, 0x2, 0x2,
0x11b, 0x74f, 0x3, 0x2, 0x2, 0x2, 0x11d, 0x762, 0x3, 0x2, 0x2, 0x2,
0x11f, 0x77c, 0x3, 0x2, 0x2, 0x2, 0x121, 0x78b, 0x3, 0x2, 0x2, 0x2,
0x123, 0x799, 0x3, 0x2, 0x2, 0x2, 0x125, 0x7a5, 0x3, 0x2, 0x2, 0x2,
0x127, 0x7b3, 0x3, 0x2, 0x2, 0x2, 0x129, 0x7c1, 0x3, 0x2, 0x2, 0x2,
0x12b, 0x7d0, 0x3, 0x2, 0x2, 0x2, 0x12d, 0x7dd, 0x3, 0x2, 0x2, 0x2,
0x12f, 0x7ed, 0x3, 0x2, 0x2, 0x2, 0x131, 0x7f3, 0x3, 0x2, 0x2, 0x2,
0x133, 0x7f7, 0x3, 0x2, 0x2, 0x2, 0x135, 0x7fe, 0x3, 0x2, 0x2, 0x2,
0x137, 0x804, 0x3, 0x2, 0x2, 0x2, 0x139, 0x809, 0x3, 0x2, 0x2, 0x2,
0x13b, 0x810, 0x3, 0x2, 0x2, 0x2, 0x13d, 0x813, 0x3, 0x2, 0x2, 0x2,
0x13f, 0x81a, 0x3, 0x2, 0x2, 0x2, 0x141, 0x823, 0x3, 0x2, 0x2, 0x2,
0x143, 0x82a, 0x3, 0x2, 0x2, 0x2, 0x145, 0x82d, 0x3, 0x2, 0x2, 0x2,
0x147, 0x832, 0x3, 0x2, 0x2, 0x2, 0x149, 0x837, 0x3, 0x2, 0x2, 0x2,
0x14b, 0x83d, 0x3, 0x2, 0x2, 0x2, 0x14d, 0x841, 0x3, 0x2, 0x2, 0x2,
0x14f, 0x844, 0x3, 0x2, 0x2, 0x2, 0x151, 0x848, 0x3, 0x2, 0x2, 0x2,
0x153, 0x850, 0x3, 0x2, 0x2, 0x2, 0x155, 0x855, 0x3, 0x2, 0x2, 0x2,
0x157, 0x85c, 0x3, 0x2, 0x2, 0x2, 0x159, 0x863, 0x3, 0x2, 0x2, 0x2,
0x15b, 0x866, 0x3, 0x2, 0x2, 0x2, 0x15d, 0x86a, 0x3, 0x2, 0x2, 0x2,
0x15f, 0x86e, 0x3, 0x2, 0x2, 0x2, 0x161, 0x871, 0x3, 0x2, 0x2, 0x2,
0x163, 0x876, 0x3, 0x2, 0x2, 0x2, 0x165, 0x87b, 0x3, 0x2, 0x2, 0x2,
0x167, 0x881, 0x3, 0x2, 0x2, 0x2, 0x169, 0x887, 0x3, 0x2, 0x2, 0x2,
0x16b, 0x88d, 0x3, 0x2, 0x2, 0x2, 0x16d, 0x891, 0x3, 0x2, 0x2, 0x2,
0x16f, 0x896, 0x3, 0x2, 0x2, 0x2, 0x171, 0x89f, 0x3, 0x2, 0x2, 0x2,
0x173, 0x8a5, 0x3, 0x2, 0x2, 0x2, 0x175, 0x8ab, 0x3, 0x2, 0x2, 0x2,
0x177, 0x8bd, 0x3, 0x2, 0x2, 0x2, 0x179, 0x8c1, 0x3, 0x2, 0x2, 0x2,
0x17b, 0x8cd, 0x3, 0x2, 0x2, 0x2, 0x17d, 0x8d8, 0x3, 0x2, 0x2, 0x2,
0x17f, 0x8e1, 0x3, 0x2, 0x2, 0x2, 0x181, 0x8ea, 0x3, 0x2, 0x2, 0x2,
0x183, 0x8f5, 0x3, 0x2, 0x2, 0x2, 0x185, 0x8fe, 0x3, 0x2, 0x2, 0x2,
0x187, 0x90e, 0x3, 0x2, 0x2, 0x2, 0x189, 0x910, 0x3, 0x2, 0x2, 0x2,
0x18b, 0x917, 0x3, 0x2, 0x2, 0x2, 0x18d, 0x91e, 0x3, 0x2, 0x2, 0x2,
0x18f, 0x927, 0x3, 0x2, 0x2, 0x2, 0x191, 0x92b, 0x3, 0x2, 0x2, 0x2,
0x193, 0x92f, 0x3, 0x2, 0x2, 0x2, 0x195, 0x931, 0x3, 0x2, 0x2, 0x2,
0x197, 0x935, 0x3, 0x2, 0x2, 0x2, 0x199, 0x937, 0x3, 0x2, 0x2, 0x2,
0x19b, 0x93a, 0x3, 0x2, 0x2, 0x2, 0x19d, 0x93d, 0x3, 0x2, 0x2, 0x2,
0x19f, 0x93f, 0x3, 0x2, 0x2, 0x2, 0x1a1, 0x941, 0x3, 0x2, 0x2, 0x2,
0x1a3, 0x943, 0x3, 0x2, 0x2, 0x2, 0x1a5, 0x946, 0x3, 0x2, 0x2, 0x2,
0x1a7, 0x948, 0x3, 0x2, 0x2, 0x2, 0x1a9, 0x94b, 0x3, 0x2, 0x2, 0x2,
0x1ab, 0x94e, 0x3, 0x2, 0x2, 0x2, 0x1ad, 0x950, 0x3, 0x2, 0x2, 0x2,
0x1af, 0x952, 0x3, 0x2, 0x2, 0x2, 0x1b1, 0x954, 0x3, 0x2, 0x2, 0x2,
0x1b3, 0x957, 0x3, 0x2, 0x2, 0x2, 0x1b5, 0x95a, 0x3, 0x2, 0x2, 0x2,
0x1b7, 0x95c, 0x3, 0x2, 0x2, 0x2, 0x1b9, 0x95e, 0x3, 0x2, 0x2, 0x2,
0x1bb, 0x960, 0x3, 0x2, 0x2, 0x2, 0x1bd, 0x962, 0x3, 0x2, 0x2, 0x2,
0x1bf, 0x965, 0x3, 0x2, 0x2, 0x2, 0x1c1, 0x967, 0x3, 0x2, 0x2, 0x2,
0x1c3, 0x96a, 0x3, 0x2, 0x2, 0x2, 0x1c5, 0x96d, 0x3, 0x2, 0x2, 0x2,
0x1c7, 0x96f, 0x3, 0x2, 0x2, 0x2, 0x1c9, 0x971, 0x3, 0x2, 0x2, 0x2,
0x1cb, 0x974, 0x3, 0x2, 0x2, 0x2, 0x1cd, 0x977, 0x3, 0x2, 0x2, 0x2,
0x1cf, 0x97a, 0x3, 0x2, 0x2, 0x2, 0x1d1, 0x97d, 0x3, 0x2, 0x2, 0x2,
0x1d3, 0x980, 0x3, 0x2, 0x2, 0x2, 0x1d5, 0x982, 0x3, 0x2, 0x2, 0x2,
0x1d7, 0x985, 0x3, 0x2, 0x2, 0x2, 0x1d9, 0x988, 0x3, 0x2, 0x2, 0x2,
0x1db, 0x98b, 0x3, 0x2, 0x2, 0x2, 0x1dd, 0x98e, 0x3, 0x2, 0x2, 0x2,
0x1df, 0x991, 0x3, 0x2, 0x2, 0x2, 0x1e1, 0x994, 0x3, 0x2, 0x2, 0x2,
0x1e3, 0x997, 0x3, 0x2, 0x2, 0x2, 0x1e5, 0x99a, 0x3, 0x2, 0x2, 0x2,
0x1e7, 0x99d, 0x3, 0x2, 0x2, 0x2, 0x1e9, 0x9a0, 0x3, 0x2, 0x2, 0x2,
0x1eb, 0x9a4, 0x3, 0x2, 0x2, 0x2, 0x1ed, 0x9a8, 0x3, 0x2, 0x2, 0x2,
0x1ef, 0x9ac, 0x3, 0x2, 0x2, 0x2, 0x1f1, 0x9b2, 0x3, 0x2, 0x2, 0x2,
0x1f3, 0x9b6, 0x3, 0x2, 0x2, 0x2, 0x1f5, 0x9ca, 0x3, 0x2, 0x2, 0x2,
0x1f7, 0x9e6, 0x3, 0x2, 0x2, 0x2, 0x1f9, 0x9ea, 0x3, 0x2, 0x2, 0x2,
0x1fb, 0x9ec, 0x3, 0x2, 0x2, 0x2, 0x1fd, 0x9f2, 0x3, 0x2, 0x2, 0x2,
0x1ff, 0x9f4, 0x3, 0x2, 0x2, 0x2, 0x201, 0x9f6, 0x3, 0x2, 0x2, 0x2,
0x203, 0x9f8, 0x3, 0x2, 0x2, 0x2, 0x205, 0x9fa, 0x3, 0x2, 0x2, 0x2,
0x207, 0x9fc, 0x3, 0x2, 0x2, 0x2, 0x209, 0xa05, 0x3, 0x2, 0x2, 0x2,
0x20b, 0xa09, 0x3, 0x2, 0x2, 0x2, 0x20d, 0xa0e, 0x3, 0x2, 0x2, 0x2,
0x20f, 0xa12, 0x3, 0x2, 0x2, 0x2, 0x211, 0xa18, 0x3, 0x2, 0x2, 0x2,
0x213, 0xa33, 0x3, 0x2, 0x2, 0x2, 0x215, 0xa4f, 0x3, 0x2, 0x2, 0x2,
0x217, 0xa53, 0x3, 0x2, 0x2, 0x2, 0x219, 0xa56, 0x3, 0x2, 0x2, 0x2,
0x21b, 0xa59, 0x3, 0x2, 0x2, 0x2, 0x21d, 0xa5c, 0x3, 0x2, 0x2, 0x2,
0x21f, 0xa5e, 0x3, 0x2, 0x2, 0x2, 0x221, 0xa62, 0x3, 0x2, 0x2, 0x2,
0x223, 0xa66, 0x3, 0x2, 0x2, 0x2, 0x225, 0xa6d, 0x3, 0x2, 0x2, 0x2,
0x227, 0xa79, 0x3, 0x2, 0x2, 0x2, 0x229, 0xa7d, 0x3, 0x2, 0x2, 0x2,
0x22b, 0x22e, 0x5, 0x17d, 0xbf, 0x2, 0x22c, 0x22e, 0x5, 0x183, 0xc2,
0x2, 0x22d, 0x22b, 0x3, 0x2, 0x2, 0x2, 0x22d, 0x22c, 0x3, 0x2, 0x2,
0x2, 0x22e, 0x4, 0x3, 0x2, 0x2, 0x2, 0x22f, 0x232, 0x5, 0x17f, 0xc0,
0x2, 0x230, 0x232, 0x5, 0x185, 0xc3, 0x2, 0x231, 0x22f, 0x3, 0x2,
0x2, 0x2, 0x231, 0x230, 0x3, 0x2, 0x2, 0x2, 0x232, 0x6, 0x3, 0x2,
0x2, 0x2, 0x233, 0x236, 0x5, 0x17b, 0xbe, 0x2, 0x234, 0x236, 0x5,
0x181, 0xc1, 0x2, 0x235, 0x233, 0x3, 0x2, 0x2, 0x2, 0x235, 0x234,
0x3, 0x2, 0x2, 0x2, 0x236, 0x8, 0x3, 0x2, 0x2, 0x2, 0x237, 0x238,
0x5, 0x223, 0x112, 0x2, 0x238, 0xa, 0x3, 0x2, 0x2, 0x2, 0x239, 0x23d,
0x5, 0xd, 0x7, 0x2, 0x23a, 0x23d, 0x5, 0x18f, 0xc8, 0x2, 0x23b, 0x23d,
0x5, 0x191, 0xc9, 0x2, 0x23c, 0x239, 0x3, 0x2, 0x2, 0x2, 0x23c, 0x23a,
0x3, 0x2, 0x2, 0x2, 0x23c, 0x23b, 0x3, 0x2, 0x2, 0x2, 0x23d, 0xc,
0x3, 0x2, 0x2, 0x2, 0x23e, 0x243, 0x5, 0x187, 0xc4, 0x2, 0x23f, 0x243,
0x5, 0x189, 0xc5, 0x2, 0x240, 0x243, 0x5, 0x18b, 0xc6, 0x2, 0x241,
0x243, 0x5, 0x18d, 0xc7, 0x2, 0x242, 0x23e, 0x3, 0x2, 0x2, 0x2, 0x242,
0x23f, 0x3, 0x2, 0x2, 0x2, 0x242, 0x240, 0x3, 0x2, 0x2, 0x2, 0x242,
0x241, 0x3, 0x2, 0x2, 0x2, 0x243, 0xe, 0x3, 0x2, 0x2, 0x2, 0x244,
0x245, 0x7, 0x61, 0x2, 0x2, 0x245, 0x246, 0x7, 0x61, 0x2, 0x2, 0x246,
0x247, 0x3, 0x2, 0x2, 0x2, 0x247, 0x248, 0x5, 0x179, 0xbd, 0x2, 0x248,
0x249, 0x7, 0x61, 0x2, 0x2, 0x249, 0x24a, 0x7, 0x61, 0x2, 0x2, 0x24a,
0x10, 0x3, 0x2, 0x2, 0x2, 0x24b, 0x24c, 0x7, 0x61, 0x2, 0x2, 0x24c,
0x24d, 0x5, 0x179, 0xbd, 0x2, 0x24d, 0x12, 0x3, 0x2, 0x2, 0x2, 0x24e,
0x24f, 0x7, 0x75, 0x2, 0x2, 0x24f, 0x250, 0x7, 0x67, 0x2, 0x2, 0x250,
0x251, 0x7, 0x6e, 0x2, 0x2, 0x251, 0x254, 0x7, 0x68, 0x2, 0x2, 0x252,
0x254, 0x7, 0x61, 0x2, 0x2, 0x253, 0x24e, 0x3, 0x2, 0x2, 0x2, 0x253,
0x252, 0x3, 0x2, 0x2, 0x2, 0x254, 0x14, 0x3, 0x2, 0x2, 0x2, 0x255,
0x256, 0x9, 0x2, 0x2, 0x2, 0x256, 0x16, 0x3, 0x2, 0x2, 0x2, 0x257,
0x258, 0x7, 0x66, 0x2, 0x2, 0x258, 0x259, 0x7, 0x6b, 0x2, 0x2, 0x259,
0x25a, 0x7, 0x78, 0x2, 0x2, 0x25a, 0x25b, 0x7, 0x6f, 0x2, 0x2, 0x25b,
0x25c, 0x7, 0x71, 0x2, 0x2, 0x25c, 0x25d, 0x7, 0x66, 0x2, 0x2, 0x25d,
0x18, 0x3, 0x2, 0x2, 0x2, 0x25e, 0x25f, 0x7, 0x6b, 0x2, 0x2, 0x25f,
0x260, 0x7, 0x70, 0x2, 0x2, 0x260, 0x261, 0x7, 0x72, 0x2, 0x2, 0x261,
0x262, 0x7, 0x77, 0x2, 0x2, 0x262, 0x263, 0x7, 0x76, 0x2, 0x2, 0x263,
0x1a, 0x3, 0x2, 0x2, 0x2, 0x264, 0x265, 0x7, 0x71, 0x2, 0x2, 0x265,
0x266, 0x7, 0x72, 0x2, 0x2, 0x266, 0x267, 0x7, 0x67, 0x2, 0x2, 0x267,
0x268, 0x7, 0x70, 0x2, 0x2, 0x268, 0x1c, 0x3, 0x2, 0x2, 0x2, 0x269,
0x26a, 0x7, 0x75, 0x2, 0x2, 0x26a, 0x26b, 0x7, 0x76, 0x2, 0x2, 0x26b,
0x26c, 0x7, 0x63, 0x2, 0x2, 0x26c, 0x26d, 0x7, 0x76, 0x2, 0x2, 0x26d,
0x26e, 0x7, 0x6b, 0x2, 0x2, 0x26e, 0x26f, 0x7, 0x65, 0x2, 0x2, 0x26f,
0x270, 0x7, 0x6f, 0x2, 0x2, 0x270, 0x271, 0x7, 0x67, 0x2, 0x2, 0x271,
0x272, 0x7, 0x76, 0x2, 0x2, 0x272, 0x273, 0x7, 0x6a, 0x2, 0x2, 0x273,
0x274, 0x7, 0x71, 0x2, 0x2, 0x274, 0x275, 0x7, 0x66, 0x2, 0x2, 0x275,
0x1e, 0x3, 0x2, 0x2, 0x2, 0x276, 0x277, 0x7, 0x63, 0x2, 0x2, 0x277,
0x278, 0x7, 0x6e, 0x2, 0x2, 0x278, 0x279, 0x7, 0x6e, 0x2, 0x2, 0x279,
0x20, 0x3, 0x2, 0x2, 0x2, 0x27a, 0x27b, 0x7, 0x67, 0x2, 0x2, 0x27b,
0x27c, 0x7, 0x70, 0x2, 0x2, 0x27c, 0x27d, 0x7, 0x77, 0x2, 0x2, 0x27d,
0x27e, 0x7, 0x6f, 0x2, 0x2, 0x27e, 0x27f, 0x7, 0x67, 0x2, 0x2, 0x27f,
0x280, 0x7, 0x74, 0x2, 0x2, 0x280, 0x281, 0x7, 0x63, 0x2, 0x2, 0x281,
0x282, 0x7, 0x76, 0x2, 0x2, 0x282, 0x283, 0x7, 0x67, 0x2, 0x2, 0x283,
0x22, 0x3, 0x2, 0x2, 0x2, 0x284, 0x285, 0x7, 0x6b, 0x2, 0x2, 0x285,
0x286, 0x7, 0x70, 0x2, 0x2, 0x286, 0x287, 0x7, 0x76, 0x2, 0x2, 0x287,
0x24, 0x3, 0x2, 0x2, 0x2, 0x288, 0x289, 0x7, 0x71, 0x2, 0x2, 0x289,
0x28a, 0x7, 0x74, 0x2, 0x2, 0x28a, 0x28b, 0x7, 0x66, 0x2, 0x2, 0x28b,
0x26, 0x3, 0x2, 0x2, 0x2, 0x28c, 0x28d, 0x7, 0x75, 0x2, 0x2, 0x28d,
0x28e, 0x7, 0x76, 0x2, 0x2, 0x28e, 0x28f, 0x7, 0x74, 0x2, 0x2, 0x28f,
0x28, 0x3, 0x2, 0x2, 0x2, 0x290, 0x291, 0x7, 0x63, 0x2, 0x2, 0x291,
0x292, 0x7, 0x70, 0x2, 0x2, 0x292, 0x293, 0x7, 0x7b, 0x2, 0x2, 0x293,
0x2a, 0x3, 0x2, 0x2, 0x2, 0x294, 0x295, 0x7, 0x67, 0x2, 0x2, 0x295,
0x296, 0x7, 0x78, 0x2, 0x2, 0x296, 0x297, 0x7, 0x63, 0x2, 0x2, 0x297,
0x298, 0x7, 0x6e, 0x2, 0x2, 0x298, 0x2c, 0x3, 0x2, 0x2, 0x2, 0x299,
0x29a, 0x7, 0x6b, 0x2, 0x2, 0x29a, 0x29b, 0x7, 0x75, 0x2, 0x2, 0x29b,
0x29c, 0x7, 0x6b, 0x2, 0x2, 0x29c, 0x29d, 0x7, 0x70, 0x2, 0x2, 0x29d,
0x29e, 0x7, 0x75, 0x2, 0x2, 0x29e, 0x29f, 0x7, 0x76, 0x2, 0x2, 0x29f,
0x2a0, 0x7, 0x63, 0x2, 0x2, 0x2a0, 0x2a1, 0x7, 0x70, 0x2, 0x2, 0x2a1,
0x2a2, 0x7, 0x65, 0x2, 0x2, 0x2a2, 0x2a3, 0x7, 0x67, 0x2, 0x2, 0x2a3,
0x2e, 0x3, 0x2, 0x2, 0x2, 0x2a4, 0x2a5, 0x7, 0x72, 0x2, 0x2, 0x2a5,
0x2a6, 0x7, 0x71, 0x2, 0x2, 0x2a6, 0x2a7, 0x7, 0x79, 0x2, 0x2, 0x2a7,
0x30, 0x3, 0x2, 0x2, 0x2, 0x2a8, 0x2a9, 0x7, 0x75, 0x2, 0x2, 0x2a9,
0x2aa, 0x7, 0x77, 0x2, 0x2, 0x2aa, 0x2ab, 0x7, 0x6f, 0x2, 0x2, 0x2ab,
0x32, 0x3, 0x2, 0x2, 0x2, 0x2ac, 0x2ad, 0x7, 0x64, 0x2, 0x2, 0x2ad,
0x2ae, 0x7, 0x63, 0x2, 0x2, 0x2ae, 0x2af, 0x7, 0x75, 0x2, 0x2, 0x2af,
0x2b0, 0x7, 0x67, 0x2, 0x2, 0x2b0, 0x2b1, 0x7, 0x75, 0x2, 0x2, 0x2b1,
0x2b2, 0x7, 0x76, 0x2, 0x2, 0x2b2, 0x2b3, 0x7, 0x74, 0x2, 0x2, 0x2b3,
0x2b4, 0x7, 0x6b, 0x2, 0x2, 0x2b4, 0x2b5, 0x7, 0x70, 0x2, 0x2, 0x2b5,
0x2b6, 0x7, 0x69, 0x2, 0x2, 0x2b6, 0x34, 0x3, 0x2, 0x2, 0x2, 0x2b7,
0x2b8, 0x7, 0x67, 0x2, 0x2, 0x2b8, 0x2b9, 0x7, 0x7a, 0x2, 0x2, 0x2b9,
0x2ba, 0x7, 0x67, 0x2, 0x2, 0x2ba, 0x2bb, 0x7, 0x65, 0x2, 0x2, 0x2bb,
0x2bc, 0x7, 0x68, 0x2, 0x2, 0x2bc, 0x2bd, 0x7, 0x6b, 0x2, 0x2, 0x2bd,
0x2be, 0x7, 0x6e, 0x2, 0x2, 0x2be, 0x2bf, 0x7, 0x67, 0x2, 0x2, 0x2bf,
0x36, 0x3, 0x2, 0x2, 0x2, 0x2c0, 0x2c1, 0x7, 0x6b, 0x2, 0x2, 0x2c1,
0x2c2, 0x7, 0x75, 0x2, 0x2, 0x2c2, 0x2c3, 0x7, 0x75, 0x2, 0x2, 0x2c3,
0x2c4, 0x7, 0x77, 0x2, 0x2, 0x2c4, 0x2c5, 0x7, 0x64, 0x2, 0x2, 0x2c5,
0x2c6, 0x7, 0x65, 0x2, 0x2, 0x2c6, 0x2c7, 0x7, 0x6e, 0x2, 0x2, 0x2c7,
0x2c8, 0x7, 0x63, 0x2, 0x2, 0x2c8, 0x2c9, 0x7, 0x75, 0x2, 0x2, 0x2c9,
0x2ca, 0x7, 0x75, 0x2, 0x2, 0x2ca, 0x38, 0x3, 0x2, 0x2, 0x2, 0x2cb,
0x2cc, 0x7, 0x63, 0x2, 0x2, 0x2cc, 0x2cd, 0x7, 0x64, 0x2, 0x2, 0x2cd,
0x2ce, 0x7, 0x75, 0x2, 0x2, 0x2ce, 0x3a, 0x3, 0x2, 0x2, 0x2, 0x2cf,
0x2d0, 0x7, 0x75, 0x2, 0x2, 0x2d0, 0x2d1, 0x7, 0x77, 0x2, 0x2, 0x2d1,
0x2d2, 0x7, 0x72, 0x2, 0x2, 0x2d2, 0x2d3, 0x7, 0x67, 0x2, 0x2, 0x2d3,
0x2d4, 0x7, 0x74, 0x2, 0x2, 0x2d4, 0x3c, 0x3, 0x2, 0x2, 0x2, 0x2d5,
0x2d6, 0x7, 0x64, 0x2, 0x2, 0x2d6, 0x2d7, 0x7, 0x6b, 0x2, 0x2, 0x2d7,
0x2d8, 0x7, 0x70, 0x2, 0x2, 0x2d8, 0x3e, 0x3, 0x2, 0x2, 0x2, 0x2d9,
0x2da, 0x7, 0x68, 0x2, 0x2, 0x2da, 0x2db, 0x7, 0x6b, 0x2, 0x2, 0x2db,
0x2dc, 0x7, 0x6e, 0x2, 0x2, 0x2dc, 0x2dd, 0x7, 0x67, 0x2, 0x2, 0x2dd,
0x40, 0x3, 0x2, 0x2, 0x2, 0x2de, 0x2df, 0x7, 0x6b, 0x2, 0x2, 0x2df,
0x2e0, 0x7, 0x76, 0x2, 0x2, 0x2e0, 0x2e1, 0x7, 0x67, 0x2, 0x2, 0x2e1,
0x2e2, 0x7, 0x74, 0x2, 0x2, 0x2e2, 0x42, 0x3, 0x2, 0x2, 0x2, 0x2e3,
0x2e4, 0x7, 0x72, 0x2, 0x2, 0x2e4, 0x2e5, 0x7, 0x74, 0x2, 0x2, 0x2e5,
0x2e6, 0x7, 0x71, 0x2, 0x2, 0x2e6, 0x2e7, 0x7, 0x72, 0x2, 0x2, 0x2e7,
0x2e8, 0x7, 0x67, 0x2, 0x2, 0x2e8, 0x2e9, 0x7, 0x74, 0x2, 0x2, 0x2e9,
0x2ea, 0x7, 0x76, 0x2, 0x2, 0x2ea, 0x2eb, 0x7, 0x7b, 0x2, 0x2, 0x2eb,
0x44, 0x3, 0x2, 0x2, 0x2, 0x2ec, 0x2ed, 0x7, 0x76, 0x2, 0x2, 0x2ed,
0x2ee, 0x7, 0x77, 0x2, 0x2, 0x2ee, 0x2ef, 0x7, 0x72, 0x2, 0x2, 0x2ef,
0x2f0, 0x7, 0x6e, 0x2, 0x2, 0x2f0, 0x2f1, 0x7, 0x67, 0x2, 0x2, 0x2f1,
0x46, 0x3, 0x2, 0x2, 0x2, 0x2f2, 0x2f3, 0x7, 0x64, 0x2, 0x2, 0x2f3,
0x2f4, 0x7, 0x71, 0x2, 0x2, 0x2f4, 0x2f5, 0x7, 0x71, 0x2, 0x2, 0x2f5,
0x2f6, 0x7, 0x6e, 0x2, 0x2, 0x2f6, 0x48, 0x3, 0x2, 0x2, 0x2, 0x2f7,
0x2f8, 0x7, 0x68, 0x2, 0x2, 0x2f8, 0x2f9, 0x7, 0x6b, 0x2, 0x2, 0x2f9,
0x2fa, 0x7, 0x6e, 0x2, 0x2, 0x2fa, 0x2fb, 0x7, 0x76, 0x2, 0x2, 0x2fb,
0x2fc, 0x7, 0x67, 0x2, 0x2, 0x2fc, 0x2fd, 0x7, 0x74, 0x2, 0x2, 0x2fd,
0x4a, 0x3, 0x2, 0x2, 0x2, 0x2fe, 0x2ff, 0x7, 0x6e, 0x2, 0x2, 0x2ff,
0x300, 0x7, 0x67, 0x2, 0x2, 0x300, 0x301, 0x7, 0x70, 0x2, 0x2, 0x301,
0x4c, 0x3, 0x2, 0x2, 0x2, 0x302, 0x303, 0x7, 0x74, 0x2, 0x2, 0x303,
0x304, 0x7, 0x63, 0x2, 0x2, 0x304, 0x305, 0x7, 0x70, 0x2, 0x2, 0x305,
0x306, 0x7, 0x69, 0x2, 0x2, 0x306, 0x307, 0x7, 0x67, 0x2, 0x2, 0x307,
0x4e, 0x3, 0x2, 0x2, 0x2, 0x308, 0x309, 0x7, 0x76, 0x2, 0x2, 0x309,
0x30a, 0x7, 0x7b, 0x2, 0x2, 0x30a, 0x30b, 0x7, 0x72, 0x2, 0x2, 0x30b,
0x30c, 0x7, 0x67, 0x2, 0x2, 0x30c, 0x50, 0x3, 0x2, 0x2, 0x2, 0x30d,
0x30e, 0x7, 0x64, 0x2, 0x2, 0x30e, 0x30f, 0x7, 0x7b, 0x2, 0x2, 0x30f,
0x310, 0x7, 0x76, 0x2, 0x2, 0x310, 0x311, 0x7, 0x67, 0x2, 0x2, 0x311,
0x312, 0x7, 0x63, 0x2, 0x2, 0x312, 0x313, 0x7, 0x74, 0x2, 0x2, 0x313,
0x314, 0x7, 0x74, 0x2, 0x2, 0x314, 0x315, 0x7, 0x63, 0x2, 0x2, 0x315,
0x316, 0x7, 0x7b, 0x2, 0x2, 0x316, 0x52, 0x3, 0x2, 0x2, 0x2, 0x317,
0x318, 0x7, 0x68, 0x2, 0x2, 0x318, 0x319, 0x7, 0x6e, 0x2, 0x2, 0x319,
0x31a, 0x7, 0x71, 0x2, 0x2, 0x31a, 0x31b, 0x7, 0x63, 0x2, 0x2, 0x31b,
0x31c, 0x7, 0x76, 0x2, 0x2, 0x31c, 0x54, 0x3, 0x2, 0x2, 0x2, 0x31d,
0x31e, 0x7, 0x6e, 0x2, 0x2, 0x31e, 0x31f, 0x7, 0x6b, 0x2, 0x2, 0x31f,
0x320, 0x7, 0x75, 0x2, 0x2, 0x320, 0x321, 0x7, 0x76, 0x2, 0x2, 0x321,
0x56, 0x3, 0x2, 0x2, 0x2, 0x322, 0x323, 0x7, 0x74, 0x2, 0x2, 0x323,
0x324, 0x7, 0x63, 0x2, 0x2, 0x324, 0x325, 0x7, 0x79, 0x2, 0x2, 0x325,
0x326, 0x7, 0x61, 0x2, 0x2, 0x326, 0x327, 0x7, 0x6b, 0x2, 0x2, 0x327,
0x328, 0x7, 0x70, 0x2, 0x2, 0x328, 0x329, 0x7, 0x72, 0x2, 0x2, 0x329,
0x32a, 0x7, 0x77, 0x2, 0x2, 0x32a, 0x32b, 0x7, 0x76, 0x2, 0x2, 0x32b,
0x58, 0x3, 0x2, 0x2, 0x2, 0x32c, 0x32d, 0x7, 0x77, 0x2, 0x2, 0x32d,
0x32e, 0x7, 0x70, 0x2, 0x2, 0x32e, 0x32f, 0x7, 0x6b, 0x2, 0x2, 0x32f,
0x330, 0x7, 0x65, 0x2, 0x2, 0x330, 0x331, 0x7, 0x6a, 0x2, 0x2, 0x331,
0x332, 0x7, 0x74, 0x2, 0x2, 0x332, 0x5a, 0x3, 0x2, 0x2, 0x2, 0x333,
0x334, 0x7, 0x65, 0x2, 0x2, 0x334, 0x335, 0x7, 0x63, 0x2, 0x2, 0x335,
0x336, 0x7, 0x6e, 0x2, 0x2, 0x336, 0x337, 0x7, 0x6e, 0x2, 0x2, 0x337,
0x338, 0x7, 0x63, 0x2, 0x2, 0x338, 0x339, 0x7, 0x64, 0x2, 0x2, 0x339,
0x33a, 0x7, 0x6e, 0x2, 0x2, 0x33a, 0x33b, 0x7, 0x67, 0x2, 0x2, 0x33b,
0x5c, 0x3, 0x2, 0x2, 0x2, 0x33c, 0x33d, 0x7, 0x68, 0x2, 0x2, 0x33d,
0x33e, 0x7, 0x71, 0x2, 0x2, 0x33e, 0x33f, 0x7, 0x74, 0x2, 0x2, 0x33f,
0x340, 0x7, 0x6f, 0x2, 0x2, 0x340, 0x341, 0x7, 0x63, 0x2, 0x2, 0x341,
0x342, 0x7, 0x76, 0x2, 0x2, 0x342, 0x5e, 0x3, 0x2, 0x2, 0x2, 0x343,
0x344, 0x7, 0x6e, 0x2, 0x2, 0x344, 0x345, 0x7, 0x71, 0x2, 0x2, 0x345,
0x346, 0x7, 0x65, 0x2, 0x2, 0x346, 0x347, 0x7, 0x63, 0x2, 0x2, 0x347,
0x348, 0x7, 0x6e, 0x2, 0x2, 0x348, 0x349, 0x7, 0x75, 0x2, 0x2, 0x349,
0x60, 0x3, 0x2, 0x2, 0x2, 0x34a, 0x34b, 0x7, 0x74, 0x2, 0x2, 0x34b,
0x34c, 0x7, 0x67, 0x2, 0x2, 0x34c, 0x34d, 0x7, 0x66, 0x2, 0x2, 0x34d,
0x34e, 0x7, 0x77, 0x2, 0x2, 0x34e, 0x34f, 0x7, 0x65, 0x2, 0x2, 0x34f,
0x350, 0x7, 0x67, 0x2, 0x2, 0x350, 0x62, 0x3, 0x2, 0x2, 0x2, 0x351,
0x352, 0x7, 0x77, 0x2, 0x2, 0x352, 0x353, 0x7, 0x70, 0x2, 0x2, 0x353,
0x354, 0x7, 0x6b, 0x2, 0x2, 0x354, 0x355, 0x7, 0x65, 0x2, 0x2, 0x355,
0x356, 0x7, 0x71, 0x2, 0x2, 0x356, 0x357, 0x7, 0x66, 0x2, 0x2, 0x357,
0x358, 0x7, 0x67, 0x2, 0x2, 0x358, 0x64, 0x3, 0x2, 0x2, 0x2, 0x359,
0x35a, 0x7, 0x65, 0x2, 0x2, 0x35a, 0x35b, 0x7, 0x6a, 0x2, 0x2, 0x35b,
0x35c, 0x7, 0x74, 0x2, 0x2, 0x35c, 0x66, 0x3, 0x2, 0x2, 0x2, 0x35d,
0x35e, 0x7, 0x68, 0x2, 0x2, 0x35e, 0x35f, 0x7, 0x74, 0x2, 0x2, 0x35f,
0x360, 0x7, 0x71, 0x2, 0x2, 0x360, 0x361, 0x7, 0x7c, 0x2, 0x2, 0x361,
0x362, 0x7, 0x67, 0x2, 0x2, 0x362, 0x363, 0x7, 0x70, 0x2, 0x2, 0x363,
0x364, 0x7, 0x75, 0x2, 0x2, 0x364, 0x365, 0x7, 0x67, 0x2, 0x2, 0x365,
0x366, 0x7, 0x76, 0x2, 0x2, 0x366, 0x68, 0x3, 0x2, 0x2, 0x2, 0x367,
0x368, 0x7, 0x6e, 0x2, 0x2, 0x368, 0x369, 0x7, 0x71, 0x2, 0x2, 0x369,
0x36a, 0x7, 0x70, 0x2, 0x2, 0x36a, 0x36b, 0x7, 0x69, 0x2, 0x2, 0x36b,
0x6a, 0x3, 0x2, 0x2, 0x2, 0x36c, 0x36d, 0x7, 0x74, 0x2, 0x2, 0x36d,
0x36e, 0x7, 0x67, 0x2, 0x2, 0x36e, 0x36f, 0x7, 0x6e, 0x2, 0x2, 0x36f,
0x370, 0x7, 0x71, 0x2, 0x2, 0x370, 0x371, 0x7, 0x63, 0x2, 0x2, 0x371,
0x372, 0x7, 0x66, 0x2, 0x2, 0x372, 0x6c, 0x3, 0x2, 0x2, 0x2, 0x373,
0x374, 0x7, 0x78, 0x2, 0x2, 0x374, 0x375, 0x7, 0x63, 0x2, 0x2, 0x375,
0x376, 0x7, 0x74, 0x2, 0x2, 0x376, 0x377, 0x7, 0x75, 0x2, 0x2, 0x377,
0x6
gitextract_b4lykdd7/
├── .astylerc
├── .github/
│ └── workflows/
│ └── main.yml
├── .gitignore
├── .gitmodules
├── ANTLR/
│ ├── Python3.g4
│ ├── Python3.interp
│ ├── Python3.tokens
│ ├── Python3BaseListener.cpp
│ ├── Python3BaseListener.h
│ ├── Python3Lexer.cpp
│ ├── Python3Lexer.h
│ ├── Python3Lexer.interp
│ ├── Python3Lexer.tokens
│ ├── Python3Listener.cpp
│ ├── Python3Listener.h
│ ├── Python3Parser.cpp
│ ├── Python3Parser.h
│ ├── customtoken.cpp
│ └── customtoken.h
├── ANTLR4runtime/
│ ├── CMakeLists.txt
│ ├── LICENSE.txt
│ ├── README.md
│ ├── VERSION
│ ├── cmake/
│ │ ├── Antlr4Package.md
│ │ ├── ExternalAntlr4Cpp.cmake
│ │ ├── FindANTLR.cmake
│ │ ├── README.md
│ │ ├── antlr4-generator.cmake.in
│ │ └── antlr4-runtime.cmake.in
│ ├── demo/
│ │ ├── CMakeLists.txt
│ │ ├── Linux/
│ │ │ └── main.cpp
│ │ ├── Mac/
│ │ │ ├── antlr4-cpp-demo/
│ │ │ │ └── main.cpp
│ │ │ ├── antlrcpp Tests/
│ │ │ │ ├── Info.plist
│ │ │ │ ├── InputHandlingTests.mm
│ │ │ │ ├── MiscClassTests.mm
│ │ │ │ └── antlrcpp_Tests.mm
│ │ │ ├── antlrcpp-demo.xcodeproj/
│ │ │ │ ├── project.pbxproj
│ │ │ │ ├── project.xcworkspace/
│ │ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ │ └── xcshareddata/
│ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ │ └── xcshareddata/
│ │ │ │ └── xcschemes/
│ │ │ │ ├── antlr4-cpp-demo.xcscheme
│ │ │ │ └── antlrcpp Tests.xcscheme
│ │ │ └── build.sh
│ │ ├── README.md
│ │ ├── TLexer.g4
│ │ ├── TLexer.tokens
│ │ ├── TParser.g4
│ │ ├── Windows/
│ │ │ ├── antlr4-cpp-demo/
│ │ │ │ ├── antlr4-cpp-demo-vs2015.vcxproj
│ │ │ │ ├── antlr4-cpp-demo-vs2015.vcxproj.filters
│ │ │ │ ├── antlr4-cpp-demo.vcxproj
│ │ │ │ ├── antlr4-cpp-demo.vcxproj.filters
│ │ │ │ └── main.cpp
│ │ │ ├── antlr4cpp-vs2013.sln
│ │ │ └── antlr4cpp-vs2015.sln
│ │ ├── generate.cmd
│ │ └── generate.sh
│ ├── deploy-macos.sh
│ ├── deploy-source.sh
│ ├── deploy-windows.cmd
│ └── runtime/
│ ├── CMakeCache.txt
│ ├── CMakeFiles/
│ │ ├── 3.16.3/
│ │ │ ├── CMakeCCompiler.cmake
│ │ │ ├── CMakeCXXCompiler.cmake
│ │ │ ├── CMakeSystem.cmake
│ │ │ ├── CompilerIdC/
│ │ │ │ └── CMakeCCompilerId.c
│ │ │ └── CompilerIdCXX/
│ │ │ └── CMakeCXXCompilerId.cpp
│ │ ├── CMakeDirectoryInformation.cmake
│ │ ├── CMakeRuleHashes.txt
│ │ ├── TargetDirectories.txt
│ │ ├── cmake.check_cache
│ │ └── progress.marks
│ ├── CMakeLists.txt
│ ├── CPackConfig.cmake
│ ├── CPackSourceConfig.cmake
│ ├── antlr4cpp-vs2013.vcxproj
│ ├── antlr4cpp-vs2013.vcxproj.filters
│ ├── antlr4cpp-vs2015.vcxproj
│ ├── antlr4cpp-vs2015.vcxproj.filters
│ ├── antlr4cpp-vs2017.vcxproj
│ ├── antlr4cpp-vs2017.vcxproj.filters
│ ├── antlr4cpp-vs2019.vcxproj
│ ├── antlr4cpp-vs2019.vcxproj.filters
│ ├── antlrcpp-ios/
│ │ ├── Info.plist
│ │ └── antlrcpp_ios.h
│ ├── antlrcpp.xcodeproj/
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace/
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata/
│ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcshareddata/
│ │ └── xcschemes/
│ │ ├── antlr4.xcscheme
│ │ ├── antlr4_ios.xcscheme
│ │ └── antlr4_static.xcscheme
│ ├── cmake_install.cmake
│ ├── install_manifest.txt
│ ├── runtime/
│ │ ├── CMakeFiles/
│ │ │ ├── CMakeDirectoryInformation.cmake
│ │ │ ├── antlr4_shared.dir/
│ │ │ │ ├── CXX.includecache
│ │ │ │ ├── DependInfo.cmake
│ │ │ │ ├── build.make
│ │ │ │ ├── cmake_clean.cmake
│ │ │ │ ├── depend.internal
│ │ │ │ ├── depend.make
│ │ │ │ ├── flags.make
│ │ │ │ ├── link.txt
│ │ │ │ └── progress.make
│ │ │ ├── antlr4_static.dir/
│ │ │ │ ├── CXX.includecache
│ │ │ │ ├── DependInfo.cmake
│ │ │ │ ├── build.make
│ │ │ │ ├── cmake_clean.cmake
│ │ │ │ ├── cmake_clean_target.cmake
│ │ │ │ ├── depend.internal
│ │ │ │ ├── depend.make
│ │ │ │ ├── flags.make
│ │ │ │ ├── link.txt
│ │ │ │ └── progress.make
│ │ │ ├── make_lib_output_dir.dir/
│ │ │ │ ├── DependInfo.cmake
│ │ │ │ ├── build.make
│ │ │ │ ├── cmake_clean.cmake
│ │ │ │ ├── depend.internal
│ │ │ │ ├── depend.make
│ │ │ │ └── progress.make
│ │ │ └── progress.marks
│ │ └── cmake_install.cmake
│ └── src/
│ ├── .vscode/
│ │ └── settings.json
│ ├── ANTLRErrorListener.cpp
│ ├── ANTLRErrorListener.h
│ ├── ANTLRErrorStrategy.cpp
│ ├── ANTLRErrorStrategy.h
│ ├── ANTLRFileStream.cpp
│ ├── ANTLRFileStream.h
│ ├── ANTLRInputStream.cpp
│ ├── ANTLRInputStream.h
│ ├── BailErrorStrategy.cpp
│ ├── BailErrorStrategy.h
│ ├── BaseErrorListener.cpp
│ ├── BaseErrorListener.h
│ ├── BufferedTokenStream.cpp
│ ├── BufferedTokenStream.h
│ ├── CharStream.cpp
│ ├── CharStream.h
│ ├── CommonToken.cpp
│ ├── CommonToken.h
│ ├── CommonTokenFactory.cpp
│ ├── CommonTokenFactory.h
│ ├── CommonTokenStream.cpp
│ ├── CommonTokenStream.h
│ ├── ConsoleErrorListener.cpp
│ ├── ConsoleErrorListener.h
│ ├── DefaultErrorStrategy.cpp
│ ├── DefaultErrorStrategy.h
│ ├── DiagnosticErrorListener.cpp
│ ├── DiagnosticErrorListener.h
│ ├── Exceptions.cpp
│ ├── Exceptions.h
│ ├── FailedPredicateException.cpp
│ ├── FailedPredicateException.h
│ ├── InputMismatchException.cpp
│ ├── InputMismatchException.h
│ ├── IntStream.cpp
│ ├── IntStream.h
│ ├── InterpreterRuleContext.cpp
│ ├── InterpreterRuleContext.h
│ ├── Lexer.cpp
│ ├── Lexer.h
│ ├── LexerInterpreter.cpp
│ ├── LexerInterpreter.h
│ ├── LexerNoViableAltException.cpp
│ ├── LexerNoViableAltException.h
│ ├── ListTokenSource.cpp
│ ├── ListTokenSource.h
│ ├── NoViableAltException.cpp
│ ├── NoViableAltException.h
│ ├── Parser.cpp
│ ├── Parser.h
│ ├── ParserInterpreter.cpp
│ ├── ParserInterpreter.h
│ ├── ParserRuleContext.cpp
│ ├── ParserRuleContext.h
│ ├── ProxyErrorListener.cpp
│ ├── ProxyErrorListener.h
│ ├── RecognitionException.cpp
│ ├── RecognitionException.h
│ ├── Recognizer.cpp
│ ├── Recognizer.h
│ ├── RuleContext.cpp
│ ├── RuleContext.h
│ ├── RuleContextWithAltNum.cpp
│ ├── RuleContextWithAltNum.h
│ ├── RuntimeMetaData.cpp
│ ├── RuntimeMetaData.h
│ ├── Token.cpp
│ ├── Token.h
│ ├── TokenFactory.h
│ ├── TokenSource.cpp
│ ├── TokenSource.h
│ ├── TokenStream.cpp
│ ├── TokenStream.h
│ ├── TokenStreamRewriter.cpp
│ ├── TokenStreamRewriter.h
│ ├── UnbufferedCharStream.cpp
│ ├── UnbufferedCharStream.h
│ ├── UnbufferedTokenStream.cpp
│ ├── UnbufferedTokenStream.h
│ ├── Vocabulary.cpp
│ ├── Vocabulary.h
│ ├── WritableToken.cpp
│ ├── WritableToken.h
│ ├── antlr4-common.h
│ ├── antlr4-runtime.h
│ ├── atn/
│ │ ├── ATN.cpp
│ │ ├── ATN.h
│ │ ├── ATNConfig.cpp
│ │ ├── ATNConfig.h
│ │ ├── ATNConfigSet.cpp
│ │ ├── ATNConfigSet.h
│ │ ├── ATNDeserializationOptions.cpp
│ │ ├── ATNDeserializationOptions.h
│ │ ├── ATNDeserializer.cpp
│ │ ├── ATNDeserializer.h
│ │ ├── ATNSerializer.cpp
│ │ ├── ATNSerializer.h
│ │ ├── ATNSimulator.cpp
│ │ ├── ATNSimulator.h
│ │ ├── ATNState.cpp
│ │ ├── ATNState.h
│ │ ├── ATNType.h
│ │ ├── AbstractPredicateTransition.cpp
│ │ ├── AbstractPredicateTransition.h
│ │ ├── ActionTransition.cpp
│ │ ├── ActionTransition.h
│ │ ├── AmbiguityInfo.cpp
│ │ ├── AmbiguityInfo.h
│ │ ├── ArrayPredictionContext.cpp
│ │ ├── ArrayPredictionContext.h
│ │ ├── AtomTransition.cpp
│ │ ├── AtomTransition.h
│ │ ├── BasicBlockStartState.cpp
│ │ ├── BasicBlockStartState.h
│ │ ├── BasicState.cpp
│ │ ├── BasicState.h
│ │ ├── BlockEndState.cpp
│ │ ├── BlockEndState.h
│ │ ├── BlockStartState.cpp
│ │ ├── BlockStartState.h
│ │ ├── ContextSensitivityInfo.cpp
│ │ ├── ContextSensitivityInfo.h
│ │ ├── DecisionEventInfo.cpp
│ │ ├── DecisionEventInfo.h
│ │ ├── DecisionInfo.cpp
│ │ ├── DecisionInfo.h
│ │ ├── DecisionState.cpp
│ │ ├── DecisionState.h
│ │ ├── EmptyPredictionContext.cpp
│ │ ├── EmptyPredictionContext.h
│ │ ├── EpsilonTransition.cpp
│ │ ├── EpsilonTransition.h
│ │ ├── ErrorInfo.cpp
│ │ ├── ErrorInfo.h
│ │ ├── LL1Analyzer.cpp
│ │ ├── LL1Analyzer.h
│ │ ├── LexerATNConfig.cpp
│ │ ├── LexerATNConfig.h
│ │ ├── LexerATNSimulator.cpp
│ │ ├── LexerATNSimulator.h
│ │ ├── LexerAction.cpp
│ │ ├── LexerAction.h
│ │ ├── LexerActionExecutor.cpp
│ │ ├── LexerActionExecutor.h
│ │ ├── LexerActionType.h
│ │ ├── LexerChannelAction.cpp
│ │ ├── LexerChannelAction.h
│ │ ├── LexerCustomAction.cpp
│ │ ├── LexerCustomAction.h
│ │ ├── LexerIndexedCustomAction.cpp
│ │ ├── LexerIndexedCustomAction.h
│ │ ├── LexerModeAction.cpp
│ │ ├── LexerModeAction.h
│ │ ├── LexerMoreAction.cpp
│ │ ├── LexerMoreAction.h
│ │ ├── LexerPopModeAction.cpp
│ │ ├── LexerPopModeAction.h
│ │ ├── LexerPushModeAction.cpp
│ │ ├── LexerPushModeAction.h
│ │ ├── LexerSkipAction.cpp
│ │ ├── LexerSkipAction.h
│ │ ├── LexerTypeAction.cpp
│ │ ├── LexerTypeAction.h
│ │ ├── LookaheadEventInfo.cpp
│ │ ├── LookaheadEventInfo.h
│ │ ├── LoopEndState.cpp
│ │ ├── LoopEndState.h
│ │ ├── NotSetTransition.cpp
│ │ ├── NotSetTransition.h
│ │ ├── OrderedATNConfigSet.cpp
│ │ ├── OrderedATNConfigSet.h
│ │ ├── ParseInfo.cpp
│ │ ├── ParseInfo.h
│ │ ├── ParserATNSimulator.cpp
│ │ ├── ParserATNSimulator.h
│ │ ├── PlusBlockStartState.cpp
│ │ ├── PlusBlockStartState.h
│ │ ├── PlusLoopbackState.cpp
│ │ ├── PlusLoopbackState.h
│ │ ├── PrecedencePredicateTransition.cpp
│ │ ├── PrecedencePredicateTransition.h
│ │ ├── PredicateEvalInfo.cpp
│ │ ├── PredicateEvalInfo.h
│ │ ├── PredicateTransition.cpp
│ │ ├── PredicateTransition.h
│ │ ├── PredictionContext.cpp
│ │ ├── PredictionContext.h
│ │ ├── PredictionMode.cpp
│ │ ├── PredictionMode.h
│ │ ├── ProfilingATNSimulator.cpp
│ │ ├── ProfilingATNSimulator.h
│ │ ├── RangeTransition.cpp
│ │ ├── RangeTransition.h
│ │ ├── RuleStartState.cpp
│ │ ├── RuleStartState.h
│ │ ├── RuleStopState.cpp
│ │ ├── RuleStopState.h
│ │ ├── RuleTransition.cpp
│ │ ├── RuleTransition.h
│ │ ├── SemanticContext.cpp
│ │ ├── SemanticContext.h
│ │ ├── SetTransition.cpp
│ │ ├── SetTransition.h
│ │ ├── SingletonPredictionContext.cpp
│ │ ├── SingletonPredictionContext.h
│ │ ├── StarBlockStartState.cpp
│ │ ├── StarBlockStartState.h
│ │ ├── StarLoopEntryState.cpp
│ │ ├── StarLoopEntryState.h
│ │ ├── StarLoopbackState.cpp
│ │ ├── StarLoopbackState.h
│ │ ├── TokensStartState.cpp
│ │ ├── TokensStartState.h
│ │ ├── Transition.cpp
│ │ ├── Transition.h
│ │ ├── WildcardTransition.cpp
│ │ └── WildcardTransition.h
│ ├── dfa/
│ │ ├── DFA.cpp
│ │ ├── DFA.h
│ │ ├── DFASerializer.cpp
│ │ ├── DFASerializer.h
│ │ ├── DFAState.cpp
│ │ ├── DFAState.h
│ │ ├── LexerDFASerializer.cpp
│ │ └── LexerDFASerializer.h
│ ├── misc/
│ │ ├── InterpreterDataReader.cpp
│ │ ├── InterpreterDataReader.h
│ │ ├── Interval.cpp
│ │ ├── Interval.h
│ │ ├── IntervalSet.cpp
│ │ ├── IntervalSet.h
│ │ ├── MurmurHash.cpp
│ │ ├── MurmurHash.h
│ │ ├── Predicate.cpp
│ │ └── Predicate.h
│ ├── support/
│ │ ├── Any.cpp
│ │ ├── Any.h
│ │ ├── Arrays.cpp
│ │ ├── Arrays.h
│ │ ├── BitSet.h
│ │ ├── CPPUtils.cpp
│ │ ├── CPPUtils.h
│ │ ├── Declarations.h
│ │ ├── StringUtils.cpp
│ │ ├── StringUtils.h
│ │ ├── guid.cpp
│ │ └── guid.h
│ └── tree/
│ ├── AbstractParseTreeVisitor.h
│ ├── ErrorNode.cpp
│ ├── ErrorNode.h
│ ├── ErrorNodeImpl.cpp
│ ├── ErrorNodeImpl.h
│ ├── IterativeParseTreeWalker.cpp
│ ├── IterativeParseTreeWalker.h
│ ├── ParseTree.cpp
│ ├── ParseTree.h
│ ├── ParseTreeListener.cpp
│ ├── ParseTreeListener.h
│ ├── ParseTreeProperty.h
│ ├── ParseTreeVisitor.cpp
│ ├── ParseTreeVisitor.h
│ ├── ParseTreeWalker.cpp
│ ├── ParseTreeWalker.h
│ ├── TerminalNode.cpp
│ ├── TerminalNode.h
│ ├── TerminalNodeImpl.cpp
│ ├── TerminalNodeImpl.h
│ ├── Trees.cpp
│ ├── Trees.h
│ ├── pattern/
│ │ ├── Chunk.cpp
│ │ ├── Chunk.h
│ │ ├── ParseTreeMatch.cpp
│ │ ├── ParseTreeMatch.h
│ │ ├── ParseTreePattern.cpp
│ │ ├── ParseTreePattern.h
│ │ ├── ParseTreePatternMatcher.cpp
│ │ ├── ParseTreePatternMatcher.h
│ │ ├── RuleTagToken.cpp
│ │ ├── RuleTagToken.h
│ │ ├── TagChunk.cpp
│ │ ├── TagChunk.h
│ │ ├── TextChunk.cpp
│ │ ├── TextChunk.h
│ │ ├── TokenTagToken.cpp
│ │ └── TokenTagToken.h
│ └── xpath/
│ ├── XPath.cpp
│ ├── XPath.h
│ ├── XPathElement.cpp
│ ├── XPathElement.h
│ ├── XPathLexer.cpp
│ ├── XPathLexer.g4
│ ├── XPathLexer.h
│ ├── XPathLexer.tokens
│ ├── XPathLexerErrorListener.cpp
│ ├── XPathLexerErrorListener.h
│ ├── XPathRuleAnywhereElement.cpp
│ ├── XPathRuleAnywhereElement.h
│ ├── XPathRuleElement.cpp
│ ├── XPathRuleElement.h
│ ├── XPathTokenAnywhereElement.cpp
│ ├── XPathTokenAnywhereElement.h
│ ├── XPathTokenElement.cpp
│ ├── XPathTokenElement.h
│ ├── XPathWildcardAnywhereElement.cpp
│ ├── XPathWildcardAnywhereElement.h
│ ├── XPathWildcardElement.cpp
│ └── XPathWildcardElement.h
├── About.htm
├── CMakeLists.txt
├── CodeEditor/
│ ├── antlrsyntaxhighlighter.cpp
│ ├── antlrsyntaxhighlighter.h
│ ├── codeeditor.cpp
│ ├── codeeditor.h
│ ├── codelineedit.cpp
│ └── codelineedit.h
├── Features/
│ ├── autocomplete.txt
│ ├── snippets.cpp
│ ├── snippets.h
│ ├── xquestion.cpp
│ ├── xquestion.h
│ ├── xtute.cpp
│ └── xtute.h
├── Icons/
│ └── PyRunImg.icns
├── LICENSE
├── PyRun.pro
├── PyRunResources.qrc
├── PythonAccess/
│ ├── emb.cpp
│ ├── emb.h
│ ├── jedi.cpp
│ ├── jedi.h
│ ├── pythonworker.cpp
│ └── pythonworker.h
├── README.md
├── UI/
│ ├── mainview.cpp
│ ├── mainview.h
│ └── mainview.ui
├── WindowsResources/
│ ├── win_rsrc.rc
│ └── xpmanifest.xml
├── _config.yml
├── appveyor.yml
├── build.cmd
├── build.sh
├── ep_jedi.py
├── ep_runner.py
├── main.cpp
└── share/
└── expressPython.desktop
SYMBOL INDEX (472 symbols across 234 files)
FILE: ANTLR/Python3BaseListener.h
function class (line 16) | class Python3BaseListener : public Python3Listener {
FILE: ANTLR/Python3Listener.h
function class (line 14) | class Python3Listener : public antlr4::tree::ParseTreeListener {
FILE: ANTLR/Python3Parser.h
function virtual (line 101) | virtual std::string getGrammarFileName() const override;
function virtual (line 104) | virtual const std::vector<std::string>& getRuleNames() const override;
function class (line 210) | class File_inputContext : public antlr4::ParserRuleContext {
function virtual (line 230) | virtual size_t getRuleIndex() const override;
function class (line 261) | class DecoratorsContext : public antlr4::ParserRuleContext {
function virtual (line 278) | virtual size_t getRuleIndex() const override;
function class (line 305) | class FuncdefContext : public antlr4::ParserRuleContext {
function class (line 324) | class ParametersContext : public antlr4::ParserRuleContext {
function class (line 339) | class TypedargslistContext : public antlr4::ParserRuleContext {
function class (line 361) | class TfpdefContext : public antlr4::ParserRuleContext {
function class (line 376) | class VarargslistContext : public antlr4::ParserRuleContext {
function class (line 398) | class VfpdefContext : public antlr4::ParserRuleContext {
function virtual (line 414) | virtual size_t getRuleIndex() const override;
function virtual (line 445) | virtual size_t getRuleIndex() const override;
function class (line 483) | class AnnassignContext : public antlr4::ParserRuleContext {
function class (line 499) | class Testlist_star_exprContext : public antlr4::ParserRuleContext {
function class (line 517) | class AugassignContext : public antlr4::ParserRuleContext {
function class (line 542) | class Del_stmtContext : public antlr4::ParserRuleContext {
function class (line 556) | class Pass_stmtContext : public antlr4::ParserRuleContext {
function virtual (line 572) | virtual size_t getRuleIndex() const override;
function class (line 599) | class Continue_stmtContext : public antlr4::ParserRuleContext {
function class (line 612) | class Return_stmtContext : public antlr4::ParserRuleContext {
function virtual (line 629) | virtual size_t getRuleIndex() const override;
function virtual (line 658) | virtual size_t getRuleIndex() const override;
function class (line 683) | class Import_fromContext : public antlr4::ParserRuleContext {
function class (line 706) | class Import_as_nameContext : public antlr4::ParserRuleContext {
function virtual (line 724) | virtual size_t getRuleIndex() const override;
function class (line 752) | class Dotted_as_namesContext : public antlr4::ParserRuleContext {
function class (line 768) | class Dotted_nameContext : public antlr4::ParserRuleContext {
function class (line 784) | class Global_stmtContext : public antlr4::ParserRuleContext {
function class (line 801) | class Nonlocal_stmtContext : public antlr4::ParserRuleContext {
function class (line 818) | class Assert_stmtContext : public antlr4::ParserRuleContext {
function virtual (line 837) | virtual size_t getRuleIndex() const override;
function class (line 871) | class If_stmtContext : public antlr4::ParserRuleContext {
function class (line 893) | class While_stmtContext : public antlr4::ParserRuleContext {
function class (line 912) | class For_stmtContext : public antlr4::ParserRuleContext {
function class (line 933) | class Try_stmtContext : public antlr4::ParserRuleContext {
function class (line 954) | class With_stmtContext : public antlr4::ParserRuleContext {
function virtual (line 976) | virtual size_t getRuleIndex() const override;
function virtual (line 1007) | virtual size_t getRuleIndex() const override;
function virtual (line 1043) | virtual size_t getRuleIndex() const override;
function class (line 1070) | class Lambdef_nocondContext : public antlr4::ParserRuleContext {
function class (line 1086) | class Or_testContext : public antlr4::ParserRuleContext {
function class (line 1102) | class And_testContext : public antlr4::ParserRuleContext {
function class (line 1118) | class Not_testContext : public antlr4::ParserRuleContext {
function class (line 1133) | class ComparisonContext : public antlr4::ParserRuleContext {
function class (line 1149) | class Comp_opContext : public antlr4::ParserRuleContext {
function class (line 1171) | class Star_exprContext : public antlr4::ParserRuleContext {
function class (line 1185) | class ExprContext : public antlr4::ParserRuleContext {
function class (line 1201) | class Xor_exprContext : public antlr4::ParserRuleContext {
function class (line 1217) | class And_exprContext : public antlr4::ParserRuleContext {
function class (line 1233) | class Shift_exprContext : public antlr4::ParserRuleContext {
function class (line 1251) | class Arith_exprContext : public antlr4::ParserRuleContext {
function class (line 1269) | class TermContext : public antlr4::ParserRuleContext {
function virtual (line 1328) | virtual size_t getRuleIndex() const override;
function class (line 1370) | class Testlist_compContext : public antlr4::ParserRuleContext {
function class (line 1389) | class TrailerContext : public antlr4::ParserRuleContext {
function class (line 1409) | class SubscriptlistContext : public antlr4::ParserRuleContext {
function class (line 1425) | class SubscriptContext : public antlr4::ParserRuleContext {
function class (line 1441) | class SliceopContext : public antlr4::ParserRuleContext {
function class (line 1455) | class ExprlistContext : public antlr4::ParserRuleContext {
function class (line 1473) | class TestlistContext : public antlr4::ParserRuleContext {
function class (line 1489) | class DictorsetmakerContext : public antlr4::ParserRuleContext {
function class (line 1514) | class ClassdefContext : public antlr4::ParserRuleContext {
function class (line 1533) | class ArglistContext : public antlr4::ParserRuleContext {
function class (line 1549) | class ArgumentContext : public antlr4::ParserRuleContext {
function class (line 1567) | class Comp_iterContext : public antlr4::ParserRuleContext {
FILE: ANTLR/customtoken.cpp
function QString (line 7) | QString CustomToken::getText() {
FILE: ANTLR/customtoken.h
function class (line 6) | class CustomToken
FILE: ANTLR4runtime/demo/Linux/main.cpp
function main (line 22) | int main(int , const char **) {
FILE: ANTLR4runtime/demo/Mac/antlr4-cpp-demo/main.cpp
function main (line 22) | int main(int , const char **) {
FILE: ANTLR4runtime/demo/Windows/antlr4-cpp-demo/main.cpp
function main (line 26) | int main(int argc, const char * argv[]) {
FILE: ANTLR4runtime/runtime/CMakeFiles/3.16.3/CompilerIdC/CMakeCCompilerId.c
function main (line 640) | void main() {}
FILE: ANTLR4runtime/runtime/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp
function main (line 637) | int main(int argc, char* argv[])
FILE: ANTLR4runtime/runtime/src/ANTLRErrorListener.h
function namespace (line 10) | namespace antlrcpp {
function namespace (line 14) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/ANTLRErrorStrategy.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/ANTLRFileStream.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/ANTLRInputStream.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/BailErrorStrategy.cpp
function Token (line 36) | Token* BailErrorStrategy::recoverInline(Parser *recognizer) {
FILE: ANTLR4runtime/runtime/src/BailErrorStrategy.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/BaseErrorListener.h
function namespace (line 10) | namespace antlrcpp {
function namespace (line 14) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/BufferedTokenStream.cpp
function TokenSource (line 22) | TokenSource* BufferedTokenStream::getTokenSource() const {
function Token (line 114) | Token* BufferedTokenStream::get(size_t i) const {
function Token (line 150) | Token* BufferedTokenStream::LB(size_t k) {
function Token (line 157) | Token* BufferedTokenStream::LT(ssize_t k) {
FILE: ANTLR4runtime/runtime/src/BufferedTokenStream.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/CharStream.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/CommonToken.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/CommonTokenFactory.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/CommonTokenStream.cpp
function Token (line 23) | Token* CommonTokenStream::LB(size_t k) {
function Token (line 43) | Token* CommonTokenStream::LT(ssize_t k) {
FILE: ANTLR4runtime/runtime/src/CommonTokenStream.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/ConsoleErrorListener.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/DefaultErrorStrategy.cpp
function Token (line 193) | Token* DefaultErrorStrategy::recoverInline(Parser *recognizer) {
function Token (line 229) | Token* DefaultErrorStrategy::singleTokenDeletion(Parser *recognizer) {
function Token (line 243) | Token* DefaultErrorStrategy::getMissingSymbol(Parser *recognizer) {
FILE: ANTLR4runtime/runtime/src/DefaultErrorStrategy.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/DiagnosticErrorListener.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/Exceptions.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/FailedPredicateException.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/InputMismatchException.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/IntStream.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/InterpreterRuleContext.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/Lexer.cpp
function CharStream (line 152) | CharStream* Lexer::getInputStream() {
function Token (line 160) | Token* Lexer::emit2() {
function Token (line 166) | Token* Lexer::emitEOF() {
FILE: ANTLR4runtime/runtime/src/Lexer.h
function namespace (line 15) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/LexerInterpreter.h
function namespace (line 12) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/LexerNoViableAltException.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/ListTokenSource.cpp
function CharStream (line 61) | CharStream *ListTokenSource::getInputStream() {
FILE: ANTLR4runtime/runtime/src/ListTokenSource.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/NoViableAltException.cpp
function buildConfigsRef (line 16) | Ref<atn::ATNConfigSet> buildConfigsRef(atn::ATNConfigSet *configs, bool ...
function Token (line 40) | Token* NoViableAltException::getStartToken() const {
FILE: ANTLR4runtime/runtime/src/NoViableAltException.h
function namespace (line 12) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/Parser.cpp
function Token (line 108) | Token* Parser::match(size_t ttype) {
function Token (line 127) | Token* Parser::matchWildcard() {
function IntStream (line 263) | IntStream* Parser::getInputStream() {
function TokenStream (line 271) | TokenStream* Parser::getTokenStream() {
function Token (line 281) | Token* Parser::getCurrentToken() {
function Token (line 298) | Token* Parser::consume() {
function ParserRuleContext (line 441) | ParserRuleContext* Parser::getInvokingContext(size_t ruleIndex) {
function ParserRuleContext (line 454) | ParserRuleContext* Parser::getContext() {
function ParserRuleContext (line 526) | ParserRuleContext* Parser::getRuleContext() {
FILE: ANTLR4runtime/runtime/src/Parser.h
function namespace (line 15) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/ParserInterpreter.cpp
function ParserRuleContext (line 91) | ParserRuleContext* ParserInterpreter::parse(size_t startRuleIndex) {
function InterpreterRuleContext (line 154) | InterpreterRuleContext* ParserInterpreter::getRootContext() {
function InterpreterRuleContext (line 258) | InterpreterRuleContext* ParserInterpreter::createInterpreterRuleContext(...
function Token (line 304) | Token* ParserInterpreter::recoverInline() {
FILE: ANTLR4runtime/runtime/src/ParserInterpreter.h
function namespace (line 14) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/ParserRuleContext.cpp
function RuleContext (line 68) | RuleContext* ParserRuleContext::addChild(RuleContext *ruleInvocation) {
function Token (line 126) | Token* ParserRuleContext::getStart() {
function Token (line 130) | Token* ParserRuleContext::getStop() {
FILE: ANTLR4runtime/runtime/src/ParserRuleContext.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/ProxyErrorListener.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/RecognitionException.cpp
function RuleContext (line 48) | RuleContext* RecognitionException::getCtx() const {
function IntStream (line 52) | IntStream* RecognitionException::getInputStream() const {
function Token (line 56) | Token* RecognitionException::getOffendingToken() const {
function Recognizer (line 60) | Recognizer* RecognitionException::getRecognizer() const {
FILE: ANTLR4runtime/runtime/src/RecognitionException.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/Recognizer.cpp
function ProxyErrorListener (line 140) | ProxyErrorListener& Recognizer::getErrorListenerDispatch() {
FILE: ANTLR4runtime/runtime/src/Recognizer.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/RuleContext.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/RuleContextWithAltNum.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/RuntimeMetaData.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/Token.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/TokenFactory.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/TokenSource.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/TokenStream.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/TokenStreamRewriter.cpp
function TokenStream (line 103) | TokenStream *TokenStreamRewriter::getTokenStream() {
FILE: ANTLR4runtime/runtime/src/TokenStreamRewriter.h
function namespace (line 8) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/UnbufferedCharStream.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/UnbufferedTokenStream.cpp
function Token (line 32) | Token* UnbufferedTokenStream::get(size_t i) const
function Token (line 42) | Token* UnbufferedTokenStream::LT(ssize_t i)
function TokenSource (line 67) | TokenSource* UnbufferedTokenStream::getTokenSource() const
FILE: ANTLR4runtime/runtime/src/UnbufferedTokenStream.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/Vocabulary.cpp
function Vocabulary (line 28) | Vocabulary Vocabulary::fromTokenNames(const std::vector<std::string> &to...
FILE: ANTLR4runtime/runtime/src/Vocabulary.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/WritableToken.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/antlr4-common.h
type __int64 (line 55) | typedef __int64 ssize_t;
type __int32 (line 57) | typedef __int32 ssize_t;
type std (line 64) | typedef std::basic_string<__int32> i32string;
type i32string (line 66) | typedef i32string UTF32String;
type std (line 68) | typedef std::u32string UTF32String;
function namespace (line 83) | namespace std {
type std (line 89) | typedef std::u32string UTF32String;
type std (line 98) | typedef std::u32string UTF32String;
FILE: ANTLR4runtime/runtime/src/atn/ATN.cpp
function ATN (line 51) | ATN& ATN::operator = (ATN &other) NOEXCEPT {
function ATN (line 69) | ATN& ATN::operator = (ATN &&other) NOEXCEPT {
function DecisionState (line 121) | DecisionState *ATN::getDecisionState(size_t decision) const {
FILE: ANTLR4runtime/runtime/src/atn/ATN.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ATNConfig.h
function namespace (line 8) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ATNConfigSet.cpp
function BitSet (line 100) | BitSet ATNConfigSet::getAlts() {
FILE: ANTLR4runtime/runtime/src/atn/ATNConfigSet.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ATNDeserializationOptions.cpp
function ATNDeserializationOptions (line 24) | const ATNDeserializationOptions& ATNDeserializationOptions::getDefaultOp...
FILE: ANTLR4runtime/runtime/src/atn/ATNDeserializationOptions.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ATNDeserializer.cpp
function deserializeInt32 (line 64) | uint32_t deserializeInt32(const std::vector<uint16_t>& data, size_t offs...
function readUnicodeInt (line 68) | ssize_t readUnicodeInt(const std::vector<uint16_t>& data, int& p) {
function readUnicodeInt32 (line 72) | ssize_t readUnicodeInt32(const std::vector<uint16_t>& data, int& p) {
function deserializeSets (line 81) | void deserializeSets(
function Guid (line 120) | Guid ATNDeserializer::ADDED_PRECEDENCE_TRANSITIONS() {
function Guid (line 124) | Guid ATNDeserializer::ADDED_LEXER_ACTIONS() {
function Guid (line 128) | Guid ATNDeserializer::ADDED_UNICODE_SMP() {
function Guid (line 132) | Guid ATNDeserializer::SERIALIZED_UUID() {
function Guid (line 136) | Guid ATNDeserializer::BASE_SERIALIZED_UUID() {
function ATN (line 158) | ATN ATNDeserializer::deserialize(const std::vector<uint16_t>& input) {
function Guid (line 633) | Guid ATNDeserializer::toUUID(const unsigned short *data, size_t offset) {
function Transition (line 638) | Transition *ATNDeserializer::edgeFactory(const ATN &atn, size_t type, si...
function ATNState (line 678) | ATNState* ATNDeserializer::stateFactory(size_t type, size_t ruleIndex) {
FILE: ANTLR4runtime/runtime/src/atn/ATNDeserializer.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ATNSerializer.h
function namespace (line 8) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ATNSimulator.cpp
function PredictionContextCache (line 33) | PredictionContextCache& ATNSimulator::getSharedContextCache() {
function ATN (line 43) | ATN ATNSimulator::deserialize(const std::vector<uint16_t> &data) {
function Transition (line 56) | Transition *ATNSimulator::edgeFactory(const ATN &atn, int type, int src,...
function ATNState (line 61) | ATNState *ATNSimulator::stateFactory(int type, int ruleIndex) {
FILE: ANTLR4runtime/runtime/src/atn/ATNSimulator.h
function namespace (line 13) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ATNState.cpp
function Transition (line 68) | Transition *ATNState::removeTransition(size_t index) {
FILE: ANTLR4runtime/runtime/src/atn/ATNState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ATNType.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/AbstractPredicateTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ActionTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/AmbiguityInfo.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ArrayPredictionContext.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/AtomTransition.cpp
function IntervalSet (line 21) | IntervalSet AtomTransition::label() const {
FILE: ANTLR4runtime/runtime/src/atn/AtomTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/BasicBlockStartState.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/BasicState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/BlockEndState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/BlockStartState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ContextSensitivityInfo.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/DecisionEventInfo.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/DecisionInfo.h
function namespace (line 13) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/DecisionState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/EmptyPredictionContext.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/EpsilonTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ErrorInfo.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LL1Analyzer.h
function namespace (line 13) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerATNConfig.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerATNSimulator.h
function namespace (line 12) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerActionExecutor.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerActionType.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerChannelAction.cpp
function LexerActionType (line 21) | LexerActionType LexerChannelAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerChannelAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerCustomAction.cpp
function LexerActionType (line 27) | LexerActionType LexerCustomAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerCustomAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerIndexedCustomAction.cpp
function LexerActionType (line 28) | LexerActionType LexerIndexedCustomAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerIndexedCustomAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerModeAction.cpp
function LexerActionType (line 22) | LexerActionType LexerModeAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerModeAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerMoreAction.cpp
function LexerActionType (line 23) | LexerActionType LexerMoreAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerMoreAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerPopModeAction.cpp
function LexerActionType (line 23) | LexerActionType LexerPopModeAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerPopModeAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerPushModeAction.cpp
function LexerActionType (line 22) | LexerActionType LexerPushModeAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerPushModeAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerSkipAction.cpp
function LexerActionType (line 23) | LexerActionType LexerSkipAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerSkipAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LexerTypeAction.cpp
function LexerActionType (line 22) | LexerActionType LexerTypeAction::getActionType() const {
FILE: ANTLR4runtime/runtime/src/atn/LexerTypeAction.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LookaheadEventInfo.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/LoopEndState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/NotSetTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/OrderedATNConfigSet.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ParseInfo.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ParserATNSimulator.cpp
function ATNConfigSet (line 560) | ATNConfigSet* ParserATNSimulator::removeAllConfigsNotInRuleStopState(ATN...
function BitSet (line 774) | BitSet ParserATNSimulator::evalSemanticContext(std::vector<dfa::DFAState...
function BitSet (line 1172) | BitSet ParserATNSimulator::getConflictingAlts(ATNConfigSet *configs) {
function BitSet (line 1177) | BitSet ParserATNSimulator::getConflictingAltsOrUniqueAlt(ATNConfigSet *c...
function NoViableAltException (line 1226) | NoViableAltException ParserATNSimulator::noViableAlt(TokenStream *input,...
function Parser (line 1347) | Parser* ParserATNSimulator::getParser() {
FILE: ANTLR4runtime/runtime/src/atn/ParserATNSimulator.h
function namespace (line 15) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/PlusBlockStartState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/PlusLoopbackState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/PrecedencePredicateTransition.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/PredicateEvalInfo.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/PredicateTransition.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/PredictionContext.h
function namespace (line 12) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/PredictionMode.cpp
type AltAndContextConfigHasher (line 18) | struct AltAndContextConfigHasher
type AltAndContextConfigComparer (line 32) | struct AltAndContextConfigComparer {
FILE: ANTLR4runtime/runtime/src/atn/PredictionMode.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/ProfilingATNSimulator.cpp
function DFAState (line 65) | DFAState* ProfilingATNSimulator::getExistingTargetState(DFAState *previo...
function DFAState (line 84) | DFAState* ProfilingATNSimulator::computeTargetState(DFA &dfa, DFAState *...
function DFAState (line 177) | DFAState* ProfilingATNSimulator::getCurrentState() const {
FILE: ANTLR4runtime/runtime/src/atn/ProfilingATNSimulator.h
function namespace (line 11) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/RangeTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/RuleStartState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/RuleStopState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/RuleTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/SemanticContext.h
type Hasher (line 22) | struct Hasher
type Comparer (line 29) | struct Comparer {
function virtual (line 116) | virtual size_t hashCode() const override;
function virtual (line 171) | virtual std::vector<Ref<SemanticContext>> getOperands() const override;
FILE: ANTLR4runtime/runtime/src/atn/SetTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/SingletonPredictionContext.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/StarBlockStartState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/StarLoopEntryState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/StarLoopbackState.cpp
function StarLoopEntryState (line 13) | StarLoopEntryState *StarLoopbackState::getLoopEntryState() {
FILE: ANTLR4runtime/runtime/src/atn/StarLoopbackState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/TokensStartState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/Transition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/atn/WildcardTransition.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/dfa/DFA.cpp
function DFAState (line 63) | DFAState* DFA::getPrecedenceStartState(int precedence) const {
FILE: ANTLR4runtime/runtime/src/dfa/DFA.h
function namespace (line 10) | namespace antlrcpp {
function namespace (line 14) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/dfa/DFASerializer.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/dfa/DFAState.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/dfa/LexerDFASerializer.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/misc/InterpreterDataReader.cpp
function InterpreterData (line 20) | InterpreterData InterpreterDataReader::parseFile(std::string const& file...
FILE: ANTLR4runtime/runtime/src/misc/InterpreterDataReader.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/misc/Interval.cpp
function Interval (line 79) | Interval Interval::Union(const Interval &other) const {
function Interval (line 83) | Interval Interval::intersection(const Interval &other) const {
FILE: ANTLR4runtime/runtime/src/misc/Interval.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/misc/IntervalSet.cpp
function IntervalSet (line 34) | IntervalSet& IntervalSet::operator=(const IntervalSet& other) {
function IntervalSet (line 39) | IntervalSet& IntervalSet::operator=(IntervalSet&& other) {
function IntervalSet (line 44) | IntervalSet IntervalSet::of(ssize_t a) {
function IntervalSet (line 48) | IntervalSet IntervalSet::of(ssize_t a, ssize_t b) {
function IntervalSet (line 113) | IntervalSet IntervalSet::Or(const std::vector<IntervalSet> &sets) {
function IntervalSet (line 121) | IntervalSet& IntervalSet::addAll(const IntervalSet &set) {
function IntervalSet (line 129) | IntervalSet IntervalSet::complement(ssize_t minElement, ssize_t maxEleme...
function IntervalSet (line 133) | IntervalSet IntervalSet::complement(const IntervalSet &vocabulary) const {
function IntervalSet (line 137) | IntervalSet IntervalSet::subtract(const IntervalSet &other) const {
function IntervalSet (line 141) | IntervalSet IntervalSet::subtract(const IntervalSet &left, const Interva...
function IntervalSet (line 210) | IntervalSet IntervalSet::Or(const IntervalSet &a) const {
function IntervalSet (line 217) | IntervalSet IntervalSet::And(const IntervalSet &other) const {
FILE: ANTLR4runtime/runtime/src/misc/IntervalSet.h
function namespace (line 11) | namespace antlr4 {
function namespace (line 188) | namespace std {
FILE: ANTLR4runtime/runtime/src/misc/MurmurHash.cpp
function rotl32 (line 35) | inline uint32_t rotl32 (uint32_t x, int8_t r)
function rotl64 (line 40) | inline uint64_t rotl64 (uint64_t x, int8_t r)
FILE: ANTLR4runtime/runtime/src/misc/MurmurHash.h
function class (line 13) | class ANTLR4CPP_PUBLIC MurmurHash {
FILE: ANTLR4runtime/runtime/src/misc/Predicate.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/support/Any.h
function namespace (line 17) | namespace antlrcpp {
function Base (line 137) | Base* clone() const
type StorageType (line 147) | typedef StorageType<U> T;
function Any (line 161) | inline
FILE: ANTLR4runtime/runtime/src/support/Arrays.h
function equals (line 18) | bool equals(const std::vector<T> &a, const std::vector<T> &b) {
function equals (line 45) | bool equals(const std::vector<Ref<T>> &a, const std::vector<Ref<T>> &b) {
FILE: ANTLR4runtime/runtime/src/support/BitSet.h
function namespace (line 10) | namespace antlrcpp {
FILE: ANTLR4runtime/runtime/src/support/CPPUtils.cpp
type antlrcpp (line 8) | namespace antlrcpp {
function join (line 10) | std::string join(std::vector<std::string> strings, const std::string &...
function toMap (line 23) | std::map<std::string, size_t> toMap(const std::vector<std::string> &ke...
function escapeWhitespace (line 31) | std::string escapeWhitespace(std::string str, bool escapeSpaces) {
function toHexString (line 67) | std::string toHexString(const int t) {
function arrayToString (line 73) | std::string arrayToString(const std::vector<std::string> &data) {
function replaceString (line 81) | std::string replaceString(const std::string &s, const std::string &fro...
function split (line 100) | std::vector<std::string> split(const std::string &s, const std::string...
function indent (line 128) | std::string indent(const std::string &s, const std::string &indentatio...
function get_nested (line 145) | std::exception_ptr get_nested(const T &/*e*/) {
function get_nested (line 155) | std::exception_ptr get_nested(const T &e) {
function what (line 166) | std::string what(std::exception_ptr eptr) {
function FinalAction (line 207) | FinalAction finally(std::function<void ()> f) {
FILE: ANTLR4runtime/runtime/src/support/CPPUtils.h
function namespace (line 10) | namespace antlrcpp {
FILE: ANTLR4runtime/runtime/src/support/Declarations.h
function namespace (line 8) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/support/StringUtils.cpp
type antlrcpp (line 8) | namespace antlrcpp {
function replaceAll (line 10) | void replaceAll(std::string& str, std::string const& from, std::string...
function ws2s (line 22) | std::string ws2s(std::wstring const& wstr) {
function s2ws (line 29) | std::wstring s2ws(const std::string &str) {
FILE: ANTLR4runtime/runtime/src/support/StringUtils.h
function namespace (line 10) | namespace antlrcpp {
FILE: ANTLR4runtime/runtime/src/support/guid.cpp
function ostream (line 46) | ostream &operator<<(ostream &s, const Guid &guid)
function hexDigitToChar (line 102) | static unsigned char hexDigitToChar(char ch)
function hexPairToChar (line 117) | static unsigned char hexPairToChar(char a, char b)
function Guid (line 164) | Guid &Guid::operator=(const Guid &other)
function Guid (line 192) | Guid GuidGenerator::newGuid()
function Guid (line 202) | Guid GuidGenerator::newGuid()
function Guid (line 233) | Guid GuidGenerator::newGuid()
function Guid (line 276) | Guid GuidGenerator::newGuid()
FILE: ANTLR4runtime/runtime/src/support/guid.h
function class (line 41) | class Guid
function class (line 93) | class GuidGenerator
FILE: ANTLR4runtime/runtime/src/tree/AbstractParseTreeVisitor.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/ErrorNode.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/ErrorNodeImpl.h
function namespace (line 14) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/IterativeParseTreeWalker.h
function namespace (line 37) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/ParseTree.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/ParseTreeListener.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/ParseTreeProperty.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/ParseTreeVisitor.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/ParseTreeWalker.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/TerminalNode.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/TerminalNodeImpl.cpp
function Token (line 19) | Token* TerminalNodeImpl::getSymbol() {
FILE: ANTLR4runtime/runtime/src/tree/TerminalNodeImpl.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/Trees.cpp
function _findAllNodes (line 141) | static void _findAllNodes(ParseTree *t, size_t index, bool findTokens, s...
function ParserRuleContext (line 206) | ParserRuleContext* Trees::getRootOfSubtreeEnclosingRegion(ParseTree *t, ...
function ParseTree (line 226) | ParseTree * Trees::findNodeSuchThat(ParseTree *t, Ref<Predicate> const& ...
FILE: ANTLR4runtime/runtime/src/tree/Trees.h
function namespace (line 12) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/pattern/Chunk.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/pattern/ParseTreeMatch.cpp
function ParseTree (line 25) | ParseTree* ParseTreeMatch::get(const std::string &label) {
function ParseTree (line 47) | ParseTree *ParseTreeMatch::getMismatchedNode() {
function ParseTreePattern (line 55) | const ParseTreePattern& ParseTreeMatch::getPattern() {
function ParseTree (line 59) | ParseTree * ParseTreeMatch::getTree() {
FILE: ANTLR4runtime/runtime/src/tree/pattern/ParseTreeMatch.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/pattern/ParseTreePattern.cpp
function ParseTreeMatch (line 28) | ParseTreeMatch ParseTreePattern::match(ParseTree *tree) {
function ParseTreePatternMatcher (line 50) | ParseTreePatternMatcher *ParseTreePattern::getMatcher() const {
function ParseTree (line 62) | ParseTree* ParseTreePattern::getPatternTree() const {
FILE: ANTLR4runtime/runtime/src/tree/pattern/ParseTreePattern.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/pattern/ParseTreePatternMatcher.cpp
function ParseTreeMatch (line 75) | ParseTreeMatch ParseTreePatternMatcher::match(ParseTree *tree, const std...
function ParseTreeMatch (line 80) | ParseTreeMatch ParseTreePatternMatcher::match(ParseTree *tree, const Par...
function ParseTreePattern (line 86) | ParseTreePattern ParseTreePatternMatcher::compile(const std::string &pat...
function Lexer (line 124) | Lexer* ParseTreePatternMatcher::getLexer() {
function Parser (line 128) | Parser* ParseTreePatternMatcher::getParser() {
function ParseTree (line 132) | ParseTree* ParseTreePatternMatcher::matchImpl(ParseTree *tree, ParseTree...
function RuleTagToken (line 223) | RuleTagToken* ParseTreePatternMatcher::getRuleTagToken(ParseTree *t) {
FILE: ANTLR4runtime/runtime/src/tree/pattern/ParseTreePatternMatcher.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/pattern/RuleTagToken.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/pattern/TagChunk.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/pattern/TextChunk.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/pattern/TokenTagToken.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPath.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathElement.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathLexer.h
function class (line 9) | class XPathLexer : public antlr4::Lexer {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathLexerErrorListener.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathRuleAnywhereElement.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathRuleElement.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathTokenAnywhereElement.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathTokenElement.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathWildcardAnywhereElement.h
function namespace (line 10) | namespace antlr4 {
FILE: ANTLR4runtime/runtime/src/tree/xpath/XPathWildcardElement.h
function namespace (line 10) | namespace antlr4 {
FILE: CodeEditor/antlrsyntaxhighlighter.cpp
function QTextCharFormat (line 326) | const QTextCharFormat
FILE: CodeEditor/antlrsyntaxhighlighter.h
function class (line 12) | class ANTLRSyntaxHighlighter : public QSyntaxHighlighter {
FILE: CodeEditor/codeeditor.cpp
function QCompleter (line 96) | QCompleter *CodeEditor::completer() const {
function QCompleter (line 100) | QCompleter *CodeEditor::jediCompleter() const {
function QString (line 122) | QString CodeEditor::textUnderCursor() const {
function QString (line 197) | QString CodeEditor::GetLine() {
function foreach (line 260) | foreach (QString line, lines) {
function foreach (line 277) | foreach (QString line, lines) {
FILE: CodeEditor/codeeditor.h
function QString (line 86) | QString textUnderCursor() const;
FILE: CodeEditor/codelineedit.cpp
function QSize (line 27) | QSize CodeLineEdit::sizeHint() const {
FILE: Features/snippets.cpp
function QString (line 62) | QString Snippets::GetSnippet(const QString &name, bool &success) {
FILE: Features/snippets.h
function class (line 13) | class Snippets : public QObject {
FILE: Features/xquestion.h
function class (line 6) | class XQuestion: public QObject {
FILE: Features/xtute.h
function class (line 21) | class XTute : public QObject {
FILE: PythonAccess/emb.cpp
type emb (line 19) | namespace emb {
function setMainView (line 22) | void setMainView(MainView *_mainView) {
function setWorker (line 25) | void setWorker(PythonWorker *_worker) {
function MainView (line 28) | MainView *getMainView() {
type StdOut (line 31) | struct StdOut {
function PyObject (line 34) | PyObject *StdOutWrite(PyObject *self, PyObject *args) {
function PyObject (line 47) | PyObject *StdOutFlush(PyObject *self, PyObject *args) {
function PyMODINIT_FUNC (line 103) | PyMODINIT_FUNC PyInitEmbConnect(void) {
function SetStdout (line 117) | void SetStdout(StdOutWriteType write) {
function SetIsInterruptedCallback (line 128) | void SetIsInterruptedCallback(IsInterruptedType cb) {
function ResetStdOut (line 131) | void ResetStdOut() {
function PyObject (line 143) | PyObject *ApiGetInput(PyObject *self, PyObject *args) {
function PyObject (line 150) | PyObject *ApiSetInput(PyObject *self, PyObject *args) {
function PyObject (line 160) | PyObject *ApiGetAppPath(PyObject *self, PyObject *args) {
function PyObject (line 168) | PyObject *ApiGetOutput(PyObject *self, PyObject *args) {
function PyObject (line 176) | PyObject *ApiSetOutput(PyObject *self, PyObject *args) {
function PyObject (line 186) | PyObject *ApiGetCode(PyObject *self, PyObject *args) {
function PyObject (line 194) | PyObject *ApiSetCode(PyObject *self, PyObject *args) {
function PyObject (line 205) | PyObject *ApiSetSearchRegex(PyObject *self, PyObject *args) {
function PyObject (line 216) | PyObject *ApiWriteOutput(PyObject *self, PyObject *args) {
function PyObject (line 227) | PyObject *ApiInterruptRequested(PyObject *self, PyObject *args) {
function PyObject (line 262) | PyObject *PyInitApiConnection(void) {
FILE: PythonAccess/emb.h
function namespace (line 7) | namespace emb {
FILE: PythonAccess/jedi.cpp
function QStringList (line 13) | QStringList Jedi::AutoComplete(const QString& code, long row, long col) {
FILE: PythonAccess/jedi.h
function class (line 18) | class Jedi : public QObject {
FILE: PythonAccess/pythonworker.cpp
function quit (line 36) | int quit(void *) {
FILE: PythonAccess/pythonworker.h
function class (line 11) | class PythonWorker : public QObject {
FILE: UI/mainview.cpp
function QString (line 253) | QString MainView::LoadFile(const QString &fileName, bool &success,
function QString (line 317) | QString MainView::GetInput() {
function QString (line 323) | QString MainView::GetOutput() {
function QString (line 329) | QString MainView::GetCode() {
FILE: UI/mainview.h
function namespace (line 40) | namespace Ui {
function class (line 46) | class MainView : public QMainWindow {
FILE: ep_jedi.py
function get_completions (line 14) | def get_completions(source, row, col, script_path=""):
function real (line 17) | def real(source, row, col, script_path=""):
FILE: ep_runner.py
function cls (line 47) | def cls(*args, **kwargs):
function exit (line 54) | def exit(*args, **kwargs):
function quit (line 61) | def quit(*args, **kwargs):
function escape_shell (line 81) | def escape_shell(single_arg):
function cat_cmd (line 93) | def cat_cmd(filename):
function sys_kill (line 100) | def sys_kill(pid):
function shell_execute (line 111) | def shell_execute(shell_cmd):
function python_cmd (line 115) | def python_cmd(filename):
function escape_nix (line 128) | def escape_nix(s):
function escape_win (line 132) | def escape_win(arg):
function double_escape_win (line 139) | def double_escape_win(arg):
function debug_print (line 152) | def debug_print(*args, **kwargs):
class CodeExecutor (line 165) | class CodeExecutor:
method __init__ (line 182) | def __init__(self):
method name (line 206) | def name():
method run (line 209) | def run(self, *args):
method write_files (line 229) | def write_files(self):
method start_workers (line 237) | def start_workers(self):
method reader (line 262) | def reader(self, pipe, store):
method writer (line 278) | def writer(self, pipe):
method kill (line 295) | def kill(self):
method clean (line 303) | def clean(self):
function runner (line 322) | def runner(executor_):
FILE: main.cpp
function main (line 16) | int main(int argc, char *argv[]) {
Condensed preview — 465 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (4,875K chars).
[
{
"path": ".astylerc",
"chars": 12,
"preview": "style=google"
},
{
"path": ".github/workflows/main.yml",
"chars": 510,
"preview": "name: CI\n\non:\n push:\n branches: \n - '*'\n pull_request:\n branches: \n - '*'\n\njobs:\n build:\n runs-on:"
},
{
"path": ".gitignore",
"chars": 1854,
"preview": "# Created by https://www.gitignore.io\n\n### C++ ###\n# Compiled Object files\n*.slo\n*.lo\n*.o\n*.obj\n\n# Precompiled Headers\n*"
},
{
"path": ".gitmodules",
"chars": 193,
"preview": "[submodule \"qtermwidget\"]\n\tpath = qtermwidget\n\turl = https://github.com/lxqt/qtermwidget\n[submodule \"lxqt-build-tools\"]\n"
},
{
"path": "ANTLR/Python3.g4",
"chars": 32939,
"preview": "/*\n * The MIT License (MIT)\n *\n * Copyright (c) 2014 by Bart Kiers\n *\n * Permission is hereby granted, free of charge, t"
},
{
"path": "ANTLR/Python3.interp",
"chars": 44400,
"preview": "token literal names:\nnull\nnull\nnull\nnull\nnull\nnull\nnull\nnull\nnull\nnull\nnull\n'divmod'\n'input'\n'open'\n'staticmethod'\n'all'"
},
{
"path": "ANTLR/Python3.tokens",
"chars": 6345,
"preview": "STRING_LONG=1\nSTRING_SHORT=2\nSTRING=3\nCOMMENTS=4\nNUMBER=5\nINTEGER=6\nHACKISH=7\nPRIVATE=8\nSPECIAL=9\nBUG=10\nDIVMOD=11\nINPUT"
},
{
"path": "ANTLR/Python3BaseListener.cpp",
"chars": 80,
"preview": "\n// Generated from Python3.g4 by ANTLR 4.8\n\n\n#include \"Python3BaseListener.h\"\n\n\n"
},
{
"path": "ANTLR/Python3BaseListener.h",
"chars": 15652,
"preview": "\n// Generated from Python3.g4 by ANTLR 4.8\n\n#pragma once\n\n\n#include \"antlr4-runtime.h\"\n#include \"Python3Listener.h\"\n\n\n/*"
},
{
"path": "ANTLR/Python3Lexer.cpp",
"chars": 170389,
"preview": "\n #include<bits/stdc++.h>\n #include \"Python3Parser.h\"\n using namespace std;\n using namespace antlr4;\n\n\n// Ge"
},
{
"path": "ANTLR/Python3Lexer.h",
"chars": 11171,
"preview": "\n #include<bits/stdc++.h>\n #include \"Python3Parser.h\"\n using namespace std;\n using namespace antlr4;\n\n\n// Ge"
},
{
"path": "ANTLR/Python3Lexer.interp",
"chars": 104035,
"preview": "token literal names:\nnull\nnull\nnull\nnull\nnull\nnull\nnull\nnull\nnull\nnull\nnull\n'divmod'\n'input'\n'open'\n'staticmethod'\n'all'"
},
{
"path": "ANTLR/Python3Lexer.tokens",
"chars": 6323,
"preview": "STRING_LONG=1\nSTRING_SHORT=2\nSTRING=3\nCOMMENTS=4\nNUMBER=5\nINTEGER=6\nHACKISH=7\nPRIVATE=8\nSPECIAL=9\nBUG=10\nDIVMOD=11\nINPUT"
},
{
"path": "ANTLR/Python3Listener.cpp",
"chars": 76,
"preview": "\n// Generated from Python3.g4 by ANTLR 4.8\n\n\n#include \"Python3Listener.h\"\n\n\n"
},
{
"path": "ANTLR/Python3Listener.h",
"chars": 13019,
"preview": "\n// Generated from Python3.g4 by ANTLR 4.8\n\n#pragma once\n\n\n#include \"antlr4-runtime.h\"\n#include \"Python3Parser.h\"\n\n\n/**\n"
},
{
"path": "ANTLR/Python3Parser.cpp",
"chars": 340669,
"preview": "\n// Generated from Python3.g4 by ANTLR 4.8\n\n\n#include \"Python3Listener.h\"\n\n#include \"Python3Parser.h\"\n\n\nusing namespace "
},
{
"path": "ANTLR/Python3Parser.h",
"chars": 63027,
"preview": "\n// Generated from Python3.g4 by ANTLR 4.8\n\n#pragma once\n\n\n#include \"antlr4-runtime.h\"\n\n\n\n\nclass Python3Parser : public"
},
{
"path": "ANTLR/customtoken.cpp",
"chars": 511,
"preview": "#include \"customtoken.h\"\n\nCustomToken::CustomToken(int type, int startIndex, int stopIndex, int lineNumber, QString text"
},
{
"path": "ANTLR/customtoken.h",
"chars": 425,
"preview": "#ifndef CUSTOMTOKEN_H\n#define CUSTOMTOKEN_H\n\n#include <QString>\n\nclass CustomToken\n{\nprivate:\n QString text;\n int "
},
{
"path": "ANTLR4runtime/CMakeLists.txt",
"chars": 7886,
"preview": "# -*- mode:cmake -*-\ncmake_minimum_required (VERSION 2.8)\n# 2.8 needed because of ExternalProject\n\n# Detect build type, "
},
{
"path": "ANTLR4runtime/LICENSE.txt",
"chars": 2699,
"preview": "[The \"BSD 3-clause license\"]\nCopyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n\nRedistribution and use in "
},
{
"path": "ANTLR4runtime/README.md",
"chars": 3627,
"preview": "# C++ target for ANTLR 4\n\nThis folder contains the C++ runtime support for ANTLR. See [the canonical antlr4 repository]"
},
{
"path": "ANTLR4runtime/VERSION",
"chars": 4,
"preview": "4.8\n"
},
{
"path": "ANTLR4runtime/cmake/Antlr4Package.md",
"chars": 4409,
"preview": "# CMake Antlr4 Package Usage\n\n## The `antlr4-generator` Package\n\nTo use the Package you must insert a \n```cmake\nfind_pac"
},
{
"path": "ANTLR4runtime/cmake/ExternalAntlr4Cpp.cmake",
"chars": 5189,
"preview": "cmake_minimum_required(VERSION 3.7)\n\ninclude(ExternalProject)\n\nset(ANTLR4_ROOT ${CMAKE_CURRENT_BINARY_DIR}/antlr4_runtim"
},
{
"path": "ANTLR4runtime/cmake/FindANTLR.cmake",
"chars": 4785,
"preview": "find_package(Java QUIET COMPONENTS Runtime)\n\nif(NOT ANTLR_EXECUTABLE)\n find_program(ANTLR_EXECUTABLE\n NAM"
},
{
"path": "ANTLR4runtime/cmake/README.md",
"chars": 6760,
"preview": "## Getting started with Antlr4Cpp\n\nHere is how you can use this external project to create the antlr4cpp demo to start y"
},
{
"path": "ANTLR4runtime/cmake/antlr4-generator.cmake.in",
"chars": 6774,
"preview": "set(ANTLR_VERSION @ANTLR_VERSION@)\n\n@PACKAGE_INIT@\n\nif (NOT ANTLR4_CPP_GENERATED_SRC_DIR)\n set(ANTLR4_GENERATED_SRC_DIR"
},
{
"path": "ANTLR4runtime/cmake/antlr4-runtime.cmake.in",
"chars": 272,
"preview": "set(ANTLR_VERSION @ANTLR_VERSION@)\n\n@PACKAGE_INIT@\n\nset_and_check(ANTLR4_INCLUDE_DIR \"@PACKAGE_ANTLR4_INCLUDE_DIR@\")\nset"
},
{
"path": "ANTLR4runtime/demo/CMakeLists.txt",
"chars": 2570,
"preview": "# -*- mode:cmake -*-\nif(NOT UNIX)\n message(WARNING \"Unsupported operating system\")\nendif()\n\nset(antlr4-demo-GENERATED_S"
},
{
"path": "ANTLR4runtime/demo/Linux/main.cpp",
"chars": 881,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/demo/Mac/antlr4-cpp-demo/main.cpp",
"chars": 868,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp Tests/Info.plist",
"chars": 733,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp Tests/InputHandlingTests.mm",
"chars": 5983,
"preview": "/*\n * [The \"BSD license\"]\n * Copyright (c) 2016 Mike Lischke\n * All rights reserved.\n *\n * Redistribution and use in "
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp Tests/MiscClassTests.mm",
"chars": 20187,
"preview": "/*\n * [The \"BSD license\"]\n * Copyright (c) 2016 Mike Lischke\n * All rights reserved.\n *\n * Redistribution and use in "
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp Tests/antlrcpp_Tests.mm",
"chars": 2060,
"preview": "/*\n * [The \"BSD license\"]\n * Copyright (c) 2015 Dan McLaughlin\n * All rights reserved.\n *\n * Redistribution and use i"
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp-demo.xcodeproj/project.pbxproj",
"chars": 25693,
"preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
"chars": 135,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n version = \"1.0\">\n <FileRef\n location = \"self:\">\n </FileRef"
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp-demo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
"chars": 238,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp-demo.xcodeproj/xcshareddata/xcschemes/antlr4-cpp-demo.xcscheme",
"chars": 3849,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n LastUpgradeVersion = \"1010\"\n version = \"1.3\">\n <BuildAction\n "
},
{
"path": "ANTLR4runtime/demo/Mac/antlrcpp-demo.xcodeproj/xcshareddata/xcschemes/antlrcpp Tests.xcscheme",
"chars": 1929,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n LastUpgradeVersion = \"1010\"\n version = \"1.3\">\n <BuildAction\n "
},
{
"path": "ANTLR4runtime/demo/Mac/build.sh",
"chars": 2336,
"preview": "#!/bin/sh\n# [The \"BSD license\"]\n# Copyright (c) 2013 Terence Parr\n# Copyright (c) 2013 Dan McLaughlin\n# All righ"
},
{
"path": "ANTLR4runtime/demo/README.md",
"chars": 845,
"preview": "## Demo application for the ANTLR 4 C++ target\n\nThis demo app shows how to build the ANTLR runtime both as dynamic and s"
},
{
"path": "ANTLR4runtime/demo/TLexer.g4",
"chars": 2080,
"preview": "lexer grammar TLexer;\n\n// These are all supported lexer sections:\n\n// Lexer file header. Appears at the top of h + cpp f"
},
{
"path": "ANTLR4runtime/demo/TLexer.tokens",
"chars": 454,
"preview": "DUMMY=1\nReturn=2\nContinue=3\nINT=4\nDigit=5\nID=6\nLessThan=7\nGreaterThan=8\nEqual=9\nAnd=10\nColon=11\nSemicolon=12\nPlus=13\nMin"
},
{
"path": "ANTLR4runtime/demo/TParser.g4",
"chars": 4186,
"preview": "parser grammar TParser;\n\noptions {\n\ttokenVocab = TLexer;\n}\n\n// These are all supported parser sections:\n\n// Parser file "
},
{
"path": "ANTLR4runtime/demo/Windows/antlr4-cpp-demo/antlr4-cpp-demo-vs2015.vcxproj",
"chars": 21117,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"14.0\" xmlns=\"http://schemas.micros"
},
{
"path": "ANTLR4runtime/demo/Windows/antlr4-cpp-demo/antlr4-cpp-demo-vs2015.vcxproj.filters",
"chars": 2401,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuil"
},
{
"path": "ANTLR4runtime/demo/Windows/antlr4-cpp-demo/antlr4-cpp-demo.vcxproj",
"chars": 20488,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"12.0\" xmlns=\"http://schemas.micros"
},
{
"path": "ANTLR4runtime/demo/Windows/antlr4-cpp-demo/antlr4-cpp-demo.vcxproj.filters",
"chars": 2401,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuil"
},
{
"path": "ANTLR4runtime/demo/Windows/antlr4-cpp-demo/main.cpp",
"chars": 1013,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/demo/Windows/antlr4cpp-vs2013.sln",
"chars": 3856,
"preview": "\nMicrosoft Visual Studio Solution File, Format Version 12.00\n# Visual Studio 2013\nVisualStudioVersion = 12.0.40629.0\nMi"
},
{
"path": "ANTLR4runtime/demo/Windows/antlr4cpp-vs2015.sln",
"chars": 3813,
"preview": "\nMicrosoft Visual Studio Solution File, Format Version 12.00\n# Visual Studio 14\nVisualStudioVersion = 14.0.25420.1\nMini"
},
{
"path": "ANTLR4runtime/demo/generate.cmd",
"chars": 768,
"preview": "@echo off\n:: Created 2016, Mike Lischke (public domain)\n\n:: This script is used to generate source files from the test g"
},
{
"path": "ANTLR4runtime/demo/generate.sh",
"chars": 2137,
"preview": "#!/bin/bash\nset -o errexit\n\n# Created 2016, Mike Lischke (public domain)\n\n# This script is used to generate source files"
},
{
"path": "ANTLR4runtime/deploy-macos.sh",
"chars": 588,
"preview": "#!/bin/bash\n\n# Clean left overs from previous builds if there are any\nrm -f -R antlr4-runtime build lib 2> /dev/null\nrm "
},
{
"path": "ANTLR4runtime/deploy-source.sh",
"chars": 569,
"preview": "#!/bin/bash\n\n# Zip it\nrm -f antlr4-cpp-runtime-source.zip\nzip -r antlr4-cpp-runtime-source.zip \"README.md\" \"cmake\" \"demo"
},
{
"path": "ANTLR4runtime/deploy-windows.cmd",
"chars": 2527,
"preview": "@echo off\nsetlocal\n\nif [%1] == [] goto Usage\n\nrem Clean left overs from previous builds if there are any\nif exist bin rm"
},
{
"path": "ANTLR4runtime/runtime/CMakeCache.txt",
"chars": 18538,
"preview": "# This is the CMakeCache file.\n# For build in directory: /home/harshit/ANTLR-Experiments/ANTLR modified Runtime/antlr4ru"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/3.16.3/CMakeCCompiler.cmake",
"chars": 2424,
"preview": "set(CMAKE_C_COMPILER \"/usr/bin/cc\")\nset(CMAKE_C_COMPILER_ARG1 \"\")\nset(CMAKE_C_COMPILER_ID \"GNU\")\nset(CMAKE_C_COMPILER_VE"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake",
"chars": 5448,
"preview": "set(CMAKE_CXX_COMPILER \"/usr/bin/c++\")\nset(CMAKE_CXX_COMPILER_ARG1 \"\")\nset(CMAKE_CXX_COMPILER_ID \"GNU\")\nset(CMAKE_CXX_CO"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/3.16.3/CMakeSystem.cmake",
"chars": 418,
"preview": "set(CMAKE_HOST_SYSTEM \"Linux-5.5.10-050510-generic\")\nset(CMAKE_HOST_SYSTEM_NAME \"Linux\")\nset(CMAKE_HOST_SYSTEM_VERSION \""
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/3.16.3/CompilerIdC/CMakeCCompilerId.c",
"chars": 20271,
"preview": "#ifdef __cplusplus\n# error \"A C++ compiler has been selected for C.\"\n#endif\n\n#if defined(__18CXX)\n# define ID_VOID_MAIN\n"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp",
"chars": 20091,
"preview": "/* This source file must have a .cpp extension so that all C++ compilers\n recognize the extension without flags. Borl"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/CMakeDirectoryInformation.cmake",
"chars": 720,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n# Relative path conv"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/CMakeRuleHashes.txt",
"chars": 102,
"preview": "# Hashes of file build rules.\nc68ea5d82f24588f0ceea48e0850a8e8 runtime/CMakeFiles/make_lib_output_dir\n"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/TargetDirectories.txt",
"chars": 2100,
"preview": "/home/harshit/ANTLR-Experiments/ANTLR modified Runtime/antlr4runtime/runtime/CMakeFiles/install/strip.dir\n/home/harshit/"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/cmake.check_cache",
"chars": 85,
"preview": "# This file is generated by cmake for dependency checking of the CMakeCache.txt file\n"
},
{
"path": "ANTLR4runtime/runtime/CMakeFiles/progress.marks",
"chars": 4,
"preview": "100\n"
},
{
"path": "ANTLR4runtime/runtime/CMakeLists.txt",
"chars": 4553,
"preview": "\ninclude_directories(\n ${PROJECT_SOURCE_DIR}/runtime/src\n ${PROJECT_SOURCE_DIR}/runtime/src/atn\n ${PROJECT_SOURCE_DIR"
},
{
"path": "ANTLR4runtime/runtime/CPackConfig.cmake",
"chars": 3884,
"preview": "# This file will be configured to contain variables for CPack. These variables\n# should be set in the CMake list file of"
},
{
"path": "ANTLR4runtime/runtime/CPackSourceConfig.cmake",
"chars": 4365,
"preview": "# This file will be configured to contain variables for CPack. These variables\n# should be set in the CMake list file of"
},
{
"path": "ANTLR4runtime/runtime/antlr4cpp-vs2013.vcxproj",
"chars": 33964,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"12.0\" xmlns=\"http://schemas.micros"
},
{
"path": "ANTLR4runtime/runtime/antlr4cpp-vs2013.vcxproj.filters",
"chars": 36613,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuil"
},
{
"path": "ANTLR4runtime/runtime/antlr4cpp-vs2015.vcxproj",
"chars": 34767,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"14.0\" xmlns=\"http://schemas.micros"
},
{
"path": "ANTLR4runtime/runtime/antlr4cpp-vs2015.vcxproj.filters",
"chars": 36844,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuil"
},
{
"path": "ANTLR4runtime/runtime/antlr4cpp-vs2017.vcxproj",
"chars": 34776,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"15.0\" xmlns=\"http://schemas.micros"
},
{
"path": "ANTLR4runtime/runtime/antlr4cpp-vs2017.vcxproj.filters",
"chars": 36844,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuil"
},
{
"path": "ANTLR4runtime/runtime/antlr4cpp-vs2019.vcxproj",
"chars": 34748,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" xmlns=\"http://schemas.microsoft.com/developer/ms"
},
{
"path": "ANTLR4runtime/runtime/antlr4cpp-vs2019.vcxproj.filters",
"chars": 36844,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuil"
},
{
"path": "ANTLR4runtime/runtime/antlrcpp-ios/Info.plist",
"chars": 806,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
},
{
"path": "ANTLR4runtime/runtime/antlrcpp-ios/antlrcpp_ios.h",
"chars": 407,
"preview": "//\n// antlrcpp-ios.h\n// antlrcpp-ios\n//\n// Created by Mike Lischke on 05.05.16.\n// Copyright © 2016 Mike Lischke. Al"
},
{
"path": "ANTLR4runtime/runtime/antlrcpp.xcodeproj/project.pbxproj",
"chars": 299427,
"preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
},
{
"path": "ANTLR4runtime/runtime/antlrcpp.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
"chars": 135,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n version = \"1.0\">\n <FileRef\n location = \"self:\">\n </FileRef"
},
{
"path": "ANTLR4runtime/runtime/antlrcpp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
"chars": 238,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
},
{
"path": "ANTLR4runtime/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4.xcscheme",
"chars": 2762,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n LastUpgradeVersion = \"1030\"\n version = \"1.3\">\n <BuildAction\n "
},
{
"path": "ANTLR4runtime/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_ios.xcscheme",
"chars": 2871,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n LastUpgradeVersion = \"1030\"\n version = \"1.3\">\n <BuildAction\n "
},
{
"path": "ANTLR4runtime/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_static.xcscheme",
"chars": 2877,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n LastUpgradeVersion = \"1030\"\n version = \"1.3\">\n <BuildAction\n "
},
{
"path": "ANTLR4runtime/runtime/cmake_install.cmake",
"chars": 2175,
"preview": "# Install script for directory: /home/harshit/ANTLR-Experiments/ANTLR modified Runtime/antlr4runtime\n\n# Set the install "
},
{
"path": "ANTLR4runtime/runtime/install_manifest.txt",
"chars": 8999,
"preview": "/usr/local/share/doc/libantlr4/README.md\n/usr/local/share/doc/libantlr4/VERSION\n/usr/local/lib/libantlr4-runtime.so.4.8\n"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/CMakeDirectoryInformation.cmake",
"chars": 720,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n# Relative path conv"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/CXX.includecache",
"chars": 143060,
"preview": "#IncludeRegexLine: ^[ \t]*[#%][ \t]*(include|import)[ \t]*[<\"]([^\">]+)([\">])\n\n#IncludeRegexScan: ^.*$\n\n#IncludeRegexComplai"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/DependInfo.cmake",
"chars": 38780,
"preview": "# The set of languages for which implicit dependencies are needed:\nset(CMAKE_DEPENDS_LANGUAGES\n \"CXX\"\n )\n# The set of "
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/build.make",
"chars": 317629,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n# Delete rule output"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/cmake_clean.cmake",
"chars": 9653,
"preview": "file(REMOVE_RECURSE\n \"../../dist/libantlr4-runtime.pdb\"\n \"../../dist/libantlr4-runtime.so\"\n \"../../dist/libantlr4-run"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/depend.internal",
"chars": 128389,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\nruntime/CMakeFiles/a"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/depend.make",
"chars": 246750,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\nruntime/CMakeFiles/a"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/flags.make",
"chars": 1041,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n# compile CXX with /"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/link.txt",
"chars": 8928,
"preview": "/usr/bin/c++ -fPIC -Wall -pedantic -W -O3 -DNDEBUG -O3 -DNDEBUG -shared -Wl,-soname,libantlr4-runtime.so.4.8 -o ../"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_shared.dir/progress.make",
"chars": 3262,
"preview": "CMAKE_PROGRESS_1 = \nCMAKE_PROGRESS_2 = \nCMAKE_PROGRESS_3 = 1\nCMAKE_PROGRESS_4 = \nCMAKE_PROGRESS_5 = \nCMAKE_PROGRESS_6 = "
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/CXX.includecache",
"chars": 143060,
"preview": "#IncludeRegexLine: ^[ \t]*[#%][ \t]*(include|import)[ \t]*[<\"]([^\">]+)([\">])\n\n#IncludeRegexScan: ^.*$\n\n#IncludeRegexComplai"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/DependInfo.cmake",
"chars": 38383,
"preview": "# The set of languages for which implicit dependencies are needed:\nset(CMAKE_DEPENDS_LANGUAGES\n \"CXX\"\n )\n# The set of "
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/build.make",
"chars": 316675,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n# Delete rule output"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/cmake_clean.cmake",
"chars": 9612,
"preview": "file(REMOVE_RECURSE\n \"../../dist/libantlr4-runtime.a\"\n \"../../dist/libantlr4-runtime.pdb\"\n \"CMakeFiles/antlr4_static."
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/cmake_clean_target.cmake",
"chars": 57,
"preview": "file(REMOVE_RECURSE\n \"../../dist/libantlr4-runtime.a\"\n)\n"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/depend.internal",
"chars": 128389,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\nruntime/CMakeFiles/a"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/depend.make",
"chars": 246750,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\nruntime/CMakeFiles/a"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/flags.make",
"chars": 1012,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n# compile CXX with /"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/link.txt",
"chars": 8860,
"preview": "/usr/bin/ar qc ../../dist/libantlr4-runtime.a CMakeFiles/antlr4_static.dir/src/ANTLRErrorListener.cpp.o CMakeFiles/antl"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/antlr4_static.dir/progress.make",
"chars": 3272,
"preview": "CMAKE_PROGRESS_1 = \nCMAKE_PROGRESS_2 = \nCMAKE_PROGRESS_3 = 51\nCMAKE_PROGRESS_4 = \nCMAKE_PROGRESS_5 = \nCMAKE_PROGRESS_6 ="
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/make_lib_output_dir.dir/DependInfo.cmake",
"chars": 316,
"preview": "# The set of languages for which implicit dependencies are needed:\nset(CMAKE_DEPENDS_LANGUAGES\n )\n# The set of files fo"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/make_lib_output_dir.dir/build.make",
"chars": 3007,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n# Delete rule output"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/make_lib_output_dir.dir/cmake_clean.cmake",
"chars": 220,
"preview": "file(REMOVE_RECURSE\n \"CMakeFiles/make_lib_output_dir\"\n)\n\n# Per-language clean rules from dependency scanning.\nforeach(l"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/make_lib_output_dir.dir/depend.internal",
"chars": 100,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/make_lib_output_dir.dir/depend.make",
"chars": 100,
"preview": "# CMAKE generated file: DO NOT EDIT!\n# Generated by \"Unix Makefiles\" Generator, CMake Version 3.16\n\n"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/make_lib_output_dir.dir/progress.make",
"chars": 1,
"preview": "\n"
},
{
"path": "ANTLR4runtime/runtime/runtime/CMakeFiles/progress.marks",
"chars": 4,
"preview": "100\n"
},
{
"path": "ANTLR4runtime/runtime/runtime/cmake_install.cmake",
"chars": 3598,
"preview": "# Install script for directory: /home/harshit/ANTLR-Experiments/ANTLR modified Runtime/antlr4runtime/runtime\n\n# Set the "
},
{
"path": "ANTLR4runtime/runtime/src/.vscode/settings.json",
"chars": 1592,
"preview": "{\n \"files.associations\": {\n \"ostream\": \"cpp\",\n \"iostream\": \"cpp\",\n \"array\": \"cpp\",\n \"atom"
},
{
"path": "ANTLR4runtime/runtime/src/ANTLRErrorListener.cpp",
"chars": 285,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/ANTLRErrorListener.h",
"chars": 8373,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ANTLRErrorStrategy.cpp",
"chars": 285,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/ANTLRErrorStrategy.h",
"chars": 5269,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/ANTLRFileStream.cpp",
"chars": 801,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ANTLRFileStream.h",
"chars": 872,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ANTLRInputStream.cpp",
"chars": 3549,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ANTLRInputStream.h",
"chars": 2274,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/BailErrorStrategy.cpp",
"chars": 1802,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/BailErrorStrategy.h",
"chars": 2481,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/BaseErrorListener.cpp",
"chars": 1161,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/BaseErrorListener.h",
"chars": 1375,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/BufferedTokenStream.cpp",
"chars": 9944,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/BufferedTokenStream.h",
"chars": 8012,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/CharStream.cpp",
"chars": 279,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/CharStream.h",
"chars": 1477,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/CommonToken.cpp",
"chars": 4546,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/CommonToken.h",
"chars": 4916,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/CommonTokenFactory.cpp",
"chars": 1330,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/CommonTokenFactory.h",
"chars": 2550,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/CommonTokenStream.cpp",
"chars": 1765,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/CommonTokenStream.h",
"chars": 2711,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ConsoleErrorListener.cpp",
"chars": 595,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ConsoleErrorListener.h",
"chars": 1058,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/DefaultErrorStrategy.cpp",
"chars": 11795,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/DefaultErrorStrategy.h",
"chars": 20287,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/DiagnosticErrorListener.cpp",
"chars": 3482,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/DiagnosticErrorListener.h",
"chars": 3598,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/Exceptions.cpp",
"chars": 2152,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/Exceptions.h",
"chars": 3868,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/FailedPredicateException.cpp",
"chars": 1788,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/FailedPredicateException.h",
"chars": 1085,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/InputMismatchException.cpp",
"chars": 557,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/InputMismatchException.h",
"chars": 781,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/IntStream.cpp",
"chars": 348,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/IntStream.h",
"chars": 10297,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/InterpreterRuleContext.cpp",
"chars": 613,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/InterpreterRuleContext.h",
"chars": 1602,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/Lexer.cpp",
"chars": 6958,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/Lexer.h",
"chars": 7072,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/LexerInterpreter.cpp",
"chars": 2543,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/LexerInterpreter.h",
"chars": 1994,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/LexerNoViableAltException.cpp",
"chars": 1232,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/LexerNoViableAltException.h",
"chars": 914,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ListTokenSource.cpp",
"chars": 2408,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ListTokenSource.h",
"chars": 3795,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/NoViableAltException.cpp",
"chars": 1585,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/NoViableAltException.h",
"chars": 1693,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/Parser.cpp",
"chars": 18457,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/Parser.h",
"chars": 19702,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ParserInterpreter.cpp",
"chars": 10891,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ParserInterpreter.h",
"chars": 7479,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ParserRuleContext.cpp",
"chars": 3916,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ParserRuleContext.h",
"chars": 5416,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ProxyErrorListener.cpp",
"chars": 1952,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/ProxyErrorListener.h",
"chars": 1655,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/RecognitionException.cpp",
"chars": 1947,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/RecognitionException.h",
"chars": 3959,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/Recognizer.cpp",
"chars": 4794,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/Recognizer.h",
"chars": 5967,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/RuleContext.cpp",
"chars": 3495,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/RuleContext.h",
"chars": 5340,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/RuleContextWithAltNum.cpp",
"chars": 725,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/RuleContextWithAltNum.h",
"chars": 985,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/RuntimeMetaData.cpp",
"chars": 2052,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/RuntimeMetaData.h",
"chars": 7393,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/Token.cpp",
"chars": 246,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/Token.h",
"chars": 3417,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/TokenFactory.h",
"chars": 1215,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/TokenSource.cpp",
"chars": 264,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/TokenSource.h",
"chars": 3841,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/TokenStream.cpp",
"chars": 282,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/TokenStream.h",
"chars": 6096,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/TokenStreamRewriter.cpp",
"chars": 15009,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/TokenStreamRewriter.h",
"chars": 12469,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/UnbufferedCharStream.cpp",
"chars": 5608,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/UnbufferedCharStream.h",
"chars": 4555,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/UnbufferedTokenStream.cpp",
"chars": 7465,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/UnbufferedTokenStream.h",
"chars": 4239,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause "
},
{
"path": "ANTLR4runtime/runtime/src/Vocabulary.cpp",
"chars": 2773,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
},
{
"path": "ANTLR4runtime/runtime/src/Vocabulary.h",
"chars": 7781,
"preview": "/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.\n * Use of this file is governed by the BSD 3-clause l"
}
]
// ... and 265 more files (download for full content)
About this extraction
This page contains the full source code of the JaDogg/expressPython GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 465 files (4.5 MB), approximately 1.2M tokens, and a symbol index with 472 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.