// Generated from /Users/jinjiongxi/workspace/dt-sql-parser/src/grammar/spark/SparkSql.g4 by ANTLR 4.8 // jshint ignore: start var antlr4 = require('antlr4/index'); var SparkSqlListener = require('./SparkSqlListener').SparkSqlListener; var SparkSqlVisitor = require('./SparkSqlVisitor').SparkSqlVisitor; var grammarFileName = "SparkSql.g4"; var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964", "\u0003\u0128\u0bd4\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004\u0004", "\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t\u0007", "\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004\f\t\f", "\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010\t\u0010", "\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013\u0004\u0014", "\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017\t\u0017", "\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a\u0004\u001b", "\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e\t\u001e", "\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#\t#\u0004", "$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004*\t*\u0004", "+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u00041\t1\u0004", "2\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u00048\t8\u0004", "9\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0004?\t?\u0004", "@\t@\u0004A\tA\u0004B\tB\u0004C\tC\u0004D\tD\u0004E\tE\u0004F\tF\u0004", "G\tG\u0004H\tH\u0004I\tI\u0004J\tJ\u0004K\tK\u0004L\tL\u0004M\tM\u0004", "N\tN\u0004O\tO\u0004P\tP\u0004Q\tQ\u0004R\tR\u0004S\tS\u0004T\tT\u0004", "U\tU\u0004V\tV\u0004W\tW\u0004X\tX\u0004Y\tY\u0004Z\tZ\u0004[\t[\u0004", "\\\t\\\u0004]\t]\u0004^\t^\u0004_\t_\u0004`\t`\u0004a\ta\u0004b\tb\u0004", "c\tc\u0004d\td\u0004e\te\u0004f\tf\u0004g\tg\u0004h\th\u0004i\ti\u0004", "j\tj\u0004k\tk\u0004l\tl\u0004m\tm\u0004n\tn\u0004o\to\u0004p\tp\u0004", "q\tq\u0004r\tr\u0004s\ts\u0004t\tt\u0004u\tu\u0004v\tv\u0004w\tw\u0004", "x\tx\u0004y\ty\u0004z\tz\u0004{\t{\u0004|\t|\u0004}\t}\u0004~\t~\u0004", "\u007f\t\u007f\u0004\u0080\t\u0080\u0004\u0081\t\u0081\u0004\u0082\t", "\u0082\u0004\u0083\t\u0083\u0004\u0084\t\u0084\u0004\u0085\t\u0085\u0004", "\u0086\t\u0086\u0004\u0087\t\u0087\u0004\u0088\t\u0088\u0004\u0089\t", "\u0089\u0003\u0002\u0003\u0002\u0003\u0002\u0003\u0003\u0003\u0003\u0007", "\u0003\u0118\n\u0003\f\u0003\u000e\u0003\u011b\u000b\u0003\u0003\u0003", "\u0003\u0003\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0005\u0003\u0005", "\u0003\u0005\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0007\u0003\u0007", "\u0003\u0007\u0003\b\u0003\b\u0003\b\u0003\t\u0003\t\u0005\t\u0130\n", "\t\u0003\t\u0003\t\u0003\t\u0005\t\u0135\n\t\u0003\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0003\t\u0005\t\u013d\n\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0007\t\u0145\n\t\f\t\u000e\t\u0148\u000b\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u015b", "\n\t\u0003\t\u0003\t\u0005\t\u015f\n\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0005\t\u0165\n\t\u0003\t\u0005\t\u0168\n\t\u0003\t\u0005\t\u016b", "\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u0172\n\t\u0003", "\t\u0003\t\u0003\t\u0005\t\u0177\n\t\u0003\t\u0005\t\u017a\n\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u0181\n\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005", "\t\u018d\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t", "\u0007\t\u0196\n\t\f\t\u000e\t\u0199\u000b\t\u0003\t\u0005\t\u019c\n", "\t\u0003\t\u0005\t\u019f\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t", "\u0005\t\u01a6\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0007\t\u01b1\n\t\f\t\u000e\t\u01b4\u000b\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u01bb\n\t\u0003\t\u0003\t", "\u0003\t\u0005\t\u01c0\n\t\u0003\t\u0005\t\u01c3\n\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0005\t\u01c9\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u01d4\n\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u0214\n\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u021d", "\n\t\u0003\t\u0003\t\u0005\t\u0221\n\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0005\t\u0227\n\t\u0003\t\u0003\t\u0005\t\u022b\n\t\u0003\t\u0003", "\t\u0003\t\u0005\t\u0230\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t", "\u0236\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0005\t\u0242\n\t\u0003\t\u0003\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0005\t\u024a\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005", "\t\u0250\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u025d\n\t\u0003\t\u0006\t\u0260", "\n\t\r\t\u000e\t\u0261\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005", "\t\u0272\n\t\u0003\t\u0003\t\u0003\t\u0007\t\u0277\n\t\f\t\u000e\t\u027a", "\u000b\t\u0003\t\u0005\t\u027d\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005", "\t\u0283\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u0292\n\t\u0003", "\t\u0003\t\u0005\t\u0296\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t", "\u029c\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u02a2\n\t\u0003\t", "\u0005\t\u02a5\n\t\u0003\t\u0005\t\u02a8\n\t\u0003\t\u0003\t\u0003\t", "\u0003\t\u0005\t\u02ae\n\t\u0003\t\u0003\t\u0005\t\u02b2\n\t\u0003\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0007\t\u02ba\n\t\f\t\u000e", "\t\u02bd\u000b\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005", "\t\u02c5\n\t\u0003\t\u0005\t\u02c8\n\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0005\t\u02d1\n\t\u0003\t\u0003\t\u0003\t", "\u0005\t\u02d6\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u02dc\n\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u02e3\n\t\u0003\t\u0005", "\t\u02e6\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u02ec\n\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0007\t\u02f5\n\t", "\f\t\u000e\t\u02f8\u000b\t\u0005\t\u02fa\n\t\u0003\t\u0003\t\u0005\t", "\u02fe\n\t\u0003\t\u0003\t\u0003\t\u0005\t\u0303\n\t\u0003\t\u0003\t", "\u0003\t\u0005\t\u0308\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005", "\t\u030f\n\t\u0003\t\u0005\t\u0312\n\t\u0003\t\u0005\t\u0315\n\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u031c\n\t\u0003\t\u0003\t", "\u0003\t\u0005\t\u0321\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0005\t\u032a\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t", "\u0003\t\u0005\t\u0332\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u0338", "\n\t\u0003\t\u0005\t\u033b\n\t\u0003\t\u0005\t\u033e\n\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0005\t\u0344\n\t\u0003\t\u0003\t\u0005\t\u0348\n", "\t\u0003\t\u0003\t\u0005\t\u034c\n\t\u0003\t\u0003\t\u0005\t\u0350\n", "\t\u0005\t\u0352\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t", "\u0005\t\u035a\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005", "\t\u0362\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u0368\n\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0005\t\u036e\n\t\u0003\t\u0005\t\u0371\n", "\t\u0003\t\u0003\t\u0005\t\u0375\n\t\u0003\t\u0005\t\u0378\n\t\u0003", "\t\u0003\t\u0005\t\u037c\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0007\t\u0396\n\t\f\t\u000e\t\u0399\u000b\t\u0005\t\u039b", "\n\t\u0003\t\u0003\t\u0005\t\u039f\n\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0005\t\u03a5\n\t\u0003\t\u0005\t\u03a8\n\t\u0003\t\u0005\t\u03ab", "\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u03b1\n\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u03b9\n\t\u0003\t\u0003\t", "\u0003\t\u0005\t\u03be\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u03c4", "\n\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u03ca\n\t\u0003\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0007\t\u03d4\n\t", "\f\t\u000e\t\u03d7\u000b\t\u0005\t\u03d9\n\t\u0003\t\u0003\t\u0003\t", "\u0007\t\u03de\n\t\f\t\u000e\t\u03e1\u000b\t\u0003\t\u0003\t\u0003\t", "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003", "\t\u0007\t\u03ef\n\t\f\t\u000e\t\u03f2\u000b\t\u0003\t\u0003\t\u0003", "\t\u0003\t\u0007\t\u03f8\n\t\f\t\u000e\t\u03fb\u000b\t\u0005\t\u03fd", "\n\t\u0003\t\u0003\t\u0007\t\u0401\n\t\f\t\u000e\t\u0404\u000b\t\u0003", "\t\u0003\t\u0003\t\u0003\t\u0007\t\u040a\n\t\f\t\u000e\t\u040d\u000b", "\t\u0003\t\u0003\t\u0007\t\u0411\n\t\f\t\u000e\t\u0414\u000b\t\u0005", "\t\u0416\n\t\u0003\n\u0003\n\u0003\u000b\u0003\u000b\u0003\u000b\u0003", "\u000b\u0003\u000b\u0003\u000b\u0005\u000b\u0420\n\u000b\u0003\u000b", "\u0003\u000b\u0005\u000b\u0424\n\u000b\u0003\u000b\u0003\u000b\u0003", "\u000b\u0003\u000b\u0003\u000b\u0005\u000b\u042b\n\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0005\u000b", "\u049f\n\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003", "\u000b\u0003\u000b\u0005\u000b\u04a7\n\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0005\u000b\u04af\n", "\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003", "\u000b\u0003\u000b\u0005\u000b\u04b8\n\u000b\u0003\u000b\u0003\u000b", "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b", "\u0005\u000b\u04c2\n\u000b\u0003\f\u0003\f\u0005\f\u04c6\n\f\u0003\f", "\u0005\f\u04c9\n\f\u0003\f\u0003\f\u0003\f\u0003\f\u0005\f\u04cf\n\f", "\u0003\f\u0003\f\u0003\r\u0003\r\u0005\r\u04d5\n\r\u0003\r\u0003\r\u0003", "\r\u0003\r\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e", "\u0003\u000e\u0005\u000e\u04e1\n\u000e\u0003\u000e\u0003\u000e\u0003", "\u000e\u0003\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003", "\u000f\u0003\u000f\u0005\u000f\u04ed\n\u000f\u0003\u000f\u0003\u000f", "\u0003\u000f\u0005\u000f\u04f2\n\u000f\u0003\u0010\u0003\u0010\u0003", "\u0010\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0012\u0005\u0012\u04fb", "\n\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013", "\u0003\u0013\u0005\u0013\u0503\n\u0013\u0003\u0013\u0003\u0013\u0003", "\u0013\u0003\u0013\u0003\u0013\u0005\u0013\u050a\n\u0013\u0005\u0013", "\u050c\n\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0005\u0013\u0511", "\n\u0013\u0003\u0013\u0003\u0013\u0005\u0013\u0515\n\u0013\u0003\u0013", "\u0003\u0013\u0003\u0013\u0005\u0013\u051a\n\u0013\u0003\u0013\u0003", "\u0013\u0003\u0013\u0005\u0013\u051f\n\u0013\u0003\u0013\u0003\u0013", "\u0003\u0013\u0005\u0013\u0524\n\u0013\u0003\u0013\u0005\u0013\u0527", "\n\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0005\u0013\u052c\n\u0013", "\u0003\u0013\u0003\u0013\u0005\u0013\u0530\n\u0013\u0003\u0013\u0003", "\u0013\u0003\u0013\u0005\u0013\u0535\n\u0013\u0005\u0013\u0537\n\u0013", "\u0003\u0014\u0003\u0014\u0005\u0014\u053b\n\u0014\u0003\u0015\u0003", "\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0007\u0015\u0542\n\u0015", "\f\u0015\u000e\u0015\u0545\u000b\u0015\u0003\u0015\u0003\u0015\u0003", "\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u054c\n\u0016\u0003\u0017", "\u0003\u0017\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018", "\u0005\u0018\u0555\n\u0018\u0003\u0019\u0003\u0019\u0003\u0019\u0007", "\u0019\u055a\n\u0019\f\u0019\u000e\u0019\u055d\u000b\u0019\u0003\u001a", "\u0003\u001a\u0003\u001a\u0003\u001a\u0007\u001a\u0563\n\u001a\f\u001a", "\u000e\u001a\u0566\u000b\u001a\u0003\u001b\u0003\u001b\u0005\u001b\u056a", "\n\u001b\u0003\u001b\u0005\u001b\u056d\n\u001b\u0003\u001b\u0003\u001b", "\u0003\u001b\u0003\u001b\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001d", "\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d", "\u0003\u001d\u0003\u001d\u0003\u001d\u0007\u001d\u0580\n\u001d\f\u001d", "\u000e\u001d\u0583\u000b\u001d\u0003\u001e\u0003\u001e\u0003\u001e\u0003", "\u001e\u0007\u001e\u0589\n\u001e\f\u001e\u000e\u001e\u058c\u000b\u001e", "\u0003\u001e\u0003\u001e\u0003\u001f\u0003\u001f\u0005\u001f\u0592\n", "\u001f\u0003\u001f\u0005\u001f\u0595\n\u001f\u0003 \u0003 \u0003 \u0007", " \u059a\n \f \u000e \u059d\u000b \u0003 \u0005 \u05a0\n \u0003!\u0003", "!\u0003!\u0003!\u0005!\u05a6\n!\u0003\"\u0003\"\u0003\"\u0003\"\u0007", "\"\u05ac\n\"\f\"\u000e\"\u05af\u000b\"\u0003\"\u0003\"\u0003#\u0003", "#\u0003#\u0003#\u0007#\u05b7\n#\f#\u000e#\u05ba\u000b#\u0003#\u0003", "#\u0003$\u0003$\u0003$\u0003$\u0003$\u0003$\u0005$\u05c4\n$\u0003%\u0003", "%\u0003%\u0003%\u0003%\u0005%\u05cb\n%\u0003&\u0003&\u0003&\u0003&\u0005", "&\u05d1\n&\u0003\'\u0003\'\u0003\'\u0003(\u0003(\u0003(\u0003(\u0003", "(\u0003(\u0006(\u05dc\n(\r(\u000e(\u05dd\u0003(\u0003(\u0003(\u0003", "(\u0003(\u0005(\u05e5\n(\u0003(\u0003(\u0003(\u0003(\u0003(\u0005(\u05ec", "\n(\u0003(\u0003(\u0003(\u0003(\u0003(\u0003(\u0003(\u0003(\u0003(\u0003", "(\u0005(\u05f8\n(\u0003(\u0003(\u0003(\u0003(\u0007(\u05fe\n(\f(\u000e", "(\u0601\u000b(\u0003(\u0007(\u0604\n(\f(\u000e(\u0607\u000b(\u0005(", "\u0609\n(\u0003)\u0003)\u0003)\u0003)\u0003)\u0007)\u0610\n)\f)\u000e", ")\u0613\u000b)\u0005)\u0615\n)\u0003)\u0003)\u0003)\u0003)\u0003)\u0007", ")\u061c\n)\f)\u000e)\u061f\u000b)\u0005)\u0621\n)\u0003)\u0003)\u0003", ")\u0003)\u0003)\u0007)\u0628\n)\f)\u000e)\u062b\u000b)\u0005)\u062d", "\n)\u0003)\u0003)\u0003)\u0003)\u0003)\u0007)\u0634\n)\f)\u000e)\u0637", "\u000b)\u0005)\u0639\n)\u0003)\u0005)\u063c\n)\u0003)\u0003)\u0003)", "\u0005)\u0641\n)\u0005)\u0643\n)\u0003*\u0003*\u0003*\u0003+\u0003+", "\u0003+\u0003+\u0003+\u0003+\u0003+\u0005+\u064f\n+\u0003+\u0003+\u0003", "+\u0003+\u0003+\u0005+\u0656\n+\u0003+\u0003+\u0003+\u0003+\u0003+\u0005", "+\u065d\n+\u0003+\u0007+\u0660\n+\f+\u000e+\u0663\u000b+\u0003,\u0003", ",\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0005,\u066e\n,\u0003", "-\u0003-\u0005-\u0672\n-\u0003-\u0003-\u0005-\u0676\n-\u0003.\u0003", ".\u0006.\u067a\n.\r.\u000e.\u067b\u0003/\u0003/\u0005/\u0680\n/\u0003", "/\u0003/\u0003/\u0003/\u0007/\u0686\n/\f/\u000e/\u0689\u000b/\u0003", "/\u0005/\u068c\n/\u0003/\u0005/\u068f\n/\u0003/\u0005/\u0692\n/\u0003", "/\u0005/\u0695\n/\u0003/\u0003/\u0005/\u0699\n/\u00030\u00030\u0005", "0\u069d\n0\u00030\u00050\u06a0\n0\u00030\u00030\u00050\u06a4\n0\u0003", "0\u00070\u06a7\n0\f0\u000e0\u06aa\u000b0\u00030\u00050\u06ad\n0\u0003", "0\u00050\u06b0\n0\u00030\u00050\u06b3\n0\u00030\u00050\u06b6\n0\u0005", "0\u06b8\n0\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u0003", "1\u00031\u00051\u06c4\n1\u00031\u00051\u06c7\n1\u00031\u00031\u0005", "1\u06cb\n1\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u0005", "1\u06d5\n1\u00031\u00031\u00051\u06d9\n1\u00051\u06db\n1\u00031\u0005", "1\u06de\n1\u00031\u00031\u00051\u06e2\n1\u00032\u00032\u00072\u06e6", "\n2\f2\u000e2\u06e9\u000b2\u00032\u00052\u06ec\n2\u00032\u00032\u0003", "3\u00033\u00033\u00034\u00034\u00034\u00034\u00054\u06f7\n4\u00034\u0003", "4\u00034\u00035\u00035\u00035\u00035\u00035\u00055\u0701\n5\u00035\u0003", "5\u00035\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u00056\u070d", "\n6\u00037\u00037\u00037\u00037\u00037\u00037\u00037\u00037\u00037\u0003", "7\u00037\u00077\u071a\n7\f7\u000e7\u071d\u000b7\u00037\u00037\u0005", "7\u0721\n7\u00038\u00038\u00038\u00078\u0726\n8\f8\u000e8\u0729\u000b", "8\u00039\u00039\u00039\u00039\u0003:\u0003:\u0003:\u0003;\u0003;\u0003", ";\u0003<\u0003<\u0003<\u0005<\u0738\n<\u0003<\u0007<\u073b\n<\f<\u000e", "<\u073e\u000b<\u0003<\u0003<\u0003=\u0003=\u0003=\u0003=\u0003=\u0003", "=\u0007=\u0748\n=\f=\u000e=\u074b\u000b=\u0003=\u0003=\u0005=\u074f", "\n=\u0003>\u0003>\u0003>\u0003>\u0007>\u0755\n>\f>\u000e>\u0758\u000b", ">\u0003>\u0007>\u075b\n>\f>\u000e>\u075e\u000b>\u0003>\u0005>\u0761", "\n>\u0003?\u0003?\u0003?\u0003?\u0003?\u0007?\u0768\n?\f?\u000e?\u076b", "\u000b?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003", "?\u0003?\u0007?\u0777\n?\f?\u000e?\u077a\u000b?\u0003?\u0003?\u0005", "?\u077e\n?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0007", "?\u0788\n?\f?\u000e?\u078b\u000b?\u0003?\u0003?\u0005?\u078f\n?\u0003", "@\u0003@\u0003@\u0003@\u0007@\u0795\n@\f@\u000e@\u0798\u000b@\u0005", "@\u079a\n@\u0003@\u0003@\u0005@\u079e\n@\u0003A\u0003A\u0003A\u0003", "A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0007A\u07aa\nA\fA\u000e", "A\u07ad\u000bA\u0003A\u0003A\u0003A\u0003B\u0003B\u0003B\u0003B\u0003", "B\u0007B\u07b7\nB\fB\u000eB\u07ba\u000bB\u0003B\u0003B\u0005B\u07be", "\nB\u0003C\u0003C\u0005C\u07c2\nC\u0003C\u0005C\u07c5\nC\u0003D\u0003", "D\u0003D\u0005D\u07ca\nD\u0003D\u0003D\u0003D\u0003D\u0003D\u0007D\u07d1", "\nD\fD\u000eD\u07d4\u000bD\u0005D\u07d6\nD\u0003D\u0003D\u0003D\u0005", "D\u07db\nD\u0003D\u0003D\u0003D\u0007D\u07e0\nD\fD\u000eD\u07e3\u000b", "D\u0005D\u07e5\nD\u0003E\u0003E\u0003F\u0003F\u0007F\u07eb\nF\fF\u000e", "F\u07ee\u000bF\u0003G\u0003G\u0003G\u0003G\u0005G\u07f4\nG\u0003G\u0003", "G\u0003G\u0003G\u0003G\u0005G\u07fb\nG\u0003H\u0005H\u07fe\nH\u0003", "H\u0003H\u0003H\u0005H\u0803\nH\u0003H\u0005H\u0806\nH\u0003H\u0003", "H\u0003H\u0005H\u080b\nH\u0003H\u0003H\u0005H\u080f\nH\u0003H\u0005", "H\u0812\nH\u0003H\u0005H\u0815\nH\u0003I\u0003I\u0003I\u0003I\u0005", "I\u081b\nI\u0003J\u0003J\u0003J\u0005J\u0820\nJ\u0003J\u0003J\u0003", "K\u0005K\u0825\nK\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003", "K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0005K\u0837", "\nK\u0005K\u0839\nK\u0003K\u0005K\u083c\nK\u0003L\u0003L\u0003L\u0003", "L\u0003M\u0003M\u0003M\u0007M\u0845\nM\fM\u000eM\u0848\u000bM\u0003", "N\u0003N\u0003N\u0003N\u0007N\u084e\nN\fN\u000eN\u0851\u000bN\u0003", "N\u0003N\u0003O\u0003O\u0005O\u0857\nO\u0003P\u0003P\u0003P\u0003P\u0007", "P\u085d\nP\fP\u000eP\u0860\u000bP\u0003P\u0003P\u0003Q\u0003Q\u0005", "Q\u0866\nQ\u0003R\u0003R\u0005R\u086a\nR\u0003R\u0003R\u0003R\u0003", "R\u0003R\u0003R\u0005R\u0872\nR\u0003R\u0003R\u0003R\u0003R\u0003R\u0003", "R\u0005R\u087a\nR\u0003R\u0003R\u0003R\u0003R\u0005R\u0880\nR\u0003", "S\u0003S\u0003S\u0003S\u0007S\u0886\nS\fS\u000eS\u0889\u000bS\u0003", "S\u0003S\u0003T\u0003T\u0003T\u0003T\u0003T\u0007T\u0892\nT\fT\u000e", "T\u0895\u000bT\u0005T\u0897\nT\u0003T\u0003T\u0003T\u0003U\u0005U\u089d", "\nU\u0003U\u0003U\u0005U\u08a1\nU\u0005U\u08a3\nU\u0003V\u0003V\u0003", "V\u0003V\u0003V\u0003V\u0003V\u0005V\u08ac\nV\u0003V\u0003V\u0003V\u0003", "V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0005V\u08b8\nV\u0005V\u08ba", "\nV\u0003V\u0003V\u0003V\u0003V\u0003V\u0005V\u08c1\nV\u0003V\u0003", "V\u0003V\u0003V\u0003V\u0005V\u08c8\nV\u0003V\u0003V\u0003V\u0003V\u0005", "V\u08ce\nV\u0003V\u0003V\u0003V\u0003V\u0005V\u08d4\nV\u0005V\u08d6", "\nV\u0003W\u0003W\u0003W\u0007W\u08db\nW\fW\u000eW\u08de\u000bW\u0003", "X\u0003X\u0003X\u0007X\u08e3\nX\fX\u000eX\u08e6\u000bX\u0003Y\u0003", "Y\u0003Y\u0005Y\u08eb\nY\u0003Y\u0003Y\u0003Z\u0003Z\u0005Z\u08f1\n", "Z\u0003Z\u0003Z\u0005Z\u08f5\nZ\u0005Z\u08f7\nZ\u0003[\u0003[\u0003", "[\u0007[\u08fc\n[\f[\u000e[\u08ff\u000b[\u0003\\\u0003\\\u0003\\\u0003", "\\\u0007\\\u0905\n\\\f\\\u000e\\\u0908\u000b\\\u0003\\\u0003\\\u0003", "]\u0003]\u0003]\u0003]\u0003]\u0003]\u0007]\u0912\n]\f]\u000e]\u0915", "\u000b]\u0003]\u0003]\u0005]\u0919\n]\u0003^\u0003^\u0005^\u091d\n^", "\u0003_\u0003_\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003", "`\u0003`\u0003`\u0005`\u092b\n`\u0005`\u092d\n`\u0003`\u0003`\u0003", "`\u0003`\u0003`\u0003`\u0007`\u0935\n`\f`\u000e`\u0938\u000b`\u0003", "a\u0005a\u093b\na\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0005a\u0943", "\na\u0003a\u0003a\u0003a\u0003a\u0003a\u0007a\u094a\na\fa\u000ea\u094d", "\u000ba\u0003a\u0003a\u0003a\u0005a\u0952\na\u0003a\u0003a\u0003a\u0003", "a\u0003a\u0003a\u0005a\u095a\na\u0003a\u0003a\u0003a\u0005a\u095f\n", "a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0007a\u0969", "\na\fa\u000ea\u096c\u000ba\u0003a\u0003a\u0005a\u0970\na\u0003a\u0005", "a\u0973\na\u0003a\u0003a\u0003a\u0003a\u0005a\u0979\na\u0003a\u0003", "a\u0005a\u097d\na\u0003a\u0003a\u0003a\u0005a\u0982\na\u0003a\u0003", "a\u0003a\u0005a\u0987\na\u0003a\u0003a\u0003a\u0005a\u098c\na\u0003", "b\u0003b\u0003b\u0003b\u0005b\u0992\nb\u0003b\u0003b\u0003b\u0003b\u0003", "b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003", "b\u0003b\u0003b\u0003b\u0003b\u0007b\u09a7\nb\fb\u000eb\u09aa\u000b", "b\u0003c\u0003c\u0003c\u0003c\u0006c\u09b0\nc\rc\u000ec\u09b1\u0003", "c\u0003c\u0005c\u09b6\nc\u0003c\u0003c\u0003c\u0003c\u0003c\u0006c\u09bd", "\nc\rc\u000ec\u09be\u0003c\u0003c\u0005c\u09c3\nc\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003", "c\u0003c\u0007c\u09d3\nc\fc\u000ec\u09d6\u000bc\u0005c\u09d8\nc\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0005c\u09e0\nc\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0005c\u09e9\nc\u0003c\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0006c\u09fe\nc\rc\u000ec\u09ff", "\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0005", "c\u0a0b\nc\u0003c\u0003c\u0003c\u0007c\u0a10\nc\fc\u000ec\u0a13\u000b", "c\u0005c\u0a15\nc\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0005", "c\u0a1e\nc\u0003c\u0003c\u0005c\u0a22\nc\u0003c\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0006c\u0a2c\nc\rc\u000ec\u0a2d\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0005c\u0a47\nc\u0003c\u0003c\u0003c\u0003c\u0003c\u0005", "c\u0a4e\nc\u0003c\u0005c\u0a51\nc\u0003c\u0003c\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0005c\u0a60", "\nc\u0003c\u0003c\u0005c\u0a64\nc\u0003c\u0003c\u0003c\u0003c\u0003", "c\u0003c\u0003c\u0003c\u0007c\u0a6e\nc\fc\u000ec\u0a71\u000bc\u0003", "d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0006d\u0a7b\nd\r", "d\u000ed\u0a7c\u0005d\u0a7f\nd\u0003e\u0003e\u0003f\u0003f\u0003g\u0003", "g\u0003h\u0003h\u0003i\u0003i\u0003i\u0005i\u0a8c\ni\u0003j\u0003j\u0005", "j\u0a90\nj\u0003k\u0003k\u0003k\u0006k\u0a95\nk\rk\u000ek\u0a96\u0003", "l\u0003l\u0003l\u0005l\u0a9c\nl\u0003m\u0003m\u0003m\u0003m\u0003m\u0003", "n\u0005n\u0aa4\nn\u0003n\u0003n\u0005n\u0aa8\nn\u0003o\u0003o\u0003", "o\u0005o\u0aad\no\u0003p\u0003p\u0003p\u0003p\u0003p\u0003p\u0003p\u0003", "p\u0003p\u0003p\u0003p\u0003p\u0003p\u0003p\u0003p\u0005p\u0abe\np\u0003", "p\u0003p\u0005p\u0ac2\np\u0003p\u0003p\u0003p\u0003p\u0003p\u0007p\u0ac9", "\np\fp\u000ep\u0acc\u000bp\u0003p\u0005p\u0acf\np\u0005p\u0ad1\np\u0003", "q\u0003q\u0003q\u0007q\u0ad6\nq\fq\u000eq\u0ad9\u000bq\u0003r\u0003", "r\u0003r\u0003r\u0005r\u0adf\nr\u0003r\u0005r\u0ae2\nr\u0003r\u0005", "r\u0ae5\nr\u0003s\u0003s\u0003s\u0007s\u0aea\ns\fs\u000es\u0aed\u000b", "s\u0003t\u0003t\u0003t\u0003t\u0005t\u0af3\nt\u0003t\u0005t\u0af6\n", "t\u0003u\u0003u\u0003u\u0007u\u0afb\nu\fu\u000eu\u0afe\u000bu\u0003", "v\u0003v\u0003v\u0003v\u0003v\u0005v\u0b05\nv\u0003v\u0005v\u0b08\n", "v\u0003w\u0003w\u0003w\u0003w\u0003w\u0003x\u0003x\u0003x\u0003x\u0007", "x\u0b13\nx\fx\u000ex\u0b16\u000bx\u0003y\u0003y\u0003y\u0003y\u0003", "z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003", "z\u0007z\u0b27\nz\fz\u000ez\u0b2a\u000bz\u0003z\u0003z\u0003z\u0003", "z\u0003z\u0007z\u0b31\nz\fz\u000ez\u0b34\u000bz\u0005z\u0b36\nz\u0003", "z\u0003z\u0003z\u0003z\u0003z\u0007z\u0b3d\nz\fz\u000ez\u0b40\u000b", "z\u0005z\u0b42\nz\u0005z\u0b44\nz\u0003z\u0005z\u0b47\nz\u0003z\u0005", "z\u0b4a\nz\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003", "{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0005{\u0b5c\n{\u0003", "|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003|\u0005|\u0b65\n|\u0003}\u0003", "}\u0003}\u0007}\u0b6a\n}\f}\u000e}\u0b6d\u000b}\u0003~\u0003~\u0003", "~\u0003~\u0005~\u0b73\n~\u0003\u007f\u0003\u007f\u0003\u007f\u0007\u007f", "\u0b78\n\u007f\f\u007f\u000e\u007f\u0b7b\u000b\u007f\u0003\u0080\u0003", "\u0080\u0003\u0080\u0003\u0081\u0003\u0081\u0006\u0081\u0b82\n\u0081", "\r\u0081\u000e\u0081\u0b83\u0003\u0081\u0005\u0081\u0b87\n\u0081\u0003", "\u0082\u0003\u0082\u0003\u0082\u0005\u0082\u0b8c\n\u0082\u0003\u0083", "\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0005\u0083", "\u0b94\n\u0083\u0003\u0084\u0003\u0084\u0003\u0085\u0003\u0085\u0005", "\u0085\u0b9a\n\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0005\u0085", "\u0b9f\n\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0005\u0085\u0ba4", "\n\u0085\u0003\u0085\u0003\u0085\u0005\u0085\u0ba8\n\u0085\u0003\u0085", "\u0003\u0085\u0005\u0085\u0bac\n\u0085\u0003\u0085\u0003\u0085\u0005", "\u0085\u0bb0\n\u0085\u0003\u0085\u0003\u0085\u0005\u0085\u0bb4\n\u0085", "\u0003\u0085\u0003\u0085\u0005\u0085\u0bb8\n\u0085\u0003\u0085\u0003", "\u0085\u0005\u0085\u0bbc\n\u0085\u0003\u0085\u0003\u0085\u0005\u0085", "\u0bc0\n\u0085\u0003\u0085\u0005\u0085\u0bc3\n\u0085\u0003\u0086\u0003", "\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0005", "\u0086\u0bcc\n\u0086\u0003\u0087\u0003\u0087\u0003\u0088\u0003\u0088", "\u0003\u0089\u0003\u0089\u0003\u0089\n\u0397\u03d5\u03df\u03f0\u03f9", "\u0402\u040b\u0412\u0006T\u00be\u00c2\u00c4\u008a\u0002\u0004\u0006", "\b\n\f\u000e\u0010\u0012\u0014\u0016\u0018\u001a\u001c\u001e \"$&(*", ",.02468:<>@BDFHJLNPRTVXZ\\^`bdfhjlnprtvxz|~\u0080\u0082\u0084\u0086", "\u0088\u008a\u008c\u008e\u0090\u0092\u0094\u0096\u0098\u009a\u009c\u009e", "\u00a0\u00a2\u00a4\u00a6\u00a8\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6", "\u00b8\u00ba\u00bc\u00be\u00c0\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc\u00ce", "\u00d0\u00d2\u00d4\u00d6\u00d8\u00da\u00dc\u00de\u00e0\u00e2\u00e4\u00e6", "\u00e8\u00ea\u00ec\u00ee\u00f0\u00f2\u00f4\u00f6\u00f8\u00fa\u00fc\u00fe", "\u0100\u0102\u0104\u0106\u0108\u010a\u010c\u010e\u0110\u0002-\u0004", "\u0002BB\u00b3\u00b3\u0004\u0002\"\"\u00c1\u00c1\u0004\u0002AA\u0095", "\u0095\u0004\u0002ffrr\u0003\u0002-.\u0004\u0002\u00e1\u00e1\u0100\u0100", "\u0004\u0002\u0011\u0011%%\u0007\u0002**66XXee\u008e\u008e\u0003\u0002", "FG\u0004\u0002XXee\u0004\u0002\u0099\u0099\u0119\u0119\u0004\u0002\u000e", "\u000e\u0088\u0088\u0004\u0002\u008a\u008a\u0119\u0119\u0005\u0002@", "@\u0094\u0094\u00cb\u00cb\u0006\u0002SSyy\u00d3\u00d3\u00f6\u00f6\u0005", "\u0002SS\u00d3\u00d3\u00f6\u00f6\u0004\u0002\u0019\u0019FF\u0004\u0002", "``\u0080\u0080\u0004\u0002\u0010\u0010KK\u0004\u0002\u011d\u011d\u011f", "\u011f\u0005\u0002\u0010\u0010\u0015\u0015\u00d7\u00d7\u0005\u0002[", "[\u00f0\u00f0\u00f8\u00f8\u0004\u0002\u010f\u0110\u0114\u0114\u0004", "\u0002MM\u0111\u0113\u0004\u0002\u010f\u0110\u0117\u0117\u0004\u0002", ";;==\u0003\u0002\u00df\u00e0\u0004\u0002\u0006\u0006ff\u0004\u0002\u0006", "\u0006bb\u0005\u0002\u001d\u001d\u0083\u0083\u00eb\u00eb\u0003\u0002", "\u0107\u010e\u0004\u0002MM\u010f\u0118\u0006\u0002\u0013\u0013rr\u0098", "\u0098\u00a0\u00a0\u0004\u0002[[\u00f0\u00f0\u0003\u0002\u010f\u0110", "\u0004\u0002LL\u00a9\u00a9\u0004\u0002\u00a1\u00a1\u00d8\u00d8\u0004", "\u0002aa\u00b0\u00b0\u0003\u0002\u011e\u011f\u0004\u0002NN\u00d2\u00d2", "2\u0002\u000e\u000f\u0011\u0012\u0014\u0014\u0016\u0017\u0019\u001a", "\u001c\u001c\u001e\"%%\'*,,.4669:?JLNRRTZ]]_adehjmmoqstvxzz}}\u007f", "\u0082\u0085\u0095\u0097\u0097\u009a\u009b\u009e\u009f\u00a2\u00a2\u00a4", "\u00a5\u00a7\u00b0\u00b2\u00ba\u00bc\u00c2\u00c4\u00cb\u00cd\u00d0\u00d2", "\u00d6\u00d8\u00e0\u00e2\u00e6\u00ea\u00ea\u00ec\u00f5\u00f9\u00fc\u00ff", "\u0101\u0104\u0104\u0106\u0106\u0011\u0002\u0014\u001488SSgguuyy~~\u0084", "\u0084\u0096\u0096\u009c\u009c\u00c3\u00c3\u00cd\u00cd\u00d3\u00d3\u00f6", "\u00f6\u00fe\u00fe\u0012\u0002\u000e\u0013\u001579RTfhtvxz}\u007f\u0083", "\u0085\u0095\u0097\u009b\u009d\u00c2\u00c4\u00cc\u00ce\u00d2\u00d4\u00f5", "\u00f7\u00fd\u00ff\u0106\u0002\u0dad\u0002\u0112\u0003\u0002\u0002\u0002", "\u0004\u0115\u0003\u0002\u0002\u0002\u0006\u011e\u0003\u0002\u0002\u0002", "\b\u0121\u0003\u0002\u0002\u0002\n\u0124\u0003\u0002\u0002\u0002\f\u0127", "\u0003\u0002\u0002\u0002\u000e\u012a\u0003\u0002\u0002\u0002\u0010\u0415", "\u0003\u0002\u0002\u0002\u0012\u0417\u0003\u0002\u0002\u0002\u0014\u04c1", "\u0003\u0002\u0002\u0002\u0016\u04c3\u0003\u0002\u0002\u0002\u0018\u04d4", "\u0003\u0002\u0002\u0002\u001a\u04da\u0003\u0002\u0002\u0002\u001c\u04e6", "\u0003\u0002\u0002\u0002\u001e\u04f3\u0003\u0002\u0002\u0002 \u04f6", "\u0003\u0002\u0002\u0002\"\u04fa\u0003\u0002\u0002\u0002$\u0536\u0003", "\u0002\u0002\u0002&\u0538\u0003\u0002\u0002\u0002(\u053c\u0003\u0002", "\u0002\u0002*\u0548\u0003\u0002\u0002\u0002,\u054d\u0003\u0002\u0002", "\u0002.\u0554\u0003\u0002\u0002\u00020\u0556\u0003\u0002\u0002\u0002", "2\u055e\u0003\u0002\u0002\u00024\u0567\u0003\u0002\u0002\u00026\u0572", "\u0003\u0002\u0002\u00028\u0581\u0003\u0002\u0002\u0002:\u0584\u0003", "\u0002\u0002\u0002<\u058f\u0003\u0002\u0002\u0002>\u059f\u0003\u0002", "\u0002\u0002@\u05a5\u0003\u0002\u0002\u0002B\u05a7\u0003\u0002\u0002", "\u0002D\u05b2\u0003\u0002\u0002\u0002F\u05c3\u0003\u0002\u0002\u0002", "H\u05ca\u0003\u0002\u0002\u0002J\u05cc\u0003\u0002\u0002\u0002L\u05d2", "\u0003\u0002\u0002\u0002N\u0608\u0003\u0002\u0002\u0002P\u0614\u0003", "\u0002\u0002\u0002R\u0644\u0003\u0002\u0002\u0002T\u0647\u0003\u0002", "\u0002\u0002V\u066d\u0003\u0002\u0002\u0002X\u066f\u0003\u0002\u0002", "\u0002Z\u0677\u0003\u0002\u0002\u0002\\\u0698\u0003\u0002\u0002\u0002", "^\u06b7\u0003\u0002\u0002\u0002`\u06c3\u0003\u0002\u0002\u0002b\u06e3", "\u0003\u0002\u0002\u0002d\u06ef\u0003\u0002\u0002\u0002f\u06f2\u0003", "\u0002\u0002\u0002h\u06fb\u0003\u0002\u0002\u0002j\u070c\u0003\u0002", "\u0002\u0002l\u0720\u0003\u0002\u0002\u0002n\u0722\u0003\u0002\u0002", "\u0002p\u072a\u0003\u0002\u0002\u0002r\u072e\u0003\u0002\u0002\u0002", "t\u0731\u0003\u0002\u0002\u0002v\u0734\u0003\u0002\u0002\u0002x\u074e", "\u0003\u0002\u0002\u0002z\u0750\u0003\u0002\u0002\u0002|\u078e\u0003", "\u0002\u0002\u0002~\u079d\u0003\u0002\u0002\u0002\u0080\u079f\u0003", "\u0002\u0002\u0002\u0082\u07bd\u0003\u0002\u0002\u0002\u0084\u07bf\u0003", "\u0002\u0002\u0002\u0086\u07c6\u0003\u0002\u0002\u0002\u0088\u07e6\u0003", "\u0002\u0002\u0002\u008a\u07e8\u0003\u0002\u0002\u0002\u008c\u07fa\u0003", "\u0002\u0002\u0002\u008e\u0814\u0003\u0002\u0002\u0002\u0090\u081a\u0003", "\u0002\u0002\u0002\u0092\u081c\u0003\u0002\u0002\u0002\u0094\u083b\u0003", "\u0002\u0002\u0002\u0096\u083d\u0003\u0002\u0002\u0002\u0098\u0841\u0003", "\u0002\u0002\u0002\u009a\u0849\u0003\u0002\u0002\u0002\u009c\u0854\u0003", "\u0002\u0002\u0002\u009e\u0858\u0003\u0002\u0002\u0002\u00a0\u0863\u0003", "\u0002\u0002\u0002\u00a2\u087f\u0003\u0002\u0002\u0002\u00a4\u0881\u0003", "\u0002\u0002\u0002\u00a6\u088c\u0003\u0002\u0002\u0002\u00a8\u08a2\u0003", "\u0002\u0002\u0002\u00aa\u08d5\u0003\u0002\u0002\u0002\u00ac\u08d7\u0003", "\u0002\u0002\u0002\u00ae\u08df\u0003\u0002\u0002\u0002\u00b0\u08ea\u0003", "\u0002\u0002\u0002\u00b2\u08ee\u0003\u0002\u0002\u0002\u00b4\u08f8\u0003", "\u0002\u0002\u0002\u00b6\u0900\u0003\u0002\u0002\u0002\u00b8\u0918\u0003", "\u0002\u0002\u0002\u00ba\u091c\u0003\u0002\u0002\u0002\u00bc\u091e\u0003", "\u0002\u0002\u0002\u00be\u092c\u0003\u0002\u0002\u0002\u00c0\u098b\u0003", "\u0002\u0002\u0002\u00c2\u0991\u0003\u0002\u0002\u0002\u00c4\u0a63\u0003", "\u0002\u0002\u0002\u00c6\u0a7e\u0003\u0002\u0002\u0002\u00c8\u0a80\u0003", "\u0002\u0002\u0002\u00ca\u0a82\u0003\u0002\u0002\u0002\u00cc\u0a84\u0003", "\u0002\u0002\u0002\u00ce\u0a86\u0003\u0002\u0002\u0002\u00d0\u0a88\u0003", "\u0002\u0002\u0002\u00d2\u0a8d\u0003\u0002\u0002\u0002\u00d4\u0a94\u0003", "\u0002\u0002\u0002\u00d6\u0a98\u0003\u0002\u0002\u0002\u00d8\u0a9d\u0003", "\u0002\u0002\u0002\u00da\u0aa7\u0003\u0002\u0002\u0002\u00dc\u0aac\u0003", "\u0002\u0002\u0002\u00de\u0ad0\u0003\u0002\u0002\u0002\u00e0\u0ad2\u0003", "\u0002\u0002\u0002\u00e2\u0ada\u0003\u0002\u0002\u0002\u00e4\u0ae6\u0003", "\u0002\u0002\u0002\u00e6\u0aee\u0003\u0002\u0002\u0002\u00e8\u0af7\u0003", "\u0002\u0002\u0002\u00ea\u0aff\u0003\u0002\u0002\u0002\u00ec\u0b09\u0003", "\u0002\u0002\u0002\u00ee\u0b0e\u0003\u0002\u0002\u0002\u00f0\u0b17\u0003", "\u0002\u0002\u0002\u00f2\u0b49\u0003\u0002\u0002\u0002\u00f4\u0b5b\u0003", "\u0002\u0002\u0002\u00f6\u0b64\u0003\u0002\u0002\u0002\u00f8\u0b66\u0003", "\u0002\u0002\u0002\u00fa\u0b72\u0003\u0002\u0002\u0002\u00fc\u0b74\u0003", "\u0002\u0002\u0002\u00fe\u0b7c\u0003\u0002\u0002\u0002\u0100\u0b86\u0003", "\u0002\u0002\u0002\u0102\u0b8b\u0003\u0002\u0002\u0002\u0104\u0b93\u0003", "\u0002\u0002\u0002\u0106\u0b95\u0003\u0002\u0002\u0002\u0108\u0bc2\u0003", "\u0002\u0002\u0002\u010a\u0bcb\u0003\u0002\u0002\u0002\u010c\u0bcd\u0003", "\u0002\u0002\u0002\u010e\u0bcf\u0003\u0002\u0002\u0002\u0110\u0bd1\u0003", "\u0002\u0002\u0002\u0112\u0113\u0005\u0004\u0003\u0002\u0113\u0114\u0007", "\u0002\u0002\u0003\u0114\u0003\u0003\u0002\u0002\u0002\u0115\u0119\u0005", "\u0010\t\u0002\u0116\u0118\u0007\u0003\u0002\u0002\u0117\u0116\u0003", "\u0002\u0002\u0002\u0118\u011b\u0003\u0002\u0002\u0002\u0119\u0117\u0003", "\u0002\u0002\u0002\u0119\u011a\u0003\u0002\u0002\u0002\u011a\u011c\u0003", "\u0002\u0002\u0002\u011b\u0119\u0003\u0002\u0002\u0002\u011c\u011d\u0007", "\u0002\u0002\u0003\u011d\u0005\u0003\u0002\u0002\u0002\u011e\u011f\u0005", "\u00b2Z\u0002\u011f\u0120\u0007\u0002\u0002\u0003\u0120\u0007\u0003", "\u0002\u0002\u0002\u0121\u0122\u0005\u00b0Y\u0002\u0122\u0123\u0007", "\u0002\u0002\u0003\u0123\t\u0003\u0002\u0002\u0002\u0124\u0125\u0005", "\u00aeX\u0002\u0125\u0126\u0007\u0002\u0002\u0003\u0126\u000b\u0003", "\u0002\u0002\u0002\u0127\u0128\u0005\u00dep\u0002\u0128\u0129\u0007", "\u0002\u0002\u0003\u0129\r\u0003\u0002\u0002\u0002\u012a\u012b\u0005", "\u00e4s\u0002\u012b\u012c\u0007\u0002\u0002\u0003\u012c\u000f\u0003", "\u0002\u0002\u0002\u012d\u0416\u0005\"\u0012\u0002\u012e\u0130\u0005", "2\u001a\u0002\u012f\u012e\u0003\u0002\u0002\u0002\u012f\u0130\u0003", "\u0002\u0002\u0002\u0130\u0131\u0003\u0002\u0002\u0002\u0131\u0416\u0005", "N(\u0002\u0132\u0134\u0007\u00fc\u0002\u0002\u0133\u0135\u0007\u0094", "\u0002\u0002\u0134\u0133\u0003\u0002\u0002\u0002\u0134\u0135\u0003\u0002", "\u0002\u0002\u0135\u0136\u0003\u0002\u0002\u0002\u0136\u0416\u0005\u00ae", "X\u0002\u0137\u0138\u00077\u0002\u0002\u0138\u013c\u0005,\u0017\u0002", "\u0139\u013a\u0007o\u0002\u0002\u013a\u013b\u0007\u0098\u0002\u0002", "\u013b\u013d\u0007U\u0002\u0002\u013c\u0139\u0003\u0002\u0002\u0002", "\u013c\u013d\u0003\u0002\u0002\u0002\u013d\u013e\u0003\u0002\u0002\u0002", "\u013e\u0146\u0005\u00aeX\u0002\u013f\u0145\u0005 \u0011\u0002\u0140", "\u0145\u0005\u001e\u0010\u0002\u0141\u0142\u0007\u0105\u0002\u0002\u0142", "\u0143\t\u0002\u0002\u0002\u0143\u0145\u0005:\u001e\u0002\u0144\u013f", "\u0003\u0002\u0002\u0002\u0144\u0140\u0003\u0002\u0002\u0002\u0144\u0141", "\u0003\u0002\u0002\u0002\u0145\u0148\u0003\u0002\u0002\u0002\u0146\u0144", "\u0003\u0002\u0002\u0002\u0146\u0147\u0003\u0002\u0002\u0002\u0147\u0416", "\u0003\u0002\u0002\u0002\u0148\u0146\u0003\u0002\u0002\u0002\u0149\u014a", "\u0007\u0011\u0002\u0002\u014a\u014b\u0005,\u0017\u0002\u014b\u014c", "\u0005\u00aeX\u0002\u014c\u014d\u0007\u00d2\u0002\u0002\u014d\u014e", "\t\u0002\u0002\u0002\u014e\u014f\u0005:\u001e\u0002\u014f\u0416\u0003", "\u0002\u0002\u0002\u0150\u0151\u0007\u0011\u0002\u0002\u0151\u0152\u0005", ",\u0017\u0002\u0152\u0153\u0005\u00aeX\u0002\u0153\u0154\u0007\u00d2", "\u0002\u0002\u0154\u0155\u0005\u001e\u0010\u0002\u0155\u0416\u0003\u0002", "\u0002\u0002\u0156\u0157\u0007N\u0002\u0002\u0157\u015a\u0005,\u0017", "\u0002\u0158\u0159\u0007o\u0002\u0002\u0159\u015b\u0007U\u0002\u0002", "\u015a\u0158\u0003\u0002\u0002\u0002\u015a\u015b\u0003\u0002\u0002\u0002", "\u015b\u015c\u0003\u0002\u0002\u0002\u015c\u015e\u0005\u00aeX\u0002", "\u015d\u015f\t\u0003\u0002\u0002\u015e\u015d\u0003\u0002\u0002\u0002", "\u015e\u015f\u0003\u0002\u0002\u0002\u015f\u0416\u0003\u0002\u0002\u0002", "\u0160\u0161\u0007\u00d5\u0002\u0002\u0161\u0164\t\u0004\u0002\u0002", "\u0162\u0163\t\u0005\u0002\u0002\u0163\u0165\u0005\u00aeX\u0002\u0164", "\u0162\u0003\u0002\u0002\u0002\u0164\u0165\u0003\u0002\u0002\u0002\u0165", "\u016a\u0003\u0002\u0002\u0002\u0166\u0168\u0007\u0085\u0002\u0002\u0167", "\u0166\u0003\u0002\u0002\u0002\u0167\u0168\u0003\u0002\u0002\u0002\u0168", "\u0169\u0003\u0002\u0002\u0002\u0169\u016b\u0007\u0119\u0002\u0002\u016a", "\u0167\u0003\u0002\u0002\u0002\u016a\u016b\u0003\u0002\u0002\u0002\u016b", "\u0416\u0003\u0002\u0002\u0002\u016c\u0171\u0005\u0016\f\u0002\u016d", "\u016e\u0007\u0004\u0002\u0002\u016e\u016f\u0005\u00e4s\u0002\u016f", "\u0170\u0007\u0005\u0002\u0002\u0170\u0172\u0003\u0002\u0002\u0002\u0171", "\u016d\u0003\u0002\u0002\u0002\u0171\u0172\u0003\u0002\u0002\u0002\u0172", "\u0173\u0003\u0002\u0002\u0002\u0173\u0174\u00056\u001c\u0002\u0174", "\u0179\u00058\u001d\u0002\u0175\u0177\u0007\u0018\u0002\u0002\u0176", "\u0175\u0003\u0002\u0002\u0002\u0176\u0177\u0003\u0002\u0002\u0002\u0177", "\u0178\u0003\u0002\u0002\u0002\u0178\u017a\u0005\"\u0012\u0002\u0179", "\u0176\u0003\u0002\u0002\u0002\u0179\u017a\u0003\u0002\u0002\u0002\u017a", "\u0416\u0003\u0002\u0002\u0002\u017b\u0180\u0005\u0016\f\u0002\u017c", "\u017d\u0007\u0004\u0002\u0002\u017d\u017e\u0005\u00e4s\u0002\u017e", "\u017f\u0007\u0005\u0002\u0002\u017f\u0181\u0003\u0002\u0002\u0002\u0180", "\u017c\u0003\u0002\u0002\u0002\u0180\u0181\u0003\u0002\u0002\u0002\u0181", "\u0197\u0003\u0002\u0002\u0002\u0182\u0196\u0005 \u0011\u0002\u0183", "\u0184\u0007\u00aa\u0002\u0002\u0184\u0185\u0007 \u0002\u0002\u0185", "\u0186\u0007\u0004\u0002\u0002\u0186\u0187\u0005\u00e4s\u0002\u0187", "\u0188\u0007\u0005\u0002\u0002\u0188\u018d\u0003\u0002\u0002\u0002\u0189", "\u018a\u0007\u00aa\u0002\u0002\u018a\u018b\u0007 \u0002\u0002\u018b", "\u018d\u0005\u0096L\u0002\u018c\u0183\u0003\u0002\u0002\u0002\u018c", "\u0189\u0003\u0002\u0002\u0002\u018d\u0196\u0003\u0002\u0002\u0002\u018e", "\u0196\u0005\u001a\u000e\u0002\u018f\u0196\u0005\u001c\u000f\u0002\u0190", "\u0196\u0005\u00aaV\u0002\u0191\u0196\u0005F$\u0002\u0192\u0196\u0005", "\u001e\u0010\u0002\u0193\u0194\u0007\u00e4\u0002\u0002\u0194\u0196\u0005", ":\u001e\u0002\u0195\u0182\u0003\u0002\u0002\u0002\u0195\u018c\u0003", "\u0002\u0002\u0002\u0195\u018e\u0003\u0002\u0002\u0002\u0195\u018f\u0003", "\u0002\u0002\u0002\u0195\u0190\u0003\u0002\u0002\u0002\u0195\u0191\u0003", "\u0002\u0002\u0002\u0195\u0192\u0003\u0002\u0002\u0002\u0195\u0193\u0003", "\u0002\u0002\u0002\u0196\u0199\u0003\u0002\u0002\u0002\u0197\u0195\u0003", "\u0002\u0002\u0002\u0197\u0198\u0003\u0002\u0002\u0002\u0198\u019e\u0003", "\u0002\u0002\u0002\u0199\u0197\u0003\u0002\u0002\u0002\u019a\u019c\u0007", "\u0018\u0002\u0002\u019b\u019a\u0003\u0002\u0002\u0002\u019b\u019c\u0003", "\u0002\u0002\u0002\u019c\u019d\u0003\u0002\u0002\u0002\u019d\u019f\u0005", "\"\u0012\u0002\u019e\u019b\u0003\u0002\u0002\u0002\u019e\u019f\u0003", "\u0002\u0002\u0002\u019f\u0416\u0003\u0002\u0002\u0002\u01a0\u01a1\u0007", "7\u0002\u0002\u01a1\u01a5\u0007\u00e1\u0002\u0002\u01a2\u01a3\u0007", "o\u0002\u0002\u01a3\u01a4\u0007\u0098\u0002\u0002\u01a4\u01a6\u0007", "U\u0002\u0002\u01a5\u01a2\u0003\u0002\u0002\u0002\u01a5\u01a6\u0003", "\u0002\u0002\u0002\u01a6\u01a7\u0003\u0002\u0002\u0002\u01a7\u01a8\u0005", "\u00b0Y\u0002\u01a8\u01a9\u0007\u0085\u0002\u0002\u01a9\u01b2\u0005", "\u00b0Y\u0002\u01aa\u01b1\u00056\u001c\u0002\u01ab\u01b1\u0005\u00aa", "V\u0002\u01ac\u01b1\u0005F$\u0002\u01ad\u01b1\u0005\u001e\u0010\u0002", "\u01ae\u01af\u0007\u00e4\u0002\u0002\u01af\u01b1\u0005:\u001e\u0002", "\u01b0\u01aa\u0003\u0002\u0002\u0002\u01b0\u01ab\u0003\u0002\u0002\u0002", "\u01b0\u01ac\u0003\u0002\u0002\u0002\u01b0\u01ad\u0003\u0002\u0002\u0002", "\u01b0\u01ae\u0003\u0002\u0002\u0002\u01b1\u01b4\u0003\u0002\u0002\u0002", "\u01b2\u01b0\u0003\u0002\u0002\u0002\u01b2\u01b3\u0003\u0002\u0002\u0002", "\u01b3\u0416\u0003\u0002\u0002\u0002\u01b4\u01b2\u0003\u0002\u0002\u0002", "\u01b5\u01ba\u0005\u0018\r\u0002\u01b6\u01b7\u0007\u0004\u0002\u0002", "\u01b7\u01b8\u0005\u00e4s\u0002\u01b8\u01b9\u0007\u0005\u0002\u0002", "\u01b9\u01bb\u0003\u0002\u0002\u0002\u01ba\u01b6\u0003\u0002\u0002\u0002", "\u01ba\u01bb\u0003\u0002\u0002\u0002\u01bb\u01bc\u0003\u0002\u0002\u0002", "\u01bc\u01bd\u00056\u001c\u0002\u01bd\u01c2\u00058\u001d\u0002\u01be", "\u01c0\u0007\u0018\u0002\u0002\u01bf\u01be\u0003\u0002\u0002\u0002\u01bf", "\u01c0\u0003\u0002\u0002\u0002\u01c0\u01c1\u0003\u0002\u0002\u0002\u01c1", "\u01c3\u0005\"\u0012\u0002\u01c2\u01bf\u0003\u0002\u0002\u0002\u01c2", "\u01c3\u0003\u0002\u0002\u0002\u01c3\u0416\u0003\u0002\u0002\u0002\u01c4", "\u01c5\u0007\u0012\u0002\u0002\u01c5\u01c6\u0007\u00e1\u0002\u0002\u01c6", "\u01c8\u0005\u00aeX\u0002\u01c7\u01c9\u0005(\u0015\u0002\u01c8\u01c7", "\u0003\u0002\u0002\u0002\u01c8\u01c9\u0003\u0002\u0002\u0002\u01c9\u01ca", "\u0003\u0002\u0002\u0002\u01ca\u01cb\u00073\u0002\u0002\u01cb\u01d3", "\u0007\u00db\u0002\u0002\u01cc\u01d4\u0005\u0102\u0082\u0002\u01cd\u01ce", "\u0007b\u0002\u0002\u01ce\u01cf\u0007.\u0002\u0002\u01cf\u01d4\u0005", "\u0098M\u0002\u01d0\u01d1\u0007b\u0002\u0002\u01d1\u01d2\u0007\u0010", "\u0002\u0002\u01d2\u01d4\u0007.\u0002\u0002\u01d3\u01cc\u0003\u0002", "\u0002\u0002\u01d3\u01cd\u0003\u0002\u0002\u0002\u01d3\u01d0\u0003\u0002", "\u0002\u0002\u01d3\u01d4\u0003\u0002\u0002\u0002\u01d4\u0416\u0003\u0002", "\u0002\u0002\u01d5\u01d6\u0007\u0011\u0002\u0002\u01d6\u01d7\u0007\u00e1", "\u0002\u0002\u01d7\u01d8\u0005\u00aeX\u0002\u01d8\u01d9\u0007\u000e", "\u0002\u0002\u01d9\u01da\t\u0006\u0002\u0002\u01da\u01db\u0005\u00e0", "q\u0002\u01db\u0416\u0003\u0002\u0002\u0002\u01dc\u01dd\u0007\u0011", "\u0002\u0002\u01dd\u01de\u0007\u00e1\u0002\u0002\u01de\u01df\u0005\u00ae", "X\u0002\u01df\u01e0\u0007\u000e\u0002\u0002\u01e0\u01e1\t\u0006\u0002", "\u0002\u01e1\u01e2\u0007\u0004\u0002\u0002\u01e2\u01e3\u0005\u00e0q", "\u0002\u01e3\u01e4\u0007\u0005\u0002\u0002\u01e4\u0416\u0003\u0002\u0002", "\u0002\u01e5\u01e6\u0007\u0011\u0002\u0002\u01e6\u01e7\u0007\u00e1\u0002", "\u0002\u01e7\u01e8\u0005\u00aeX\u0002\u01e8\u01e9\u0007\u00bd\u0002", "\u0002\u01e9\u01ea\u0007-\u0002\u0002\u01ea\u01eb\u0005\u00aeX\u0002", "\u01eb\u01ec\u0007\u00e9\u0002\u0002\u01ec\u01ed\u0005\u00fe\u0080\u0002", "\u01ed\u0416\u0003\u0002\u0002\u0002\u01ee\u01ef\u0007\u0011\u0002\u0002", "\u01ef\u01f0\u0007\u00e1\u0002\u0002\u01f0\u01f1\u0005\u00aeX\u0002", "\u01f1\u01f2\u0007N\u0002\u0002\u01f2\u01f3\t\u0006\u0002\u0002\u01f3", "\u01f4\u0007\u0004\u0002\u0002\u01f4\u01f5\u0005\u00acW\u0002\u01f5", "\u01f6\u0007\u0005\u0002\u0002\u01f6\u0416\u0003\u0002\u0002\u0002\u01f7", "\u01f8\u0007\u0011\u0002\u0002\u01f8\u01f9\u0007\u00e1\u0002\u0002\u01f9", "\u01fa\u0005\u00aeX\u0002\u01fa\u01fb\u0007N\u0002\u0002\u01fb\u01fc", "\t\u0006\u0002\u0002\u01fc\u01fd\u0005\u00acW\u0002\u01fd\u0416\u0003", "\u0002\u0002\u0002\u01fe\u01ff\u0007\u0011\u0002\u0002\u01ff\u0200\t", "\u0007\u0002\u0002\u0200\u0201\u0005\u00aeX\u0002\u0201\u0202\u0007", "\u00bd\u0002\u0002\u0202\u0203\u0007\u00e9\u0002\u0002\u0203\u0204\u0005", "\u00aeX\u0002\u0204\u0416\u0003\u0002\u0002\u0002\u0205\u0206\u0007", "\u0011\u0002\u0002\u0206\u0207\t\u0007\u0002\u0002\u0207\u0208\u0005", "\u00aeX\u0002\u0208\u0209\u0007\u00d2\u0002\u0002\u0209\u020a\u0007", "\u00e4\u0002\u0002\u020a\u020b\u0005:\u001e\u0002\u020b\u0416\u0003", "\u0002\u0002\u0002\u020c\u020d\u0007\u0011\u0002\u0002\u020d\u020e\t", "\u0007\u0002\u0002\u020e\u020f\u0005\u00aeX\u0002\u020f\u0210\u0007", "\u00fa\u0002\u0002\u0210\u0213\u0007\u00e4\u0002\u0002\u0211\u0212\u0007", "o\u0002\u0002\u0212\u0214\u0007U\u0002\u0002\u0213\u0211\u0003\u0002", "\u0002\u0002\u0213\u0214\u0003\u0002\u0002\u0002\u0214\u0215\u0003\u0002", "\u0002\u0002\u0215\u0216\u0005:\u001e\u0002\u0216\u0416\u0003\u0002", "\u0002\u0002\u0217\u0218\u0007\u0011\u0002\u0002\u0218\u0219\u0007\u00e1", "\u0002\u0002\u0219\u021a\u0005\u00aeX\u0002\u021a\u021c\t\b\u0002\u0002", "\u021b\u021d\u0007-\u0002\u0002\u021c\u021b\u0003\u0002\u0002\u0002", "\u021c\u021d\u0003\u0002\u0002\u0002\u021d\u021e\u0003\u0002\u0002\u0002", "\u021e\u0220\u0005\u00aeX\u0002\u021f\u0221\u0005\u010a\u0086\u0002", "\u0220\u021f\u0003\u0002\u0002\u0002\u0220\u0221\u0003\u0002\u0002\u0002", "\u0221\u0416\u0003\u0002\u0002\u0002\u0222\u0223\u0007\u0011\u0002\u0002", "\u0223\u0224\u0007\u00e1\u0002\u0002\u0224\u0226\u0005\u00aeX\u0002", "\u0225\u0227\u0005(\u0015\u0002\u0226\u0225\u0003\u0002\u0002\u0002", "\u0226\u0227\u0003\u0002\u0002\u0002\u0227\u0228\u0003\u0002\u0002\u0002", "\u0228\u022a\u0007%\u0002\u0002\u0229\u022b\u0007-\u0002\u0002\u022a", "\u0229\u0003\u0002\u0002\u0002\u022a\u022b\u0003\u0002\u0002\u0002\u022b", "\u022c\u0003\u0002\u0002\u0002\u022c\u022d\u0005\u00aeX\u0002\u022d", "\u022f\u0005\u00e6t\u0002\u022e\u0230\u0005\u00dco\u0002\u022f\u022e", "\u0003\u0002\u0002\u0002\u022f\u0230\u0003\u0002\u0002\u0002\u0230\u0416", "\u0003\u0002\u0002\u0002\u0231\u0232\u0007\u0011\u0002\u0002\u0232\u0233", "\u0007\u00e1\u0002\u0002\u0233\u0235\u0005\u00aeX\u0002\u0234\u0236", "\u0005(\u0015\u0002\u0235\u0234\u0003\u0002\u0002\u0002\u0235\u0236", "\u0003\u0002\u0002\u0002\u0236\u0237\u0003\u0002\u0002\u0002\u0237\u0238", "\u0007\u00bf\u0002\u0002\u0238\u0239\u0007.\u0002\u0002\u0239\u023a", "\u0007\u0004\u0002\u0002\u023a\u023b\u0005\u00e0q\u0002\u023b\u023c", "\u0007\u0005\u0002\u0002\u023c\u0416\u0003\u0002\u0002\u0002\u023d\u023e", "\u0007\u0011\u0002\u0002\u023e\u023f\u0007\u00e1\u0002\u0002\u023f\u0241", "\u0005\u00aeX\u0002\u0240\u0242\u0005(\u0015\u0002\u0241\u0240\u0003", "\u0002\u0002\u0002\u0241\u0242\u0003\u0002\u0002\u0002\u0242\u0243\u0003", "\u0002\u0002\u0002\u0243\u0244\u0007\u00d2\u0002\u0002\u0244\u0245\u0007", "\u00cf\u0002\u0002\u0245\u0249\u0007\u0119\u0002\u0002\u0246\u0247\u0007", "\u0105\u0002\u0002\u0247\u0248\u0007\u00d0\u0002\u0002\u0248\u024a\u0005", ":\u001e\u0002\u0249\u0246\u0003\u0002\u0002\u0002\u0249\u024a\u0003", "\u0002\u0002\u0002\u024a\u0416\u0003\u0002\u0002\u0002\u024b\u024c\u0007", "\u0011\u0002\u0002\u024c\u024d\u0007\u00e1\u0002\u0002\u024d\u024f\u0005", "\u00aeX\u0002\u024e\u0250\u0005(\u0015\u0002\u024f\u024e\u0003\u0002", "\u0002\u0002\u024f\u0250\u0003\u0002\u0002\u0002\u0250\u0251\u0003\u0002", "\u0002\u0002\u0251\u0252\u0007\u00d2\u0002\u0002\u0252\u0253\u0007\u00d0", "\u0002\u0002\u0253\u0254\u0005:\u001e\u0002\u0254\u0416\u0003\u0002", "\u0002\u0002\u0255\u0256\u0007\u0011\u0002\u0002\u0256\u0257\t\u0007", "\u0002\u0002\u0257\u0258\u0005\u00aeX\u0002\u0258\u025c\u0007\u000e", "\u0002\u0002\u0259\u025a\u0007o\u0002\u0002\u025a\u025b\u0007\u0098", "\u0002\u0002\u025b\u025d\u0007U\u0002\u0002\u025c\u0259\u0003\u0002", "\u0002\u0002\u025c\u025d\u0003\u0002\u0002\u0002\u025d\u025f\u0003\u0002", "\u0002\u0002\u025e\u0260\u0005&\u0014\u0002\u025f\u025e\u0003\u0002", "\u0002\u0002\u0260\u0261\u0003\u0002\u0002\u0002\u0261\u025f\u0003\u0002", "\u0002\u0002\u0261\u0262\u0003\u0002\u0002\u0002\u0262\u0416\u0003\u0002", "\u0002\u0002\u0263\u0264\u0007\u0011\u0002\u0002\u0264\u0265\u0007\u00e1", "\u0002\u0002\u0265\u0266\u0005\u00aeX\u0002\u0266\u0267\u0005(\u0015", "\u0002\u0267\u0268\u0007\u00bd\u0002\u0002\u0268\u0269\u0007\u00e9\u0002", "\u0002\u0269\u026a\u0005(\u0015\u0002\u026a\u0416\u0003\u0002\u0002", "\u0002\u026b\u026c\u0007\u0011\u0002\u0002\u026c\u026d\t\u0007\u0002", "\u0002\u026d\u026e\u0005\u00aeX\u0002\u026e\u0271\u0007N\u0002\u0002", "\u026f\u0270\u0007o\u0002\u0002\u0270\u0272\u0007U\u0002\u0002\u0271", "\u026f\u0003\u0002\u0002\u0002\u0271\u0272\u0003\u0002\u0002\u0002\u0272", "\u0273\u0003\u0002\u0002\u0002\u0273\u0278\u0005(\u0015\u0002\u0274", "\u0275\u0007\u0006\u0002\u0002\u0275\u0277\u0005(\u0015\u0002\u0276", "\u0274\u0003\u0002\u0002\u0002\u0277\u027a\u0003\u0002\u0002\u0002\u0278", "\u0276\u0003\u0002\u0002\u0002\u0278\u0279\u0003\u0002\u0002\u0002\u0279", "\u027c\u0003\u0002\u0002\u0002\u027a\u0278\u0003\u0002\u0002\u0002\u027b", "\u027d\u0007\u00b4\u0002\u0002\u027c\u027b\u0003\u0002\u0002\u0002\u027c", "\u027d\u0003\u0002\u0002\u0002\u027d\u0416\u0003\u0002\u0002\u0002\u027e", "\u027f\u0007\u0011\u0002\u0002\u027f\u0280\u0007\u00e1\u0002\u0002\u0280", "\u0282\u0005\u00aeX\u0002\u0281\u0283\u0005(\u0015\u0002\u0282\u0281", "\u0003\u0002\u0002\u0002\u0282\u0283\u0003\u0002\u0002\u0002\u0283\u0284", "\u0003\u0002\u0002\u0002\u0284\u0285\u0007\u00d2\u0002\u0002\u0285\u0286", "\u0005\u001e\u0010\u0002\u0286\u0416\u0003\u0002\u0002\u0002\u0287\u0288", "\u0007\u0011\u0002\u0002\u0288\u0289\u0007\u00e1\u0002\u0002\u0289\u028a", "\u0005\u00aeX\u0002\u028a\u028b\u0007\u00b9\u0002\u0002\u028b\u028c", "\u0007\u00ab\u0002\u0002\u028c\u0416\u0003\u0002\u0002\u0002\u028d\u028e", "\u0007N\u0002\u0002\u028e\u0291\u0007\u00e1\u0002\u0002\u028f\u0290", "\u0007o\u0002\u0002\u0290\u0292\u0007U\u0002\u0002\u0291\u028f\u0003", "\u0002\u0002\u0002\u0291\u0292\u0003\u0002\u0002\u0002\u0292\u0293\u0003", "\u0002\u0002\u0002\u0293\u0295\u0005\u00aeX\u0002\u0294\u0296\u0007", "\u00b4\u0002\u0002\u0295\u0294\u0003\u0002\u0002\u0002\u0295\u0296\u0003", "\u0002\u0002\u0002\u0296\u0416\u0003\u0002\u0002\u0002\u0297\u0298\u0007", "N\u0002\u0002\u0298\u029b\u0007\u0100\u0002\u0002\u0299\u029a\u0007", "o\u0002\u0002\u029a\u029c\u0007U\u0002\u0002\u029b\u0299\u0003\u0002", "\u0002\u0002\u029b\u029c\u0003\u0002\u0002\u0002\u029c\u029d\u0003\u0002", "\u0002\u0002\u029d\u0416\u0005\u00aeX\u0002\u029e\u02a1\u00077\u0002", "\u0002\u029f\u02a0\u0007\u00a0\u0002\u0002\u02a0\u02a2\u0007\u00bf\u0002", "\u0002\u02a1\u029f\u0003\u0002\u0002\u0002\u02a1\u02a2\u0003\u0002\u0002", "\u0002\u02a2\u02a7\u0003\u0002\u0002\u0002\u02a3\u02a5\u0007j\u0002", "\u0002\u02a4\u02a3\u0003\u0002\u0002\u0002\u02a4\u02a5\u0003\u0002\u0002", "\u0002\u02a5\u02a6\u0003\u0002\u0002\u0002\u02a6\u02a8\u0007\u00e5\u0002", "\u0002\u02a7\u02a4\u0003\u0002\u0002\u0002\u02a7\u02a8\u0003\u0002\u0002", "\u0002\u02a8\u02a9\u0003\u0002\u0002\u0002\u02a9\u02ad\u0007\u0100\u0002", "\u0002\u02aa\u02ab\u0007o\u0002\u0002\u02ab\u02ac\u0007\u0098\u0002", "\u0002\u02ac\u02ae\u0007U\u0002\u0002\u02ad\u02aa\u0003\u0002\u0002", "\u0002\u02ad\u02ae\u0003\u0002\u0002\u0002\u02ae\u02af\u0003\u0002\u0002", "\u0002\u02af\u02b1\u0005\u00aeX\u0002\u02b0\u02b2\u0005\u009eP\u0002", "\u02b1\u02b0\u0003\u0002\u0002\u0002\u02b1\u02b2\u0003\u0002\u0002\u0002", "\u02b2\u02bb\u0003\u0002\u0002\u0002\u02b3\u02ba\u0005 \u0011\u0002", "\u02b4\u02b5\u0007\u00aa\u0002\u0002\u02b5\u02b6\u0007\u009c\u0002\u0002", "\u02b6\u02ba\u0005\u0096L\u0002\u02b7\u02b8\u0007\u00e4\u0002\u0002", "\u02b8\u02ba\u0005:\u001e\u0002\u02b9\u02b3\u0003\u0002\u0002\u0002", "\u02b9\u02b4\u0003\u0002\u0002\u0002\u02b9\u02b7\u0003\u0002\u0002\u0002", "\u02ba\u02bd\u0003\u0002\u0002\u0002\u02bb\u02b9\u0003\u0002\u0002\u0002", "\u02bb\u02bc\u0003\u0002\u0002\u0002\u02bc\u02be\u0003\u0002\u0002\u0002", "\u02bd\u02bb\u0003\u0002\u0002\u0002\u02be\u02bf\u0007\u0018\u0002\u0002", "\u02bf\u02c0\u0005\"\u0012\u0002\u02c0\u0416\u0003\u0002\u0002\u0002", "\u02c1\u02c4\u00077\u0002\u0002\u02c2\u02c3\u0007\u00a0\u0002\u0002", "\u02c3\u02c5\u0007\u00bf\u0002\u0002\u02c4\u02c2\u0003\u0002\u0002\u0002", "\u02c4\u02c5\u0003\u0002\u0002\u0002\u02c5\u02c7\u0003\u0002\u0002\u0002", "\u02c6\u02c8\u0007j\u0002\u0002\u02c7\u02c6\u0003\u0002\u0002\u0002", "\u02c7\u02c8\u0003\u0002\u0002\u0002\u02c8\u02c9\u0003\u0002\u0002\u0002", "\u02c9\u02ca\u0007\u00e5\u0002\u0002\u02ca\u02cb\u0007\u0100\u0002\u0002", "\u02cb\u02d0\u0005\u00b0Y\u0002\u02cc\u02cd\u0007\u0004\u0002\u0002", "\u02cd\u02ce\u0005\u00e4s\u0002\u02ce\u02cf\u0007\u0005\u0002\u0002", "\u02cf\u02d1\u0003\u0002\u0002\u0002\u02d0\u02cc\u0003\u0002\u0002\u0002", "\u02d0\u02d1\u0003\u0002\u0002\u0002\u02d1\u02d2\u0003\u0002\u0002\u0002", "\u02d2\u02d5\u00056\u001c\u0002\u02d3\u02d4\u0007\u009f\u0002\u0002", "\u02d4\u02d6\u0005:\u001e\u0002\u02d5\u02d3\u0003\u0002\u0002\u0002", "\u02d5\u02d6\u0003\u0002\u0002\u0002\u02d6\u0416\u0003\u0002\u0002\u0002", "\u02d7\u02d8\u0007\u0011\u0002\u0002\u02d8\u02d9\u0007\u0100\u0002\u0002", "\u02d9\u02db\u0005\u00aeX\u0002\u02da\u02dc\u0007\u0018\u0002\u0002", "\u02db\u02da\u0003\u0002\u0002\u0002\u02db\u02dc\u0003\u0002\u0002\u0002", "\u02dc\u02dd\u0003\u0002\u0002\u0002\u02dd\u02de\u0005\"\u0012\u0002", "\u02de\u0416\u0003\u0002\u0002\u0002\u02df\u02e2\u00077\u0002\u0002", "\u02e0\u02e1\u0007\u00a0\u0002\u0002\u02e1\u02e3\u0007\u00bf\u0002\u0002", "\u02e2\u02e0\u0003\u0002\u0002\u0002\u02e2\u02e3\u0003\u0002\u0002\u0002", "\u02e3\u02e5\u0003\u0002\u0002\u0002\u02e4\u02e6\u0007\u00e5\u0002\u0002", "\u02e5\u02e4\u0003\u0002\u0002\u0002\u02e5\u02e6\u0003\u0002\u0002\u0002", "\u02e6\u02e7\u0003\u0002\u0002\u0002\u02e7\u02eb\u0007h\u0002\u0002", "\u02e8\u02e9\u0007o\u0002\u0002\u02e9\u02ea\u0007\u0098\u0002\u0002", "\u02ea\u02ec\u0007U\u0002\u0002\u02eb\u02e8\u0003\u0002\u0002\u0002", "\u02eb\u02ec\u0003\u0002\u0002\u0002\u02ec\u02ed\u0003\u0002\u0002\u0002", "\u02ed\u02ee\u0005\u00aeX\u0002\u02ee\u02ef\u0007\u0018\u0002\u0002", "\u02ef\u02f9\u0007\u0119\u0002\u0002\u02f0\u02f1\u0007\u00fe\u0002\u0002", "\u02f1\u02f6\u0005L\'\u0002\u02f2\u02f3\u0007\u0006\u0002\u0002\u02f3", "\u02f5\u0005L\'\u0002\u02f4\u02f2\u0003\u0002\u0002\u0002\u02f5\u02f8", "\u0003\u0002\u0002\u0002\u02f6\u02f4\u0003\u0002\u0002\u0002\u02f6\u02f7", "\u0003\u0002\u0002\u0002\u02f7\u02fa\u0003\u0002\u0002\u0002\u02f8\u02f6", "\u0003\u0002\u0002\u0002\u02f9\u02f0\u0003\u0002\u0002\u0002\u02f9\u02fa", "\u0003\u0002\u0002\u0002\u02fa\u0416\u0003\u0002\u0002\u0002\u02fb\u02fd", "\u0007N\u0002\u0002\u02fc\u02fe\u0007\u00e5\u0002\u0002\u02fd\u02fc", "\u0003\u0002\u0002\u0002\u02fd\u02fe\u0003\u0002\u0002\u0002\u02fe\u02ff", "\u0003\u0002\u0002\u0002\u02ff\u0302\u0007h\u0002\u0002\u0300\u0301", "\u0007o\u0002\u0002\u0301\u0303\u0007U\u0002\u0002\u0302\u0300\u0003", "\u0002\u0002\u0002\u0302\u0303\u0003\u0002\u0002\u0002\u0303\u0304\u0003", "\u0002\u0002\u0002\u0304\u0416\u0005\u00aeX\u0002\u0305\u0307\u0007", "V\u0002\u0002\u0306\u0308\t\t\u0002\u0002\u0307\u0306\u0003\u0002\u0002", "\u0002\u0307\u0308\u0003\u0002\u0002\u0002\u0308\u0309\u0003\u0002\u0002", "\u0002\u0309\u0416\u0005\u0010\t\u0002\u030a\u030b\u0007\u00d5\u0002", "\u0002\u030b\u030e\u0007\u00e2\u0002\u0002\u030c\u030d\t\u0005\u0002", "\u0002\u030d\u030f\u0005\u00aeX\u0002\u030e\u030c\u0003\u0002\u0002", "\u0002\u030e\u030f\u0003\u0002\u0002\u0002\u030f\u0314\u0003\u0002\u0002", "\u0002\u0310\u0312\u0007\u0085\u0002\u0002\u0311\u0310\u0003\u0002\u0002", "\u0002\u0311\u0312\u0003\u0002\u0002\u0002\u0312\u0313\u0003\u0002\u0002", "\u0002\u0313\u0315\u0007\u0119\u0002\u0002\u0314\u0311\u0003\u0002\u0002", "\u0002\u0314\u0315\u0003\u0002\u0002\u0002\u0315\u0416\u0003\u0002\u0002", "\u0002\u0316\u0317\u0007\u00d5\u0002\u0002\u0317\u0318\u0007\u00e1\u0002", "\u0002\u0318\u031b\u0007X\u0002\u0002\u0319\u031a\t\u0005\u0002\u0002", "\u031a\u031c\u0005\u00aeX\u0002\u031b\u0319\u0003\u0002\u0002\u0002", "\u031b\u031c\u0003\u0002\u0002\u0002\u031c\u031d\u0003\u0002\u0002\u0002", "\u031d\u031e\u0007\u0085\u0002\u0002\u031e\u0320\u0007\u0119\u0002\u0002", "\u031f\u0321\u0005(\u0015\u0002\u0320\u031f\u0003\u0002\u0002\u0002", "\u0320\u0321\u0003\u0002\u0002\u0002\u0321\u0416\u0003\u0002\u0002\u0002", "\u0322\u0323\u0007\u00d5\u0002\u0002\u0323\u0324\u0007\u00e4\u0002\u0002", "\u0324\u0329\u0005\u00aeX\u0002\u0325\u0326\u0007\u0004\u0002\u0002", "\u0326\u0327\u0005> \u0002\u0327\u0328\u0007\u0005\u0002\u0002\u0328", "\u032a\u0003\u0002\u0002\u0002\u0329\u0325\u0003\u0002\u0002\u0002\u0329", "\u032a\u0003\u0002\u0002\u0002\u032a\u0416\u0003\u0002\u0002\u0002\u032b", "\u032c\u0007\u00d5\u0002\u0002\u032c\u032d\u0007.\u0002\u0002\u032d", "\u032e\t\u0005\u0002\u0002\u032e\u0331\u0005\u00aeX\u0002\u032f\u0330", "\t\u0005\u0002\u0002\u0330\u0332\u0005\u00aeX\u0002\u0331\u032f\u0003", "\u0002\u0002\u0002\u0331\u0332\u0003\u0002\u0002\u0002\u0332\u0416\u0003", "\u0002\u0002\u0002\u0333\u0334\u0007\u00d5\u0002\u0002\u0334\u0337\u0007", "\u0101\u0002\u0002\u0335\u0336\t\u0005\u0002\u0002\u0336\u0338\u0005", "\u00aeX\u0002\u0337\u0335\u0003\u0002\u0002\u0002\u0337\u0338\u0003", "\u0002\u0002\u0002\u0338\u033d\u0003\u0002\u0002\u0002\u0339\u033b\u0007", "\u0085\u0002\u0002\u033a\u0339\u0003\u0002\u0002\u0002\u033a\u033b\u0003", "\u0002\u0002\u0002\u033b\u033c\u0003\u0002\u0002\u0002\u033c\u033e\u0007", "\u0119\u0002\u0002\u033d\u033a\u0003\u0002\u0002\u0002\u033d\u033e\u0003", "\u0002\u0002\u0002\u033e\u0416\u0003\u0002\u0002\u0002\u033f\u0340\u0007", "\u00d5\u0002\u0002\u0340\u0341\u0007\u00ab\u0002\u0002\u0341\u0343\u0005", "\u00aeX\u0002\u0342\u0344\u0005(\u0015\u0002\u0343\u0342\u0003\u0002", "\u0002\u0002\u0343\u0344\u0003\u0002\u0002\u0002\u0344\u0416\u0003\u0002", "\u0002\u0002\u0345\u0347\u0007\u00d5\u0002\u0002\u0346\u0348\u0005\u0102", "\u0082\u0002\u0347\u0346\u0003\u0002\u0002\u0002\u0347\u0348\u0003\u0002", "\u0002\u0002\u0348\u0349\u0003\u0002\u0002\u0002\u0349\u0351\u0007i", "\u0002\u0002\u034a\u034c\u0007\u0085\u0002\u0002\u034b\u034a\u0003\u0002", "\u0002\u0002\u034b\u034c\u0003\u0002\u0002\u0002\u034c\u034f\u0003\u0002", "\u0002\u0002\u034d\u0350\u0005\u00aeX\u0002\u034e\u0350\u0007\u0119", "\u0002\u0002\u034f\u034d\u0003\u0002\u0002\u0002\u034f\u034e\u0003\u0002", "\u0002\u0002\u0350\u0352\u0003\u0002\u0002\u0002\u0351\u034b\u0003\u0002", "\u0002\u0002\u0351\u0352\u0003\u0002\u0002\u0002\u0352\u0416\u0003\u0002", "\u0002\u0002\u0353\u0354\u0007\u00d5\u0002\u0002\u0354\u0355\u00077", "\u0002\u0002\u0355\u0356\u0007\u00e1\u0002\u0002\u0356\u0359\u0005\u00ae", "X\u0002\u0357\u0358\u0007\u0018\u0002\u0002\u0358\u035a\u0007\u00cf", "\u0002\u0002\u0359\u0357\u0003\u0002\u0002\u0002\u0359\u035a\u0003\u0002", "\u0002\u0002\u035a\u0416\u0003\u0002\u0002\u0002\u035b\u035c\u0007\u00d5", "\u0002\u0002\u035c\u035d\u0007:\u0002\u0002\u035d\u0416\u0007\u0094", "\u0002\u0002\u035e\u035f\t\n\u0002\u0002\u035f\u0361\u0007h\u0002\u0002", "\u0360\u0362\u0007X\u0002\u0002\u0361\u0360\u0003\u0002\u0002\u0002", "\u0361\u0362\u0003\u0002\u0002\u0002\u0362\u0363\u0003\u0002\u0002\u0002", "\u0363\u0416\u0005.\u0018\u0002\u0364\u0365\t\n\u0002\u0002\u0365\u0367", "\u0005,\u0017\u0002\u0366\u0368\u0007X\u0002\u0002\u0367\u0366\u0003", "\u0002\u0002\u0002\u0367\u0368\u0003\u0002\u0002\u0002\u0368\u0369\u0003", "\u0002\u0002\u0002\u0369\u036a\u0005\u00aeX\u0002\u036a\u0416\u0003", "\u0002\u0002\u0002\u036b\u036d\t\n\u0002\u0002\u036c\u036e\u0007\u00e1", "\u0002\u0002\u036d\u036c\u0003\u0002\u0002\u0002\u036d\u036e\u0003\u0002", "\u0002\u0002\u036e\u0370\u0003\u0002\u0002\u0002\u036f\u0371\t\u000b", "\u0002\u0002\u0370\u036f\u0003\u0002\u0002\u0002\u0370\u0371\u0003\u0002", "\u0002\u0002\u0371\u0372\u0003\u0002\u0002\u0002\u0372\u0374\u0005\u00ae", "X\u0002\u0373\u0375\u0005(\u0015\u0002\u0374\u0373\u0003\u0002\u0002", "\u0002\u0374\u0375\u0003\u0002\u0002\u0002\u0375\u0377\u0003\u0002\u0002", "\u0002\u0376\u0378\u00050\u0019\u0002\u0377\u0376\u0003\u0002\u0002", "\u0002\u0377\u0378\u0003\u0002\u0002\u0002\u0378\u0416\u0003\u0002\u0002", "\u0002\u0379\u037b\t\n\u0002\u0002\u037a\u037c\u0007\u00b5\u0002\u0002", "\u037b\u037a\u0003\u0002\u0002\u0002\u037b\u037c\u0003\u0002\u0002\u0002", "\u037c\u037d\u0003\u0002\u0002\u0002\u037d\u0416\u0005\"\u0012\u0002", "\u037e\u037f\u0007/\u0002\u0002\u037f\u0380\u0007\u009c\u0002\u0002", "\u0380\u0381\u0005,\u0017\u0002\u0381\u0382\u0005\u00aeX\u0002\u0382", "\u0383\u0007|\u0002\u0002\u0383\u0384\t\f\u0002\u0002\u0384\u0416\u0003", "\u0002\u0002\u0002\u0385\u0386\u0007/\u0002\u0002\u0386\u0387\u0007", "\u009c\u0002\u0002\u0387\u0388\u0007\u00e1\u0002\u0002\u0388\u0389\u0005", "\u00aeX\u0002\u0389\u038a\u0007|\u0002\u0002\u038a\u038b\t\f\u0002\u0002", "\u038b\u0416\u0003\u0002\u0002\u0002\u038c\u038d\u0007\u00bc\u0002\u0002", "\u038d\u038e\u0007\u00e1\u0002\u0002\u038e\u0416\u0005\u00aeX\u0002", "\u038f\u0390\u0007\u00bc\u0002\u0002\u0390\u0391\u0007h\u0002\u0002", "\u0391\u0416\u0005\u00aeX\u0002\u0392\u039a\u0007\u00bc\u0002\u0002", "\u0393\u039b\u0007\u0119\u0002\u0002\u0394\u0396\u000b\u0002\u0002\u0002", "\u0395\u0394\u0003\u0002\u0002\u0002\u0396\u0399\u0003\u0002\u0002\u0002", "\u0397\u0398\u0003\u0002\u0002\u0002\u0397\u0395\u0003\u0002\u0002\u0002", "\u0398\u039b\u0003\u0002\u0002\u0002\u0399\u0397\u0003\u0002\u0002\u0002", "\u039a\u0393\u0003\u0002\u0002\u0002\u039a\u0397\u0003\u0002\u0002\u0002", "\u039b\u0416\u0003\u0002\u0002\u0002\u039c\u039e\u0007!\u0002\u0002", "\u039d\u039f\u0007\u0082\u0002\u0002\u039e\u039d\u0003\u0002\u0002\u0002", "\u039e\u039f\u0003\u0002\u0002\u0002\u039f\u03a0\u0003\u0002\u0002\u0002", "\u03a0\u03a1\u0007\u00e1\u0002\u0002\u03a1\u03a4\u0005\u00aeX\u0002", "\u03a2\u03a3\u0007\u009f\u0002\u0002\u03a3\u03a5\u0005:\u001e\u0002", "\u03a4\u03a2\u0003\u0002\u0002\u0002\u03a4\u03a5\u0003\u0002\u0002\u0002", "\u03a5\u03aa\u0003\u0002\u0002\u0002\u03a6\u03a8\u0007\u0018\u0002\u0002", "\u03a7\u03a6\u0003\u0002\u0002\u0002\u03a7\u03a8\u0003\u0002\u0002\u0002", "\u03a8\u03a9\u0003\u0002\u0002\u0002\u03a9\u03ab\u0005\"\u0012\u0002", "\u03aa\u03a7\u0003\u0002\u0002\u0002\u03aa\u03ab\u0003\u0002\u0002\u0002", "\u03ab\u0416\u0003\u0002\u0002\u0002\u03ac\u03ad\u0007\u00f5\u0002\u0002", "\u03ad\u03b0\u0007\u00e1\u0002\u0002\u03ae\u03af\u0007o\u0002\u0002", "\u03af\u03b1\u0007U\u0002\u0002\u03b0\u03ae\u0003\u0002\u0002\u0002", "\u03b0\u03b1\u0003\u0002\u0002\u0002\u03b1\u03b2\u0003\u0002\u0002\u0002", "\u03b2\u0416\u0005\u00aeX\u0002\u03b3\u03b4\u0007\'\u0002\u0002\u03b4", "\u0416\u0007!\u0002\u0002\u03b5\u03b6\u0007\u0089\u0002\u0002\u03b6", "\u03b8\u0007?\u0002\u0002\u03b7\u03b9\u0007\u008a\u0002\u0002\u03b8", "\u03b7\u0003\u0002\u0002\u0002\u03b8\u03b9\u0003\u0002\u0002\u0002\u03b9", "\u03ba\u0003\u0002\u0002\u0002\u03ba\u03bb\u0007v\u0002\u0002\u03bb", "\u03bd\u0007\u0119\u0002\u0002\u03bc\u03be\u0007\u00a8\u0002\u0002\u03bd", "\u03bc\u0003\u0002\u0002\u0002\u03bd\u03be\u0003\u0002\u0002\u0002\u03be", "\u03bf\u0003\u0002\u0002\u0002\u03bf\u03c0\u0007{\u0002\u0002\u03c0", "\u03c1\u0007\u00e1\u0002\u0002\u03c1\u03c3\u0005\u00aeX\u0002\u03c2", "\u03c4\u0005(\u0015\u0002\u03c3\u03c2\u0003\u0002\u0002\u0002\u03c3", "\u03c4\u0003\u0002\u0002\u0002\u03c4\u0416\u0003\u0002\u0002\u0002\u03c5", "\u03c6\u0007\u00f1\u0002\u0002\u03c6\u03c7\u0007\u00e1\u0002\u0002\u03c7", "\u03c9\u0005\u00aeX\u0002\u03c8\u03ca\u0005(\u0015\u0002\u03c9\u03c8", "\u0003\u0002\u0002\u0002\u03c9\u03ca\u0003\u0002\u0002\u0002\u03ca\u0416", "\u0003\u0002\u0002\u0002\u03cb\u03cc\u0007\u0093\u0002\u0002\u03cc\u03cd", "\u0007\u00be\u0002\u0002\u03cd\u03ce\u0007\u00e1\u0002\u0002\u03ce\u0416", "\u0005\u00aeX\u0002\u03cf\u03d0\t\r\u0002\u0002\u03d0\u03d8\u0005\u0102", "\u0082\u0002\u03d1\u03d9\u0007\u0119\u0002\u0002\u03d2\u03d4\u000b\u0002", "\u0002\u0002\u03d3\u03d2\u0003\u0002\u0002\u0002\u03d4\u03d7\u0003\u0002", "\u0002\u0002\u03d5\u03d6\u0003\u0002\u0002\u0002\u03d5\u03d3\u0003\u0002", "\u0002\u0002\u03d6\u03d9\u0003\u0002\u0002\u0002\u03d7\u03d5\u0003\u0002", "\u0002\u0002\u03d8\u03d1\u0003\u0002\u0002\u0002\u03d8\u03d5\u0003\u0002", "\u0002\u0002\u03d9\u0416\u0003\u0002\u0002\u0002\u03da\u03db\u0007\u00d2", "\u0002\u0002\u03db\u03df\u0007\u00c5\u0002\u0002\u03dc\u03de\u000b\u0002", "\u0002\u0002\u03dd\u03dc\u0003\u0002\u0002\u0002\u03de\u03e1\u0003\u0002", "\u0002\u0002\u03df\u03e0\u0003\u0002\u0002\u0002\u03df\u03dd\u0003\u0002", "\u0002\u0002\u03e0\u0416\u0003\u0002\u0002\u0002\u03e1\u03df\u0003\u0002", "\u0002\u0002\u03e2\u03e3\u0007\u00d2\u0002\u0002\u03e3\u03e4\u0007\u00e8", "\u0002\u0002\u03e4\u03e5\u0007\u0106\u0002\u0002\u03e5\u0416\u0005\u00d0", "i\u0002\u03e6\u03e7\u0007\u00d2\u0002\u0002\u03e7\u03e8\u0007\u00e8", "\u0002\u0002\u03e8\u03e9\u0007\u0106\u0002\u0002\u03e9\u0416\t\u000e", "\u0002\u0002\u03ea\u03eb\u0007\u00d2\u0002\u0002\u03eb\u03ec\u0007\u00e8", "\u0002\u0002\u03ec\u03f0\u0007\u0106\u0002\u0002\u03ed\u03ef\u000b\u0002", "\u0002\u0002\u03ee\u03ed\u0003\u0002\u0002\u0002\u03ef\u03f2\u0003\u0002", "\u0002\u0002\u03f0\u03f1\u0003\u0002\u0002\u0002\u03f0\u03ee\u0003\u0002", "\u0002\u0002\u03f1\u0416\u0003\u0002\u0002\u0002\u03f2\u03f0\u0003\u0002", "\u0002\u0002\u03f3\u03f4\u0007\u00d2\u0002\u0002\u03f4\u03fc\u0005\u0012", "\n\u0002\u03f5\u03f9\u0007\u0107\u0002\u0002\u03f6\u03f8\u000b\u0002", "\u0002\u0002\u03f7\u03f6\u0003\u0002\u0002\u0002\u03f8\u03fb\u0003\u0002", "\u0002\u0002\u03f9\u03fa\u0003\u0002\u0002\u0002\u03f9\u03f7\u0003\u0002", "\u0002\u0002\u03fa\u03fd\u0003\u0002\u0002\u0002\u03fb\u03f9\u0003\u0002", "\u0002\u0002\u03fc\u03f5\u0003\u0002\u0002\u0002\u03fc\u03fd\u0003\u0002", "\u0002\u0002\u03fd\u0416\u0003\u0002\u0002\u0002\u03fe\u0402\u0007\u00d2", "\u0002\u0002\u03ff\u0401\u000b\u0002\u0002\u0002\u0400\u03ff\u0003\u0002", "\u0002\u0002\u0401\u0404\u0003\u0002\u0002\u0002\u0402\u0403\u0003\u0002", "\u0002\u0002\u0402\u0400\u0003\u0002\u0002\u0002\u0403\u0416\u0003\u0002", "\u0002\u0002\u0404\u0402\u0003\u0002\u0002\u0002\u0405\u0406\u0007\u00c0", "\u0002\u0002\u0406\u0416\u0005\u0012\n\u0002\u0407\u040b\u0007\u00c0", "\u0002\u0002\u0408\u040a\u000b\u0002\u0002\u0002\u0409\u0408\u0003\u0002", "\u0002\u0002\u040a\u040d\u0003\u0002\u0002\u0002\u040b\u040c\u0003\u0002", "\u0002\u0002\u040b\u0409\u0003\u0002\u0002\u0002\u040c\u0416\u0003\u0002", "\u0002\u0002\u040d\u040b\u0003\u0002\u0002\u0002\u040e\u0412\u0005\u0014", "\u000b\u0002\u040f\u0411\u000b\u0002\u0002\u0002\u0410\u040f\u0003\u0002", "\u0002\u0002\u0411\u0414\u0003\u0002\u0002\u0002\u0412\u0413\u0003\u0002", "\u0002\u0002\u0412\u0410\u0003\u0002\u0002\u0002\u0413\u0416\u0003\u0002", "\u0002\u0002\u0414\u0412\u0003\u0002\u0002\u0002\u0415\u012d\u0003\u0002", "\u0002\u0002\u0415\u012f\u0003\u0002\u0002\u0002\u0415\u0132\u0003\u0002", "\u0002\u0002\u0415\u0137\u0003\u0002\u0002\u0002\u0415\u0149\u0003\u0002", "\u0002\u0002\u0415\u0150\u0003\u0002\u0002\u0002\u0415\u0156\u0003\u0002", "\u0002\u0002\u0415\u0160\u0003\u0002\u0002\u0002\u0415\u016c\u0003\u0002", "\u0002\u0002\u0415\u017b\u0003\u0002\u0002\u0002\u0415\u01a0\u0003\u0002", "\u0002\u0002\u0415\u01b5\u0003\u0002\u0002\u0002\u0415\u01c4\u0003\u0002", "\u0002\u0002\u0415\u01d5\u0003\u0002\u0002\u0002\u0415\u01dc\u0003\u0002", "\u0002\u0002\u0415\u01e5\u0003\u0002\u0002\u0002\u0415\u01ee\u0003\u0002", "\u0002\u0002\u0415\u01f7\u0003\u0002\u0002\u0002\u0415\u01fe\u0003\u0002", "\u0002\u0002\u0415\u0205\u0003\u0002\u0002\u0002\u0415\u020c\u0003\u0002", "\u0002\u0002\u0415\u0217\u0003\u0002\u0002\u0002\u0415\u0222\u0003\u0002", "\u0002\u0002\u0415\u0231\u0003\u0002\u0002\u0002\u0415\u023d\u0003\u0002", "\u0002\u0002\u0415\u024b\u0003\u0002\u0002\u0002\u0415\u0255\u0003\u0002", "\u0002\u0002\u0415\u0263\u0003\u0002\u0002\u0002\u0415\u026b\u0003\u0002", "\u0002\u0002\u0415\u027e\u0003\u0002\u0002\u0002\u0415\u0287\u0003\u0002", "\u0002\u0002\u0415\u028d\u0003\u0002\u0002\u0002\u0415\u0297\u0003\u0002", "\u0002\u0002\u0415\u029e\u0003\u0002\u0002\u0002\u0415\u02c1\u0003\u0002", "\u0002\u0002\u0415\u02d7\u0003\u0002\u0002\u0002\u0415\u02df\u0003\u0002", "\u0002\u0002\u0415\u02fb\u0003\u0002\u0002\u0002\u0415\u0305\u0003\u0002", "\u0002\u0002\u0415\u030a\u0003\u0002\u0002\u0002\u0415\u0316\u0003\u0002", "\u0002\u0002\u0415\u0322\u0003\u0002\u0002\u0002\u0415\u032b\u0003\u0002", "\u0002\u0002\u0415\u0333\u0003\u0002\u0002\u0002\u0415\u033f\u0003\u0002", "\u0002\u0002\u0415\u0345\u0003\u0002\u0002\u0002\u0415\u0353\u0003\u0002", "\u0002\u0002\u0415\u035b\u0003\u0002\u0002\u0002\u0415\u035e\u0003\u0002", "\u0002\u0002\u0415\u0364\u0003\u0002\u0002\u0002\u0415\u036b\u0003\u0002", "\u0002\u0002\u0415\u0379\u0003\u0002\u0002\u0002\u0415\u037e\u0003\u0002", "\u0002\u0002\u0415\u0385\u0003\u0002\u0002\u0002\u0415\u038c\u0003\u0002", "\u0002\u0002\u0415\u038f\u0003\u0002\u0002\u0002\u0415\u0392\u0003\u0002", "\u0002\u0002\u0415\u039c\u0003\u0002\u0002\u0002\u0415\u03ac\u0003\u0002", "\u0002\u0002\u0415\u03b3\u0003\u0002\u0002\u0002\u0415\u03b5\u0003\u0002", "\u0002\u0002\u0415\u03c5\u0003\u0002\u0002\u0002\u0415\u03cb\u0003\u0002", "\u0002\u0002\u0415\u03cf\u0003\u0002\u0002\u0002\u0415\u03da\u0003\u0002", "\u0002\u0002\u0415\u03e2\u0003\u0002\u0002\u0002\u0415\u03e6\u0003\u0002", "\u0002\u0002\u0415\u03ea\u0003\u0002\u0002\u0002\u0415\u03f3\u0003\u0002", "\u0002\u0002\u0415\u03fe\u0003\u0002\u0002\u0002\u0415\u0405\u0003\u0002", "\u0002\u0002\u0415\u0407\u0003\u0002\u0002\u0002\u0415\u040e\u0003\u0002", "\u0002\u0002\u0416\u0011\u0003\u0002\u0002\u0002\u0417\u0418\u0005\u0106", "\u0084\u0002\u0418\u0013\u0003\u0002\u0002\u0002\u0419\u041a\u00077", "\u0002\u0002\u041a\u04c2\u0007\u00c5\u0002\u0002\u041b\u041c\u0007N", "\u0002\u0002\u041c\u04c2\u0007\u00c5\u0002\u0002\u041d\u041f\u0007k", "\u0002\u0002\u041e\u0420\u0007\u00c5\u0002\u0002\u041f\u041e\u0003\u0002", "\u0002\u0002\u041f\u0420\u0003\u0002\u0002\u0002\u0420\u04c2\u0003\u0002", "\u0002\u0002\u0421\u0423\u0007\u00c2\u0002\u0002\u0422\u0424\u0007\u00c5", "\u0002\u0002\u0423\u0422\u0003\u0002\u0002\u0002\u0423\u0424\u0003\u0002", "\u0002\u0002\u0424\u04c2\u0003\u0002\u0002\u0002\u0425\u0426\u0007\u00d5", "\u0002\u0002\u0426\u04c2\u0007k\u0002\u0002\u0427\u0428\u0007\u00d5", "\u0002\u0002\u0428\u042a\u0007\u00c5\u0002\u0002\u0429\u042b\u0007k", "\u0002\u0002\u042a\u0429\u0003\u0002\u0002\u0002\u042a\u042b\u0003\u0002", "\u0002\u0002\u042b\u04c2\u0003\u0002\u0002\u0002\u042c\u042d\u0007\u00d5", "\u0002\u0002\u042d\u04c2\u0007\u00b2\u0002\u0002\u042e\u042f\u0007\u00d5", "\u0002\u0002\u042f\u04c2\u0007\u00c6\u0002\u0002\u0430\u0431\u0007\u00d5", "\u0002\u0002\u0431\u0432\u0007:\u0002\u0002\u0432\u04c2\u0007\u00c6", "\u0002\u0002\u0433\u0434\u0007W\u0002\u0002\u0434\u04c2\u0007\u00e1", "\u0002\u0002\u0435\u0436\u0007q\u0002\u0002\u0436\u04c2\u0007\u00e1", "\u0002\u0002\u0437\u0438\u0007\u00d5\u0002\u0002\u0438\u04c2\u00072", "\u0002\u0002\u0439\u043a\u0007\u00d5\u0002\u0002\u043a\u043b\u00077", "\u0002\u0002\u043b\u04c2\u0007\u00e1\u0002\u0002\u043c\u043d\u0007\u00d5", "\u0002\u0002\u043d\u04c2\u0007\u00ed\u0002\u0002\u043e\u043f\u0007\u00d5", "\u0002\u0002\u043f\u04c2\u0007t\u0002\u0002\u0440\u0441\u0007\u00d5", "\u0002\u0002\u0441\u04c2\u0007\u008d\u0002\u0002\u0442\u0443\u00077", "\u0002\u0002\u0443\u04c2\u0007s\u0002\u0002\u0444\u0445\u0007N\u0002", "\u0002\u0445\u04c2\u0007s\u0002\u0002\u0446\u0447\u0007\u0011\u0002", "\u0002\u0447\u04c2\u0007s\u0002\u0002\u0448\u0449\u0007\u008c\u0002", "\u0002\u0449\u04c2\u0007\u00e1\u0002\u0002\u044a\u044b\u0007\u008c\u0002", "\u0002\u044b\u04c2\u0007@\u0002\u0002\u044c\u044d\u0007\u00f9\u0002", "\u0002\u044d\u04c2\u0007\u00e1\u0002\u0002\u044e\u044f\u0007\u00f9\u0002", "\u0002\u044f\u04c2\u0007@\u0002\u0002\u0450\u0451\u00077\u0002\u0002", "\u0451\u0452\u0007\u00e5\u0002\u0002\u0452\u04c2\u0007\u008f\u0002\u0002", "\u0453\u0454\u0007N\u0002\u0002\u0454\u0455\u0007\u00e5\u0002\u0002", "\u0455\u04c2\u0007\u008f\u0002\u0002\u0456\u0457\u0007\u0011\u0002\u0002", "\u0457\u0458\u0007\u00e1\u0002\u0002\u0458\u0459\u0005\u00b0Y\u0002", "\u0459\u045a\u0007\u0098\u0002\u0002\u045a\u045b\u0007)\u0002\u0002", "\u045b\u04c2\u0003\u0002\u0002\u0002\u045c\u045d\u0007\u0011\u0002\u0002", "\u045d\u045e\u0007\u00e1\u0002\u0002\u045e\u045f\u0005\u00b0Y\u0002", "\u045f\u0460\u0007)\u0002\u0002\u0460\u0461\u0007 \u0002\u0002\u0461", "\u04c2\u0003\u0002\u0002\u0002\u0462\u0463\u0007\u0011\u0002\u0002\u0463", "\u0464\u0007\u00e1\u0002\u0002\u0464\u0465\u0005\u00b0Y\u0002\u0465", "\u0466\u0007\u0098\u0002\u0002\u0466\u0467\u0007\u00d9\u0002\u0002\u0467", "\u04c2\u0003\u0002\u0002\u0002\u0468\u0469\u0007\u0011\u0002\u0002\u0469", "\u046a\u0007\u00e1\u0002\u0002\u046a\u046b\u0005\u00b0Y\u0002\u046b", "\u046c\u0007\u00d6\u0002\u0002\u046c\u046d\u0007 \u0002\u0002\u046d", "\u04c2\u0003\u0002\u0002\u0002\u046e\u046f\u0007\u0011\u0002\u0002\u046f", "\u0470\u0007\u00e1\u0002\u0002\u0470\u0471\u0005\u00b0Y\u0002\u0471", "\u0472\u0007\u0098\u0002\u0002\u0472\u0473\u0007\u00d6\u0002\u0002\u0473", "\u04c2\u0003\u0002\u0002\u0002\u0474\u0475\u0007\u0011\u0002\u0002\u0475", "\u0476\u0007\u00e1\u0002\u0002\u0476\u0477\u0005\u00b0Y\u0002\u0477", "\u0478\u0007\u0098\u0002\u0002\u0478\u0479\u0007\u00dc\u0002\u0002\u0479", "\u047a\u0007\u0018\u0002\u0002\u047a\u047b\u0007I\u0002\u0002\u047b", "\u04c2\u0003\u0002\u0002\u0002\u047c\u047d\u0007\u0011\u0002\u0002\u047d", "\u047e\u0007\u00e1\u0002\u0002\u047e\u047f\u0005\u00b0Y\u0002\u047f", "\u0480\u0007\u00d2\u0002\u0002\u0480\u0481\u0007\u00d6\u0002\u0002\u0481", "\u0482\u0007\u008b\u0002\u0002\u0482\u04c2\u0003\u0002\u0002\u0002\u0483", "\u0484\u0007\u0011\u0002\u0002\u0484\u0485\u0007\u00e1\u0002\u0002\u0485", "\u0486\u0005\u00b0Y\u0002\u0486\u0487\u0007T\u0002\u0002\u0487\u0488", "\u0007\u00a9\u0002\u0002\u0488\u04c2\u0003\u0002\u0002\u0002\u0489\u048a", "\u0007\u0011\u0002\u0002\u048a\u048b\u0007\u00e1\u0002\u0002\u048b\u048c", "\u0005\u00b0Y\u0002\u048c\u048d\u0007\u0016\u0002\u0002\u048d\u048e", "\u0007\u00a9\u0002\u0002\u048e\u04c2\u0003\u0002\u0002\u0002\u048f\u0490", "\u0007\u0011\u0002\u0002\u0490\u0491\u0007\u00e1\u0002\u0002\u0491\u0492", "\u0005\u00b0Y\u0002\u0492\u0493\u0007\u00f3\u0002\u0002\u0493\u0494", "\u0007\u00a9\u0002\u0002\u0494\u04c2\u0003\u0002\u0002\u0002\u0495\u0496", "\u0007\u0011\u0002\u0002\u0496\u0497\u0007\u00e1\u0002\u0002\u0497\u0498", "\u0005\u00b0Y\u0002\u0498\u0499\u0007\u00ea\u0002\u0002\u0499\u04c2", "\u0003\u0002\u0002\u0002\u049a\u049b\u0007\u0011\u0002\u0002\u049b\u049c", "\u0007\u00e1\u0002\u0002\u049c\u049e\u0005\u00b0Y\u0002\u049d\u049f", "\u0005(\u0015\u0002\u049e\u049d\u0003\u0002\u0002\u0002\u049e\u049f", "\u0003\u0002\u0002\u0002\u049f\u04a0\u0003\u0002\u0002\u0002\u04a0\u04a1", "\u00071\u0002\u0002\u04a1\u04c2\u0003\u0002\u0002\u0002\u04a2\u04a3", "\u0007\u0011\u0002\u0002\u04a3\u04a4\u0007\u00e1\u0002\u0002\u04a4\u04a6", "\u0005\u00b0Y\u0002\u04a5\u04a7\u0005(\u0015\u0002\u04a6\u04a5\u0003", "\u0002\u0002\u0002\u04a6\u04a7\u0003\u0002\u0002\u0002\u04a7\u04a8\u0003", "\u0002\u0002\u0002\u04a8\u04a9\u00074\u0002\u0002\u04a9\u04c2\u0003", "\u0002\u0002\u0002\u04aa\u04ab\u0007\u0011\u0002\u0002\u04ab\u04ac\u0007", "\u00e1\u0002\u0002\u04ac\u04ae\u0005\u00b0Y\u0002\u04ad\u04af\u0005", "(\u0015\u0002\u04ae\u04ad\u0003\u0002\u0002\u0002\u04ae\u04af\u0003", "\u0002\u0002\u0002\u04af\u04b0\u0003\u0002\u0002\u0002\u04b0\u04b1\u0007", "\u00d2\u0002\u0002\u04b1\u04b2\u0007_\u0002\u0002\u04b2\u04c2\u0003", "\u0002\u0002\u0002\u04b3\u04b4\u0007\u0011\u0002\u0002\u04b4\u04b5\u0007", "\u00e1\u0002\u0002\u04b5\u04b7\u0005\u00b0Y\u0002\u04b6\u04b8\u0005", "(\u0015\u0002\u04b7\u04b6\u0003\u0002\u0002\u0002\u04b7\u04b8\u0003", "\u0002\u0002\u0002\u04b8\u04b9\u0003\u0002\u0002\u0002\u04b9\u04ba\u0007", "\u00bf\u0002\u0002\u04ba\u04bb\u0007.\u0002\u0002\u04bb\u04c2\u0003", "\u0002\u0002\u0002\u04bc\u04bd\u0007\u00da\u0002\u0002\u04bd\u04c2\u0007", "\u00ec\u0002\u0002\u04be\u04c2\u00070\u0002\u0002\u04bf\u04c2\u0007", "\u00c7\u0002\u0002\u04c0\u04c2\u0007H\u0002\u0002\u04c1\u0419\u0003", "\u0002\u0002\u0002\u04c1\u041b\u0003\u0002\u0002\u0002\u04c1\u041d\u0003", "\u0002\u0002\u0002\u04c1\u0421\u0003\u0002\u0002\u0002\u04c1\u0425\u0003", "\u0002\u0002\u0002\u04c1\u0427\u0003\u0002\u0002\u0002\u04c1\u042c\u0003", "\u0002\u0002\u0002\u04c1\u042e\u0003\u0002\u0002\u0002\u04c1\u0430\u0003", "\u0002\u0002\u0002\u04c1\u0433\u0003\u0002\u0002\u0002\u04c1\u0435\u0003", "\u0002\u0002\u0002\u04c1\u0437\u0003\u0002\u0002\u0002\u04c1\u0439\u0003", "\u0002\u0002\u0002\u04c1\u043c\u0003\u0002\u0002\u0002\u04c1\u043e\u0003", "\u0002\u0002\u0002\u04c1\u0440\u0003\u0002\u0002\u0002\u04c1\u0442\u0003", "\u0002\u0002\u0002\u04c1\u0444\u0003\u0002\u0002\u0002\u04c1\u0446\u0003", "\u0002\u0002\u0002\u04c1\u0448\u0003\u0002\u0002\u0002\u04c1\u044a\u0003", "\u0002\u0002\u0002\u04c1\u044c\u0003\u0002\u0002\u0002\u04c1\u044e\u0003", "\u0002\u0002\u0002\u04c1\u0450\u0003\u0002\u0002\u0002\u04c1\u0453\u0003", "\u0002\u0002\u0002\u04c1\u0456\u0003\u0002\u0002\u0002\u04c1\u045c\u0003", "\u0002\u0002\u0002\u04c1\u0462\u0003\u0002\u0002\u0002\u04c1\u0468\u0003", "\u0002\u0002\u0002\u04c1\u046e\u0003\u0002\u0002\u0002\u04c1\u0474\u0003", "\u0002\u0002\u0002\u04c1\u047c\u0003\u0002\u0002\u0002\u04c1\u0483\u0003", "\u0002\u0002\u0002\u04c1\u0489\u0003\u0002\u0002\u0002\u04c1\u048f\u0003", "\u0002\u0002\u0002\u04c1\u0495\u0003\u0002\u0002\u0002\u04c1\u049a\u0003", "\u0002\u0002\u0002\u04c1\u04a2\u0003\u0002\u0002\u0002\u04c1\u04aa\u0003", "\u0002\u0002\u0002\u04c1\u04b3\u0003\u0002\u0002\u0002\u04c1\u04bc\u0003", "\u0002\u0002\u0002\u04c1\u04be\u0003\u0002\u0002\u0002\u04c1\u04bf\u0003", "\u0002\u0002\u0002\u04c1\u04c0\u0003\u0002\u0002\u0002\u04c2\u0015\u0003", "\u0002\u0002\u0002\u04c3\u04c5\u00077\u0002\u0002\u04c4\u04c6\u0007", "\u00e5\u0002\u0002\u04c5\u04c4\u0003\u0002\u0002\u0002\u04c5\u04c6\u0003", "\u0002\u0002\u0002\u04c6\u04c8\u0003\u0002\u0002\u0002\u04c7\u04c9\u0007", "Y\u0002\u0002\u04c8\u04c7\u0003\u0002\u0002\u0002\u04c8\u04c9\u0003", "\u0002\u0002\u0002\u04c9\u04ca\u0003\u0002\u0002\u0002\u04ca\u04ce\u0007", "\u00e1\u0002\u0002\u04cb\u04cc\u0007o\u0002\u0002\u04cc\u04cd\u0007", "\u0098\u0002\u0002\u04cd\u04cf\u0007U\u0002\u0002\u04ce\u04cb\u0003", "\u0002\u0002\u0002\u04ce\u04cf\u0003\u0002\u0002\u0002\u04cf\u04d0\u0003", "\u0002\u0002\u0002\u04d0\u04d1\u0005\u00aeX\u0002\u04d1\u0017\u0003", "\u0002\u0002\u0002\u04d2\u04d3\u00077\u0002\u0002\u04d3\u04d5\u0007", "\u00a0\u0002\u0002\u04d4\u04d2\u0003\u0002\u0002\u0002\u04d4\u04d5\u0003", "\u0002\u0002\u0002\u04d5\u04d6\u0003\u0002\u0002\u0002\u04d6\u04d7\u0007", "\u00bf\u0002\u0002\u04d7\u04d8\u0007\u00e1\u0002\u0002\u04d8\u04d9\u0005", "\u00aeX\u0002\u04d9\u0019\u0003\u0002\u0002\u0002\u04da\u04db\u0007", ")\u0002\u0002\u04db\u04dc\u0007 \u0002\u0002\u04dc\u04e0\u0005\u0096", "L\u0002\u04dd\u04de\u0007\u00d9\u0002\u0002\u04de\u04df\u0007 \u0002", "\u0002\u04df\u04e1\u0005\u009aN\u0002\u04e0\u04dd\u0003\u0002\u0002", "\u0002\u04e0\u04e1\u0003\u0002\u0002\u0002\u04e1\u04e2\u0003\u0002\u0002", "\u0002\u04e2\u04e3\u0007{\u0002\u0002\u04e3\u04e4\u0007\u011d\u0002", "\u0002\u04e4\u04e5\u0007\u001f\u0002\u0002\u04e5\u001b\u0003\u0002\u0002", "\u0002\u04e6\u04e7\u0007\u00d6\u0002\u0002\u04e7\u04e8\u0007 \u0002", "\u0002\u04e8\u04e9\u0005\u0096L\u0002\u04e9\u04ec\u0007\u009c\u0002", "\u0002\u04ea\u04ed\u0005B\"\u0002\u04eb\u04ed\u0005D#\u0002\u04ec\u04ea", "\u0003\u0002\u0002\u0002\u04ec\u04eb\u0003\u0002\u0002\u0002\u04ed\u04f1", "\u0003\u0002\u0002\u0002\u04ee\u04ef\u0007\u00dc\u0002\u0002\u04ef\u04f0", "\u0007\u0018\u0002\u0002\u04f0\u04f2\u0007I\u0002\u0002\u04f1\u04ee", "\u0003\u0002\u0002\u0002\u04f1\u04f2\u0003\u0002\u0002\u0002\u04f2\u001d", "\u0003\u0002\u0002\u0002\u04f3\u04f4\u0007\u008b\u0002\u0002\u04f4\u04f5", "\u0007\u0119\u0002\u0002\u04f5\u001f\u0003\u0002\u0002\u0002\u04f6\u04f7", "\u0007/\u0002\u0002\u04f7\u04f8\u0007\u0119\u0002\u0002\u04f8!\u0003", "\u0002\u0002\u0002\u04f9\u04fb\u00052\u001a\u0002\u04fa\u04f9\u0003", "\u0002\u0002\u0002\u04fa\u04fb\u0003\u0002\u0002\u0002\u04fb\u04fc\u0003", "\u0002\u0002\u0002\u04fc\u04fd\u0005T+\u0002\u04fd\u04fe\u0005P)\u0002", "\u04fe#\u0003\u0002\u0002\u0002\u04ff\u0500\u0007x\u0002\u0002\u0500", "\u0502\u0007\u00a8\u0002\u0002\u0501\u0503\u0007\u00e1\u0002\u0002\u0502", "\u0501\u0003\u0002\u0002\u0002\u0502\u0503\u0003\u0002\u0002\u0002\u0503", "\u0504\u0003\u0002\u0002\u0002\u0504\u050b\u0005\u00aeX\u0002\u0505", "\u0509\u0005(\u0015\u0002\u0506\u0507\u0007o\u0002\u0002\u0507\u0508", "\u0007\u0098\u0002\u0002\u0508\u050a\u0007U\u0002\u0002\u0509\u0506", "\u0003\u0002\u0002\u0002\u0509\u050a\u0003\u0002\u0002\u0002\u050a\u050c", "\u0003\u0002\u0002\u0002\u050b\u0505\u0003\u0002\u0002\u0002\u050b\u050c", "\u0003\u0002\u0002\u0002\u050c\u0537\u0003\u0002\u0002\u0002\u050d\u050e", "\u0007x\u0002\u0002\u050e\u0510\u0007{\u0002\u0002\u050f\u0511\u0007", "\u00e1\u0002\u0002\u0510\u050f\u0003\u0002\u0002\u0002\u0510\u0511\u0003", "\u0002\u0002\u0002\u0511\u0512\u0003\u0002\u0002\u0002\u0512\u0514\u0005", "\u00aeX\u0002\u0513\u0515\u0005(\u0015\u0002\u0514\u0513\u0003\u0002", "\u0002\u0002\u0514\u0515\u0003\u0002\u0002\u0002\u0515\u0519\u0003\u0002", "\u0002\u0002\u0516\u0517\u0007o\u0002\u0002\u0517\u0518\u0007\u0098", "\u0002\u0002\u0518\u051a\u0007U\u0002\u0002\u0519\u0516\u0003\u0002", "\u0002\u0002\u0519\u051a\u0003\u0002\u0002\u0002\u051a\u0537\u0003\u0002", "\u0002\u0002\u051b\u051c\u0007x\u0002\u0002\u051c\u051e\u0007\u00a8", "\u0002\u0002\u051d\u051f\u0007\u008a\u0002\u0002\u051e\u051d\u0003\u0002", "\u0002\u0002\u051e\u051f\u0003\u0002\u0002\u0002\u051f\u0520\u0003\u0002", "\u0002\u0002\u0520\u0521\u0007J\u0002\u0002\u0521\u0523\u0007\u0119", "\u0002\u0002\u0522\u0524\u0005\u00aaV\u0002\u0523\u0522\u0003\u0002", "\u0002\u0002\u0523\u0524\u0003\u0002\u0002\u0002\u0524\u0526\u0003\u0002", "\u0002\u0002\u0525\u0527\u0005F$\u0002\u0526\u0525\u0003\u0002\u0002", "\u0002\u0526\u0527\u0003\u0002\u0002\u0002\u0527\u0537\u0003\u0002\u0002", "\u0002\u0528\u0529\u0007x\u0002\u0002\u0529\u052b\u0007\u00a8\u0002", "\u0002\u052a\u052c\u0007\u008a\u0002\u0002\u052b\u052a\u0003\u0002\u0002", "\u0002\u052b\u052c\u0003\u0002\u0002\u0002\u052c\u052d\u0003\u0002\u0002", "\u0002\u052d\u052f\u0007J\u0002\u0002\u052e\u0530\u0007\u0119\u0002", "\u0002\u052f\u052e\u0003\u0002\u0002\u0002\u052f\u0530\u0003\u0002\u0002", "\u0002\u0530\u0531\u0003\u0002\u0002\u0002\u0531\u0534\u00056\u001c", "\u0002\u0532\u0533\u0007\u009f\u0002\u0002\u0533\u0535\u0005:\u001e", "\u0002\u0534\u0532\u0003\u0002\u0002\u0002\u0534\u0535\u0003\u0002\u0002", "\u0002\u0535\u0537\u0003\u0002\u0002\u0002\u0536\u04ff\u0003\u0002\u0002", "\u0002\u0536\u050d\u0003\u0002\u0002\u0002\u0536\u051b\u0003\u0002\u0002", "\u0002\u0536\u0528\u0003\u0002\u0002\u0002\u0537%\u0003\u0002\u0002", "\u0002\u0538\u053a\u0005(\u0015\u0002\u0539\u053b\u0005\u001e\u0010", "\u0002\u053a\u0539\u0003\u0002\u0002\u0002\u053a\u053b\u0003\u0002\u0002", "\u0002\u053b\'\u0003\u0002\u0002\u0002\u053c\u053d\u0007\u00a9\u0002", "\u0002\u053d\u053e\u0007\u0004\u0002\u0002\u053e\u0543\u0005*\u0016", "\u0002\u053f\u0540\u0007\u0006\u0002\u0002\u0540\u0542\u0005*\u0016", "\u0002\u0541\u053f\u0003\u0002\u0002\u0002\u0542\u0545\u0003\u0002\u0002", "\u0002\u0543\u0541\u0003\u0002\u0002\u0002\u0543\u0544\u0003\u0002\u0002", "\u0002\u0544\u0546\u0003\u0002\u0002\u0002\u0545\u0543\u0003\u0002\u0002", "\u0002\u0546\u0547\u0007\u0005\u0002\u0002\u0547)\u0003\u0002\u0002", "\u0002\u0548\u054b\u0005\u0102\u0082\u0002\u0549\u054a\u0007\u0107\u0002", "\u0002\u054a\u054c\u0005\u00c6d\u0002\u054b\u0549\u0003\u0002\u0002", "\u0002\u054b\u054c\u0003\u0002\u0002\u0002\u054c+\u0003\u0002\u0002", "\u0002\u054d\u054e\t\u000f\u0002\u0002\u054e-\u0003\u0002\u0002\u0002", "\u054f\u0555\u0005\u00fc\u007f\u0002\u0550\u0555\u0007\u0119\u0002\u0002", "\u0551\u0555\u0005\u00c8e\u0002\u0552\u0555\u0005\u00caf\u0002\u0553", "\u0555\u0005\u00ccg\u0002\u0554\u054f\u0003\u0002\u0002\u0002\u0554", "\u0550\u0003\u0002\u0002\u0002\u0554\u0551\u0003\u0002\u0002\u0002\u0554", "\u0552\u0003\u0002\u0002\u0002\u0554\u0553\u0003\u0002\u0002\u0002\u0555", "/\u0003\u0002\u0002\u0002\u0556\u055b\u0005\u0102\u0082\u0002\u0557", "\u0558\u0007\u0007\u0002\u0002\u0558\u055a\u0005\u0102\u0082\u0002\u0559", "\u0557\u0003\u0002\u0002\u0002\u055a\u055d\u0003\u0002\u0002\u0002\u055b", "\u0559\u0003\u0002\u0002\u0002\u055b\u055c\u0003\u0002\u0002\u0002\u055c", "1\u0003\u0002\u0002\u0002\u055d\u055b\u0003\u0002\u0002\u0002\u055e", "\u055f\u0007\u0105\u0002\u0002\u055f\u0564\u00054\u001b\u0002\u0560", "\u0561\u0007\u0006\u0002\u0002\u0561\u0563\u00054\u001b\u0002\u0562", "\u0560\u0003\u0002\u0002\u0002\u0563\u0566\u0003\u0002\u0002\u0002\u0564", "\u0562\u0003\u0002\u0002\u0002\u0564\u0565\u0003\u0002\u0002\u0002\u0565", "3\u0003\u0002\u0002\u0002\u0566\u0564\u0003\u0002\u0002\u0002\u0567", "\u0569\u0005\u00fe\u0080\u0002\u0568\u056a\u0005\u0096L\u0002\u0569", "\u0568\u0003\u0002\u0002\u0002\u0569\u056a\u0003\u0002\u0002\u0002\u056a", "\u056c\u0003\u0002\u0002\u0002\u056b\u056d\u0007\u0018\u0002\u0002\u056c", "\u056b\u0003\u0002\u0002\u0002\u056c\u056d\u0003\u0002\u0002\u0002\u056d", "\u056e\u0003\u0002\u0002\u0002\u056e\u056f\u0007\u0004\u0002\u0002\u056f", "\u0570\u0005\"\u0012\u0002\u0570\u0571\u0007\u0005\u0002\u0002\u0571", "5\u0003\u0002\u0002\u0002\u0572\u0573\u0007\u00fe\u0002\u0002\u0573", "\u0574\u0005\u00aeX\u0002\u05747\u0003\u0002\u0002\u0002\u0575\u0576", "\u0007\u009f\u0002\u0002\u0576\u0580\u0005:\u001e\u0002\u0577\u0578", "\u0007\u00aa\u0002\u0002\u0578\u0579\u0007 \u0002\u0002\u0579\u0580", "\u0005\u00b6\\\u0002\u057a\u0580\u0005\u001a\u000e\u0002\u057b\u0580", "\u0005\u001e\u0010\u0002\u057c\u0580\u0005 \u0011\u0002\u057d\u057e", "\u0007\u00e4\u0002\u0002\u057e\u0580\u0005:\u001e\u0002\u057f\u0575", "\u0003\u0002\u0002\u0002\u057f\u0577\u0003\u0002\u0002\u0002\u057f\u057a", "\u0003\u0002\u0002\u0002\u057f\u057b\u0003\u0002\u0002\u0002\u057f\u057c", "\u0003\u0002\u0002\u0002\u057f\u057d\u0003\u0002\u0002\u0002\u0580\u0583", "\u0003\u0002\u0002\u0002\u0581\u057f\u0003\u0002\u0002\u0002\u0581\u0582", "\u0003\u0002\u0002\u0002\u05829\u0003\u0002\u0002\u0002\u0583\u0581", "\u0003\u0002\u0002\u0002\u0584\u0585\u0007\u0004\u0002\u0002\u0585\u058a", "\u0005<\u001f\u0002\u0586\u0587\u0007\u0006\u0002\u0002\u0587\u0589", "\u0005<\u001f\u0002\u0588\u0586\u0003\u0002\u0002\u0002\u0589\u058c", "\u0003\u0002\u0002\u0002\u058a\u0588\u0003\u0002\u0002\u0002\u058a\u058b", "\u0003\u0002\u0002\u0002\u058b\u058d\u0003\u0002\u0002\u0002\u058c\u058a", "\u0003\u0002\u0002\u0002\u058d\u058e\u0007\u0005\u0002\u0002\u058e;", "\u0003\u0002\u0002\u0002\u058f\u0594\u0005> \u0002\u0590\u0592\u0007", "\u0107\u0002\u0002\u0591\u0590\u0003\u0002\u0002\u0002\u0591\u0592\u0003", "\u0002\u0002\u0002\u0592\u0593\u0003\u0002\u0002\u0002\u0593\u0595\u0005", "@!\u0002\u0594\u0591\u0003\u0002\u0002\u0002\u0594\u0595\u0003\u0002", "\u0002\u0002\u0595=\u0003\u0002\u0002\u0002\u0596\u059b\u0005\u0102", "\u0082\u0002\u0597\u0598\u0007\u0007\u0002\u0002\u0598\u059a\u0005\u0102", "\u0082\u0002\u0599\u0597\u0003\u0002\u0002\u0002\u059a\u059d\u0003\u0002", "\u0002\u0002\u059b\u0599\u0003\u0002\u0002\u0002\u059b\u059c\u0003\u0002", "\u0002\u0002\u059c\u05a0\u0003\u0002\u0002\u0002\u059d\u059b\u0003\u0002", "\u0002\u0002\u059e\u05a0\u0007\u0119\u0002\u0002\u059f\u0596\u0003\u0002", "\u0002\u0002\u059f\u059e\u0003\u0002\u0002\u0002\u05a0?\u0003\u0002", "\u0002\u0002\u05a1\u05a6\u0007\u011d\u0002\u0002\u05a2\u05a6\u0007\u011f", "\u0002\u0002\u05a3\u05a6\u0005\u00ceh\u0002\u05a4\u05a6\u0007\u0119", "\u0002\u0002\u05a5\u05a1\u0003\u0002\u0002\u0002\u05a5\u05a2\u0003\u0002", "\u0002\u0002\u05a5\u05a3\u0003\u0002\u0002\u0002\u05a5\u05a4\u0003\u0002", "\u0002\u0002\u05a6A\u0003\u0002\u0002\u0002\u05a7\u05a8\u0007\u0004", "\u0002\u0002\u05a8\u05ad\u0005\u00c6d\u0002\u05a9\u05aa\u0007\u0006", "\u0002\u0002\u05aa\u05ac\u0005\u00c6d\u0002\u05ab\u05a9\u0003\u0002", "\u0002\u0002\u05ac\u05af\u0003\u0002\u0002\u0002\u05ad\u05ab\u0003\u0002", "\u0002\u0002\u05ad\u05ae\u0003\u0002\u0002\u0002\u05ae\u05b0\u0003\u0002", "\u0002\u0002\u05af\u05ad\u0003\u0002\u0002\u0002\u05b0\u05b1\u0007\u0005", "\u0002\u0002\u05b1C\u0003\u0002\u0002\u0002\u05b2\u05b3\u0007\u0004", "\u0002\u0002\u05b3\u05b8\u0005B\"\u0002\u05b4\u05b5\u0007\u0006\u0002", "\u0002\u05b5\u05b7\u0005B\"\u0002\u05b6\u05b4\u0003\u0002\u0002\u0002", "\u05b7\u05ba\u0003\u0002\u0002\u0002\u05b8\u05b6\u0003\u0002\u0002\u0002", "\u05b8\u05b9\u0003\u0002\u0002\u0002\u05b9\u05bb\u0003\u0002\u0002\u0002", "\u05ba\u05b8\u0003\u0002\u0002\u0002\u05bb\u05bc\u0007\u0005\u0002\u0002", "\u05bcE\u0003\u0002\u0002\u0002\u05bd\u05be\u0007\u00dc\u0002\u0002", "\u05be\u05bf\u0007\u0018\u0002\u0002\u05bf\u05c4\u0005H%\u0002\u05c0", "\u05c1\u0007\u00dc\u0002\u0002\u05c1\u05c2\u0007 \u0002\u0002\u05c2", "\u05c4\u0005J&\u0002\u05c3\u05bd\u0003\u0002\u0002\u0002\u05c3\u05c0", "\u0003\u0002\u0002\u0002\u05c4G\u0003\u0002\u0002\u0002\u05c5\u05c6", "\u0007w\u0002\u0002\u05c6\u05c7\u0007\u0119\u0002\u0002\u05c7\u05c8", "\u0007\u00a4\u0002\u0002\u05c8\u05cb\u0007\u0119\u0002\u0002\u05c9\u05cb", "\u0005\u0102\u0082\u0002\u05ca\u05c5\u0003\u0002\u0002\u0002\u05ca\u05c9", "\u0003\u0002\u0002\u0002\u05cbI\u0003\u0002\u0002\u0002\u05cc\u05d0", "\u0007\u0119\u0002\u0002\u05cd\u05ce\u0007\u0105\u0002\u0002\u05ce\u05cf", "\u0007\u00d0\u0002\u0002\u05cf\u05d1\u0005:\u001e\u0002\u05d0\u05cd", "\u0003\u0002\u0002\u0002\u05d0\u05d1\u0003\u0002\u0002\u0002\u05d1K", "\u0003\u0002\u0002\u0002\u05d2\u05d3\u0005\u0102\u0082\u0002\u05d3\u05d4", "\u0007\u0119\u0002\u0002\u05d4M\u0003\u0002\u0002\u0002\u05d5\u05d6", "\u0005$\u0013\u0002\u05d6\u05d7\u0005T+\u0002\u05d7\u05d8\u0005P)\u0002", "\u05d8\u0609\u0003\u0002\u0002\u0002\u05d9\u05db\u0005z>\u0002\u05da", "\u05dc\u0005R*\u0002\u05db\u05da\u0003\u0002\u0002\u0002\u05dc\u05dd", "\u0003\u0002\u0002\u0002\u05dd\u05db\u0003\u0002\u0002\u0002\u05dd\u05de", "\u0003\u0002\u0002\u0002\u05de\u0609\u0003\u0002\u0002\u0002\u05df\u05e0", "\u0007D\u0002\u0002\u05e0\u05e1\u0007f\u0002\u0002\u05e1\u05e2\u0005", "\u00aeX\u0002\u05e2\u05e4\u0005\u00a8U\u0002\u05e3\u05e5\u0005r:\u0002", "\u05e4\u05e3\u0003\u0002\u0002\u0002\u05e4\u05e5\u0003\u0002\u0002\u0002", "\u05e5\u0609\u0003\u0002\u0002\u0002\u05e6\u05e7\u0007\u00fb\u0002\u0002", "\u05e7\u05e8\u0005\u00aeX\u0002\u05e8\u05e9\u0005\u00a8U\u0002\u05e9", "\u05eb\u0005d3\u0002\u05ea\u05ec\u0005r:\u0002\u05eb\u05ea\u0003\u0002", "\u0002\u0002\u05eb\u05ec\u0003\u0002\u0002\u0002\u05ec\u0609\u0003\u0002", "\u0002\u0002\u05ed\u05ee\u0007\u0092\u0002\u0002\u05ee\u05ef\u0007{", "\u0002\u0002\u05ef\u05f0\u0005\u00aeX\u0002\u05f0\u05f1\u0005\u00a8", "U\u0002\u05f1\u05f7\u0007\u00fe\u0002\u0002\u05f2\u05f8\u0005\u00ae", "X\u0002\u05f3\u05f4\u0007\u0004\u0002\u0002\u05f4\u05f5\u0005\"\u0012", "\u0002\u05f5\u05f6\u0007\u0005\u0002\u0002\u05f6\u05f8\u0003\u0002\u0002", "\u0002\u05f7\u05f2\u0003\u0002\u0002\u0002\u05f7\u05f3\u0003\u0002\u0002", "\u0002\u05f8\u05f9\u0003\u0002\u0002\u0002\u05f9\u05fa\u0005\u00a8U", "\u0002\u05fa\u05fb\u0007\u009c\u0002\u0002\u05fb\u05ff\u0005\u00be`", "\u0002\u05fc\u05fe\u0005f4\u0002\u05fd\u05fc\u0003\u0002\u0002\u0002", "\u05fe\u0601\u0003\u0002\u0002\u0002\u05ff\u05fd\u0003\u0002\u0002\u0002", "\u05ff\u0600\u0003\u0002\u0002\u0002\u0600\u0605\u0003\u0002\u0002\u0002", "\u0601\u05ff\u0003\u0002\u0002\u0002\u0602\u0604\u0005h5\u0002\u0603", "\u0602\u0003\u0002\u0002\u0002\u0604\u0607\u0003\u0002\u0002\u0002\u0605", "\u0603\u0003\u0002\u0002\u0002\u0605\u0606\u0003\u0002\u0002\u0002\u0606", "\u0609\u0003\u0002\u0002\u0002\u0607\u0605\u0003\u0002\u0002\u0002\u0608", "\u05d5\u0003\u0002\u0002\u0002\u0608\u05d9\u0003\u0002\u0002\u0002\u0608", "\u05df\u0003\u0002\u0002\u0002\u0608\u05e6\u0003\u0002\u0002\u0002\u0608", "\u05ed\u0003\u0002\u0002\u0002\u0609O\u0003\u0002\u0002\u0002\u060a", "\u060b\u0007\u00a1\u0002\u0002\u060b\u060c\u0007 \u0002\u0002\u060c", "\u0611\u0005X-\u0002\u060d\u060e\u0007\u0006\u0002\u0002\u060e\u0610", "\u0005X-\u0002\u060f\u060d\u0003\u0002\u0002\u0002\u0610\u0613\u0003", "\u0002\u0002\u0002\u0611\u060f\u0003\u0002\u0002\u0002\u0611\u0612\u0003", "\u0002\u0002\u0002\u0612\u0615\u0003\u0002\u0002\u0002\u0613\u0611\u0003", "\u0002\u0002\u0002\u0614\u060a\u0003\u0002\u0002\u0002\u0614\u0615\u0003", "\u0002\u0002\u0002\u0615\u0620\u0003\u0002\u0002\u0002\u0616\u0617\u0007", "(\u0002\u0002\u0617\u0618\u0007 \u0002\u0002\u0618\u061d\u0005\u00bc", "_\u0002\u0619\u061a\u0007\u0006\u0002\u0002\u061a\u061c\u0005\u00bc", "_\u0002\u061b\u0619\u0003\u0002\u0002\u0002\u061c\u061f\u0003\u0002", "\u0002\u0002\u061d\u061b\u0003\u0002\u0002\u0002\u061d\u061e\u0003\u0002", "\u0002\u0002\u061e\u0621\u0003\u0002\u0002\u0002\u061f\u061d\u0003\u0002", "\u0002\u0002\u0620\u0616\u0003\u0002\u0002\u0002\u0620\u0621\u0003\u0002", "\u0002\u0002\u0621\u062c\u0003\u0002\u0002\u0002\u0622\u0623\u0007L", "\u0002\u0002\u0623\u0624\u0007 \u0002\u0002\u0624\u0629\u0005\u00bc", "_\u0002\u0625\u0626\u0007\u0006\u0002\u0002\u0626\u0628\u0005\u00bc", "_\u0002\u0627\u0625\u0003\u0002\u0002\u0002\u0628\u062b\u0003\u0002", "\u0002\u0002\u0629\u0627\u0003\u0002\u0002\u0002\u0629\u062a\u0003\u0002", "\u0002\u0002\u062a\u062d\u0003\u0002\u0002\u0002\u062b\u0629\u0003\u0002", "\u0002\u0002\u062c\u0622\u0003\u0002\u0002\u0002\u062c\u062d\u0003\u0002", "\u0002\u0002\u062d\u0638\u0003\u0002\u0002\u0002\u062e\u062f\u0007\u00d8", "\u0002\u0002\u062f\u0630\u0007 \u0002\u0002\u0630\u0635\u0005X-\u0002", "\u0631\u0632\u0007\u0006\u0002\u0002\u0632\u0634\u0005X-\u0002\u0633", "\u0631\u0003\u0002\u0002\u0002\u0634\u0637\u0003\u0002\u0002\u0002\u0635", "\u0633\u0003\u0002\u0002\u0002\u0635\u0636\u0003\u0002\u0002\u0002\u0636", "\u0639\u0003\u0002\u0002\u0002\u0637\u0635\u0003\u0002\u0002\u0002\u0638", "\u062e\u0003\u0002\u0002\u0002\u0638\u0639\u0003\u0002\u0002\u0002\u0639", "\u063b\u0003\u0002\u0002\u0002\u063a\u063c\u0005\u00eex\u0002\u063b", "\u063a\u0003\u0002\u0002\u0002\u063b\u063c\u0003\u0002\u0002\u0002\u063c", "\u0642\u0003\u0002\u0002\u0002\u063d\u0640\u0007\u0086\u0002\u0002\u063e", "\u0641\u0007\u0010\u0002\u0002\u063f\u0641\u0005\u00bc_\u0002\u0640", "\u063e\u0003\u0002\u0002\u0002\u0640\u063f\u0003\u0002\u0002\u0002\u0641", "\u0643\u0003\u0002\u0002\u0002\u0642\u063d\u0003\u0002\u0002\u0002\u0642", "\u0643\u0003\u0002\u0002\u0002\u0643Q\u0003\u0002\u0002\u0002\u0644", "\u0645\u0005$\u0013\u0002\u0645\u0646\u0005\\/\u0002\u0646S\u0003\u0002", "\u0002\u0002\u0647\u0648\b+\u0001\u0002\u0648\u0649\u0005V,\u0002\u0649", "\u0661\u0003\u0002\u0002\u0002\u064a\u064b\f\u0005\u0002\u0002\u064b", "\u064c\u0006+\u0003\u0002\u064c\u064e\t\u0010\u0002\u0002\u064d\u064f", "\u0005\u0088E\u0002\u064e\u064d\u0003\u0002\u0002\u0002\u064e\u064f", "\u0003\u0002\u0002\u0002\u064f\u0650\u0003\u0002\u0002\u0002\u0650\u0660", "\u0005T+\u0006\u0651\u0652\f\u0004\u0002\u0002\u0652\u0653\u0006+\u0005", "\u0002\u0653\u0655\u0007y\u0002\u0002\u0654\u0656\u0005\u0088E\u0002", "\u0655\u0654\u0003\u0002\u0002\u0002\u0655\u0656\u0003\u0002\u0002\u0002", "\u0656\u0657\u0003\u0002\u0002\u0002\u0657\u0660\u0005T+\u0005\u0658", "\u0659\f\u0003\u0002\u0002\u0659\u065a\u0006+\u0007\u0002\u065a\u065c", "\t\u0011\u0002\u0002\u065b\u065d\u0005\u0088E\u0002\u065c\u065b\u0003", "\u0002\u0002\u0002\u065c\u065d\u0003\u0002\u0002\u0002\u065d\u065e\u0003", "\u0002\u0002\u0002\u065e\u0660\u0005T+\u0004\u065f\u064a\u0003\u0002", "\u0002\u0002\u065f\u0651\u0003\u0002\u0002\u0002\u065f\u0658\u0003\u0002", "\u0002\u0002\u0660\u0663\u0003\u0002\u0002\u0002\u0661\u065f\u0003\u0002", "\u0002\u0002\u0661\u0662\u0003\u0002\u0002\u0002\u0662U\u0003\u0002", "\u0002\u0002\u0663\u0661\u0003\u0002\u0002\u0002\u0664\u066e\u0005^", "0\u0002\u0665\u066e\u0005Z.\u0002\u0666\u0667\u0007\u00e1\u0002\u0002", "\u0667\u066e\u0005\u00aeX\u0002\u0668\u066e\u0005\u00a4S\u0002\u0669", "\u066a\u0007\u0004\u0002\u0002\u066a\u066b\u0005\"\u0012\u0002\u066b", "\u066c\u0007\u0005\u0002\u0002\u066c\u066e\u0003\u0002\u0002\u0002\u066d", "\u0664\u0003\u0002\u0002\u0002\u066d\u0665\u0003\u0002\u0002\u0002\u066d", "\u0666\u0003\u0002\u0002\u0002\u066d\u0668\u0003\u0002\u0002\u0002\u066d", "\u0669\u0003\u0002\u0002\u0002\u066eW\u0003\u0002\u0002\u0002\u066f", "\u0671\u0005\u00bc_\u0002\u0670\u0672\t\u0012\u0002\u0002\u0671\u0670", "\u0003\u0002\u0002\u0002\u0671\u0672\u0003\u0002\u0002\u0002\u0672\u0675", "\u0003\u0002\u0002\u0002\u0673\u0674\u0007\u009a\u0002\u0002\u0674\u0676", "\t\u0013\u0002\u0002\u0675\u0673\u0003\u0002\u0002\u0002\u0675\u0676", "\u0003\u0002\u0002\u0002\u0676Y\u0003\u0002\u0002\u0002\u0677\u0679", "\u0005z>\u0002\u0678\u067a\u0005\\/\u0002\u0679\u0678\u0003\u0002\u0002", "\u0002\u067a\u067b\u0003\u0002\u0002\u0002\u067b\u0679\u0003\u0002\u0002", "\u0002\u067b\u067c\u0003\u0002\u0002\u0002\u067c[\u0003\u0002\u0002", "\u0002\u067d\u067f\u0005`1\u0002\u067e\u0680\u0005r:\u0002\u067f\u067e", "\u0003\u0002\u0002\u0002\u067f\u0680\u0003\u0002\u0002\u0002\u0680\u0681", "\u0003\u0002\u0002\u0002\u0681\u0682\u0005P)\u0002\u0682\u0699\u0003", "\u0002\u0002\u0002\u0683\u0687\u0005b2\u0002\u0684\u0686\u0005\u0086", "D\u0002\u0685\u0684\u0003\u0002\u0002\u0002\u0686\u0689\u0003\u0002", "\u0002\u0002\u0687\u0685\u0003\u0002\u0002\u0002\u0687\u0688\u0003\u0002", "\u0002\u0002\u0688\u068b\u0003\u0002\u0002\u0002\u0689\u0687\u0003\u0002", "\u0002\u0002\u068a\u068c\u0005r:\u0002\u068b\u068a\u0003\u0002\u0002", "\u0002\u068b\u068c\u0003\u0002\u0002\u0002\u068c\u068e\u0003\u0002\u0002", "\u0002\u068d\u068f\u0005|?\u0002\u068e\u068d\u0003\u0002\u0002\u0002", "\u068e\u068f\u0003\u0002\u0002\u0002\u068f\u0691\u0003\u0002\u0002\u0002", "\u0690\u0692\u0005t;\u0002\u0691\u0690\u0003\u0002\u0002\u0002\u0691", "\u0692\u0003\u0002\u0002\u0002\u0692\u0694\u0003\u0002\u0002\u0002\u0693", "\u0695\u0005\u00eex\u0002\u0694\u0693\u0003\u0002\u0002\u0002\u0694", "\u0695\u0003\u0002\u0002\u0002\u0695\u0696\u0003\u0002\u0002\u0002\u0696", "\u0697\u0005P)\u0002\u0697\u0699\u0003\u0002\u0002\u0002\u0698\u067d", "\u0003\u0002\u0002\u0002\u0698\u0683\u0003\u0002\u0002\u0002\u0699]", "\u0003\u0002\u0002\u0002\u069a\u069c\u0005`1\u0002\u069b\u069d\u0005", "z>\u0002\u069c\u069b\u0003\u0002\u0002\u0002\u069c\u069d\u0003\u0002", "\u0002\u0002\u069d\u069f\u0003\u0002\u0002\u0002\u069e\u06a0\u0005r", ":\u0002\u069f\u069e\u0003\u0002\u0002\u0002\u069f\u06a0\u0003\u0002", "\u0002\u0002\u06a0\u06b8\u0003\u0002\u0002\u0002\u06a1\u06a3\u0005b", "2\u0002\u06a2\u06a4\u0005z>\u0002\u06a3\u06a2\u0003\u0002\u0002\u0002", "\u06a3\u06a4\u0003\u0002\u0002\u0002\u06a4\u06a8\u0003\u0002\u0002\u0002", "\u06a5\u06a7\u0005\u0086D\u0002\u06a6\u06a5\u0003\u0002\u0002\u0002", "\u06a7\u06aa\u0003\u0002\u0002\u0002\u06a8\u06a6\u0003\u0002\u0002\u0002", "\u06a8\u06a9\u0003\u0002\u0002\u0002\u06a9\u06ac\u0003\u0002\u0002\u0002", "\u06aa\u06a8\u0003\u0002\u0002\u0002\u06ab\u06ad\u0005r:\u0002\u06ac", "\u06ab\u0003\u0002\u0002\u0002\u06ac\u06ad\u0003\u0002\u0002\u0002\u06ad", "\u06af\u0003\u0002\u0002\u0002\u06ae\u06b0\u0005|?\u0002\u06af\u06ae", "\u0003\u0002\u0002\u0002\u06af\u06b0\u0003\u0002\u0002\u0002\u06b0\u06b2", "\u0003\u0002\u0002\u0002\u06b1\u06b3\u0005t;\u0002\u06b2\u06b1\u0003", "\u0002\u0002\u0002\u06b2\u06b3\u0003\u0002\u0002\u0002\u06b3\u06b5\u0003", "\u0002\u0002\u0002\u06b4\u06b6\u0005\u00eex\u0002\u06b5\u06b4\u0003", "\u0002\u0002\u0002\u06b5\u06b6\u0003\u0002\u0002\u0002\u06b6\u06b8\u0003", "\u0002\u0002\u0002\u06b7\u069a\u0003\u0002\u0002\u0002\u06b7\u06a1\u0003", "\u0002\u0002\u0002\u06b8_\u0003\u0002\u0002\u0002\u06b9\u06ba\u0007", "\u00cc\u0002\u0002\u06ba\u06bb\u0007\u00ee\u0002\u0002\u06bb\u06bc\u0007", "\u0004\u0002\u0002\u06bc\u06bd\u0005\u00b4[\u0002\u06bd\u06be\u0007", "\u0005\u0002\u0002\u06be\u06c4\u0003\u0002\u0002\u0002\u06bf\u06c0\u0007", "\u0090\u0002\u0002\u06c0\u06c4\u0005\u00b4[\u0002\u06c1\u06c2\u0007", "\u00ba\u0002\u0002\u06c2\u06c4\u0005\u00b4[\u0002\u06c3\u06b9\u0003", "\u0002\u0002\u0002\u06c3\u06bf\u0003\u0002\u0002\u0002\u06c3\u06c1\u0003", "\u0002\u0002\u0002\u06c4\u06c6\u0003\u0002\u0002\u0002\u06c5\u06c7\u0005", "\u00aaV\u0002\u06c6\u06c5\u0003\u0002\u0002\u0002\u06c6\u06c7\u0003", "\u0002\u0002\u0002\u06c7\u06ca\u0003\u0002\u0002\u0002\u06c8\u06c9\u0007", "\u00b8\u0002\u0002\u06c9\u06cb\u0007\u0119\u0002\u0002\u06ca\u06c8\u0003", "\u0002\u0002\u0002\u06ca\u06cb\u0003\u0002\u0002\u0002\u06cb\u06cc\u0003", "\u0002\u0002\u0002\u06cc\u06cd\u0007\u00fe\u0002\u0002\u06cd\u06da\u0007", "\u0119\u0002\u0002\u06ce\u06d8\u0007\u0018\u0002\u0002\u06cf\u06d9\u0005", "\u0098M\u0002\u06d0\u06d9\u0005\u00e4s\u0002\u06d1\u06d4\u0007\u0004", "\u0002\u0002\u06d2\u06d5\u0005\u0098M\u0002\u06d3\u06d5\u0005\u00e4", "s\u0002\u06d4\u06d2\u0003\u0002\u0002\u0002\u06d4\u06d3\u0003\u0002", "\u0002\u0002\u06d5\u06d6\u0003\u0002\u0002\u0002\u06d6\u06d7\u0007\u0005", "\u0002\u0002\u06d7\u06d9\u0003\u0002\u0002\u0002\u06d8\u06cf\u0003\u0002", "\u0002\u0002\u06d8\u06d0\u0003\u0002\u0002\u0002\u06d8\u06d1\u0003\u0002", "\u0002\u0002\u06d9\u06db\u0003\u0002\u0002\u0002\u06da\u06ce\u0003\u0002", "\u0002\u0002\u06da\u06db\u0003\u0002\u0002\u0002\u06db\u06dd\u0003\u0002", "\u0002\u0002\u06dc\u06de\u0005\u00aaV\u0002\u06dd\u06dc\u0003\u0002", "\u0002\u0002\u06dd\u06de\u0003\u0002\u0002\u0002\u06de\u06e1\u0003\u0002", "\u0002\u0002\u06df\u06e0\u0007\u00b7\u0002\u0002\u06e0\u06e2\u0007\u0119", "\u0002\u0002\u06e1\u06df\u0003\u0002\u0002\u0002\u06e1\u06e2\u0003\u0002", "\u0002\u0002\u06e2a\u0003\u0002\u0002\u0002\u06e3\u06e7\u0007\u00cc", "\u0002\u0002\u06e4\u06e6\u0005v<\u0002\u06e5\u06e4\u0003\u0002\u0002", "\u0002\u06e6\u06e9\u0003\u0002\u0002\u0002\u06e7\u06e5\u0003\u0002\u0002", "\u0002\u06e7\u06e8\u0003\u0002\u0002\u0002\u06e8\u06eb\u0003\u0002\u0002", "\u0002\u06e9\u06e7\u0003\u0002\u0002\u0002\u06ea\u06ec\u0005\u0088E", "\u0002\u06eb\u06ea\u0003\u0002\u0002\u0002\u06eb\u06ec\u0003\u0002\u0002", "\u0002\u06ec\u06ed\u0003\u0002\u0002\u0002\u06ed\u06ee\u0005\u00b4[", "\u0002\u06eec\u0003\u0002\u0002\u0002\u06ef\u06f0\u0007\u00d2\u0002", "\u0002\u06f0\u06f1\u0005n8\u0002\u06f1e\u0003\u0002\u0002\u0002\u06f2", "\u06f3\u0007\u0102\u0002\u0002\u06f3\u06f6\u0007\u0091\u0002\u0002\u06f4", "\u06f5\u0007\u0013\u0002\u0002\u06f5\u06f7\u0005\u00be`\u0002\u06f6", "\u06f4\u0003\u0002\u0002\u0002\u06f6\u06f7\u0003\u0002\u0002\u0002\u06f7", "\u06f8\u0003\u0002\u0002\u0002\u06f8\u06f9\u0007\u00e7\u0002\u0002\u06f9", "\u06fa\u0005j6\u0002\u06fag\u0003\u0002\u0002\u0002\u06fb\u06fc\u0007", "\u0102\u0002\u0002\u06fc\u06fd\u0007\u0098\u0002\u0002\u06fd\u0700\u0007", "\u0091\u0002\u0002\u06fe\u06ff\u0007\u0013\u0002\u0002\u06ff\u0701\u0005", "\u00be`\u0002\u0700\u06fe\u0003\u0002\u0002\u0002\u0700\u0701\u0003", "\u0002\u0002\u0002\u0701\u0702\u0003\u0002\u0002\u0002\u0702\u0703\u0007", "\u00e7\u0002\u0002\u0703\u0704\u0005l7\u0002\u0704i\u0003\u0002\u0002", "\u0002\u0705\u070d\u0007D\u0002\u0002\u0706\u0707\u0007\u00fb\u0002", "\u0002\u0707\u0708\u0007\u00d2\u0002\u0002\u0708\u070d\u0007\u0111\u0002", "\u0002\u0709\u070a\u0007\u00fb\u0002\u0002\u070a\u070b\u0007\u00d2\u0002", "\u0002\u070b\u070d\u0005n8\u0002\u070c\u0705\u0003\u0002\u0002\u0002", "\u070c\u0706\u0003\u0002\u0002\u0002\u070c\u0709\u0003\u0002\u0002\u0002", "\u070dk\u0003\u0002\u0002\u0002\u070e\u070f\u0007x\u0002\u0002\u070f", "\u0721\u0007\u0111\u0002\u0002\u0710\u0711\u0007x\u0002\u0002\u0711", "\u0712\u0007\u0004\u0002\u0002\u0712\u0713\u0005\u00acW\u0002\u0713", "\u0714\u0007\u0005\u0002\u0002\u0714\u0715\u0007\u00ff\u0002\u0002\u0715", "\u0716\u0007\u0004\u0002\u0002\u0716\u071b\u0005\u00bc_\u0002\u0717", "\u0718\u0007\u0006\u0002\u0002\u0718\u071a\u0005\u00bc_\u0002\u0719", "\u0717\u0003\u0002\u0002\u0002\u071a\u071d\u0003\u0002\u0002\u0002\u071b", "\u0719\u0003\u0002\u0002\u0002\u071b\u071c\u0003\u0002\u0002\u0002\u071c", "\u071e\u0003\u0002\u0002\u0002\u071d\u071b\u0003\u0002\u0002\u0002\u071e", "\u071f\u0007\u0005\u0002\u0002\u071f\u0721\u0003\u0002\u0002\u0002\u0720", "\u070e\u0003\u0002\u0002\u0002\u0720\u0710\u0003\u0002\u0002\u0002\u0721", "m\u0003\u0002\u0002\u0002\u0722\u0727\u0005p9\u0002\u0723\u0724\u0007", "\u0006\u0002\u0002\u0724\u0726\u0005p9\u0002\u0725\u0723\u0003\u0002", "\u0002\u0002\u0726\u0729\u0003\u0002\u0002\u0002\u0727\u0725\u0003\u0002", "\u0002\u0002\u0727\u0728\u0003\u0002\u0002\u0002\u0728o\u0003\u0002", "\u0002\u0002\u0729\u0727\u0003\u0002\u0002\u0002\u072a\u072b\u0005\u00ae", "X\u0002\u072b\u072c\u0007\u0107\u0002\u0002\u072c\u072d\u0005\u00bc", "_\u0002\u072dq\u0003\u0002\u0002\u0002\u072e\u072f\u0007\u0103\u0002", "\u0002\u072f\u0730\u0005\u00be`\u0002\u0730s\u0003\u0002\u0002\u0002", "\u0731\u0732\u0007n\u0002\u0002\u0732\u0733\u0005\u00be`\u0002\u0733", "u\u0003\u0002\u0002\u0002\u0734\u0735\u0007\b\u0002\u0002\u0735\u073c", "\u0005x=\u0002\u0736\u0738\u0007\u0006\u0002\u0002\u0737\u0736\u0003", "\u0002\u0002\u0002\u0737\u0738\u0003\u0002\u0002\u0002\u0738\u0739\u0003", "\u0002\u0002\u0002\u0739\u073b\u0005x=\u0002\u073a\u0737\u0003\u0002", "\u0002\u0002\u073b\u073e\u0003\u0002\u0002\u0002\u073c\u073a\u0003\u0002", "\u0002\u0002\u073c\u073d\u0003\u0002\u0002\u0002\u073d\u073f\u0003\u0002", "\u0002\u0002\u073e\u073c\u0003\u0002\u0002\u0002\u073f\u0740\u0007\t", "\u0002\u0002\u0740w\u0003\u0002\u0002\u0002\u0741\u074f\u0005\u0102", "\u0082\u0002\u0742\u0743\u0005\u0102\u0082\u0002\u0743\u0744\u0007\u0004", "\u0002\u0002\u0744\u0749\u0005\u00c4c\u0002\u0745\u0746\u0007\u0006", "\u0002\u0002\u0746\u0748\u0005\u00c4c\u0002\u0747\u0745\u0003\u0002", "\u0002\u0002\u0748\u074b\u0003\u0002\u0002\u0002\u0749\u0747\u0003\u0002", "\u0002\u0002\u0749\u074a\u0003\u0002\u0002\u0002\u074a\u074c\u0003\u0002", "\u0002\u0002\u074b\u0749\u0003\u0002\u0002\u0002\u074c\u074d\u0007\u0005", "\u0002\u0002\u074d\u074f\u0003\u0002\u0002\u0002\u074e\u0741\u0003\u0002", "\u0002\u0002\u074e\u0742\u0003\u0002\u0002\u0002\u074fy\u0003\u0002", "\u0002\u0002\u0750\u0751\u0007f\u0002\u0002\u0751\u0756\u0005\u008a", "F\u0002\u0752\u0753\u0007\u0006\u0002\u0002\u0753\u0755\u0005\u008a", "F\u0002\u0754\u0752\u0003\u0002\u0002\u0002\u0755\u0758\u0003\u0002", "\u0002\u0002\u0756\u0754\u0003\u0002\u0002\u0002\u0756\u0757\u0003\u0002", "\u0002\u0002\u0757\u075c\u0003\u0002\u0002\u0002\u0758\u0756\u0003\u0002", "\u0002\u0002\u0759\u075b\u0005\u0086D\u0002\u075a\u0759\u0003\u0002", "\u0002\u0002\u075b\u075e\u0003\u0002\u0002\u0002\u075c\u075a\u0003\u0002", "\u0002\u0002\u075c\u075d\u0003\u0002\u0002\u0002\u075d\u0760\u0003\u0002", "\u0002\u0002\u075e\u075c\u0003\u0002\u0002\u0002\u075f\u0761\u0005\u0080", "A\u0002\u0760\u075f\u0003\u0002\u0002\u0002\u0760\u0761\u0003\u0002", "\u0002\u0002\u0761{\u0003\u0002\u0002\u0002\u0762\u0763\u0007l\u0002", "\u0002\u0763\u0764\u0007 \u0002\u0002\u0764\u0769\u0005\u00bc_\u0002", "\u0765\u0766\u0007\u0006\u0002\u0002\u0766\u0768\u0005\u00bc_\u0002", "\u0767\u0765\u0003\u0002\u0002\u0002\u0768\u076b\u0003\u0002\u0002\u0002", "\u0769\u0767\u0003\u0002\u0002\u0002\u0769\u076a\u0003\u0002\u0002\u0002", "\u076a\u077d\u0003\u0002\u0002\u0002\u076b\u0769\u0003\u0002\u0002\u0002", "\u076c\u076d\u0007\u0105\u0002\u0002\u076d\u077e\u0007\u00c8\u0002\u0002", "\u076e\u076f\u0007\u0105\u0002\u0002\u076f\u077e\u00079\u0002\u0002", "\u0770\u0771\u0007m\u0002\u0002\u0771\u0772\u0007\u00d4\u0002\u0002", "\u0772\u0773\u0007\u0004\u0002\u0002\u0773\u0778\u0005~@\u0002\u0774", "\u0775\u0007\u0006\u0002\u0002\u0775\u0777\u0005~@\u0002\u0776\u0774", "\u0003\u0002\u0002\u0002\u0777\u077a\u0003\u0002\u0002\u0002\u0778\u0776", "\u0003\u0002\u0002\u0002\u0778\u0779\u0003\u0002\u0002\u0002\u0779\u077b", "\u0003\u0002\u0002\u0002\u077a\u0778\u0003\u0002\u0002\u0002\u077b\u077c", "\u0007\u0005\u0002\u0002\u077c\u077e\u0003\u0002\u0002\u0002\u077d\u076c", "\u0003\u0002\u0002\u0002\u077d\u076e\u0003\u0002\u0002\u0002\u077d\u0770", "\u0003\u0002\u0002\u0002\u077d\u077e\u0003\u0002\u0002\u0002\u077e\u078f", "\u0003\u0002\u0002\u0002\u077f\u0780\u0007l\u0002\u0002\u0780\u0781", "\u0007 \u0002\u0002\u0781\u0782\u0007m\u0002\u0002\u0782\u0783\u0007", "\u00d4\u0002\u0002\u0783\u0784\u0007\u0004\u0002\u0002\u0784\u0789\u0005", "~@\u0002\u0785\u0786\u0007\u0006\u0002\u0002\u0786\u0788\u0005~@\u0002", "\u0787\u0785\u0003\u0002\u0002\u0002\u0788\u078b\u0003\u0002\u0002\u0002", "\u0789\u0787\u0003\u0002\u0002\u0002\u0789\u078a\u0003\u0002\u0002\u0002", "\u078a\u078c\u0003\u0002\u0002\u0002\u078b\u0789\u0003\u0002\u0002\u0002", "\u078c\u078d\u0007\u0005\u0002\u0002\u078d\u078f\u0003\u0002\u0002\u0002", "\u078e\u0762\u0003\u0002\u0002\u0002\u078e\u077f\u0003\u0002\u0002\u0002", "\u078f}\u0003\u0002\u0002\u0002\u0790\u0799\u0007\u0004\u0002\u0002", "\u0791\u0796\u0005\u00bc_\u0002\u0792\u0793\u0007\u0006\u0002\u0002", "\u0793\u0795\u0005\u00bc_\u0002\u0794\u0792\u0003\u0002\u0002\u0002", "\u0795\u0798\u0003\u0002\u0002\u0002\u0796\u0794\u0003\u0002\u0002\u0002", "\u0796\u0797\u0003\u0002\u0002\u0002\u0797\u079a\u0003\u0002\u0002\u0002", "\u0798\u0796\u0003\u0002\u0002\u0002\u0799\u0791\u0003\u0002\u0002\u0002", "\u0799\u079a\u0003\u0002\u0002\u0002\u079a\u079b\u0003\u0002\u0002\u0002", "\u079b\u079e\u0007\u0005\u0002\u0002\u079c\u079e\u0005\u00bc_\u0002", "\u079d\u0790\u0003\u0002\u0002\u0002\u079d\u079c\u0003\u0002\u0002\u0002", "\u079e\u007f\u0003\u0002\u0002\u0002\u079f\u07a0\u0007\u00ad\u0002\u0002", "\u07a0\u07a1\u0007\u0004\u0002\u0002\u07a1\u07a2\u0005\u00b4[\u0002", "\u07a2\u07a3\u0007b\u0002\u0002\u07a3\u07a4\u0005\u0082B\u0002\u07a4", "\u07a5\u0007r\u0002\u0002\u07a5\u07a6\u0007\u0004\u0002\u0002\u07a6", "\u07ab\u0005\u0084C\u0002\u07a7\u07a8\u0007\u0006\u0002\u0002\u07a8", "\u07aa\u0005\u0084C\u0002\u07a9\u07a7\u0003\u0002\u0002\u0002\u07aa", "\u07ad\u0003\u0002\u0002\u0002\u07ab\u07a9\u0003\u0002\u0002\u0002\u07ab", "\u07ac\u0003\u0002\u0002\u0002\u07ac\u07ae\u0003\u0002\u0002\u0002\u07ad", "\u07ab\u0003\u0002\u0002\u0002\u07ae\u07af\u0007\u0005\u0002\u0002\u07af", "\u07b0\u0007\u0005\u0002\u0002\u07b0\u0081\u0003\u0002\u0002\u0002\u07b1", "\u07be\u0005\u0102\u0082\u0002\u07b2\u07b3\u0007\u0004\u0002\u0002\u07b3", "\u07b8\u0005\u0102\u0082\u0002\u07b4\u07b5\u0007\u0006\u0002\u0002\u07b5", "\u07b7\u0005\u0102\u0082\u0002\u07b6\u07b4\u0003\u0002\u0002\u0002\u07b7", "\u07ba\u0003\u0002\u0002\u0002\u07b8\u07b6\u0003\u0002\u0002\u0002\u07b8", "\u07b9\u0003\u0002\u0002\u0002\u07b9\u07bb\u0003\u0002\u0002\u0002\u07ba", "\u07b8\u0003\u0002\u0002\u0002\u07bb\u07bc\u0007\u0005\u0002\u0002\u07bc", "\u07be\u0003\u0002\u0002\u0002\u07bd\u07b1\u0003\u0002\u0002\u0002\u07bd", "\u07b2\u0003\u0002\u0002\u0002\u07be\u0083\u0003\u0002\u0002\u0002\u07bf", "\u07c4\u0005\u00bc_\u0002\u07c0\u07c2\u0007\u0018\u0002\u0002\u07c1", "\u07c0\u0003\u0002\u0002\u0002\u07c1\u07c2\u0003\u0002\u0002\u0002\u07c2", "\u07c3\u0003\u0002\u0002\u0002\u07c3\u07c5\u0005\u0102\u0082\u0002\u07c4", "\u07c1\u0003\u0002\u0002\u0002\u07c4\u07c5\u0003\u0002\u0002\u0002\u07c5", "\u0085\u0003\u0002\u0002\u0002\u07c6\u07c7\u0007\u0081\u0002\u0002\u07c7", "\u07c9\u0007\u0100\u0002\u0002\u07c8\u07ca\u0007\u00a3\u0002\u0002\u07c9", "\u07c8\u0003\u0002\u0002\u0002\u07c9\u07ca\u0003\u0002\u0002\u0002\u07ca", "\u07cb\u0003\u0002\u0002\u0002\u07cb\u07cc\u0005\u00fc\u007f\u0002\u07cc", "\u07d5\u0007\u0004\u0002\u0002\u07cd\u07d2\u0005\u00bc_\u0002\u07ce", "\u07cf\u0007\u0006\u0002\u0002\u07cf\u07d1\u0005\u00bc_\u0002\u07d0", "\u07ce\u0003\u0002\u0002\u0002\u07d1\u07d4\u0003\u0002\u0002\u0002\u07d2", "\u07d0\u0003\u0002\u0002\u0002\u07d2\u07d3\u0003\u0002\u0002\u0002\u07d3", "\u07d6\u0003\u0002\u0002\u0002\u07d4\u07d2\u0003\u0002\u0002\u0002\u07d5", "\u07cd\u0003\u0002\u0002\u0002\u07d5\u07d6\u0003\u0002\u0002\u0002\u07d6", "\u07d7\u0003\u0002\u0002\u0002\u07d7\u07d8\u0007\u0005\u0002\u0002\u07d8", "\u07e4\u0005\u0102\u0082\u0002\u07d9\u07db\u0007\u0018\u0002\u0002\u07da", "\u07d9\u0003\u0002\u0002\u0002\u07da\u07db\u0003\u0002\u0002\u0002\u07db", "\u07dc\u0003\u0002\u0002\u0002\u07dc\u07e1\u0005\u0102\u0082\u0002\u07dd", "\u07de\u0007\u0006\u0002\u0002\u07de\u07e0\u0005\u0102\u0082\u0002\u07df", "\u07dd\u0003\u0002\u0002\u0002\u07e0\u07e3\u0003\u0002\u0002\u0002\u07e1", "\u07df\u0003\u0002\u0002\u0002\u07e1\u07e2\u0003\u0002\u0002\u0002\u07e2", "\u07e5\u0003\u0002\u0002\u0002\u07e3\u07e1\u0003\u0002\u0002\u0002\u07e4", "\u07da\u0003\u0002\u0002\u0002\u07e4\u07e5\u0003\u0002\u0002\u0002\u07e5", "\u0087\u0003\u0002\u0002\u0002\u07e6\u07e7\t\u0014\u0002\u0002\u07e7", "\u0089\u0003\u0002\u0002\u0002\u07e8\u07ec\u0005\u00a2R\u0002\u07e9", "\u07eb\u0005\u008cG\u0002\u07ea\u07e9\u0003\u0002\u0002\u0002\u07eb", "\u07ee\u0003\u0002\u0002\u0002\u07ec\u07ea\u0003\u0002\u0002\u0002\u07ec", "\u07ed\u0003\u0002\u0002\u0002\u07ed\u008b\u0003\u0002\u0002\u0002\u07ee", "\u07ec\u0003\u0002\u0002\u0002\u07ef\u07f0\u0005\u008eH\u0002\u07f0", "\u07f1\u0007~\u0002\u0002\u07f1\u07f3\u0005\u00a2R\u0002\u07f2\u07f4", "\u0005\u0090I\u0002\u07f3\u07f2\u0003\u0002\u0002\u0002\u07f3\u07f4", "\u0003\u0002\u0002\u0002\u07f4\u07fb\u0003\u0002\u0002\u0002\u07f5\u07f6", "\u0007\u0096\u0002\u0002\u07f6\u07f7\u0005\u008eH\u0002\u07f7\u07f8", "\u0007~\u0002\u0002\u07f8\u07f9\u0005\u00a2R\u0002\u07f9\u07fb\u0003", "\u0002\u0002\u0002\u07fa\u07ef\u0003\u0002\u0002\u0002\u07fa\u07f5\u0003", "\u0002\u0002\u0002\u07fb\u008d\u0003\u0002\u0002\u0002\u07fc\u07fe\u0007", "u\u0002\u0002\u07fd\u07fc\u0003\u0002\u0002\u0002\u07fd\u07fe\u0003", "\u0002\u0002\u0002\u07fe\u0815\u0003\u0002\u0002\u0002\u07ff\u0815\u0007", "8\u0002\u0002\u0800\u0802\u0007\u0084\u0002\u0002\u0801\u0803\u0007", "\u00a3\u0002\u0002\u0802\u0801\u0003\u0002\u0002\u0002\u0802\u0803\u0003", "\u0002\u0002\u0002\u0803\u0815\u0003\u0002\u0002\u0002\u0804\u0806\u0007", "\u0084\u0002\u0002\u0805\u0804\u0003\u0002\u0002\u0002\u0805\u0806\u0003", "\u0002\u0002\u0002\u0806\u0807\u0003\u0002\u0002\u0002\u0807\u0815\u0007", "\u00cd\u0002\u0002\u0808\u080a\u0007\u00c3\u0002\u0002\u0809\u080b\u0007", "\u00a3\u0002\u0002\u080a\u0809\u0003\u0002\u0002\u0002\u080a\u080b\u0003", "\u0002\u0002\u0002\u080b\u0815\u0003\u0002\u0002\u0002\u080c\u080e\u0007", "g\u0002\u0002\u080d\u080f\u0007\u00a3\u0002\u0002\u080e\u080d\u0003", "\u0002\u0002\u0002\u080e\u080f\u0003\u0002\u0002\u0002\u080f\u0815\u0003", "\u0002\u0002\u0002\u0810\u0812\u0007\u0084\u0002\u0002\u0811\u0810\u0003", "\u0002\u0002\u0002\u0811\u0812\u0003\u0002\u0002\u0002\u0812\u0813\u0003", "\u0002\u0002\u0002\u0813\u0815\u0007\u0014\u0002\u0002\u0814\u07fd\u0003", "\u0002\u0002\u0002\u0814\u07ff\u0003\u0002\u0002\u0002\u0814\u0800\u0003", "\u0002\u0002\u0002\u0814\u0805\u0003\u0002\u0002\u0002\u0814\u0808\u0003", "\u0002\u0002\u0002\u0814\u080c\u0003\u0002\u0002\u0002\u0814\u0811\u0003", "\u0002\u0002\u0002\u0815\u008f\u0003\u0002\u0002\u0002\u0816\u0817\u0007", "\u009c\u0002\u0002\u0817\u081b\u0005\u00be`\u0002\u0818\u0819\u0007", "\u00fe\u0002\u0002\u0819\u081b\u0005\u0096L\u0002\u081a\u0816\u0003", "\u0002\u0002\u0002\u081a\u0818\u0003\u0002\u0002\u0002\u081b\u0091\u0003", "\u0002\u0002\u0002\u081c\u081d\u0007\u00e3\u0002\u0002\u081d\u081f\u0007", "\u0004\u0002\u0002\u081e\u0820\u0005\u0094K\u0002\u081f\u081e\u0003", "\u0002\u0002\u0002\u081f\u0820\u0003\u0002\u0002\u0002\u0820\u0821\u0003", "\u0002\u0002\u0002\u0821\u0822\u0007\u0005\u0002\u0002\u0822\u0093\u0003", "\u0002\u0002\u0002\u0823\u0825\u0007\u0110\u0002\u0002\u0824\u0823\u0003", "\u0002\u0002\u0002\u0824\u0825\u0003\u0002\u0002\u0002\u0825\u0826\u0003", "\u0002\u0002\u0002\u0826\u0827\t\u0015\u0002\u0002\u0827\u083c\u0007", "\u00ac\u0002\u0002\u0828\u0829\u0005\u00bc_\u0002\u0829\u082a\u0007", "\u00ca\u0002\u0002\u082a\u083c\u0003\u0002\u0002\u0002\u082b\u082c\u0007", "\u001e\u0002\u0002\u082c\u082d\u0007\u011d\u0002\u0002\u082d\u082e\u0007", "\u00a2\u0002\u0002\u082e\u082f\u0007\u009b\u0002\u0002\u082f\u0838\u0007", "\u011d\u0002\u0002\u0830\u0836\u0007\u009c\u0002\u0002\u0831\u0837\u0005", "\u0102\u0082\u0002\u0832\u0833\u0005\u00fc\u007f\u0002\u0833\u0834\u0007", "\u0004\u0002\u0002\u0834\u0835\u0007\u0005\u0002\u0002\u0835\u0837\u0003", "\u0002\u0002\u0002\u0836\u0831\u0003\u0002\u0002\u0002\u0836\u0832\u0003", "\u0002\u0002\u0002\u0837\u0839\u0003\u0002\u0002\u0002\u0838\u0830\u0003", "\u0002\u0002\u0002\u0838\u0839\u0003\u0002\u0002\u0002\u0839\u083c\u0003", "\u0002\u0002\u0002\u083a\u083c\u0005\u00bc_\u0002\u083b\u0824\u0003", "\u0002\u0002\u0002\u083b\u0828\u0003\u0002\u0002\u0002\u083b\u082b\u0003", "\u0002\u0002\u0002\u083b\u083a\u0003\u0002\u0002\u0002\u083c\u0095\u0003", "\u0002\u0002\u0002\u083d\u083e\u0007\u0004\u0002\u0002\u083e\u083f\u0005", "\u0098M\u0002\u083f\u0840\u0007\u0005\u0002\u0002\u0840\u0097\u0003", "\u0002\u0002\u0002\u0841\u0846\u0005\u00fe\u0080\u0002\u0842\u0843\u0007", "\u0006\u0002\u0002\u0843\u0845\u0005\u00fe\u0080\u0002\u0844\u0842\u0003", "\u0002\u0002\u0002\u0845\u0848\u0003\u0002\u0002\u0002\u0846\u0844\u0003", "\u0002\u0002\u0002\u0846\u0847\u0003\u0002\u0002\u0002\u0847\u0099\u0003", "\u0002\u0002\u0002\u0848\u0846\u0003\u0002\u0002\u0002\u0849\u084a\u0007", "\u0004\u0002\u0002\u084a\u084f\u0005\u009cO\u0002\u084b\u084c\u0007", "\u0006\u0002\u0002\u084c\u084e\u0005\u009cO\u0002\u084d\u084b\u0003", "\u0002\u0002\u0002\u084e\u0851\u0003\u0002\u0002\u0002\u084f\u084d\u0003", "\u0002\u0002\u0002\u084f\u0850\u0003\u0002\u0002\u0002\u0850\u0852\u0003", "\u0002\u0002\u0002\u0851\u084f\u0003\u0002\u0002\u0002\u0852\u0853\u0007", "\u0005\u0002\u0002\u0853\u009b\u0003\u0002\u0002\u0002\u0854\u0856\u0005", "\u00fe\u0080\u0002\u0855\u0857\t\u0012\u0002\u0002\u0856\u0855\u0003", "\u0002\u0002\u0002\u0856\u0857\u0003\u0002\u0002\u0002\u0857\u009d\u0003", "\u0002\u0002\u0002\u0858\u0859\u0007\u0004\u0002\u0002\u0859\u085e\u0005", "\u00a0Q\u0002\u085a\u085b\u0007\u0006\u0002\u0002\u085b\u085d\u0005", "\u00a0Q\u0002\u085c\u085a\u0003\u0002\u0002\u0002\u085d\u0860\u0003", "\u0002\u0002\u0002\u085e\u085c\u0003\u0002\u0002\u0002\u085e\u085f\u0003", "\u0002\u0002\u0002\u085f\u0861\u0003\u0002\u0002\u0002\u0860\u085e\u0003", "\u0002\u0002\u0002\u0861\u0862\u0007\u0005\u0002\u0002\u0862\u009f\u0003", "\u0002\u0002\u0002\u0863\u0865\u0005\u0102\u0082\u0002\u0864\u0866\u0005", " \u0011\u0002\u0865\u0864\u0003\u0002\u0002\u0002\u0865\u0866\u0003", "\u0002\u0002\u0002\u0866\u00a1\u0003\u0002\u0002\u0002\u0867\u0869\u0005", "\u00aeX\u0002\u0868\u086a\u0005\u0092J\u0002\u0869\u0868\u0003\u0002", "\u0002\u0002\u0869\u086a\u0003\u0002\u0002\u0002\u086a\u086b\u0003\u0002", "\u0002\u0002\u086b\u086c\u0005\u00a8U\u0002\u086c\u0880\u0003\u0002", "\u0002\u0002\u086d\u086e\u0007\u0004\u0002\u0002\u086e\u086f\u0005\"", "\u0012\u0002\u086f\u0871\u0007\u0005\u0002\u0002\u0870\u0872\u0005\u0092", "J\u0002\u0871\u0870\u0003\u0002\u0002\u0002\u0871\u0872\u0003\u0002", "\u0002\u0002\u0872\u0873\u0003\u0002\u0002\u0002\u0873\u0874\u0005\u00a8", "U\u0002\u0874\u0880\u0003\u0002\u0002\u0002\u0875\u0876\u0007\u0004", "\u0002\u0002\u0876\u0877\u0005\u008aF\u0002\u0877\u0879\u0007\u0005", "\u0002\u0002\u0878\u087a\u0005\u0092J\u0002\u0879\u0878\u0003\u0002", "\u0002\u0002\u0879\u087a\u0003\u0002\u0002\u0002\u087a\u087b\u0003\u0002", "\u0002\u0002\u087b\u087c\u0005\u00a8U\u0002\u087c\u0880\u0003\u0002", "\u0002\u0002\u087d\u0880\u0005\u00a4S\u0002\u087e\u0880\u0005\u00a6", "T\u0002\u087f\u0867\u0003\u0002\u0002\u0002\u087f\u086d\u0003\u0002", "\u0002\u0002\u087f\u0875\u0003\u0002\u0002\u0002\u087f\u087d\u0003\u0002", "\u0002\u0002\u087f\u087e\u0003\u0002\u0002\u0002\u0880\u00a3\u0003\u0002", "\u0002\u0002\u0881\u0882\u0007\u00ff\u0002\u0002\u0882\u0887\u0005\u00bc", "_\u0002\u0883\u0884\u0007\u0006\u0002\u0002\u0884\u0886\u0005\u00bc", "_\u0002\u0885\u0883\u0003\u0002\u0002\u0002\u0886\u0889\u0003\u0002", "\u0002\u0002\u0887\u0885\u0003\u0002\u0002\u0002\u0887\u0888\u0003\u0002", "\u0002\u0002\u0888\u088a\u0003\u0002\u0002\u0002\u0889\u0887\u0003\u0002", "\u0002\u0002\u088a\u088b\u0005\u00a8U\u0002\u088b\u00a5\u0003\u0002", "\u0002\u0002\u088c\u088d\u0005\u00fe\u0080\u0002\u088d\u0896\u0007\u0004", "\u0002\u0002\u088e\u0893\u0005\u00bc_\u0002\u088f\u0890\u0007\u0006", "\u0002\u0002\u0890\u0892\u0005\u00bc_\u0002\u0891\u088f\u0003\u0002", "\u0002\u0002\u0892\u0895\u0003\u0002\u0002\u0002\u0893\u0891\u0003\u0002", "\u0002\u0002\u0893\u0894\u0003\u0002\u0002\u0002\u0894\u0897\u0003\u0002", "\u0002\u0002\u0895\u0893\u0003\u0002\u0002\u0002\u0896\u088e\u0003\u0002", "\u0002\u0002\u0896\u0897\u0003\u0002\u0002\u0002\u0897\u0898\u0003\u0002", "\u0002\u0002\u0898\u0899\u0007\u0005\u0002\u0002\u0899\u089a\u0005\u00a8", "U\u0002\u089a\u00a7\u0003\u0002\u0002\u0002\u089b\u089d\u0007\u0018", "\u0002\u0002\u089c\u089b\u0003\u0002\u0002\u0002\u089c\u089d\u0003\u0002", "\u0002\u0002\u089d\u089e\u0003\u0002\u0002\u0002\u089e\u08a0\u0005\u0104", "\u0083\u0002\u089f\u08a1\u0005\u0096L\u0002\u08a0\u089f\u0003\u0002", "\u0002\u0002\u08a0\u08a1\u0003\u0002\u0002\u0002\u08a1\u08a3\u0003\u0002", "\u0002\u0002\u08a2\u089c\u0003\u0002\u0002\u0002\u08a2\u08a3\u0003\u0002", "\u0002\u0002\u08a3\u00a9\u0003\u0002\u0002\u0002\u08a4\u08a5\u0007\u00c9", "\u0002\u0002\u08a5\u08a6\u0007d\u0002\u0002\u08a6\u08a7\u0007\u00cf", "\u0002\u0002\u08a7\u08ab\u0007\u0119\u0002\u0002\u08a8\u08a9\u0007\u0105", "\u0002\u0002\u08a9\u08aa\u0007\u00d0\u0002\u0002\u08aa\u08ac\u0005:", "\u001e\u0002\u08ab\u08a8\u0003\u0002\u0002\u0002\u08ab\u08ac\u0003\u0002", "\u0002\u0002\u08ac\u08d6\u0003\u0002\u0002\u0002\u08ad\u08ae\u0007\u00c9", "\u0002\u0002\u08ae\u08af\u0007d\u0002\u0002\u08af\u08b9\u0007E\u0002", "\u0002\u08b0\u08b1\u0007]\u0002\u0002\u08b1\u08b2\u0007\u00e6\u0002", "\u0002\u08b2\u08b3\u0007 \u0002\u0002\u08b3\u08b7\u0007\u0119\u0002", "\u0002\u08b4\u08b5\u0007R\u0002\u0002\u08b5\u08b6\u0007 \u0002\u0002", "\u08b6\u08b8\u0007\u0119\u0002\u0002\u08b7\u08b4\u0003\u0002\u0002\u0002", "\u08b7\u08b8\u0003\u0002\u0002\u0002\u08b8\u08ba\u0003\u0002\u0002\u0002", "\u08b9\u08b0\u0003\u0002\u0002\u0002\u08b9\u08ba\u0003\u0002\u0002\u0002", "\u08ba\u08c0\u0003\u0002\u0002\u0002\u08bb\u08bc\u0007,\u0002\u0002", "\u08bc\u08bd\u0007}\u0002\u0002\u08bd\u08be\u0007\u00e6\u0002\u0002", "\u08be\u08bf\u0007 \u0002\u0002\u08bf\u08c1\u0007\u0119\u0002\u0002", "\u08c0\u08bb\u0003\u0002\u0002\u0002\u08c0\u08c1\u0003\u0002\u0002\u0002", "\u08c1\u08c7\u0003\u0002\u0002\u0002\u08c2\u08c3\u0007\u0090\u0002\u0002", "\u08c3\u08c4\u0007\u007f\u0002\u0002\u08c4\u08c5\u0007\u00e6\u0002\u0002", "\u08c5\u08c6\u0007 \u0002\u0002\u08c6\u08c8\u0007\u0119\u0002\u0002", "\u08c7\u08c2\u0003\u0002\u0002\u0002\u08c7\u08c8\u0003\u0002\u0002\u0002", "\u08c8\u08cd\u0003\u0002\u0002\u0002\u08c9\u08ca\u0007\u0087\u0002\u0002", "\u08ca\u08cb\u0007\u00e6\u0002\u0002\u08cb\u08cc\u0007 \u0002\u0002", "\u08cc\u08ce\u0007\u0119\u0002\u0002\u08cd\u08c9\u0003\u0002\u0002\u0002", "\u08cd\u08ce\u0003\u0002\u0002\u0002\u08ce\u08d3\u0003\u0002\u0002\u0002", "\u08cf\u08d0\u0007\u0099\u0002\u0002\u08d0\u08d1\u0007C\u0002\u0002", "\u08d1\u08d2\u0007\u0018\u0002\u0002\u08d2\u08d4\u0007\u0119\u0002\u0002", "\u08d3\u08cf\u0003\u0002\u0002\u0002\u08d3\u08d4\u0003\u0002\u0002\u0002", "\u08d4\u08d6\u0003\u0002\u0002\u0002\u08d5\u08a4\u0003\u0002\u0002\u0002", "\u08d5\u08ad\u0003\u0002\u0002\u0002\u08d6\u00ab\u0003\u0002\u0002\u0002", "\u08d7\u08dc\u0005\u00aeX\u0002\u08d8\u08d9\u0007\u0006\u0002\u0002", "\u08d9\u08db\u0005\u00aeX\u0002\u08da\u08d8\u0003\u0002\u0002\u0002", "\u08db\u08de\u0003\u0002\u0002\u0002\u08dc\u08da\u0003\u0002\u0002\u0002", "\u08dc\u08dd\u0003\u0002\u0002\u0002\u08dd\u00ad\u0003\u0002\u0002\u0002", "\u08de\u08dc\u0003\u0002\u0002\u0002\u08df\u08e4\u0005\u00fe\u0080\u0002", "\u08e0\u08e1\u0007\u0007\u0002\u0002\u08e1\u08e3\u0005\u00fe\u0080\u0002", "\u08e2\u08e0\u0003\u0002\u0002\u0002\u08e3\u08e6\u0003\u0002\u0002\u0002", "\u08e4\u08e2\u0003\u0002\u0002\u0002\u08e4\u08e5\u0003\u0002\u0002\u0002", "\u08e5\u00af\u0003\u0002\u0002\u0002\u08e6\u08e4\u0003\u0002\u0002\u0002", "\u08e7\u08e8\u0005\u00fe\u0080\u0002\u08e8\u08e9\u0007\u0007\u0002\u0002", "\u08e9\u08eb\u0003\u0002\u0002\u0002\u08ea\u08e7\u0003\u0002\u0002\u0002", "\u08ea\u08eb\u0003\u0002\u0002\u0002\u08eb\u08ec\u0003\u0002\u0002\u0002", "\u08ec\u08ed\u0005\u00fe\u0080\u0002\u08ed\u00b1\u0003\u0002\u0002\u0002", "\u08ee\u08f6\u0005\u00bc_\u0002\u08ef\u08f1\u0007\u0018\u0002\u0002", "\u08f0\u08ef\u0003\u0002\u0002\u0002\u08f0\u08f1\u0003\u0002\u0002\u0002", "\u08f1\u08f4\u0003\u0002\u0002\u0002\u08f2\u08f5\u0005\u00fe\u0080\u0002", "\u08f3\u08f5\u0005\u0096L\u0002\u08f4\u08f2\u0003\u0002\u0002\u0002", "\u08f4\u08f3\u0003\u0002\u0002\u0002\u08f5\u08f7\u0003\u0002\u0002\u0002", "\u08f6\u08f0\u0003\u0002\u0002\u0002\u08f6\u08f7\u0003\u0002\u0002\u0002", "\u08f7\u00b3\u0003\u0002\u0002\u0002\u08f8\u08fd\u0005\u00b2Z\u0002", "\u08f9\u08fa\u0007\u0006\u0002\u0002\u08fa\u08fc\u0005\u00b2Z\u0002", "\u08fb\u08f9\u0003\u0002\u0002\u0002\u08fc\u08ff\u0003\u0002\u0002\u0002", "\u08fd\u08fb\u0003\u0002\u0002\u0002\u08fd\u08fe\u0003\u0002\u0002\u0002", "\u08fe\u00b5\u0003\u0002\u0002\u0002\u08ff\u08fd\u0003\u0002\u0002\u0002", "\u0900\u0901\u0007\u0004\u0002\u0002\u0901\u0906\u0005\u00b8]\u0002", "\u0902\u0903\u0007\u0006\u0002\u0002\u0903\u0905\u0005\u00b8]\u0002", "\u0904\u0902\u0003\u0002\u0002\u0002\u0905\u0908\u0003\u0002\u0002\u0002", "\u0906\u0904\u0003\u0002\u0002\u0002\u0906\u0907\u0003\u0002\u0002\u0002", "\u0907\u0909\u0003\u0002\u0002\u0002\u0908\u0906\u0003\u0002\u0002\u0002", "\u0909\u090a\u0007\u0005\u0002\u0002\u090a\u00b7\u0003\u0002\u0002\u0002", "\u090b\u0919\u0005\u00fc\u007f\u0002\u090c\u090d\u0005\u0102\u0082\u0002", "\u090d\u090e\u0007\u0004\u0002\u0002\u090e\u0913\u0005\u00ba^\u0002", "\u090f\u0910\u0007\u0006\u0002\u0002\u0910\u0912\u0005\u00ba^\u0002", "\u0911\u090f\u0003\u0002\u0002\u0002\u0912\u0915\u0003\u0002\u0002\u0002", "\u0913\u0911\u0003\u0002\u0002\u0002\u0913\u0914\u0003\u0002\u0002\u0002", "\u0914\u0916\u0003\u0002\u0002\u0002\u0915\u0913\u0003\u0002\u0002\u0002", "\u0916\u0917\u0007\u0005\u0002\u0002\u0917\u0919\u0003\u0002\u0002\u0002", "\u0918\u090b\u0003\u0002\u0002\u0002\u0918\u090c\u0003\u0002\u0002\u0002", "\u0919\u00b9\u0003\u0002\u0002\u0002\u091a\u091d\u0005\u00fc\u007f\u0002", "\u091b\u091d\u0005\u00c6d\u0002\u091c\u091a\u0003\u0002\u0002\u0002", "\u091c\u091b\u0003\u0002\u0002\u0002\u091d\u00bb\u0003\u0002\u0002\u0002", "\u091e\u091f\u0005\u00be`\u0002\u091f\u00bd\u0003\u0002\u0002\u0002", "\u0920\u0921\b`\u0001\u0002\u0921\u0922\u0007\u0098\u0002\u0002\u0922", "\u092d\u0005\u00be`\u0007\u0923\u0924\u0007U\u0002\u0002\u0924\u0925", "\u0007\u0004\u0002\u0002\u0925\u0926\u0005\"\u0012\u0002\u0926\u0927", "\u0007\u0005\u0002\u0002\u0927\u092d\u0003\u0002\u0002\u0002\u0928\u092a", "\u0005\u00c2b\u0002\u0929\u092b\u0005\u00c0a\u0002\u092a\u0929\u0003", "\u0002\u0002\u0002\u092a\u092b\u0003\u0002\u0002\u0002\u092b\u092d\u0003", "\u0002\u0002\u0002\u092c\u0920\u0003\u0002\u0002\u0002\u092c\u0923\u0003", "\u0002\u0002\u0002\u092c\u0928\u0003\u0002\u0002\u0002\u092d\u0936\u0003", "\u0002\u0002\u0002\u092e\u092f\f\u0004\u0002\u0002\u092f\u0930\u0007", "\u0013\u0002\u0002\u0930\u0935\u0005\u00be`\u0005\u0931\u0932\f\u0003", "\u0002\u0002\u0932\u0933\u0007\u00a0\u0002\u0002\u0933\u0935\u0005\u00be", "`\u0004\u0934\u092e\u0003\u0002\u0002\u0002\u0934\u0931\u0003\u0002", "\u0002\u0002\u0935\u0938\u0003\u0002\u0002\u0002\u0936\u0934\u0003\u0002", "\u0002\u0002\u0936\u0937\u0003\u0002\u0002\u0002\u0937\u00bf\u0003\u0002", "\u0002\u0002\u0938\u0936\u0003\u0002\u0002\u0002\u0939\u093b\u0007\u0098", "\u0002\u0002\u093a\u0939\u0003\u0002\u0002\u0002\u093a\u093b\u0003\u0002", "\u0002\u0002\u093b\u093c\u0003\u0002\u0002\u0002\u093c\u093d\u0007\u001c", "\u0002\u0002\u093d\u093e\u0005\u00c2b\u0002\u093e\u093f\u0007\u0013", "\u0002\u0002\u093f\u0940\u0005\u00c2b\u0002\u0940\u098c\u0003\u0002", "\u0002\u0002\u0941\u0943\u0007\u0098\u0002\u0002\u0942\u0941\u0003\u0002", "\u0002\u0002\u0942\u0943\u0003\u0002\u0002\u0002\u0943\u0944\u0003\u0002", "\u0002\u0002\u0944\u0945\u0007r\u0002\u0002\u0945\u0946\u0007\u0004", "\u0002\u0002\u0946\u094b\u0005\u00bc_\u0002\u0947\u0948\u0007\u0006", "\u0002\u0002\u0948\u094a\u0005\u00bc_\u0002\u0949\u0947\u0003\u0002", "\u0002\u0002\u094a\u094d\u0003\u0002\u0002\u0002\u094b\u0949\u0003\u0002", "\u0002\u0002\u094b\u094c\u0003\u0002\u0002\u0002\u094c\u094e\u0003\u0002", "\u0002\u0002\u094d\u094b\u0003\u0002\u0002\u0002\u094e\u094f\u0007\u0005", "\u0002\u0002\u094f\u098c\u0003\u0002\u0002\u0002\u0950\u0952\u0007\u0098", "\u0002\u0002\u0951\u0950\u0003\u0002\u0002\u0002\u0951\u0952\u0003\u0002", "\u0002\u0002\u0952\u0953\u0003\u0002\u0002\u0002\u0953\u0954\u0007r", "\u0002\u0002\u0954\u0955\u0007\u0004\u0002\u0002\u0955\u0956\u0005\"", "\u0012\u0002\u0956\u0957\u0007\u0005\u0002\u0002\u0957\u098c\u0003\u0002", "\u0002\u0002\u0958\u095a\u0007\u0098\u0002\u0002\u0959\u0958\u0003\u0002", "\u0002\u0002\u0959\u095a\u0003\u0002\u0002\u0002\u095a\u095b\u0003\u0002", "\u0002\u0002\u095b\u095c\u0007\u00c4\u0002\u0002\u095c\u098c\u0005\u00c2", "b\u0002\u095d\u095f\u0007\u0098\u0002\u0002\u095e\u095d\u0003\u0002", "\u0002\u0002\u095e\u095f\u0003\u0002\u0002\u0002\u095f\u0960\u0003\u0002", "\u0002\u0002\u0960\u0961\u0007\u0085\u0002\u0002\u0961\u096f\t\u0016", "\u0002\u0002\u0962\u0963\u0007\u0004\u0002\u0002\u0963\u0970\u0007\u0005", "\u0002\u0002\u0964\u0965\u0007\u0004\u0002\u0002\u0965\u096a\u0005\u00bc", "_\u0002\u0966\u0967\u0007\u0006\u0002\u0002\u0967\u0969\u0005\u00bc", "_\u0002\u0968\u0966\u0003\u0002\u0002\u0002\u0969\u096c\u0003\u0002", "\u0002\u0002\u096a\u0968\u0003\u0002\u0002\u0002\u096a\u096b\u0003\u0002", "\u0002\u0002\u096b\u096d\u0003\u0002\u0002\u0002\u096c\u096a\u0003\u0002", "\u0002\u0002\u096d\u096e\u0007\u0005\u0002\u0002\u096e\u0970\u0003\u0002", "\u0002\u0002\u096f\u0962\u0003\u0002\u0002\u0002\u096f\u0964\u0003\u0002", "\u0002\u0002\u0970\u098c\u0003\u0002\u0002\u0002\u0971\u0973\u0007\u0098", "\u0002\u0002\u0972\u0971\u0003\u0002\u0002\u0002\u0972\u0973\u0003\u0002", "\u0002\u0002\u0973\u0974\u0003\u0002\u0002\u0002\u0974\u0975\u0007\u0085", "\u0002\u0002\u0975\u0978\u0005\u00c2b\u0002\u0976\u0977\u0007Q\u0002", "\u0002\u0977\u0979\u0007\u0119\u0002\u0002\u0978\u0976\u0003\u0002\u0002", "\u0002\u0978\u0979\u0003\u0002\u0002\u0002\u0979\u098c\u0003\u0002\u0002", "\u0002\u097a\u097c\u0007|\u0002\u0002\u097b\u097d\u0007\u0098\u0002", "\u0002\u097c\u097b\u0003\u0002\u0002\u0002\u097c\u097d\u0003\u0002\u0002", "\u0002\u097d\u097e\u0003\u0002\u0002\u0002\u097e\u098c\u0007\u0099\u0002", "\u0002\u097f\u0981\u0007|\u0002\u0002\u0980\u0982\u0007\u0098\u0002", "\u0002\u0981\u0980\u0003\u0002\u0002\u0002\u0981\u0982\u0003\u0002\u0002", "\u0002\u0982\u0983\u0003\u0002\u0002\u0002\u0983\u098c\t\u0017\u0002", "\u0002\u0984\u0986\u0007|\u0002\u0002\u0985\u0987\u0007\u0098\u0002", "\u0002\u0986\u0985\u0003\u0002\u0002\u0002\u0986\u0987\u0003\u0002\u0002", "\u0002\u0987\u0988\u0003\u0002\u0002\u0002\u0988\u0989\u0007K\u0002", "\u0002\u0989\u098a\u0007f\u0002\u0002\u098a\u098c\u0005\u00c2b\u0002", "\u098b\u093a\u0003\u0002\u0002\u0002\u098b\u0942\u0003\u0002\u0002\u0002", "\u098b\u0951\u0003\u0002\u0002\u0002\u098b\u0959\u0003\u0002\u0002\u0002", "\u098b\u095e\u0003\u0002\u0002\u0002\u098b\u0972\u0003\u0002\u0002\u0002", "\u098b\u097a\u0003\u0002\u0002\u0002\u098b\u097f\u0003\u0002\u0002\u0002", "\u098b\u0984\u0003\u0002\u0002\u0002\u098c\u00c1\u0003\u0002\u0002\u0002", "\u098d\u098e\bb\u0001\u0002\u098e\u0992\u0005\u00c4c\u0002\u098f\u0990", "\t\u0018\u0002\u0002\u0990\u0992\u0005\u00c2b\t\u0991\u098d\u0003\u0002", "\u0002\u0002\u0991\u098f\u0003\u0002\u0002\u0002\u0992\u09a8\u0003\u0002", "\u0002\u0002\u0993\u0994\f\b\u0002\u0002\u0994\u0995\t\u0019\u0002\u0002", "\u0995\u09a7\u0005\u00c2b\t\u0996\u0997\f\u0007\u0002\u0002\u0997\u0998", "\t\u001a\u0002\u0002\u0998\u09a7\u0005\u00c2b\b\u0999\u099a\f\u0006", "\u0002\u0002\u099a\u099b\u0007\u0115\u0002\u0002\u099b\u09a7\u0005\u00c2", "b\u0007\u099c\u099d\f\u0005\u0002\u0002\u099d\u099e\u0007\u0118\u0002", "\u0002\u099e\u09a7\u0005\u00c2b\u0006\u099f\u09a0\f\u0004\u0002\u0002", "\u09a0\u09a1\u0007\u0116\u0002\u0002\u09a1\u09a7\u0005\u00c2b\u0005", "\u09a2\u09a3\f\u0003\u0002\u0002\u09a3\u09a4\u0005\u00c8e\u0002\u09a4", "\u09a5\u0005\u00c2b\u0004\u09a5\u09a7\u0003\u0002\u0002\u0002\u09a6", "\u0993\u0003\u0002\u0002\u0002\u09a6\u0996\u0003\u0002\u0002\u0002\u09a6", "\u0999\u0003\u0002\u0002\u0002\u09a6\u099c\u0003\u0002\u0002\u0002\u09a6", "\u099f\u0003\u0002\u0002\u0002\u09a6\u09a2\u0003\u0002\u0002\u0002\u09a7", "\u09aa\u0003\u0002\u0002\u0002\u09a8\u09a6\u0003\u0002\u0002\u0002\u09a8", "\u09a9\u0003\u0002\u0002\u0002\u09a9\u00c3\u0003\u0002\u0002\u0002\u09aa", "\u09a8\u0003\u0002\u0002\u0002\u09ab\u09ac\bc\u0001\u0002\u09ac\u0a64", "\t\u001b\u0002\u0002\u09ad\u09af\u0007#\u0002\u0002\u09ae\u09b0\u0005", "\u00ecw\u0002\u09af\u09ae\u0003\u0002\u0002\u0002\u09b0\u09b1\u0003", "\u0002\u0002\u0002\u09b1\u09af\u0003\u0002\u0002\u0002\u09b1\u09b2\u0003", "\u0002\u0002\u0002\u09b2\u09b5\u0003\u0002\u0002\u0002\u09b3\u09b4\u0007", "O\u0002\u0002\u09b4\u09b6\u0005\u00bc_\u0002\u09b5\u09b3\u0003\u0002", "\u0002\u0002\u09b5\u09b6\u0003\u0002\u0002\u0002\u09b6\u09b7\u0003\u0002", "\u0002\u0002\u09b7\u09b8\u0007P\u0002\u0002\u09b8\u0a64\u0003\u0002", "\u0002\u0002\u09b9\u09ba\u0007#\u0002\u0002\u09ba\u09bc\u0005\u00bc", "_\u0002\u09bb\u09bd\u0005\u00ecw\u0002\u09bc\u09bb\u0003\u0002\u0002", "\u0002\u09bd\u09be\u0003\u0002\u0002\u0002\u09be\u09bc\u0003\u0002\u0002", "\u0002\u09be\u09bf\u0003\u0002\u0002\u0002\u09bf\u09c2\u0003\u0002\u0002", "\u0002\u09c0\u09c1\u0007O\u0002\u0002\u09c1\u09c3\u0005\u00bc_\u0002", "\u09c2\u09c0\u0003\u0002\u0002\u0002\u09c2\u09c3\u0003\u0002\u0002\u0002", "\u09c3\u09c4\u0003\u0002\u0002\u0002\u09c4\u09c5\u0007P\u0002\u0002", "\u09c5\u0a64\u0003\u0002\u0002\u0002\u09c6\u09c7\u0007$\u0002\u0002", "\u09c7\u09c8\u0007\u0004\u0002\u0002\u09c8\u09c9\u0005\u00bc_\u0002", "\u09c9\u09ca\u0007\u0018\u0002\u0002\u09ca\u09cb\u0005\u00dep\u0002", "\u09cb\u09cc\u0007\u0005\u0002\u0002\u09cc\u0a64\u0003\u0002\u0002\u0002", "\u09cd\u09ce\u0007\u00de\u0002\u0002\u09ce\u09d7\u0007\u0004\u0002\u0002", "\u09cf\u09d4\u0005\u00b2Z\u0002\u09d0\u09d1\u0007\u0006\u0002\u0002", "\u09d1\u09d3\u0005\u00b2Z\u0002\u09d2\u09d0\u0003\u0002\u0002\u0002", "\u09d3\u09d6\u0003\u0002\u0002\u0002\u09d4\u09d2\u0003\u0002\u0002\u0002", "\u09d4\u09d5\u0003\u0002\u0002\u0002\u09d5\u09d8\u0003\u0002\u0002\u0002", "\u09d6\u09d4\u0003\u0002\u0002\u0002\u09d7\u09cf\u0003\u0002\u0002\u0002", "\u09d7\u09d8\u0003\u0002\u0002\u0002\u09d8\u09d9\u0003\u0002\u0002\u0002", "\u09d9\u0a64\u0007\u0005\u0002\u0002\u09da\u09db\u0007`\u0002\u0002", "\u09db\u09dc\u0007\u0004\u0002\u0002\u09dc\u09df\u0005\u00bc_\u0002", "\u09dd\u09de\u0007p\u0002\u0002\u09de\u09e0\u0007\u009a\u0002\u0002", "\u09df\u09dd\u0003\u0002\u0002\u0002\u09df\u09e0\u0003\u0002\u0002\u0002", "\u09e0\u09e1\u0003\u0002\u0002\u0002\u09e1\u09e2\u0007\u0005\u0002\u0002", "\u09e2\u0a64\u0003\u0002\u0002\u0002\u09e3\u09e4\u0007\u0080\u0002\u0002", "\u09e4\u09e5\u0007\u0004\u0002\u0002\u09e5\u09e8\u0005\u00bc_\u0002", "\u09e6\u09e7\u0007p\u0002\u0002\u09e7\u09e9\u0007\u009a\u0002\u0002", "\u09e8\u09e6\u0003\u0002\u0002\u0002\u09e8\u09e9\u0003\u0002\u0002\u0002", "\u09e9\u09ea\u0003\u0002\u0002\u0002\u09ea\u09eb\u0007\u0005\u0002\u0002", "\u09eb\u0a64\u0003\u0002\u0002\u0002\u09ec\u09ed\u0007\u00af\u0002\u0002", "\u09ed\u09ee\u0007\u0004\u0002\u0002\u09ee\u09ef\u0005\u00c2b\u0002", "\u09ef\u09f0\u0007r\u0002\u0002\u09f0\u09f1\u0005\u00c2b\u0002\u09f1", "\u09f2\u0007\u0005\u0002\u0002\u09f2\u0a64\u0003\u0002\u0002\u0002\u09f3", "\u0a64\u0005\u00c6d\u0002\u09f4\u0a64\u0007\u0111\u0002\u0002\u09f5", "\u09f6\u0005\u00fc\u007f\u0002\u09f6\u09f7\u0007\u0007\u0002\u0002\u09f7", "\u09f8\u0007\u0111\u0002\u0002\u09f8\u0a64\u0003\u0002\u0002\u0002\u09f9", "\u09fa\u0007\u0004\u0002\u0002\u09fa\u09fd\u0005\u00b2Z\u0002\u09fb", "\u09fc\u0007\u0006\u0002\u0002\u09fc\u09fe\u0005\u00b2Z\u0002\u09fd", "\u09fb\u0003\u0002\u0002\u0002\u09fe\u09ff\u0003\u0002\u0002\u0002\u09ff", "\u09fd\u0003\u0002\u0002\u0002\u09ff\u0a00\u0003\u0002\u0002\u0002\u0a00", "\u0a01\u0003\u0002\u0002\u0002\u0a01\u0a02\u0007\u0005\u0002\u0002\u0a02", "\u0a64\u0003\u0002\u0002\u0002\u0a03\u0a04\u0007\u0004\u0002\u0002\u0a04", "\u0a05\u0005\"\u0012\u0002\u0a05\u0a06\u0007\u0005\u0002\u0002\u0a06", "\u0a64\u0003\u0002\u0002\u0002\u0a07\u0a08\u0005\u00fa~\u0002\u0a08", "\u0a14\u0007\u0004\u0002\u0002\u0a09\u0a0b\u0005\u0088E\u0002\u0a0a", "\u0a09\u0003\u0002\u0002\u0002\u0a0a\u0a0b\u0003\u0002\u0002\u0002\u0a0b", "\u0a0c\u0003\u0002\u0002\u0002\u0a0c\u0a11\u0005\u00bc_\u0002\u0a0d", "\u0a0e\u0007\u0006\u0002\u0002\u0a0e\u0a10\u0005\u00bc_\u0002\u0a0f", "\u0a0d\u0003\u0002\u0002\u0002\u0a10\u0a13\u0003\u0002\u0002\u0002\u0a11", "\u0a0f\u0003\u0002\u0002\u0002\u0a11\u0a12\u0003\u0002\u0002\u0002\u0a12", "\u0a15\u0003\u0002\u0002\u0002\u0a13\u0a11\u0003\u0002\u0002\u0002\u0a14", "\u0a0a\u0003\u0002\u0002\u0002\u0a14\u0a15\u0003\u0002\u0002\u0002\u0a15", "\u0a16\u0003\u0002\u0002\u0002\u0a16\u0a1d\u0007\u0005\u0002\u0002\u0a17", "\u0a18\u0007^\u0002\u0002\u0a18\u0a19\u0007\u0004\u0002\u0002\u0a19", "\u0a1a\u0007\u0103\u0002\u0002\u0a1a\u0a1b\u0005\u00be`\u0002\u0a1b", "\u0a1c\u0007\u0005\u0002\u0002\u0a1c\u0a1e\u0003\u0002\u0002\u0002\u0a1d", "\u0a17\u0003\u0002\u0002\u0002\u0a1d\u0a1e\u0003\u0002\u0002\u0002\u0a1e", "\u0a21\u0003\u0002\u0002\u0002\u0a1f\u0a20\u0007\u00a5\u0002\u0002\u0a20", "\u0a22\u0005\u00f2z\u0002\u0a21\u0a1f\u0003\u0002\u0002\u0002\u0a21", "\u0a22\u0003\u0002\u0002\u0002\u0a22\u0a64\u0003\u0002\u0002\u0002\u0a23", "\u0a24\u0005\u0102\u0082\u0002\u0a24\u0a25\u0007\n\u0002\u0002\u0a25", "\u0a26\u0005\u00bc_\u0002\u0a26\u0a64\u0003\u0002\u0002\u0002\u0a27", "\u0a28\u0007\u0004\u0002\u0002\u0a28\u0a2b\u0005\u0102\u0082\u0002\u0a29", "\u0a2a\u0007\u0006\u0002\u0002\u0a2a\u0a2c\u0005\u0102\u0082\u0002\u0a2b", "\u0a29\u0003\u0002\u0002\u0002\u0a2c\u0a2d\u0003\u0002\u0002\u0002\u0a2d", "\u0a2b\u0003\u0002\u0002\u0002\u0a2d\u0a2e\u0003\u0002\u0002\u0002\u0a2e", "\u0a2f\u0003\u0002\u0002\u0002\u0a2f\u0a30\u0007\u0005\u0002\u0002\u0a30", "\u0a31\u0007\n\u0002\u0002\u0a31\u0a32\u0005\u00bc_\u0002\u0a32\u0a64", "\u0003\u0002\u0002\u0002\u0a33\u0a64\u0005\u0102\u0082\u0002\u0a34\u0a35", "\u0007\u0004\u0002\u0002\u0a35\u0a36\u0005\u00bc_\u0002\u0a36\u0a37", "\u0007\u0005\u0002\u0002\u0a37\u0a64\u0003\u0002\u0002\u0002\u0a38\u0a39", "\u0007Z\u0002\u0002\u0a39\u0a3a\u0007\u0004\u0002\u0002\u0a3a\u0a3b", "\u0005\u0102\u0082\u0002\u0a3b\u0a3c\u0007f\u0002\u0002\u0a3c\u0a3d", "\u0005\u00c2b\u0002\u0a3d\u0a3e\u0007\u0005\u0002\u0002\u0a3e\u0a64", "\u0003\u0002\u0002\u0002\u0a3f\u0a40\t\u001c\u0002\u0002\u0a40\u0a41", "\u0007\u0004\u0002\u0002\u0a41\u0a42\u0005\u00c2b\u0002\u0a42\u0a43", "\t\u001d\u0002\u0002\u0a43\u0a46\u0005\u00c2b\u0002\u0a44\u0a45\t\u001e", "\u0002\u0002\u0a45\u0a47\u0005\u00c2b\u0002\u0a46\u0a44\u0003\u0002", "\u0002\u0002\u0a46\u0a47\u0003\u0002\u0002\u0002\u0a47\u0a48\u0003\u0002", "\u0002\u0002\u0a48\u0a49\u0007\u0005\u0002\u0002\u0a49\u0a64\u0003\u0002", "\u0002\u0002\u0a4a\u0a4b\u0007\u00ef\u0002\u0002\u0a4b\u0a4d\u0007\u0004", "\u0002\u0002\u0a4c\u0a4e\t\u001f\u0002\u0002\u0a4d\u0a4c\u0003\u0002", "\u0002\u0002\u0a4d\u0a4e\u0003\u0002\u0002\u0002\u0a4e\u0a50\u0003\u0002", "\u0002\u0002\u0a4f\u0a51\u0005\u00c2b\u0002\u0a50\u0a4f\u0003\u0002", "\u0002\u0002\u0a50\u0a51\u0003\u0002\u0002\u0002\u0a51\u0a52\u0003\u0002", "\u0002\u0002\u0a52\u0a53\u0007f\u0002\u0002\u0a53\u0a54\u0005\u00c2", "b\u0002\u0a54\u0a55\u0007\u0005\u0002\u0002\u0a55\u0a64\u0003\u0002", "\u0002\u0002\u0a56\u0a57\u0007\u00a7\u0002\u0002\u0a57\u0a58\u0007\u0004", "\u0002\u0002\u0a58\u0a59\u0005\u00c2b\u0002\u0a59\u0a5a\u0007\u00ae", "\u0002\u0002\u0a5a\u0a5b\u0005\u00c2b\u0002\u0a5b\u0a5c\u0007f\u0002", "\u0002\u0a5c\u0a5f\u0005\u00c2b\u0002\u0a5d\u0a5e\u0007b\u0002\u0002", "\u0a5e\u0a60\u0005\u00c2b\u0002\u0a5f\u0a5d\u0003\u0002\u0002\u0002", "\u0a5f\u0a60\u0003\u0002\u0002\u0002\u0a60\u0a61\u0003\u0002\u0002\u0002", "\u0a61\u0a62\u0007\u0005\u0002\u0002\u0a62\u0a64\u0003\u0002\u0002\u0002", "\u0a63\u09ab\u0003\u0002\u0002\u0002\u0a63\u09ad\u0003\u0002\u0002\u0002", "\u0a63\u09b9\u0003\u0002\u0002\u0002\u0a63\u09c6\u0003\u0002\u0002\u0002", "\u0a63\u09cd\u0003\u0002\u0002\u0002\u0a63\u09da\u0003\u0002\u0002\u0002", "\u0a63\u09e3\u0003\u0002\u0002\u0002\u0a63\u09ec\u0003\u0002\u0002\u0002", "\u0a63\u09f3\u0003\u0002\u0002\u0002\u0a63\u09f4\u0003\u0002\u0002\u0002", "\u0a63\u09f5\u0003\u0002\u0002\u0002\u0a63\u09f9\u0003\u0002\u0002\u0002", "\u0a63\u0a03\u0003\u0002\u0002\u0002\u0a63\u0a07\u0003\u0002\u0002\u0002", "\u0a63\u0a23\u0003\u0002\u0002\u0002\u0a63\u0a27\u0003\u0002\u0002\u0002", "\u0a63\u0a33\u0003\u0002\u0002\u0002\u0a63\u0a34\u0003\u0002\u0002\u0002", "\u0a63\u0a38\u0003\u0002\u0002\u0002\u0a63\u0a3f\u0003\u0002\u0002\u0002", "\u0a63\u0a4a\u0003\u0002\u0002\u0002\u0a63\u0a56\u0003\u0002\u0002\u0002", "\u0a64\u0a6f\u0003\u0002\u0002\u0002\u0a65\u0a66\f\n\u0002\u0002\u0a66", "\u0a67\u0007\u000b\u0002\u0002\u0a67\u0a68\u0005\u00c2b\u0002\u0a68", "\u0a69\u0007\f\u0002\u0002\u0a69\u0a6e\u0003\u0002\u0002\u0002\u0a6a", "\u0a6b\f\b\u0002\u0002\u0a6b\u0a6c\u0007\u0007\u0002\u0002\u0a6c\u0a6e", "\u0005\u0102\u0082\u0002\u0a6d\u0a65\u0003\u0002\u0002\u0002\u0a6d\u0a6a", "\u0003\u0002\u0002\u0002\u0a6e\u0a71\u0003\u0002\u0002\u0002\u0a6f\u0a6d", "\u0003\u0002\u0002\u0002\u0a6f\u0a70\u0003\u0002\u0002\u0002\u0a70\u00c5", "\u0003\u0002\u0002\u0002\u0a71\u0a6f\u0003\u0002\u0002\u0002\u0a72\u0a7f", "\u0007\u0099\u0002\u0002\u0a73\u0a7f\u0005\u00d0i\u0002\u0a74\u0a75", "\u0005\u0102\u0082\u0002\u0a75\u0a76\u0007\u0119\u0002\u0002\u0a76\u0a7f", "\u0003\u0002\u0002\u0002\u0a77\u0a7f\u0005\u0108\u0085\u0002\u0a78\u0a7f", "\u0005\u00ceh\u0002\u0a79\u0a7b\u0007\u0119\u0002\u0002\u0a7a\u0a79", "\u0003\u0002\u0002\u0002\u0a7b\u0a7c\u0003\u0002\u0002\u0002\u0a7c\u0a7a", "\u0003\u0002\u0002\u0002\u0a7c\u0a7d\u0003\u0002\u0002\u0002\u0a7d\u0a7f", "\u0003\u0002\u0002\u0002\u0a7e\u0a72\u0003\u0002\u0002\u0002\u0a7e\u0a73", "\u0003\u0002\u0002\u0002\u0a7e\u0a74\u0003\u0002\u0002\u0002\u0a7e\u0a77", "\u0003\u0002\u0002\u0002\u0a7e\u0a78\u0003\u0002\u0002\u0002\u0a7e\u0a7a", "\u0003\u0002\u0002\u0002\u0a7f\u00c7\u0003\u0002\u0002\u0002\u0a80\u0a81", "\t \u0002\u0002\u0a81\u00c9\u0003\u0002\u0002\u0002\u0a82\u0a83\t!\u0002", "\u0002\u0a83\u00cb\u0003\u0002\u0002\u0002\u0a84\u0a85\t\"\u0002\u0002", "\u0a85\u00cd\u0003\u0002\u0002\u0002\u0a86\u0a87\t#\u0002\u0002\u0a87", "\u00cf\u0003\u0002\u0002\u0002\u0a88\u0a8b\u0007z\u0002\u0002\u0a89", "\u0a8c\u0005\u00d2j\u0002\u0a8a\u0a8c\u0005\u00d6l\u0002\u0a8b\u0a89", "\u0003\u0002\u0002\u0002\u0a8b\u0a8a\u0003\u0002\u0002\u0002\u0a8b\u0a8c", "\u0003\u0002\u0002\u0002\u0a8c\u00d1\u0003\u0002\u0002\u0002\u0a8d\u0a8f", "\u0005\u00d4k\u0002\u0a8e\u0a90\u0005\u00d8m\u0002\u0a8f\u0a8e\u0003", "\u0002\u0002\u0002\u0a8f\u0a90\u0003\u0002\u0002\u0002\u0a90\u00d3\u0003", "\u0002\u0002\u0002\u0a91\u0a92\u0005\u00dan\u0002\u0a92\u0a93\u0005", "\u0102\u0082\u0002\u0a93\u0a95\u0003\u0002\u0002\u0002\u0a94\u0a91\u0003", "\u0002\u0002\u0002\u0a95\u0a96\u0003\u0002\u0002\u0002\u0a96\u0a94\u0003", "\u0002\u0002\u0002\u0a96\u0a97\u0003\u0002\u0002\u0002\u0a97\u00d5\u0003", "\u0002\u0002\u0002\u0a98\u0a9b\u0005\u00d8m\u0002\u0a99\u0a9c\u0005", "\u00d4k\u0002\u0a9a\u0a9c\u0005\u00d8m\u0002\u0a9b\u0a99\u0003\u0002", "\u0002\u0002\u0a9b\u0a9a\u0003\u0002\u0002\u0002\u0a9b\u0a9c\u0003\u0002", "\u0002\u0002\u0a9c\u00d7\u0003\u0002\u0002\u0002\u0a9d\u0a9e\u0005\u00da", "n\u0002\u0a9e\u0a9f\u0005\u0102\u0082\u0002\u0a9f\u0aa0\u0007\u00e9", "\u0002\u0002\u0aa0\u0aa1\u0005\u0102\u0082\u0002\u0aa1\u00d9\u0003\u0002", "\u0002\u0002\u0aa2\u0aa4\t$\u0002\u0002\u0aa3\u0aa2\u0003\u0002\u0002", "\u0002\u0aa3\u0aa4\u0003\u0002\u0002\u0002\u0aa4\u0aa5\u0003\u0002\u0002", "\u0002\u0aa5\u0aa8\t\u0015\u0002\u0002\u0aa6\u0aa8\u0007\u0119\u0002", "\u0002\u0aa7\u0aa3\u0003\u0002\u0002\u0002\u0aa7\u0aa6\u0003\u0002\u0002", "\u0002\u0aa8\u00db\u0003\u0002\u0002\u0002\u0aa9\u0aad\u0007`\u0002", "\u0002\u0aaa\u0aab\u0007\u000f\u0002\u0002\u0aab\u0aad\u0005\u00fe\u0080", "\u0002\u0aac\u0aa9\u0003\u0002\u0002\u0002\u0aac\u0aaa\u0003\u0002\u0002", "\u0002\u0aad\u00dd\u0003\u0002\u0002\u0002\u0aae\u0aaf\u0007\u0017\u0002", "\u0002\u0aaf\u0ab0\u0007\u010b\u0002\u0002\u0ab0\u0ab1\u0005\u00dep", "\u0002\u0ab1\u0ab2\u0007\u010d\u0002\u0002\u0ab2\u0ad1\u0003\u0002\u0002", "\u0002\u0ab3\u0ab4\u0007\u0090\u0002\u0002\u0ab4\u0ab5\u0007\u010b\u0002", "\u0002\u0ab5\u0ab6\u0005\u00dep\u0002\u0ab6\u0ab7\u0007\u0006\u0002", "\u0002\u0ab7\u0ab8\u0005\u00dep\u0002\u0ab8\u0ab9\u0007\u010d\u0002", "\u0002\u0ab9\u0ad1\u0003\u0002\u0002\u0002\u0aba\u0ac1\u0007\u00de\u0002", "\u0002\u0abb\u0abd\u0007\u010b\u0002\u0002\u0abc\u0abe\u0005\u00e8u", "\u0002\u0abd\u0abc\u0003\u0002\u0002\u0002\u0abd\u0abe\u0003\u0002\u0002", "\u0002\u0abe\u0abf\u0003\u0002\u0002\u0002\u0abf\u0ac2\u0007\u010d\u0002", "\u0002\u0ac0\u0ac2\u0007\u0109\u0002\u0002\u0ac1\u0abb\u0003\u0002\u0002", "\u0002\u0ac1\u0ac0\u0003\u0002\u0002\u0002\u0ac2\u0ad1\u0003\u0002\u0002", "\u0002\u0ac3\u0ace\u0005\u0102\u0082\u0002\u0ac4\u0ac5\u0007\u0004\u0002", "\u0002\u0ac5\u0aca\u0007\u011d\u0002\u0002\u0ac6\u0ac7\u0007\u0006\u0002", "\u0002\u0ac7\u0ac9\u0007\u011d\u0002\u0002\u0ac8\u0ac6\u0003\u0002\u0002", "\u0002\u0ac9\u0acc\u0003\u0002\u0002\u0002\u0aca\u0ac8\u0003\u0002\u0002", "\u0002\u0aca\u0acb\u0003\u0002\u0002\u0002\u0acb\u0acd\u0003\u0002\u0002", "\u0002\u0acc\u0aca\u0003\u0002\u0002\u0002\u0acd\u0acf\u0007\u0005\u0002", "\u0002\u0ace\u0ac4\u0003\u0002\u0002\u0002\u0ace\u0acf\u0003\u0002\u0002", "\u0002\u0acf\u0ad1\u0003\u0002\u0002\u0002\u0ad0\u0aae\u0003\u0002\u0002", "\u0002\u0ad0\u0ab3\u0003\u0002\u0002\u0002\u0ad0\u0aba\u0003\u0002\u0002", "\u0002\u0ad0\u0ac3\u0003\u0002\u0002\u0002\u0ad1\u00df\u0003\u0002\u0002", "\u0002\u0ad2\u0ad7\u0005\u00e2r\u0002\u0ad3\u0ad4\u0007\u0006\u0002", "\u0002\u0ad4\u0ad6\u0005\u00e2r\u0002\u0ad5\u0ad3\u0003\u0002\u0002", "\u0002\u0ad6\u0ad9\u0003\u0002\u0002\u0002\u0ad7\u0ad5\u0003\u0002\u0002", "\u0002\u0ad7\u0ad8\u0003\u0002\u0002\u0002\u0ad8\u00e1\u0003\u0002\u0002", "\u0002\u0ad9\u0ad7\u0003\u0002\u0002\u0002\u0ada\u0adb\u0005\u00aeX", "\u0002\u0adb\u0ade\u0005\u00dep\u0002\u0adc\u0add\u0007\u0098\u0002", "\u0002\u0add\u0adf\u0007\u0099\u0002\u0002\u0ade\u0adc\u0003\u0002\u0002", "\u0002\u0ade\u0adf\u0003\u0002\u0002\u0002\u0adf\u0ae1\u0003\u0002\u0002", "\u0002\u0ae0\u0ae2\u0005 \u0011\u0002\u0ae1\u0ae0\u0003\u0002\u0002", "\u0002\u0ae1\u0ae2\u0003\u0002\u0002\u0002\u0ae2\u0ae4\u0003\u0002\u0002", "\u0002\u0ae3\u0ae5\u0005\u00dco\u0002\u0ae4\u0ae3\u0003\u0002\u0002", "\u0002\u0ae4\u0ae5\u0003\u0002\u0002\u0002\u0ae5\u00e3\u0003\u0002\u0002", "\u0002\u0ae6\u0aeb\u0005\u00e6t\u0002\u0ae7\u0ae8\u0007\u0006\u0002", "\u0002\u0ae8\u0aea\u0005\u00e6t\u0002\u0ae9\u0ae7\u0003\u0002\u0002", "\u0002\u0aea\u0aed\u0003\u0002\u0002\u0002\u0aeb\u0ae9\u0003\u0002\u0002", "\u0002\u0aeb\u0aec\u0003\u0002\u0002\u0002\u0aec\u00e5\u0003\u0002\u0002", "\u0002\u0aed\u0aeb\u0003\u0002\u0002\u0002\u0aee\u0aef\u0005\u00fe\u0080", "\u0002\u0aef\u0af2\u0005\u00dep\u0002\u0af0\u0af1\u0007\u0098\u0002", "\u0002\u0af1\u0af3\u0007\u0099\u0002\u0002\u0af2\u0af0\u0003\u0002\u0002", "\u0002\u0af2\u0af3\u0003\u0002\u0002\u0002\u0af3\u0af5\u0003\u0002\u0002", "\u0002\u0af4\u0af6\u0005 \u0011\u0002\u0af5\u0af4\u0003\u0002\u0002", "\u0002\u0af5\u0af6\u0003\u0002\u0002\u0002\u0af6\u00e7\u0003\u0002\u0002", "\u0002\u0af7\u0afc\u0005\u00eav\u0002\u0af8\u0af9\u0007\u0006\u0002", "\u0002\u0af9\u0afb\u0005\u00eav\u0002\u0afa\u0af8\u0003\u0002\u0002", "\u0002\u0afb\u0afe\u0003\u0002\u0002\u0002\u0afc\u0afa\u0003\u0002\u0002", "\u0002\u0afc\u0afd\u0003\u0002\u0002\u0002\u0afd\u00e9\u0003\u0002\u0002", "\u0002\u0afe\u0afc\u0003\u0002\u0002\u0002\u0aff\u0b00\u0005\u0102\u0082", "\u0002\u0b00\u0b01\u0007\r\u0002\u0002\u0b01\u0b04\u0005\u00dep\u0002", "\u0b02\u0b03\u0007\u0098\u0002\u0002\u0b03\u0b05\u0007\u0099\u0002\u0002", "\u0b04\u0b02\u0003\u0002\u0002\u0002\u0b04\u0b05\u0003\u0002\u0002\u0002", "\u0b05\u0b07\u0003\u0002\u0002\u0002\u0b06\u0b08\u0005 \u0011\u0002", "\u0b07\u0b06\u0003\u0002\u0002\u0002\u0b07\u0b08\u0003\u0002\u0002\u0002", "\u0b08\u00eb\u0003\u0002\u0002\u0002\u0b09\u0b0a\u0007\u0102\u0002\u0002", "\u0b0a\u0b0b\u0005\u00bc_\u0002\u0b0b\u0b0c\u0007\u00e7\u0002\u0002", "\u0b0c\u0b0d\u0005\u00bc_\u0002\u0b0d\u00ed\u0003\u0002\u0002\u0002", "\u0b0e\u0b0f\u0007\u0104\u0002\u0002\u0b0f\u0b14\u0005\u00f0y\u0002", "\u0b10\u0b11\u0007\u0006\u0002\u0002\u0b11\u0b13\u0005\u00f0y\u0002", "\u0b12\u0b10\u0003\u0002\u0002\u0002\u0b13\u0b16\u0003\u0002\u0002\u0002", "\u0b14\u0b12\u0003\u0002\u0002\u0002\u0b14\u0b15\u0003\u0002\u0002\u0002", "\u0b15\u00ef\u0003\u0002\u0002\u0002\u0b16\u0b14\u0003\u0002\u0002\u0002", "\u0b17\u0b18\u0005\u00fe\u0080\u0002\u0b18\u0b19\u0007\u0018\u0002\u0002", "\u0b19\u0b1a\u0005\u00f2z\u0002\u0b1a\u00f1\u0003\u0002\u0002\u0002", "\u0b1b\u0b4a\u0005\u00fe\u0080\u0002\u0b1c\u0b1d\u0007\u0004\u0002\u0002", "\u0b1d\u0b1e\u0005\u00fe\u0080\u0002\u0b1e\u0b1f\u0007\u0005\u0002\u0002", "\u0b1f\u0b4a\u0003\u0002\u0002\u0002\u0b20\u0b43\u0007\u0004\u0002\u0002", "\u0b21\u0b22\u0007(\u0002\u0002\u0b22\u0b23\u0007 \u0002\u0002\u0b23", "\u0b28\u0005\u00bc_\u0002\u0b24\u0b25\u0007\u0006\u0002\u0002\u0b25", "\u0b27\u0005\u00bc_\u0002\u0b26\u0b24\u0003\u0002\u0002\u0002\u0b27", "\u0b2a\u0003\u0002\u0002\u0002\u0b28\u0b26\u0003\u0002\u0002\u0002\u0b28", "\u0b29\u0003\u0002\u0002\u0002\u0b29\u0b44\u0003\u0002\u0002\u0002\u0b2a", "\u0b28\u0003\u0002\u0002\u0002\u0b2b\u0b2c\t%\u0002\u0002\u0b2c\u0b2d", "\u0007 \u0002\u0002\u0b2d\u0b32\u0005\u00bc_\u0002\u0b2e\u0b2f\u0007", "\u0006\u0002\u0002\u0b2f\u0b31\u0005\u00bc_\u0002\u0b30\u0b2e\u0003", "\u0002\u0002\u0002\u0b31\u0b34\u0003\u0002\u0002\u0002\u0b32\u0b30\u0003", "\u0002\u0002\u0002\u0b32\u0b33\u0003\u0002\u0002\u0002\u0b33\u0b36\u0003", "\u0002\u0002\u0002\u0b34\u0b32\u0003\u0002\u0002\u0002\u0b35\u0b2b\u0003", "\u0002\u0002\u0002\u0b35\u0b36\u0003\u0002\u0002\u0002\u0b36\u0b41\u0003", "\u0002\u0002\u0002\u0b37\u0b38\t&\u0002\u0002\u0b38\u0b39\u0007 \u0002", "\u0002\u0b39\u0b3e\u0005X-\u0002\u0b3a\u0b3b\u0007\u0006\u0002\u0002", "\u0b3b\u0b3d\u0005X-\u0002\u0b3c\u0b3a\u0003\u0002\u0002\u0002\u0b3d", "\u0b40\u0003\u0002\u0002\u0002\u0b3e\u0b3c\u0003\u0002\u0002\u0002\u0b3e", "\u0b3f\u0003\u0002\u0002\u0002\u0b3f\u0b42\u0003\u0002\u0002\u0002\u0b40", "\u0b3e\u0003\u0002\u0002\u0002\u0b41\u0b37\u0003\u0002\u0002\u0002\u0b41", "\u0b42\u0003\u0002\u0002\u0002\u0b42\u0b44\u0003\u0002\u0002\u0002\u0b43", "\u0b21\u0003\u0002\u0002\u0002\u0b43\u0b35\u0003\u0002\u0002\u0002\u0b44", "\u0b46\u0003\u0002\u0002\u0002\u0b45\u0b47\u0005\u00f4{\u0002\u0b46", "\u0b45\u0003\u0002\u0002\u0002\u0b46\u0b47\u0003\u0002\u0002\u0002\u0b47", "\u0b48\u0003\u0002\u0002\u0002\u0b48\u0b4a\u0007\u0005\u0002\u0002\u0b49", "\u0b1b\u0003\u0002\u0002\u0002\u0b49\u0b1c\u0003\u0002\u0002\u0002\u0b49", "\u0b20\u0003\u0002\u0002\u0002\u0b4a\u00f3\u0003\u0002\u0002\u0002\u0b4b", "\u0b4c\u0007\u00b6\u0002\u0002\u0b4c\u0b5c\u0005\u00f6|\u0002\u0b4d", "\u0b4e\u0007\u00ca\u0002\u0002\u0b4e\u0b5c\u0005\u00f6|\u0002\u0b4f", "\u0b50\u0007\u00b6\u0002\u0002\u0b50\u0b51\u0007\u001c\u0002\u0002\u0b51", "\u0b52\u0005\u00f6|\u0002\u0b52\u0b53\u0007\u0013\u0002\u0002\u0b53", "\u0b54\u0005\u00f6|\u0002\u0b54\u0b5c\u0003\u0002\u0002\u0002\u0b55", "\u0b56\u0007\u00ca\u0002\u0002\u0b56\u0b57\u0007\u001c\u0002\u0002\u0b57", "\u0b58\u0005\u00f6|\u0002\u0b58\u0b59\u0007\u0013\u0002\u0002\u0b59", "\u0b5a\u0005\u00f6|\u0002\u0b5a\u0b5c\u0003\u0002\u0002\u0002\u0b5b", "\u0b4b\u0003\u0002\u0002\u0002\u0b5b\u0b4d\u0003\u0002\u0002\u0002\u0b5b", "\u0b4f\u0003\u0002\u0002\u0002\u0b5b\u0b55\u0003\u0002\u0002\u0002\u0b5c", "\u00f5\u0003\u0002\u0002\u0002\u0b5d\u0b5e\u0007\u00f4\u0002\u0002\u0b5e", "\u0b65\t\'\u0002\u0002\u0b5f\u0b60\u0007:\u0002\u0002\u0b60\u0b65\u0007", "\u00c9\u0002\u0002\u0b61\u0b62\u0005\u00bc_\u0002\u0b62\u0b63\t\'\u0002", "\u0002\u0b63\u0b65\u0003\u0002\u0002\u0002\u0b64\u0b5d\u0003\u0002\u0002", "\u0002\u0b64\u0b5f\u0003\u0002\u0002\u0002\u0b64\u0b61\u0003\u0002\u0002", "\u0002\u0b65\u00f7\u0003\u0002\u0002\u0002\u0b66\u0b6b\u0005\u00fc\u007f", "\u0002\u0b67\u0b68\u0007\u0006\u0002\u0002\u0b68\u0b6a\u0005\u00fc\u007f", "\u0002\u0b69\u0b67\u0003\u0002\u0002\u0002\u0b6a\u0b6d\u0003\u0002\u0002", "\u0002\u0b6b\u0b69\u0003\u0002\u0002\u0002\u0b6b\u0b6c\u0003\u0002\u0002", "\u0002\u0b6c\u00f9\u0003\u0002\u0002\u0002\u0b6d\u0b6b\u0003\u0002\u0002", "\u0002\u0b6e\u0b73\u0005\u00fc\u007f\u0002\u0b6f\u0b73\u0007^\u0002", "\u0002\u0b70\u0b73\u0007\u0084\u0002\u0002\u0b71\u0b73\u0007\u00c3\u0002", "\u0002\u0b72\u0b6e\u0003\u0002\u0002\u0002\u0b72\u0b6f\u0003\u0002\u0002", "\u0002\u0b72\u0b70\u0003\u0002\u0002\u0002\u0b72\u0b71\u0003\u0002\u0002", "\u0002\u0b73\u00fb\u0003\u0002\u0002\u0002\u0b74\u0b79\u0005\u0102\u0082", "\u0002\u0b75\u0b76\u0007\u0007\u0002\u0002\u0b76\u0b78\u0005\u0102\u0082", "\u0002\u0b77\u0b75\u0003\u0002\u0002\u0002\u0b78\u0b7b\u0003\u0002\u0002", "\u0002\u0b79\u0b77\u0003\u0002\u0002\u0002\u0b79\u0b7a\u0003\u0002\u0002", "\u0002\u0b7a\u00fd\u0003\u0002\u0002\u0002\u0b7b\u0b79\u0003\u0002\u0002", "\u0002\u0b7c\u0b7d\u0005\u0102\u0082\u0002\u0b7d\u0b7e\u0005\u0100\u0081", "\u0002\u0b7e\u00ff\u0003\u0002\u0002\u0002\u0b7f\u0b80\u0007\u0110\u0002", "\u0002\u0b80\u0b82\u0005\u0102\u0082\u0002\u0b81\u0b7f\u0003\u0002\u0002", "\u0002\u0b82\u0b83\u0003\u0002\u0002\u0002\u0b83\u0b81\u0003\u0002\u0002", "\u0002\u0b83\u0b84\u0003\u0002\u0002\u0002\u0b84\u0b87\u0003\u0002\u0002", "\u0002\u0b85\u0b87\u0003\u0002\u0002\u0002\u0b86\u0b81\u0003\u0002\u0002", "\u0002\u0b86\u0b85\u0003\u0002\u0002\u0002\u0b87\u0101\u0003\u0002\u0002", "\u0002\u0b88\u0b8c\u0005\u0104\u0083\u0002\u0b89\u0b8a\u0006\u0082\u0012", "\u0002\u0b8a\u0b8c\u0005\u010e\u0088\u0002\u0b8b\u0b88\u0003\u0002\u0002", "\u0002\u0b8b\u0b89\u0003\u0002\u0002\u0002\u0b8c\u0103\u0003\u0002\u0002", "\u0002\u0b8d\u0b94\u0007\u0123\u0002\u0002\u0b8e\u0b94\u0005\u0106\u0084", "\u0002\u0b8f\u0b90\u0006\u0083\u0013\u0002\u0b90\u0b94\u0005\u010c\u0087", "\u0002\u0b91\u0b92\u0006\u0083\u0014\u0002\u0b92\u0b94\u0005\u0110\u0089", "\u0002\u0b93\u0b8d\u0003\u0002\u0002\u0002\u0b93\u0b8e\u0003\u0002\u0002", "\u0002\u0b93\u0b8f\u0003\u0002\u0002\u0002\u0b93\u0b91\u0003\u0002\u0002", "\u0002\u0b94\u0105\u0003\u0002\u0002\u0002\u0b95\u0b96\u0007\u0124\u0002", "\u0002\u0b96\u0107\u0003\u0002\u0002\u0002\u0b97\u0b99\u0006\u0085\u0015", "\u0002\u0b98\u0b9a\u0007\u0110\u0002\u0002\u0b99\u0b98\u0003\u0002\u0002", "\u0002\u0b99\u0b9a\u0003\u0002\u0002\u0002\u0b9a\u0b9b\u0003\u0002\u0002", "\u0002\u0b9b\u0bc3\u0007\u011e\u0002\u0002\u0b9c\u0b9e\u0006\u0085\u0016", "\u0002\u0b9d\u0b9f\u0007\u0110\u0002\u0002\u0b9e\u0b9d\u0003\u0002\u0002", "\u0002\u0b9e\u0b9f\u0003\u0002\u0002\u0002\u0b9f\u0ba0\u0003\u0002\u0002", "\u0002\u0ba0\u0bc3\u0007\u011f\u0002\u0002\u0ba1\u0ba3\u0006\u0085\u0017", "\u0002\u0ba2\u0ba4\u0007\u0110\u0002\u0002\u0ba3\u0ba2\u0003\u0002\u0002", "\u0002\u0ba3\u0ba4\u0003\u0002\u0002\u0002\u0ba4\u0ba5\u0003\u0002\u0002", "\u0002\u0ba5\u0bc3\t(\u0002\u0002\u0ba6\u0ba8\u0007\u0110\u0002\u0002", "\u0ba7\u0ba6\u0003\u0002\u0002\u0002\u0ba7\u0ba8\u0003\u0002\u0002\u0002", "\u0ba8\u0ba9\u0003\u0002\u0002\u0002\u0ba9\u0bc3\u0007\u011d\u0002\u0002", "\u0baa\u0bac\u0007\u0110\u0002\u0002\u0bab\u0baa\u0003\u0002\u0002\u0002", "\u0bab\u0bac\u0003\u0002\u0002\u0002\u0bac\u0bad\u0003\u0002\u0002\u0002", "\u0bad\u0bc3\u0007\u011a\u0002\u0002\u0bae\u0bb0\u0007\u0110\u0002\u0002", "\u0baf\u0bae\u0003\u0002\u0002\u0002\u0baf\u0bb0\u0003\u0002\u0002\u0002", "\u0bb0\u0bb1\u0003\u0002\u0002\u0002\u0bb1\u0bc3\u0007\u011b\u0002\u0002", "\u0bb2\u0bb4\u0007\u0110\u0002\u0002\u0bb3\u0bb2\u0003\u0002\u0002\u0002", "\u0bb3\u0bb4\u0003\u0002\u0002\u0002\u0bb4\u0bb5\u0003\u0002\u0002\u0002", "\u0bb5\u0bc3\u0007\u011c\u0002\u0002\u0bb6\u0bb8\u0007\u0110\u0002\u0002", "\u0bb7\u0bb6\u0003\u0002\u0002\u0002\u0bb7\u0bb8\u0003\u0002\u0002\u0002", "\u0bb8\u0bb9\u0003\u0002\u0002\u0002\u0bb9\u0bc3\u0007\u0121\u0002\u0002", "\u0bba\u0bbc\u0007\u0110\u0002\u0002\u0bbb\u0bba\u0003\u0002\u0002\u0002", "\u0bbb\u0bbc\u0003\u0002\u0002\u0002\u0bbc\u0bbd\u0003\u0002\u0002\u0002", "\u0bbd\u0bc3\u0007\u0120\u0002\u0002\u0bbe\u0bc0\u0007\u0110\u0002\u0002", "\u0bbf\u0bbe\u0003\u0002\u0002\u0002\u0bbf\u0bc0\u0003\u0002\u0002\u0002", "\u0bc0\u0bc1\u0003\u0002\u0002\u0002\u0bc1\u0bc3\u0007\u0122\u0002\u0002", "\u0bc2\u0b97\u0003\u0002\u0002\u0002\u0bc2\u0b9c\u0003\u0002\u0002\u0002", "\u0bc2\u0ba1\u0003\u0002\u0002\u0002\u0bc2\u0ba7\u0003\u0002\u0002\u0002", "\u0bc2\u0bab\u0003\u0002\u0002\u0002\u0bc2\u0baf\u0003\u0002\u0002\u0002", "\u0bc2\u0bb3\u0003\u0002\u0002\u0002\u0bc2\u0bb7\u0003\u0002\u0002\u0002", "\u0bc2\u0bbb\u0003\u0002\u0002\u0002\u0bc2\u0bbf\u0003\u0002\u0002\u0002", "\u0bc3\u0109\u0003\u0002\u0002\u0002\u0bc4\u0bc5\u0007\u00f2\u0002\u0002", "\u0bc5\u0bcc\u0005\u00dep\u0002\u0bc6\u0bcc\u0005 \u0011\u0002\u0bc7", "\u0bcc\u0005\u00dco\u0002\u0bc8\u0bc9\t)\u0002\u0002\u0bc9\u0bca\u0007", "\u0098\u0002\u0002\u0bca\u0bcc\u0007\u0099\u0002\u0002\u0bcb\u0bc4\u0003", "\u0002\u0002\u0002\u0bcb\u0bc6\u0003\u0002\u0002\u0002\u0bcb\u0bc7\u0003", "\u0002\u0002\u0002\u0bcb\u0bc8\u0003\u0002\u0002\u0002\u0bcc\u010b\u0003", "\u0002\u0002\u0002\u0bcd\u0bce\t*\u0002\u0002\u0bce\u010d\u0003\u0002", "\u0002\u0002\u0bcf\u0bd0\t+\u0002\u0002\u0bd0\u010f\u0003\u0002\u0002", "\u0002\u0bd1\u0bd2\t,\u0002\u0002\u0bd2\u0111\u0003\u0002\u0002\u0002", "\u018b\u0119\u012f\u0134\u013c\u0144\u0146\u015a\u015e\u0164\u0167\u016a", "\u0171\u0176\u0179\u0180\u018c\u0195\u0197\u019b\u019e\u01a5\u01b0\u01b2", "\u01ba\u01bf\u01c2\u01c8\u01d3\u0213\u021c\u0220\u0226\u022a\u022f\u0235", "\u0241\u0249\u024f\u025c\u0261\u0271\u0278\u027c\u0282\u0291\u0295\u029b", "\u02a1\u02a4\u02a7\u02ad\u02b1\u02b9\u02bb\u02c4\u02c7\u02d0\u02d5\u02db", "\u02e2\u02e5\u02eb\u02f6\u02f9\u02fd\u0302\u0307\u030e\u0311\u0314\u031b", "\u0320\u0329\u0331\u0337\u033a\u033d\u0343\u0347\u034b\u034f\u0351\u0359", "\u0361\u0367\u036d\u0370\u0374\u0377\u037b\u0397\u039a\u039e\u03a4\u03a7", "\u03aa\u03b0\u03b8\u03bd\u03c3\u03c9\u03d5\u03d8\u03df\u03f0\u03f9\u03fc", "\u0402\u040b\u0412\u0415\u041f\u0423\u042a\u049e\u04a6\u04ae\u04b7\u04c1", "\u04c5\u04c8\u04ce\u04d4\u04e0\u04ec\u04f1\u04fa\u0502\u0509\u050b\u0510", "\u0514\u0519\u051e\u0523\u0526\u052b\u052f\u0534\u0536\u053a\u0543\u054b", "\u0554\u055b\u0564\u0569\u056c\u057f\u0581\u058a\u0591\u0594\u059b\u059f", "\u05a5\u05ad\u05b8\u05c3\u05ca\u05d0\u05dd\u05e4\u05eb\u05f7\u05ff\u0605", "\u0608\u0611\u0614\u061d\u0620\u0629\u062c\u0635\u0638\u063b\u0640\u0642", "\u064e\u0655\u065c\u065f\u0661\u066d\u0671\u0675\u067b\u067f\u0687\u068b", "\u068e\u0691\u0694\u0698\u069c\u069f\u06a3\u06a8\u06ac\u06af\u06b2\u06b5", "\u06b7\u06c3\u06c6\u06ca\u06d4\u06d8\u06da\u06dd\u06e1\u06e7\u06eb\u06f6", "\u0700\u070c\u071b\u0720\u0727\u0737\u073c\u0749\u074e\u0756\u075c\u0760", "\u0769\u0778\u077d\u0789\u078e\u0796\u0799\u079d\u07ab\u07b8\u07bd\u07c1", "\u07c4\u07c9\u07d2\u07d5\u07da\u07e1\u07e4\u07ec\u07f3\u07fa\u07fd\u0802", "\u0805\u080a\u080e\u0811\u0814\u081a\u081f\u0824\u0836\u0838\u083b\u0846", "\u084f\u0856\u085e\u0865\u0869\u0871\u0879\u087f\u0887\u0893\u0896\u089c", "\u08a0\u08a2\u08ab\u08b7\u08b9\u08c0\u08c7\u08cd\u08d3\u08d5\u08dc\u08e4", "\u08ea\u08f0\u08f4\u08f6\u08fd\u0906\u0913\u0918\u091c\u092a\u092c\u0934", "\u0936\u093a\u0942\u094b\u0951\u0959\u095e\u096a\u096f\u0972\u0978\u097c", "\u0981\u0986\u098b\u0991\u09a6\u09a8\u09b1\u09b5\u09be\u09c2\u09d4\u09d7", "\u09df\u09e8\u09ff\u0a0a\u0a11\u0a14\u0a1d\u0a21\u0a2d\u0a46\u0a4d\u0a50", "\u0a5f\u0a63\u0a6d\u0a6f\u0a7c\u0a7e\u0a8b\u0a8f\u0a96\u0a9b\u0aa3\u0aa7", "\u0aac\u0abd\u0ac1\u0aca\u0ace\u0ad0\u0ad7\u0ade\u0ae1\u0ae4\u0aeb\u0af2", "\u0af5\u0afc\u0b04\u0b07\u0b14\u0b28\u0b32\u0b35\u0b3e\u0b41\u0b43\u0b46", "\u0b49\u0b5b\u0b64\u0b6b\u0b72\u0b79\u0b83\u0b86\u0b8b\u0b93\u0b99\u0b9e", "\u0ba3\u0ba7\u0bab\u0baf\u0bb3\u0bb7\u0bbb\u0bbf\u0bc2\u0bcb"].join(""); var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN); var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); }); var sharedContextCache = new antlr4.PredictionContextCache(); var literalNames = [ null, "';'", "'('", "')'", "','", "'.'", "'/*+'", "'*/'", "'->'", "'['", "']'", "':'", "'ADD'", "'AFTER'", "'ALL'", "'ALTER'", "'ANALYZE'", "'AND'", "'ANTI'", "'ANY'", "'ARCHIVE'", "'ARRAY'", "'AS'", "'ASC'", "'AT'", "'AUTHORIZATION'", "'BETWEEN'", "'BOTH'", "'BUCKET'", "'BUCKETS'", "'BY'", "'CACHE'", "'CASCADE'", "'CASE'", "'CAST'", "'CHANGE'", "'CHECK'", "'CLEAR'", "'CLUSTER'", "'CLUSTERED'", "'CODEGEN'", "'COLLATE'", "'COLLECTION'", "'COLUMN'", "'COLUMNS'", "'COMMENT'", "'COMMIT'", "'COMPACT'", "'COMPACTIONS'", "'COMPUTE'", "'CONCATENATE'", "'CONSTRAINT'", "'COST'", "'CREATE'", "'CROSS'", "'CUBE'", "'CURRENT'", "'CURRENT_DATE'", "'CURRENT_TIME'", "'CURRENT_TIMESTAMP'", "'CURRENT_USER'", "'DATA'", "'DATABASE'", null, "'DBPROPERTIES'", "'DEFINED'", "'DELETE'", "'DELIMITED'", "'DESC'", "'DESCRIBE'", "'DFS'", "'DIRECTORIES'", "'DIRECTORY'", "'DISTINCT'", "'DISTRIBUTE'", "'DIV'", "'DROP'", "'ELSE'", "'END'", "'ESCAPE'", "'ESCAPED'", "'EXCEPT'", "'EXCHANGE'", "'EXISTS'", "'EXPLAIN'", "'EXPORT'", "'EXTENDED'", "'EXTERNAL'", "'EXTRACT'", "'FALSE'", "'FETCH'", "'FIELDS'", "'FILTER'", "'FILEFORMAT'", "'FIRST'", "'FOLLOWING'", "'FOR'", "'FOREIGN'", "'FORMAT'", "'FORMATTED'", "'FROM'", "'FULL'", "'FUNCTION'", "'FUNCTIONS'", "'GLOBAL'", "'GRANT'", "'GROUP'", "'GROUPING'", "'HAVING'", "'IF'", "'IGNORE'", "'IMPORT'", "'IN'", "'INDEX'", "'INDEXES'", "'INNER'", "'INPATH'", "'INPUTFORMAT'", "'INSERT'", "'INTERSECT'", "'INTERVAL'", "'INTO'", "'IS'", "'ITEMS'", "'JOIN'", "'KEYS'", "'LAST'", "'LATERAL'", "'LAZY'", "'LEADING'", "'LEFT'", "'LIKE'", "'LIMIT'", "'LINES'", "'LIST'", "'LOAD'", "'LOCAL'", "'LOCATION'", "'LOCK'", "'LOCKS'", "'LOGICAL'", "'MACRO'", "'MAP'", "'MATCHED'", "'MERGE'", "'MSCK'", "'NAMESPACE'", "'NAMESPACES'", "'NATURAL'", "'NO'", null, "'NULL'", "'NULLS'", "'OF'", "'ON'", "'ONLY'", "'OPTION'", "'OPTIONS'", "'OR'", "'ORDER'", "'OUT'", "'OUTER'", "'OUTPUTFORMAT'", "'OVER'", "'OVERLAPS'", "'OVERLAY'", "'OVERWRITE'", "'PARTITION'", "'PARTITIONED'", "'PARTITIONS'", "'PERCENT'", "'PIVOT'", "'PLACING'", "'POSITION'", "'PRECEDING'", "'PRIMARY'", "'PRINCIPALS'", "'PROPERTIES'", "'PURGE'", "'QUERY'", "'RANGE'", "'RECORDREADER'", "'RECORDWRITER'", "'RECOVER'", "'REDUCE'", "'REFERENCES'", "'REFRESH'", "'RENAME'", "'REPAIR'", "'REPLACE'", "'RESET'", "'RESTRICT'", "'REVOKE'", "'RIGHT'", null, "'ROLE'", "'ROLES'", "'ROLLBACK'", "'ROLLUP'", "'ROW'", "'ROWS'", "'SCHEMA'", "'SELECT'", "'SEMI'", "'SEPARATED'", "'SERDE'", "'SERDEPROPERTIES'", "'SESSION_USER'", "'SET'", "'MINUS'", "'SETS'", "'SHOW'", "'SKEWED'", "'SOME'", "'SORT'", "'SORTED'", "'START'", "'STATISTICS'", "'STORED'", "'STRATIFY'", "'STRUCT'", "'SUBSTR'", "'SUBSTRING'", "'TABLE'", "'TABLES'", "'TABLESAMPLE'", "'TBLPROPERTIES'", null, "'TERMINATED'", "'THEN'", "'TIME'", "'TO'", "'TOUCH'", "'TRAILING'", "'TRANSACTION'", "'TRANSACTIONS'", "'TRANSFORM'", "'TRIM'", "'TRUE'", "'TRUNCATE'", "'TYPE'", "'UNARCHIVE'", "'UNBOUNDED'", "'UNCACHE'", "'UNION'", "'UNIQUE'", "'UNKNOWN'", "'UNLOCK'", "'UNSET'", "'UPDATE'", "'USE'", "'USER'", "'USING'", "'VALUES'", "'VIEW'", "'VIEWS'", "'WHEN'", "'WHERE'", "'WINDOW'", "'WITH'", "'ZONE'", null, "'<=>'", "'<>'", "'!='", "'<'", null, "'>'", null, "'+'", "'-'", "'*'", "'/'", "'%'", "'~'", "'&'", "'|'", "'||'", "'^'" ]; var symbolicNames = [ null, null, null, null, null, null, null, null, null, null, null, null, "ADD", "AFTER", "ALL", "ALTER", "ANALYZE", "AND", "ANTI", "ANY", "ARCHIVE", "ARRAY", "AS", "ASC", "AT", "AUTHORIZATION", "BETWEEN", "BOTH", "BUCKET", "BUCKETS", "BY", "CACHE", "CASCADE", "CASE", "CAST", "CHANGE", "CHECK", "CLEAR", "CLUSTER", "CLUSTERED", "CODEGEN", "COLLATE", "COLLECTION", "COLUMN", "COLUMNS", "COMMENT", "COMMIT", "COMPACT", "COMPACTIONS", "COMPUTE", "CONCATENATE", "CONSTRAINT", "COST", "CREATE", "CROSS", "CUBE", "CURRENT", "CURRENT_DATE", "CURRENT_TIME", "CURRENT_TIMESTAMP", "CURRENT_USER", "DATA", "DATABASE", "DATABASES", "DBPROPERTIES", "DEFINED", "DELETE", "DELIMITED", "DESC", "DESCRIBE", "DFS", "DIRECTORIES", "DIRECTORY", "DISTINCT", "DISTRIBUTE", "DIV", "DROP", "ELSE", "END", "ESCAPE", "ESCAPED", "EXCEPT", "EXCHANGE", "EXISTS", "EXPLAIN", "EXPORT", "EXTENDED", "EXTERNAL", "EXTRACT", "FALSE", "FETCH", "FIELDS", "FILTER", "FILEFORMAT", "FIRST", "FOLLOWING", "FOR", "FOREIGN", "FORMAT", "FORMATTED", "FROM", "FULL", "FUNCTION", "FUNCTIONS", "GLOBAL", "GRANT", "GROUP", "GROUPING", "HAVING", "IF", "IGNORE", "IMPORT", "IN", "INDEX", "INDEXES", "INNER", "INPATH", "INPUTFORMAT", "INSERT", "INTERSECT", "INTERVAL", "INTO", "IS", "ITEMS", "JOIN", "KEYS", "LAST", "LATERAL", "LAZY", "LEADING", "LEFT", "LIKE", "LIMIT", "LINES", "LIST", "LOAD", "LOCAL", "LOCATION", "LOCK", "LOCKS", "LOGICAL", "MACRO", "MAP", "MATCHED", "MERGE", "MSCK", "NAMESPACE", "NAMESPACES", "NATURAL", "NO", "NOT", "NULL", "NULLS", "OF", "ON", "ONLY", "OPTION", "OPTIONS", "OR", "ORDER", "OUT", "OUTER", "OUTPUTFORMAT", "OVER", "OVERLAPS", "OVERLAY", "OVERWRITE", "PARTITION", "PARTITIONED", "PARTITIONS", "PERCENTLIT", "PIVOT", "PLACING", "POSITION", "PRECEDING", "PRIMARY", "PRINCIPALS", "PROPERTIES", "PURGE", "QUERY", "RANGE", "RECORDREADER", "RECORDWRITER", "RECOVER", "REDUCE", "REFERENCES", "REFRESH", "RENAME", "REPAIR", "REPLACE", "RESET", "RESTRICT", "REVOKE", "RIGHT", "RLIKE", "ROLE", "ROLES", "ROLLBACK", "ROLLUP", "ROW", "ROWS", "SCHEMA", "SELECT", "SEMI", "SEPARATED", "SERDE", "SERDEPROPERTIES", "SESSION_USER", "SET", "SETMINUS", "SETS", "SHOW", "SKEWED", "SOME", "SORT", "SORTED", "START", "STATISTICS", "STORED", "STRATIFY", "STRUCT", "SUBSTR", "SUBSTRING", "TABLE", "TABLES", "TABLESAMPLE", "TBLPROPERTIES", "TEMPORARY", "TERMINATED", "THEN", "TIME", "TO", "TOUCH", "TRAILING", "TRANSACTION", "TRANSACTIONS", "TRANSFORM", "TRIM", "TRUE", "TRUNCATE", "TYPE", "UNARCHIVE", "UNBOUNDED", "UNCACHE", "UNION", "UNIQUE", "UNKNOWN", "UNLOCK", "UNSET", "UPDATE", "USE", "USER", "USING", "VALUES", "VIEW", "VIEWS", "WHEN", "WHERE", "WINDOW", "WITH", "ZONE", "EQ", "NSEQ", "NEQ", "NEQJ", "LT", "LTE", "GT", "GTE", "PLUS", "MINUS", "ASTERISK", "SLASH", "PERCENT", "TILDE", "AMPERSAND", "PIPE", "CONCAT_PIPE", "HAT", "STRING", "BIGINT_LITERAL", "SMALLINT_LITERAL", "TINYINT_LITERAL", "INTEGER_VALUE", "EXPONENT_VALUE", "DECIMAL_VALUE", "FLOAT_LITERAL", "DOUBLE_LITERAL", "BIGDECIMAL_LITERAL", "IDENTIFIER", "BACKQUOTED_IDENTIFIER", "SIMPLE_COMMENT", "BRACKETED_COMMENT", "WS", "UNRECOGNIZED" ]; var ruleNames = [ "program", "singleStatement", "singleExpression", "singleTableIdentifier", "singleMultipartIdentifier", "singleDataType", "singleTableSchema", "statement", "configKey", "unsupportedHiveNativeCommands", "createTableHeader", "replaceTableHeader", "bucketSpec", "skewSpec", "locationSpec", "commentSpec", "query", "insertInto", "partitionSpecLocation", "partitionSpec", "partitionVal", "namespace", "describeFuncName", "describeColName", "ctes", "namedQuery", "tableProvider", "createTableClauses", "tablePropertyList", "tableProperty", "tablePropertyKey", "tablePropertyValue", "constantList", "nestedConstantList", "createFileFormat", "fileFormat", "storageHandler", "resource", "dmlStatementNoWith", "queryOrganization", "multiInsertQueryBody", "queryTerm", "queryPrimary", "sortItem", "fromStatement", "fromStatementBody", "querySpecification", "transformClause", "selectClause", "setClause", "matchedClause", "notMatchedClause", "matchedAction", "notMatchedAction", "assignmentList", "assignment", "whereClause", "havingClause", "hint", "hintStatement", "fromClause", "aggregationClause", "groupingSet", "pivotClause", "pivotColumn", "pivotValue", "lateralView", "setQuantifier", "relation", "joinRelation", "joinType", "joinCriteria", "sample", "sampleMethod", "identifierList", "identifierSeq", "orderedIdentifierList", "orderedIdentifier", "identifierCommentList", "identifierComment", "relationPrimary", "inlineTable", "functionTable", "tableAlias", "rowFormat", "multipartIdentifierList", "multipartIdentifier", "tableIdentifier", "namedExpression", "namedExpressionSeq", "transformList", "transform", "transformArgument", "expression", "booleanExpression", "predicate", "valueExpression", "primaryExpression", "constant", "comparisonOperator", "arithmeticOperator", "predicateOperator", "booleanValue", "interval", "errorCapturingMultiUnitsInterval", "multiUnitsInterval", "errorCapturingUnitToUnitInterval", "unitToUnitInterval", "intervalValue", "colPosition", "dataType", "qualifiedColTypeWithPositionList", "qualifiedColTypeWithPosition", "colTypeList", "colType", "complexColTypeList", "complexColType", "whenClause", "windowClause", "namedWindow", "windowSpec", "windowFrame", "frameBound", "qualifiedNameList", "functionName", "qualifiedName", "errorCapturingIdentifier", "errorCapturingIdentifierExtra", "identifier", "strictIdentifier", "quotedIdentifier", "number", "alterColumnAction", "ansiNonReserved", "strictNonReserved", "nonReserved" ]; function SparkSqlParser (input) { antlr4.Parser.call(this, input); this._interp = new antlr4.atn.ParserATNSimulator(this, atn, decisionsToDFA, sharedContextCache); this.ruleNames = ruleNames; this.literalNames = literalNames; this.symbolicNames = symbolicNames; /** * When false, INTERSECT is given the greater precedence over the other set * operations (UNION, EXCEPT and MINUS) as per the SQL standard. */ // public boolean legacy_setops_precedence_enbled = false; /** * When false, a literal with an exponent would be converted into * double type rather than decimal type. */ // public boolean legacy_exponent_literal_as_decimal_enabled = false; global.legacy_exponent_literal_as_decimal_enabled = false; /** * When true, the behavior of keywords follows ANSI SQL standard. */ // public boolean SQL_standard_keyword_behavior = false; global.legacy_setops_precedence_enbled = false; global.legacy_exponent_literal_as_decimal_enabled = false; global.SQL_standard_keyword_behavior = false; return this; } SparkSqlParser.prototype = Object.create(antlr4.Parser.prototype); SparkSqlParser.prototype.constructor = SparkSqlParser; Object.defineProperty(SparkSqlParser.prototype, "atn", { get : function() { return atn; } }); SparkSqlParser.EOF = antlr4.Token.EOF; SparkSqlParser.T__0 = 1; SparkSqlParser.T__1 = 2; SparkSqlParser.T__2 = 3; SparkSqlParser.T__3 = 4; SparkSqlParser.T__4 = 5; SparkSqlParser.T__5 = 6; SparkSqlParser.T__6 = 7; SparkSqlParser.T__7 = 8; SparkSqlParser.T__8 = 9; SparkSqlParser.T__9 = 10; SparkSqlParser.T__10 = 11; SparkSqlParser.ADD = 12; SparkSqlParser.AFTER = 13; SparkSqlParser.ALL = 14; SparkSqlParser.ALTER = 15; SparkSqlParser.ANALYZE = 16; SparkSqlParser.AND = 17; SparkSqlParser.ANTI = 18; SparkSqlParser.ANY = 19; SparkSqlParser.ARCHIVE = 20; SparkSqlParser.ARRAY = 21; SparkSqlParser.AS = 22; SparkSqlParser.ASC = 23; SparkSqlParser.AT = 24; SparkSqlParser.AUTHORIZATION = 25; SparkSqlParser.BETWEEN = 26; SparkSqlParser.BOTH = 27; SparkSqlParser.BUCKET = 28; SparkSqlParser.BUCKETS = 29; SparkSqlParser.BY = 30; SparkSqlParser.CACHE = 31; SparkSqlParser.CASCADE = 32; SparkSqlParser.CASE = 33; SparkSqlParser.CAST = 34; SparkSqlParser.CHANGE = 35; SparkSqlParser.CHECK = 36; SparkSqlParser.CLEAR = 37; SparkSqlParser.CLUSTER = 38; SparkSqlParser.CLUSTERED = 39; SparkSqlParser.CODEGEN = 40; SparkSqlParser.COLLATE = 41; SparkSqlParser.COLLECTION = 42; SparkSqlParser.COLUMN = 43; SparkSqlParser.COLUMNS = 44; SparkSqlParser.COMMENT = 45; SparkSqlParser.COMMIT = 46; SparkSqlParser.COMPACT = 47; SparkSqlParser.COMPACTIONS = 48; SparkSqlParser.COMPUTE = 49; SparkSqlParser.CONCATENATE = 50; SparkSqlParser.CONSTRAINT = 51; SparkSqlParser.COST = 52; SparkSqlParser.CREATE = 53; SparkSqlParser.CROSS = 54; SparkSqlParser.CUBE = 55; SparkSqlParser.CURRENT = 56; SparkSqlParser.CURRENT_DATE = 57; SparkSqlParser.CURRENT_TIME = 58; SparkSqlParser.CURRENT_TIMESTAMP = 59; SparkSqlParser.CURRENT_USER = 60; SparkSqlParser.DATA = 61; SparkSqlParser.DATABASE = 62; SparkSqlParser.DATABASES = 63; SparkSqlParser.DBPROPERTIES = 64; SparkSqlParser.DEFINED = 65; SparkSqlParser.DELETE = 66; SparkSqlParser.DELIMITED = 67; SparkSqlParser.DESC = 68; SparkSqlParser.DESCRIBE = 69; SparkSqlParser.DFS = 70; SparkSqlParser.DIRECTORIES = 71; SparkSqlParser.DIRECTORY = 72; SparkSqlParser.DISTINCT = 73; SparkSqlParser.DISTRIBUTE = 74; SparkSqlParser.DIV = 75; SparkSqlParser.DROP = 76; SparkSqlParser.ELSE = 77; SparkSqlParser.END = 78; SparkSqlParser.ESCAPE = 79; SparkSqlParser.ESCAPED = 80; SparkSqlParser.EXCEPT = 81; SparkSqlParser.EXCHANGE = 82; SparkSqlParser.EXISTS = 83; SparkSqlParser.EXPLAIN = 84; SparkSqlParser.EXPORT = 85; SparkSqlParser.EXTENDED = 86; SparkSqlParser.EXTERNAL = 87; SparkSqlParser.EXTRACT = 88; SparkSqlParser.FALSE = 89; SparkSqlParser.FETCH = 90; SparkSqlParser.FIELDS = 91; SparkSqlParser.FILTER = 92; SparkSqlParser.FILEFORMAT = 93; SparkSqlParser.FIRST = 94; SparkSqlParser.FOLLOWING = 95; SparkSqlParser.FOR = 96; SparkSqlParser.FOREIGN = 97; SparkSqlParser.FORMAT = 98; SparkSqlParser.FORMATTED = 99; SparkSqlParser.FROM = 100; SparkSqlParser.FULL = 101; SparkSqlParser.FUNCTION = 102; SparkSqlParser.FUNCTIONS = 103; SparkSqlParser.GLOBAL = 104; SparkSqlParser.GRANT = 105; SparkSqlParser.GROUP = 106; SparkSqlParser.GROUPING = 107; SparkSqlParser.HAVING = 108; SparkSqlParser.IF = 109; SparkSqlParser.IGNORE = 110; SparkSqlParser.IMPORT = 111; SparkSqlParser.IN = 112; SparkSqlParser.INDEX = 113; SparkSqlParser.INDEXES = 114; SparkSqlParser.INNER = 115; SparkSqlParser.INPATH = 116; SparkSqlParser.INPUTFORMAT = 117; SparkSqlParser.INSERT = 118; SparkSqlParser.INTERSECT = 119; SparkSqlParser.INTERVAL = 120; SparkSqlParser.INTO = 121; SparkSqlParser.IS = 122; SparkSqlParser.ITEMS = 123; SparkSqlParser.JOIN = 124; SparkSqlParser.KEYS = 125; SparkSqlParser.LAST = 126; SparkSqlParser.LATERAL = 127; SparkSqlParser.LAZY = 128; SparkSqlParser.LEADING = 129; SparkSqlParser.LEFT = 130; SparkSqlParser.LIKE = 131; SparkSqlParser.LIMIT = 132; SparkSqlParser.LINES = 133; SparkSqlParser.LIST = 134; SparkSqlParser.LOAD = 135; SparkSqlParser.LOCAL = 136; SparkSqlParser.LOCATION = 137; SparkSqlParser.LOCK = 138; SparkSqlParser.LOCKS = 139; SparkSqlParser.LOGICAL = 140; SparkSqlParser.MACRO = 141; SparkSqlParser.MAP = 142; SparkSqlParser.MATCHED = 143; SparkSqlParser.MERGE = 144; SparkSqlParser.MSCK = 145; SparkSqlParser.NAMESPACE = 146; SparkSqlParser.NAMESPACES = 147; SparkSqlParser.NATURAL = 148; SparkSqlParser.NO = 149; SparkSqlParser.NOT = 150; SparkSqlParser.NULL = 151; SparkSqlParser.NULLS = 152; SparkSqlParser.OF = 153; SparkSqlParser.ON = 154; SparkSqlParser.ONLY = 155; SparkSqlParser.OPTION = 156; SparkSqlParser.OPTIONS = 157; SparkSqlParser.OR = 158; SparkSqlParser.ORDER = 159; SparkSqlParser.OUT = 160; SparkSqlParser.OUTER = 161; SparkSqlParser.OUTPUTFORMAT = 162; SparkSqlParser.OVER = 163; SparkSqlParser.OVERLAPS = 164; SparkSqlParser.OVERLAY = 165; SparkSqlParser.OVERWRITE = 166; SparkSqlParser.PARTITION = 167; SparkSqlParser.PARTITIONED = 168; SparkSqlParser.PARTITIONS = 169; SparkSqlParser.PERCENTLIT = 170; SparkSqlParser.PIVOT = 171; SparkSqlParser.PLACING = 172; SparkSqlParser.POSITION = 173; SparkSqlParser.PRECEDING = 174; SparkSqlParser.PRIMARY = 175; SparkSqlParser.PRINCIPALS = 176; SparkSqlParser.PROPERTIES = 177; SparkSqlParser.PURGE = 178; SparkSqlParser.QUERY = 179; SparkSqlParser.RANGE = 180; SparkSqlParser.RECORDREADER = 181; SparkSqlParser.RECORDWRITER = 182; SparkSqlParser.RECOVER = 183; SparkSqlParser.REDUCE = 184; SparkSqlParser.REFERENCES = 185; SparkSqlParser.REFRESH = 186; SparkSqlParser.RENAME = 187; SparkSqlParser.REPAIR = 188; SparkSqlParser.REPLACE = 189; SparkSqlParser.RESET = 190; SparkSqlParser.RESTRICT = 191; SparkSqlParser.REVOKE = 192; SparkSqlParser.RIGHT = 193; SparkSqlParser.RLIKE = 194; SparkSqlParser.ROLE = 195; SparkSqlParser.ROLES = 196; SparkSqlParser.ROLLBACK = 197; SparkSqlParser.ROLLUP = 198; SparkSqlParser.ROW = 199; SparkSqlParser.ROWS = 200; SparkSqlParser.SCHEMA = 201; SparkSqlParser.SELECT = 202; SparkSqlParser.SEMI = 203; SparkSqlParser.SEPARATED = 204; SparkSqlParser.SERDE = 205; SparkSqlParser.SERDEPROPERTIES = 206; SparkSqlParser.SESSION_USER = 207; SparkSqlParser.SET = 208; SparkSqlParser.SETMINUS = 209; SparkSqlParser.SETS = 210; SparkSqlParser.SHOW = 211; SparkSqlParser.SKEWED = 212; SparkSqlParser.SOME = 213; SparkSqlParser.SORT = 214; SparkSqlParser.SORTED = 215; SparkSqlParser.START = 216; SparkSqlParser.STATISTICS = 217; SparkSqlParser.STORED = 218; SparkSqlParser.STRATIFY = 219; SparkSqlParser.STRUCT = 220; SparkSqlParser.SUBSTR = 221; SparkSqlParser.SUBSTRING = 222; SparkSqlParser.TABLE = 223; SparkSqlParser.TABLES = 224; SparkSqlParser.TABLESAMPLE = 225; SparkSqlParser.TBLPROPERTIES = 226; SparkSqlParser.TEMPORARY = 227; SparkSqlParser.TERMINATED = 228; SparkSqlParser.THEN = 229; SparkSqlParser.TIME = 230; SparkSqlParser.TO = 231; SparkSqlParser.TOUCH = 232; SparkSqlParser.TRAILING = 233; SparkSqlParser.TRANSACTION = 234; SparkSqlParser.TRANSACTIONS = 235; SparkSqlParser.TRANSFORM = 236; SparkSqlParser.TRIM = 237; SparkSqlParser.TRUE = 238; SparkSqlParser.TRUNCATE = 239; SparkSqlParser.TYPE = 240; SparkSqlParser.UNARCHIVE = 241; SparkSqlParser.UNBOUNDED = 242; SparkSqlParser.UNCACHE = 243; SparkSqlParser.UNION = 244; SparkSqlParser.UNIQUE = 245; SparkSqlParser.UNKNOWN = 246; SparkSqlParser.UNLOCK = 247; SparkSqlParser.UNSET = 248; SparkSqlParser.UPDATE = 249; SparkSqlParser.USE = 250; SparkSqlParser.USER = 251; SparkSqlParser.USING = 252; SparkSqlParser.VALUES = 253; SparkSqlParser.VIEW = 254; SparkSqlParser.VIEWS = 255; SparkSqlParser.WHEN = 256; SparkSqlParser.WHERE = 257; SparkSqlParser.WINDOW = 258; SparkSqlParser.WITH = 259; SparkSqlParser.ZONE = 260; SparkSqlParser.EQ = 261; SparkSqlParser.NSEQ = 262; SparkSqlParser.NEQ = 263; SparkSqlParser.NEQJ = 264; SparkSqlParser.LT = 265; SparkSqlParser.LTE = 266; SparkSqlParser.GT = 267; SparkSqlParser.GTE = 268; SparkSqlParser.PLUS = 269; SparkSqlParser.MINUS = 270; SparkSqlParser.ASTERISK = 271; SparkSqlParser.SLASH = 272; SparkSqlParser.PERCENT = 273; SparkSqlParser.TILDE = 274; SparkSqlParser.AMPERSAND = 275; SparkSqlParser.PIPE = 276; SparkSqlParser.CONCAT_PIPE = 277; SparkSqlParser.HAT = 278; SparkSqlParser.STRING = 279; SparkSqlParser.BIGINT_LITERAL = 280; SparkSqlParser.SMALLINT_LITERAL = 281; SparkSqlParser.TINYINT_LITERAL = 282; SparkSqlParser.INTEGER_VALUE = 283; SparkSqlParser.EXPONENT_VALUE = 284; SparkSqlParser.DECIMAL_VALUE = 285; SparkSqlParser.FLOAT_LITERAL = 286; SparkSqlParser.DOUBLE_LITERAL = 287; SparkSqlParser.BIGDECIMAL_LITERAL = 288; SparkSqlParser.IDENTIFIER = 289; SparkSqlParser.BACKQUOTED_IDENTIFIER = 290; SparkSqlParser.SIMPLE_COMMENT = 291; SparkSqlParser.BRACKETED_COMMENT = 292; SparkSqlParser.WS = 293; SparkSqlParser.UNRECOGNIZED = 294; SparkSqlParser.RULE_program = 0; SparkSqlParser.RULE_singleStatement = 1; SparkSqlParser.RULE_singleExpression = 2; SparkSqlParser.RULE_singleTableIdentifier = 3; SparkSqlParser.RULE_singleMultipartIdentifier = 4; SparkSqlParser.RULE_singleDataType = 5; SparkSqlParser.RULE_singleTableSchema = 6; SparkSqlParser.RULE_statement = 7; SparkSqlParser.RULE_configKey = 8; SparkSqlParser.RULE_unsupportedHiveNativeCommands = 9; SparkSqlParser.RULE_createTableHeader = 10; SparkSqlParser.RULE_replaceTableHeader = 11; SparkSqlParser.RULE_bucketSpec = 12; SparkSqlParser.RULE_skewSpec = 13; SparkSqlParser.RULE_locationSpec = 14; SparkSqlParser.RULE_commentSpec = 15; SparkSqlParser.RULE_query = 16; SparkSqlParser.RULE_insertInto = 17; SparkSqlParser.RULE_partitionSpecLocation = 18; SparkSqlParser.RULE_partitionSpec = 19; SparkSqlParser.RULE_partitionVal = 20; SparkSqlParser.RULE_namespace = 21; SparkSqlParser.RULE_describeFuncName = 22; SparkSqlParser.RULE_describeColName = 23; SparkSqlParser.RULE_ctes = 24; SparkSqlParser.RULE_namedQuery = 25; SparkSqlParser.RULE_tableProvider = 26; SparkSqlParser.RULE_createTableClauses = 27; SparkSqlParser.RULE_tablePropertyList = 28; SparkSqlParser.RULE_tableProperty = 29; SparkSqlParser.RULE_tablePropertyKey = 30; SparkSqlParser.RULE_tablePropertyValue = 31; SparkSqlParser.RULE_constantList = 32; SparkSqlParser.RULE_nestedConstantList = 33; SparkSqlParser.RULE_createFileFormat = 34; SparkSqlParser.RULE_fileFormat = 35; SparkSqlParser.RULE_storageHandler = 36; SparkSqlParser.RULE_resource = 37; SparkSqlParser.RULE_dmlStatementNoWith = 38; SparkSqlParser.RULE_queryOrganization = 39; SparkSqlParser.RULE_multiInsertQueryBody = 40; SparkSqlParser.RULE_queryTerm = 41; SparkSqlParser.RULE_queryPrimary = 42; SparkSqlParser.RULE_sortItem = 43; SparkSqlParser.RULE_fromStatement = 44; SparkSqlParser.RULE_fromStatementBody = 45; SparkSqlParser.RULE_querySpecification = 46; SparkSqlParser.RULE_transformClause = 47; SparkSqlParser.RULE_selectClause = 48; SparkSqlParser.RULE_setClause = 49; SparkSqlParser.RULE_matchedClause = 50; SparkSqlParser.RULE_notMatchedClause = 51; SparkSqlParser.RULE_matchedAction = 52; SparkSqlParser.RULE_notMatchedAction = 53; SparkSqlParser.RULE_assignmentList = 54; SparkSqlParser.RULE_assignment = 55; SparkSqlParser.RULE_whereClause = 56; SparkSqlParser.RULE_havingClause = 57; SparkSqlParser.RULE_hint = 58; SparkSqlParser.RULE_hintStatement = 59; SparkSqlParser.RULE_fromClause = 60; SparkSqlParser.RULE_aggregationClause = 61; SparkSqlParser.RULE_groupingSet = 62; SparkSqlParser.RULE_pivotClause = 63; SparkSqlParser.RULE_pivotColumn = 64; SparkSqlParser.RULE_pivotValue = 65; SparkSqlParser.RULE_lateralView = 66; SparkSqlParser.RULE_setQuantifier = 67; SparkSqlParser.RULE_relation = 68; SparkSqlParser.RULE_joinRelation = 69; SparkSqlParser.RULE_joinType = 70; SparkSqlParser.RULE_joinCriteria = 71; SparkSqlParser.RULE_sample = 72; SparkSqlParser.RULE_sampleMethod = 73; SparkSqlParser.RULE_identifierList = 74; SparkSqlParser.RULE_identifierSeq = 75; SparkSqlParser.RULE_orderedIdentifierList = 76; SparkSqlParser.RULE_orderedIdentifier = 77; SparkSqlParser.RULE_identifierCommentList = 78; SparkSqlParser.RULE_identifierComment = 79; SparkSqlParser.RULE_relationPrimary = 80; SparkSqlParser.RULE_inlineTable = 81; SparkSqlParser.RULE_functionTable = 82; SparkSqlParser.RULE_tableAlias = 83; SparkSqlParser.RULE_rowFormat = 84; SparkSqlParser.RULE_multipartIdentifierList = 85; SparkSqlParser.RULE_multipartIdentifier = 86; SparkSqlParser.RULE_tableIdentifier = 87; SparkSqlParser.RULE_namedExpression = 88; SparkSqlParser.RULE_namedExpressionSeq = 89; SparkSqlParser.RULE_transformList = 90; SparkSqlParser.RULE_transform = 91; SparkSqlParser.RULE_transformArgument = 92; SparkSqlParser.RULE_expression = 93; SparkSqlParser.RULE_booleanExpression = 94; SparkSqlParser.RULE_predicate = 95; SparkSqlParser.RULE_valueExpression = 96; SparkSqlParser.RULE_primaryExpression = 97; SparkSqlParser.RULE_constant = 98; SparkSqlParser.RULE_comparisonOperator = 99; SparkSqlParser.RULE_arithmeticOperator = 100; SparkSqlParser.RULE_predicateOperator = 101; SparkSqlParser.RULE_booleanValue = 102; SparkSqlParser.RULE_interval = 103; SparkSqlParser.RULE_errorCapturingMultiUnitsInterval = 104; SparkSqlParser.RULE_multiUnitsInterval = 105; SparkSqlParser.RULE_errorCapturingUnitToUnitInterval = 106; SparkSqlParser.RULE_unitToUnitInterval = 107; SparkSqlParser.RULE_intervalValue = 108; SparkSqlParser.RULE_colPosition = 109; SparkSqlParser.RULE_dataType = 110; SparkSqlParser.RULE_qualifiedColTypeWithPositionList = 111; SparkSqlParser.RULE_qualifiedColTypeWithPosition = 112; SparkSqlParser.RULE_colTypeList = 113; SparkSqlParser.RULE_colType = 114; SparkSqlParser.RULE_complexColTypeList = 115; SparkSqlParser.RULE_complexColType = 116; SparkSqlParser.RULE_whenClause = 117; SparkSqlParser.RULE_windowClause = 118; SparkSqlParser.RULE_namedWindow = 119; SparkSqlParser.RULE_windowSpec = 120; SparkSqlParser.RULE_windowFrame = 121; SparkSqlParser.RULE_frameBound = 122; SparkSqlParser.RULE_qualifiedNameList = 123; SparkSqlParser.RULE_functionName = 124; SparkSqlParser.RULE_qualifiedName = 125; SparkSqlParser.RULE_errorCapturingIdentifier = 126; SparkSqlParser.RULE_errorCapturingIdentifierExtra = 127; SparkSqlParser.RULE_identifier = 128; SparkSqlParser.RULE_strictIdentifier = 129; SparkSqlParser.RULE_quotedIdentifier = 130; SparkSqlParser.RULE_number = 131; SparkSqlParser.RULE_alterColumnAction = 132; SparkSqlParser.RULE_ansiNonReserved = 133; SparkSqlParser.RULE_strictNonReserved = 134; SparkSqlParser.RULE_nonReserved = 135; function ProgramContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_program; return this; } ProgramContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ProgramContext.prototype.constructor = ProgramContext; ProgramContext.prototype.singleStatement = function() { return this.getTypedRuleContext(SingleStatementContext,0); }; ProgramContext.prototype.EOF = function() { return this.getToken(SparkSqlParser.EOF, 0); }; ProgramContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterProgram(this); } }; ProgramContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitProgram(this); } }; ProgramContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitProgram(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ProgramContext = ProgramContext; SparkSqlParser.prototype.program = function() { var localctx = new ProgramContext(this, this._ctx, this.state); this.enterRule(localctx, 0, SparkSqlParser.RULE_program); try { this.enterOuterAlt(localctx, 1); this.state = 272; this.singleStatement(); this.state = 273; this.match(SparkSqlParser.EOF); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SingleStatementContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_singleStatement; return this; } SingleStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SingleStatementContext.prototype.constructor = SingleStatementContext; SingleStatementContext.prototype.statement = function() { return this.getTypedRuleContext(StatementContext,0); }; SingleStatementContext.prototype.EOF = function() { return this.getToken(SparkSqlParser.EOF, 0); }; SingleStatementContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSingleStatement(this); } }; SingleStatementContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSingleStatement(this); } }; SingleStatementContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSingleStatement(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SingleStatementContext = SingleStatementContext; SparkSqlParser.prototype.singleStatement = function() { var localctx = new SingleStatementContext(this, this._ctx, this.state); this.enterRule(localctx, 2, SparkSqlParser.RULE_singleStatement); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 275; this.statement(); this.state = 279; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__0) { this.state = 276; this.match(SparkSqlParser.T__0); this.state = 281; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 282; this.match(SparkSqlParser.EOF); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SingleExpressionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_singleExpression; return this; } SingleExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SingleExpressionContext.prototype.constructor = SingleExpressionContext; SingleExpressionContext.prototype.namedExpression = function() { return this.getTypedRuleContext(NamedExpressionContext,0); }; SingleExpressionContext.prototype.EOF = function() { return this.getToken(SparkSqlParser.EOF, 0); }; SingleExpressionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSingleExpression(this); } }; SingleExpressionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSingleExpression(this); } }; SingleExpressionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSingleExpression(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SingleExpressionContext = SingleExpressionContext; SparkSqlParser.prototype.singleExpression = function() { var localctx = new SingleExpressionContext(this, this._ctx, this.state); this.enterRule(localctx, 4, SparkSqlParser.RULE_singleExpression); try { this.enterOuterAlt(localctx, 1); this.state = 284; this.namedExpression(); this.state = 285; this.match(SparkSqlParser.EOF); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SingleTableIdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_singleTableIdentifier; return this; } SingleTableIdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SingleTableIdentifierContext.prototype.constructor = SingleTableIdentifierContext; SingleTableIdentifierContext.prototype.tableIdentifier = function() { return this.getTypedRuleContext(TableIdentifierContext,0); }; SingleTableIdentifierContext.prototype.EOF = function() { return this.getToken(SparkSqlParser.EOF, 0); }; SingleTableIdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSingleTableIdentifier(this); } }; SingleTableIdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSingleTableIdentifier(this); } }; SingleTableIdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSingleTableIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SingleTableIdentifierContext = SingleTableIdentifierContext; SparkSqlParser.prototype.singleTableIdentifier = function() { var localctx = new SingleTableIdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 6, SparkSqlParser.RULE_singleTableIdentifier); try { this.enterOuterAlt(localctx, 1); this.state = 287; this.tableIdentifier(); this.state = 288; this.match(SparkSqlParser.EOF); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SingleMultipartIdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_singleMultipartIdentifier; return this; } SingleMultipartIdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SingleMultipartIdentifierContext.prototype.constructor = SingleMultipartIdentifierContext; SingleMultipartIdentifierContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; SingleMultipartIdentifierContext.prototype.EOF = function() { return this.getToken(SparkSqlParser.EOF, 0); }; SingleMultipartIdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSingleMultipartIdentifier(this); } }; SingleMultipartIdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSingleMultipartIdentifier(this); } }; SingleMultipartIdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSingleMultipartIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SingleMultipartIdentifierContext = SingleMultipartIdentifierContext; SparkSqlParser.prototype.singleMultipartIdentifier = function() { var localctx = new SingleMultipartIdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 8, SparkSqlParser.RULE_singleMultipartIdentifier); try { this.enterOuterAlt(localctx, 1); this.state = 290; this.multipartIdentifier(); this.state = 291; this.match(SparkSqlParser.EOF); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SingleDataTypeContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_singleDataType; return this; } SingleDataTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SingleDataTypeContext.prototype.constructor = SingleDataTypeContext; SingleDataTypeContext.prototype.dataType = function() { return this.getTypedRuleContext(DataTypeContext,0); }; SingleDataTypeContext.prototype.EOF = function() { return this.getToken(SparkSqlParser.EOF, 0); }; SingleDataTypeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSingleDataType(this); } }; SingleDataTypeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSingleDataType(this); } }; SingleDataTypeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSingleDataType(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SingleDataTypeContext = SingleDataTypeContext; SparkSqlParser.prototype.singleDataType = function() { var localctx = new SingleDataTypeContext(this, this._ctx, this.state); this.enterRule(localctx, 10, SparkSqlParser.RULE_singleDataType); try { this.enterOuterAlt(localctx, 1); this.state = 293; this.dataType(); this.state = 294; this.match(SparkSqlParser.EOF); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SingleTableSchemaContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_singleTableSchema; return this; } SingleTableSchemaContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SingleTableSchemaContext.prototype.constructor = SingleTableSchemaContext; SingleTableSchemaContext.prototype.colTypeList = function() { return this.getTypedRuleContext(ColTypeListContext,0); }; SingleTableSchemaContext.prototype.EOF = function() { return this.getToken(SparkSqlParser.EOF, 0); }; SingleTableSchemaContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSingleTableSchema(this); } }; SingleTableSchemaContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSingleTableSchema(this); } }; SingleTableSchemaContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSingleTableSchema(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SingleTableSchemaContext = SingleTableSchemaContext; SparkSqlParser.prototype.singleTableSchema = function() { var localctx = new SingleTableSchemaContext(this, this._ctx, this.state); this.enterRule(localctx, 12, SparkSqlParser.RULE_singleTableSchema); try { this.enterOuterAlt(localctx, 1); this.state = 296; this.colTypeList(); this.state = 297; this.match(SparkSqlParser.EOF); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function StatementContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_statement; return this; } StatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); StatementContext.prototype.constructor = StatementContext; StatementContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function ExplainContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } ExplainContext.prototype = Object.create(StatementContext.prototype); ExplainContext.prototype.constructor = ExplainContext; SparkSqlParser.ExplainContext = ExplainContext; ExplainContext.prototype.EXPLAIN = function() { return this.getToken(SparkSqlParser.EXPLAIN, 0); }; ExplainContext.prototype.statement = function() { return this.getTypedRuleContext(StatementContext,0); }; ExplainContext.prototype.LOGICAL = function() { return this.getToken(SparkSqlParser.LOGICAL, 0); }; ExplainContext.prototype.FORMATTED = function() { return this.getToken(SparkSqlParser.FORMATTED, 0); }; ExplainContext.prototype.EXTENDED = function() { return this.getToken(SparkSqlParser.EXTENDED, 0); }; ExplainContext.prototype.CODEGEN = function() { return this.getToken(SparkSqlParser.CODEGEN, 0); }; ExplainContext.prototype.COST = function() { return this.getToken(SparkSqlParser.COST, 0); }; ExplainContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterExplain(this); } }; ExplainContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitExplain(this); } }; ExplainContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitExplain(this); } else { return visitor.visitChildren(this); } }; function ResetConfigurationContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } ResetConfigurationContext.prototype = Object.create(StatementContext.prototype); ResetConfigurationContext.prototype.constructor = ResetConfigurationContext; SparkSqlParser.ResetConfigurationContext = ResetConfigurationContext; ResetConfigurationContext.prototype.RESET = function() { return this.getToken(SparkSqlParser.RESET, 0); }; ResetConfigurationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterResetConfiguration(this); } }; ResetConfigurationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitResetConfiguration(this); } }; ResetConfigurationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitResetConfiguration(this); } else { return visitor.visitChildren(this); } }; function AlterViewQueryContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } AlterViewQueryContext.prototype = Object.create(StatementContext.prototype); AlterViewQueryContext.prototype.constructor = AlterViewQueryContext; SparkSqlParser.AlterViewQueryContext = AlterViewQueryContext; AlterViewQueryContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; AlterViewQueryContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; AlterViewQueryContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; AlterViewQueryContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; AlterViewQueryContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; AlterViewQueryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAlterViewQuery(this); } }; AlterViewQueryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAlterViewQuery(this); } }; AlterViewQueryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAlterViewQuery(this); } else { return visitor.visitChildren(this); } }; function UseContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } UseContext.prototype = Object.create(StatementContext.prototype); UseContext.prototype.constructor = UseContext; SparkSqlParser.UseContext = UseContext; UseContext.prototype.USE = function() { return this.getToken(SparkSqlParser.USE, 0); }; UseContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; UseContext.prototype.NAMESPACE = function() { return this.getToken(SparkSqlParser.NAMESPACE, 0); }; UseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterUse(this); } }; UseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitUse(this); } }; UseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitUse(this); } else { return visitor.visitChildren(this); } }; function DropNamespaceContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DropNamespaceContext.prototype = Object.create(StatementContext.prototype); DropNamespaceContext.prototype.constructor = DropNamespaceContext; SparkSqlParser.DropNamespaceContext = DropNamespaceContext; DropNamespaceContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; DropNamespaceContext.prototype.namespace = function() { return this.getTypedRuleContext(NamespaceContext,0); }; DropNamespaceContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DropNamespaceContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; DropNamespaceContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; DropNamespaceContext.prototype.RESTRICT = function() { return this.getToken(SparkSqlParser.RESTRICT, 0); }; DropNamespaceContext.prototype.CASCADE = function() { return this.getToken(SparkSqlParser.CASCADE, 0); }; DropNamespaceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDropNamespace(this); } }; DropNamespaceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDropNamespace(this); } }; DropNamespaceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDropNamespace(this); } else { return visitor.visitChildren(this); } }; function CreateTempViewUsingContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } CreateTempViewUsingContext.prototype = Object.create(StatementContext.prototype); CreateTempViewUsingContext.prototype.constructor = CreateTempViewUsingContext; SparkSqlParser.CreateTempViewUsingContext = CreateTempViewUsingContext; CreateTempViewUsingContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; CreateTempViewUsingContext.prototype.TEMPORARY = function() { return this.getToken(SparkSqlParser.TEMPORARY, 0); }; CreateTempViewUsingContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; CreateTempViewUsingContext.prototype.tableIdentifier = function() { return this.getTypedRuleContext(TableIdentifierContext,0); }; CreateTempViewUsingContext.prototype.tableProvider = function() { return this.getTypedRuleContext(TableProviderContext,0); }; CreateTempViewUsingContext.prototype.OR = function() { return this.getToken(SparkSqlParser.OR, 0); }; CreateTempViewUsingContext.prototype.REPLACE = function() { return this.getToken(SparkSqlParser.REPLACE, 0); }; CreateTempViewUsingContext.prototype.GLOBAL = function() { return this.getToken(SparkSqlParser.GLOBAL, 0); }; CreateTempViewUsingContext.prototype.colTypeList = function() { return this.getTypedRuleContext(ColTypeListContext,0); }; CreateTempViewUsingContext.prototype.OPTIONS = function() { return this.getToken(SparkSqlParser.OPTIONS, 0); }; CreateTempViewUsingContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; CreateTempViewUsingContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateTempViewUsing(this); } }; CreateTempViewUsingContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateTempViewUsing(this); } }; CreateTempViewUsingContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateTempViewUsing(this); } else { return visitor.visitChildren(this); } }; function RenameTableContext(parser, ctx) { StatementContext.call(this, parser); this.from = null; // MultipartIdentifierContext; this.to = null; // MultipartIdentifierContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } RenameTableContext.prototype = Object.create(StatementContext.prototype); RenameTableContext.prototype.constructor = RenameTableContext; SparkSqlParser.RenameTableContext = RenameTableContext; RenameTableContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; RenameTableContext.prototype.RENAME = function() { return this.getToken(SparkSqlParser.RENAME, 0); }; RenameTableContext.prototype.TO = function() { return this.getToken(SparkSqlParser.TO, 0); }; RenameTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; RenameTableContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; RenameTableContext.prototype.multipartIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MultipartIdentifierContext); } else { return this.getTypedRuleContext(MultipartIdentifierContext,i); } }; RenameTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRenameTable(this); } }; RenameTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRenameTable(this); } }; RenameTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRenameTable(this); } else { return visitor.visitChildren(this); } }; function FailNativeCommandContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } FailNativeCommandContext.prototype = Object.create(StatementContext.prototype); FailNativeCommandContext.prototype.constructor = FailNativeCommandContext; SparkSqlParser.FailNativeCommandContext = FailNativeCommandContext; FailNativeCommandContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; FailNativeCommandContext.prototype.ROLE = function() { return this.getToken(SparkSqlParser.ROLE, 0); }; FailNativeCommandContext.prototype.unsupportedHiveNativeCommands = function() { return this.getTypedRuleContext(UnsupportedHiveNativeCommandsContext,0); }; FailNativeCommandContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFailNativeCommand(this); } }; FailNativeCommandContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFailNativeCommand(this); } }; FailNativeCommandContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFailNativeCommand(this); } else { return visitor.visitChildren(this); } }; function ClearCacheContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } ClearCacheContext.prototype = Object.create(StatementContext.prototype); ClearCacheContext.prototype.constructor = ClearCacheContext; SparkSqlParser.ClearCacheContext = ClearCacheContext; ClearCacheContext.prototype.CLEAR = function() { return this.getToken(SparkSqlParser.CLEAR, 0); }; ClearCacheContext.prototype.CACHE = function() { return this.getToken(SparkSqlParser.CACHE, 0); }; ClearCacheContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterClearCache(this); } }; ClearCacheContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitClearCache(this); } }; ClearCacheContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitClearCache(this); } else { return visitor.visitChildren(this); } }; function DropViewContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DropViewContext.prototype = Object.create(StatementContext.prototype); DropViewContext.prototype.constructor = DropViewContext; SparkSqlParser.DropViewContext = DropViewContext; DropViewContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; DropViewContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; DropViewContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DropViewContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; DropViewContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; DropViewContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDropView(this); } }; DropViewContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDropView(this); } }; DropViewContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDropView(this); } else { return visitor.visitChildren(this); } }; function ShowTablesContext(parser, ctx) { StatementContext.call(this, parser); this.pattern = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowTablesContext.prototype = Object.create(StatementContext.prototype); ShowTablesContext.prototype.constructor = ShowTablesContext; SparkSqlParser.ShowTablesContext = ShowTablesContext; ShowTablesContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowTablesContext.prototype.TABLES = function() { return this.getToken(SparkSqlParser.TABLES, 0); }; ShowTablesContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ShowTablesContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; ShowTablesContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; ShowTablesContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; ShowTablesContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; ShowTablesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowTables(this); } }; ShowTablesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowTables(this); } }; ShowTablesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowTables(this); } else { return visitor.visitChildren(this); } }; function RecoverPartitionsContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } RecoverPartitionsContext.prototype = Object.create(StatementContext.prototype); RecoverPartitionsContext.prototype.constructor = RecoverPartitionsContext; SparkSqlParser.RecoverPartitionsContext = RecoverPartitionsContext; RecoverPartitionsContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; RecoverPartitionsContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; RecoverPartitionsContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; RecoverPartitionsContext.prototype.RECOVER = function() { return this.getToken(SparkSqlParser.RECOVER, 0); }; RecoverPartitionsContext.prototype.PARTITIONS = function() { return this.getToken(SparkSqlParser.PARTITIONS, 0); }; RecoverPartitionsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRecoverPartitions(this); } }; RecoverPartitionsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRecoverPartitions(this); } }; RecoverPartitionsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRecoverPartitions(this); } else { return visitor.visitChildren(this); } }; function ShowCurrentNamespaceContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowCurrentNamespaceContext.prototype = Object.create(StatementContext.prototype); ShowCurrentNamespaceContext.prototype.constructor = ShowCurrentNamespaceContext; SparkSqlParser.ShowCurrentNamespaceContext = ShowCurrentNamespaceContext; ShowCurrentNamespaceContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowCurrentNamespaceContext.prototype.CURRENT = function() { return this.getToken(SparkSqlParser.CURRENT, 0); }; ShowCurrentNamespaceContext.prototype.NAMESPACE = function() { return this.getToken(SparkSqlParser.NAMESPACE, 0); }; ShowCurrentNamespaceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowCurrentNamespace(this); } }; ShowCurrentNamespaceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowCurrentNamespace(this); } }; ShowCurrentNamespaceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowCurrentNamespace(this); } else { return visitor.visitChildren(this); } }; function RenameTablePartitionContext(parser, ctx) { StatementContext.call(this, parser); this.from = null; // PartitionSpecContext; this.to = null; // PartitionSpecContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } RenameTablePartitionContext.prototype = Object.create(StatementContext.prototype); RenameTablePartitionContext.prototype.constructor = RenameTablePartitionContext; SparkSqlParser.RenameTablePartitionContext = RenameTablePartitionContext; RenameTablePartitionContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; RenameTablePartitionContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; RenameTablePartitionContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; RenameTablePartitionContext.prototype.RENAME = function() { return this.getToken(SparkSqlParser.RENAME, 0); }; RenameTablePartitionContext.prototype.TO = function() { return this.getToken(SparkSqlParser.TO, 0); }; RenameTablePartitionContext.prototype.partitionSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(PartitionSpecContext); } else { return this.getTypedRuleContext(PartitionSpecContext,i); } }; RenameTablePartitionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRenameTablePartition(this); } }; RenameTablePartitionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRenameTablePartition(this); } }; RenameTablePartitionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRenameTablePartition(this); } else { return visitor.visitChildren(this); } }; function RepairTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } RepairTableContext.prototype = Object.create(StatementContext.prototype); RepairTableContext.prototype.constructor = RepairTableContext; SparkSqlParser.RepairTableContext = RepairTableContext; RepairTableContext.prototype.MSCK = function() { return this.getToken(SparkSqlParser.MSCK, 0); }; RepairTableContext.prototype.REPAIR = function() { return this.getToken(SparkSqlParser.REPAIR, 0); }; RepairTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; RepairTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; RepairTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRepairTable(this); } }; RepairTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRepairTable(this); } }; RepairTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRepairTable(this); } else { return visitor.visitChildren(this); } }; function RefreshResourceContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } RefreshResourceContext.prototype = Object.create(StatementContext.prototype); RefreshResourceContext.prototype.constructor = RefreshResourceContext; SparkSqlParser.RefreshResourceContext = RefreshResourceContext; RefreshResourceContext.prototype.REFRESH = function() { return this.getToken(SparkSqlParser.REFRESH, 0); }; RefreshResourceContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; RefreshResourceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRefreshResource(this); } }; RefreshResourceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRefreshResource(this); } }; RefreshResourceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRefreshResource(this); } else { return visitor.visitChildren(this); } }; function ShowCreateTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowCreateTableContext.prototype = Object.create(StatementContext.prototype); ShowCreateTableContext.prototype.constructor = ShowCreateTableContext; SparkSqlParser.ShowCreateTableContext = ShowCreateTableContext; ShowCreateTableContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowCreateTableContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; ShowCreateTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; ShowCreateTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ShowCreateTableContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; ShowCreateTableContext.prototype.SERDE = function() { return this.getToken(SparkSqlParser.SERDE, 0); }; ShowCreateTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowCreateTable(this); } }; ShowCreateTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowCreateTable(this); } }; ShowCreateTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowCreateTable(this); } else { return visitor.visitChildren(this); } }; function ShowNamespacesContext(parser, ctx) { StatementContext.call(this, parser); this.pattern = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowNamespacesContext.prototype = Object.create(StatementContext.prototype); ShowNamespacesContext.prototype.constructor = ShowNamespacesContext; SparkSqlParser.ShowNamespacesContext = ShowNamespacesContext; ShowNamespacesContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowNamespacesContext.prototype.DATABASES = function() { return this.getToken(SparkSqlParser.DATABASES, 0); }; ShowNamespacesContext.prototype.NAMESPACES = function() { return this.getToken(SparkSqlParser.NAMESPACES, 0); }; ShowNamespacesContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ShowNamespacesContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; ShowNamespacesContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; ShowNamespacesContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; ShowNamespacesContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; ShowNamespacesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowNamespaces(this); } }; ShowNamespacesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowNamespaces(this); } }; ShowNamespacesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowNamespaces(this); } else { return visitor.visitChildren(this); } }; function ShowColumnsContext(parser, ctx) { StatementContext.call(this, parser); this.table = null; // MultipartIdentifierContext; this.ns = null; // MultipartIdentifierContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowColumnsContext.prototype = Object.create(StatementContext.prototype); ShowColumnsContext.prototype.constructor = ShowColumnsContext; SparkSqlParser.ShowColumnsContext = ShowColumnsContext; ShowColumnsContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowColumnsContext.prototype.COLUMNS = function() { return this.getToken(SparkSqlParser.COLUMNS, 0); }; ShowColumnsContext.prototype.FROM = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.FROM); } else { return this.getToken(SparkSqlParser.FROM, i); } }; ShowColumnsContext.prototype.IN = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.IN); } else { return this.getToken(SparkSqlParser.IN, i); } }; ShowColumnsContext.prototype.multipartIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MultipartIdentifierContext); } else { return this.getTypedRuleContext(MultipartIdentifierContext,i); } }; ShowColumnsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowColumns(this); } }; ShowColumnsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowColumns(this); } }; ShowColumnsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowColumns(this); } else { return visitor.visitChildren(this); } }; function ReplaceTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } ReplaceTableContext.prototype = Object.create(StatementContext.prototype); ReplaceTableContext.prototype.constructor = ReplaceTableContext; SparkSqlParser.ReplaceTableContext = ReplaceTableContext; ReplaceTableContext.prototype.replaceTableHeader = function() { return this.getTypedRuleContext(ReplaceTableHeaderContext,0); }; ReplaceTableContext.prototype.tableProvider = function() { return this.getTypedRuleContext(TableProviderContext,0); }; ReplaceTableContext.prototype.createTableClauses = function() { return this.getTypedRuleContext(CreateTableClausesContext,0); }; ReplaceTableContext.prototype.colTypeList = function() { return this.getTypedRuleContext(ColTypeListContext,0); }; ReplaceTableContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; ReplaceTableContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; ReplaceTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterReplaceTable(this); } }; ReplaceTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitReplaceTable(this); } }; ReplaceTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitReplaceTable(this); } else { return visitor.visitChildren(this); } }; function AddTablePartitionContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } AddTablePartitionContext.prototype = Object.create(StatementContext.prototype); AddTablePartitionContext.prototype.constructor = AddTablePartitionContext; SparkSqlParser.AddTablePartitionContext = AddTablePartitionContext; AddTablePartitionContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; AddTablePartitionContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; AddTablePartitionContext.prototype.ADD = function() { return this.getToken(SparkSqlParser.ADD, 0); }; AddTablePartitionContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; AddTablePartitionContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; AddTablePartitionContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; AddTablePartitionContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; AddTablePartitionContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; AddTablePartitionContext.prototype.partitionSpecLocation = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(PartitionSpecLocationContext); } else { return this.getTypedRuleContext(PartitionSpecLocationContext,i); } }; AddTablePartitionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAddTablePartition(this); } }; AddTablePartitionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAddTablePartition(this); } }; AddTablePartitionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAddTablePartition(this); } else { return visitor.visitChildren(this); } }; function SetNamespaceLocationContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } SetNamespaceLocationContext.prototype = Object.create(StatementContext.prototype); SetNamespaceLocationContext.prototype.constructor = SetNamespaceLocationContext; SparkSqlParser.SetNamespaceLocationContext = SetNamespaceLocationContext; SetNamespaceLocationContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; SetNamespaceLocationContext.prototype.namespace = function() { return this.getTypedRuleContext(NamespaceContext,0); }; SetNamespaceLocationContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; SetNamespaceLocationContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetNamespaceLocationContext.prototype.locationSpec = function() { return this.getTypedRuleContext(LocationSpecContext,0); }; SetNamespaceLocationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetNamespaceLocation(this); } }; SetNamespaceLocationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetNamespaceLocation(this); } }; SetNamespaceLocationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetNamespaceLocation(this); } else { return visitor.visitChildren(this); } }; function RefreshTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } RefreshTableContext.prototype = Object.create(StatementContext.prototype); RefreshTableContext.prototype.constructor = RefreshTableContext; SparkSqlParser.RefreshTableContext = RefreshTableContext; RefreshTableContext.prototype.REFRESH = function() { return this.getToken(SparkSqlParser.REFRESH, 0); }; RefreshTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; RefreshTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; RefreshTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRefreshTable(this); } }; RefreshTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRefreshTable(this); } }; RefreshTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRefreshTable(this); } else { return visitor.visitChildren(this); } }; function SetNamespacePropertiesContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } SetNamespacePropertiesContext.prototype = Object.create(StatementContext.prototype); SetNamespacePropertiesContext.prototype.constructor = SetNamespacePropertiesContext; SparkSqlParser.SetNamespacePropertiesContext = SetNamespacePropertiesContext; SetNamespacePropertiesContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; SetNamespacePropertiesContext.prototype.namespace = function() { return this.getTypedRuleContext(NamespaceContext,0); }; SetNamespacePropertiesContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; SetNamespacePropertiesContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetNamespacePropertiesContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; SetNamespacePropertiesContext.prototype.DBPROPERTIES = function() { return this.getToken(SparkSqlParser.DBPROPERTIES, 0); }; SetNamespacePropertiesContext.prototype.PROPERTIES = function() { return this.getToken(SparkSqlParser.PROPERTIES, 0); }; SetNamespacePropertiesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetNamespaceProperties(this); } }; SetNamespacePropertiesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetNamespaceProperties(this); } }; SetNamespacePropertiesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetNamespaceProperties(this); } else { return visitor.visitChildren(this); } }; function ManageResourceContext(parser, ctx) { StatementContext.call(this, parser); this.op = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } ManageResourceContext.prototype = Object.create(StatementContext.prototype); ManageResourceContext.prototype.constructor = ManageResourceContext; SparkSqlParser.ManageResourceContext = ManageResourceContext; ManageResourceContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; ManageResourceContext.prototype.ADD = function() { return this.getToken(SparkSqlParser.ADD, 0); }; ManageResourceContext.prototype.LIST = function() { return this.getToken(SparkSqlParser.LIST, 0); }; ManageResourceContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; ManageResourceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterManageResource(this); } }; ManageResourceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitManageResource(this); } }; ManageResourceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitManageResource(this); } else { return visitor.visitChildren(this); } }; function SetQuotedConfigurationContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } SetQuotedConfigurationContext.prototype = Object.create(StatementContext.prototype); SetQuotedConfigurationContext.prototype.constructor = SetQuotedConfigurationContext; SparkSqlParser.SetQuotedConfigurationContext = SetQuotedConfigurationContext; SetQuotedConfigurationContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetQuotedConfigurationContext.prototype.configKey = function() { return this.getTypedRuleContext(ConfigKeyContext,0); }; SetQuotedConfigurationContext.prototype.EQ = function() { return this.getToken(SparkSqlParser.EQ, 0); }; SetQuotedConfigurationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetQuotedConfiguration(this); } }; SetQuotedConfigurationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetQuotedConfiguration(this); } }; SetQuotedConfigurationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetQuotedConfiguration(this); } else { return visitor.visitChildren(this); } }; function AnalyzeContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } AnalyzeContext.prototype = Object.create(StatementContext.prototype); AnalyzeContext.prototype.constructor = AnalyzeContext; SparkSqlParser.AnalyzeContext = AnalyzeContext; AnalyzeContext.prototype.ANALYZE = function() { return this.getToken(SparkSqlParser.ANALYZE, 0); }; AnalyzeContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; AnalyzeContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; AnalyzeContext.prototype.COMPUTE = function() { return this.getToken(SparkSqlParser.COMPUTE, 0); }; AnalyzeContext.prototype.STATISTICS = function() { return this.getToken(SparkSqlParser.STATISTICS, 0); }; AnalyzeContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; AnalyzeContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; AnalyzeContext.prototype.FOR = function() { return this.getToken(SparkSqlParser.FOR, 0); }; AnalyzeContext.prototype.COLUMNS = function() { return this.getToken(SparkSqlParser.COLUMNS, 0); }; AnalyzeContext.prototype.identifierSeq = function() { return this.getTypedRuleContext(IdentifierSeqContext,0); }; AnalyzeContext.prototype.ALL = function() { return this.getToken(SparkSqlParser.ALL, 0); }; AnalyzeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAnalyze(this); } }; AnalyzeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAnalyze(this); } }; AnalyzeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAnalyze(this); } else { return visitor.visitChildren(this); } }; function CreateHiveTableContext(parser, ctx) { StatementContext.call(this, parser); this.columns = null; // ColTypeListContext; this.partitionColumns = null; // ColTypeListContext; this.partitionColumnNames = null; // IdentifierListContext; this.tableProps = null; // TablePropertyListContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } CreateHiveTableContext.prototype = Object.create(StatementContext.prototype); CreateHiveTableContext.prototype.constructor = CreateHiveTableContext; SparkSqlParser.CreateHiveTableContext = CreateHiveTableContext; CreateHiveTableContext.prototype.createTableHeader = function() { return this.getTypedRuleContext(CreateTableHeaderContext,0); }; CreateHiveTableContext.prototype.commentSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(CommentSpecContext); } else { return this.getTypedRuleContext(CommentSpecContext,i); } }; CreateHiveTableContext.prototype.bucketSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(BucketSpecContext); } else { return this.getTypedRuleContext(BucketSpecContext,i); } }; CreateHiveTableContext.prototype.skewSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(SkewSpecContext); } else { return this.getTypedRuleContext(SkewSpecContext,i); } }; CreateHiveTableContext.prototype.rowFormat = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(RowFormatContext); } else { return this.getTypedRuleContext(RowFormatContext,i); } }; CreateHiveTableContext.prototype.createFileFormat = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(CreateFileFormatContext); } else { return this.getTypedRuleContext(CreateFileFormatContext,i); } }; CreateHiveTableContext.prototype.locationSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(LocationSpecContext); } else { return this.getTypedRuleContext(LocationSpecContext,i); } }; CreateHiveTableContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; CreateHiveTableContext.prototype.colTypeList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ColTypeListContext); } else { return this.getTypedRuleContext(ColTypeListContext,i); } }; CreateHiveTableContext.prototype.PARTITIONED = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.PARTITIONED); } else { return this.getToken(SparkSqlParser.PARTITIONED, i); } }; CreateHiveTableContext.prototype.BY = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.BY); } else { return this.getToken(SparkSqlParser.BY, i); } }; CreateHiveTableContext.prototype.TBLPROPERTIES = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.TBLPROPERTIES); } else { return this.getToken(SparkSqlParser.TBLPROPERTIES, i); } }; CreateHiveTableContext.prototype.identifierList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierListContext); } else { return this.getTypedRuleContext(IdentifierListContext,i); } }; CreateHiveTableContext.prototype.tablePropertyList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TablePropertyListContext); } else { return this.getTypedRuleContext(TablePropertyListContext,i); } }; CreateHiveTableContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; CreateHiveTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateHiveTable(this); } }; CreateHiveTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateHiveTable(this); } }; CreateHiveTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateHiveTable(this); } else { return visitor.visitChildren(this); } }; function CreateFunctionContext(parser, ctx) { StatementContext.call(this, parser); this.className = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } CreateFunctionContext.prototype = Object.create(StatementContext.prototype); CreateFunctionContext.prototype.constructor = CreateFunctionContext; SparkSqlParser.CreateFunctionContext = CreateFunctionContext; CreateFunctionContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; CreateFunctionContext.prototype.FUNCTION = function() { return this.getToken(SparkSqlParser.FUNCTION, 0); }; CreateFunctionContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; CreateFunctionContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; CreateFunctionContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; CreateFunctionContext.prototype.OR = function() { return this.getToken(SparkSqlParser.OR, 0); }; CreateFunctionContext.prototype.REPLACE = function() { return this.getToken(SparkSqlParser.REPLACE, 0); }; CreateFunctionContext.prototype.TEMPORARY = function() { return this.getToken(SparkSqlParser.TEMPORARY, 0); }; CreateFunctionContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; CreateFunctionContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; CreateFunctionContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; CreateFunctionContext.prototype.USING = function() { return this.getToken(SparkSqlParser.USING, 0); }; CreateFunctionContext.prototype.resource = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ResourceContext); } else { return this.getTypedRuleContext(ResourceContext,i); } }; CreateFunctionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateFunction(this); } }; CreateFunctionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateFunction(this); } }; CreateFunctionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateFunction(this); } else { return visitor.visitChildren(this); } }; function ShowTableContext(parser, ctx) { StatementContext.call(this, parser); this.ns = null; // MultipartIdentifierContext; this.pattern = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowTableContext.prototype = Object.create(StatementContext.prototype); ShowTableContext.prototype.constructor = ShowTableContext; SparkSqlParser.ShowTableContext = ShowTableContext; ShowTableContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; ShowTableContext.prototype.EXTENDED = function() { return this.getToken(SparkSqlParser.EXTENDED, 0); }; ShowTableContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; ShowTableContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; ShowTableContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; ShowTableContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; ShowTableContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; ShowTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ShowTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowTable(this); } }; ShowTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowTable(this); } }; ShowTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowTable(this); } else { return visitor.visitChildren(this); } }; function HiveReplaceColumnsContext(parser, ctx) { StatementContext.call(this, parser); this.table = null; // MultipartIdentifierContext; this.columns = null; // QualifiedColTypeWithPositionListContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } HiveReplaceColumnsContext.prototype = Object.create(StatementContext.prototype); HiveReplaceColumnsContext.prototype.constructor = HiveReplaceColumnsContext; SparkSqlParser.HiveReplaceColumnsContext = HiveReplaceColumnsContext; HiveReplaceColumnsContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; HiveReplaceColumnsContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; HiveReplaceColumnsContext.prototype.REPLACE = function() { return this.getToken(SparkSqlParser.REPLACE, 0); }; HiveReplaceColumnsContext.prototype.COLUMNS = function() { return this.getToken(SparkSqlParser.COLUMNS, 0); }; HiveReplaceColumnsContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; HiveReplaceColumnsContext.prototype.qualifiedColTypeWithPositionList = function() { return this.getTypedRuleContext(QualifiedColTypeWithPositionListContext,0); }; HiveReplaceColumnsContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; HiveReplaceColumnsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterHiveReplaceColumns(this); } }; HiveReplaceColumnsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitHiveReplaceColumns(this); } }; HiveReplaceColumnsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitHiveReplaceColumns(this); } else { return visitor.visitChildren(this); } }; function CommentNamespaceContext(parser, ctx) { StatementContext.call(this, parser); this.comment = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } CommentNamespaceContext.prototype = Object.create(StatementContext.prototype); CommentNamespaceContext.prototype.constructor = CommentNamespaceContext; SparkSqlParser.CommentNamespaceContext = CommentNamespaceContext; CommentNamespaceContext.prototype.COMMENT = function() { return this.getToken(SparkSqlParser.COMMENT, 0); }; CommentNamespaceContext.prototype.ON = function() { return this.getToken(SparkSqlParser.ON, 0); }; CommentNamespaceContext.prototype.namespace = function() { return this.getTypedRuleContext(NamespaceContext,0); }; CommentNamespaceContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; CommentNamespaceContext.prototype.IS = function() { return this.getToken(SparkSqlParser.IS, 0); }; CommentNamespaceContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; CommentNamespaceContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; CommentNamespaceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCommentNamespace(this); } }; CommentNamespaceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCommentNamespace(this); } }; CommentNamespaceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCommentNamespace(this); } else { return visitor.visitChildren(this); } }; function ResetQuotedConfigurationContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } ResetQuotedConfigurationContext.prototype = Object.create(StatementContext.prototype); ResetQuotedConfigurationContext.prototype.constructor = ResetQuotedConfigurationContext; SparkSqlParser.ResetQuotedConfigurationContext = ResetQuotedConfigurationContext; ResetQuotedConfigurationContext.prototype.RESET = function() { return this.getToken(SparkSqlParser.RESET, 0); }; ResetQuotedConfigurationContext.prototype.configKey = function() { return this.getTypedRuleContext(ConfigKeyContext,0); }; ResetQuotedConfigurationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterResetQuotedConfiguration(this); } }; ResetQuotedConfigurationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitResetQuotedConfiguration(this); } }; ResetQuotedConfigurationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitResetQuotedConfiguration(this); } else { return visitor.visitChildren(this); } }; function CreateTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } CreateTableContext.prototype = Object.create(StatementContext.prototype); CreateTableContext.prototype.constructor = CreateTableContext; SparkSqlParser.CreateTableContext = CreateTableContext; CreateTableContext.prototype.createTableHeader = function() { return this.getTypedRuleContext(CreateTableHeaderContext,0); }; CreateTableContext.prototype.tableProvider = function() { return this.getTypedRuleContext(TableProviderContext,0); }; CreateTableContext.prototype.createTableClauses = function() { return this.getTypedRuleContext(CreateTableClausesContext,0); }; CreateTableContext.prototype.colTypeList = function() { return this.getTypedRuleContext(ColTypeListContext,0); }; CreateTableContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; CreateTableContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; CreateTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateTable(this); } }; CreateTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateTable(this); } }; CreateTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateTable(this); } else { return visitor.visitChildren(this); } }; function DmlStatementContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DmlStatementContext.prototype = Object.create(StatementContext.prototype); DmlStatementContext.prototype.constructor = DmlStatementContext; SparkSqlParser.DmlStatementContext = DmlStatementContext; DmlStatementContext.prototype.dmlStatementNoWith = function() { return this.getTypedRuleContext(DmlStatementNoWithContext,0); }; DmlStatementContext.prototype.ctes = function() { return this.getTypedRuleContext(CtesContext,0); }; DmlStatementContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDmlStatement(this); } }; DmlStatementContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDmlStatement(this); } }; DmlStatementContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDmlStatement(this); } else { return visitor.visitChildren(this); } }; function CreateTableLikeContext(parser, ctx) { StatementContext.call(this, parser); this.target = null; // TableIdentifierContext; this.source = null; // TableIdentifierContext; this.tableProps = null; // TablePropertyListContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } CreateTableLikeContext.prototype = Object.create(StatementContext.prototype); CreateTableLikeContext.prototype.constructor = CreateTableLikeContext; SparkSqlParser.CreateTableLikeContext = CreateTableLikeContext; CreateTableLikeContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; CreateTableLikeContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; CreateTableLikeContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; CreateTableLikeContext.prototype.tableIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TableIdentifierContext); } else { return this.getTypedRuleContext(TableIdentifierContext,i); } }; CreateTableLikeContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; CreateTableLikeContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; CreateTableLikeContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; CreateTableLikeContext.prototype.tableProvider = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TableProviderContext); } else { return this.getTypedRuleContext(TableProviderContext,i); } }; CreateTableLikeContext.prototype.rowFormat = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(RowFormatContext); } else { return this.getTypedRuleContext(RowFormatContext,i); } }; CreateTableLikeContext.prototype.createFileFormat = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(CreateFileFormatContext); } else { return this.getTypedRuleContext(CreateFileFormatContext,i); } }; CreateTableLikeContext.prototype.locationSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(LocationSpecContext); } else { return this.getTypedRuleContext(LocationSpecContext,i); } }; CreateTableLikeContext.prototype.TBLPROPERTIES = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.TBLPROPERTIES); } else { return this.getToken(SparkSqlParser.TBLPROPERTIES, i); } }; CreateTableLikeContext.prototype.tablePropertyList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TablePropertyListContext); } else { return this.getTypedRuleContext(TablePropertyListContext,i); } }; CreateTableLikeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateTableLike(this); } }; CreateTableLikeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateTableLike(this); } }; CreateTableLikeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateTableLike(this); } else { return visitor.visitChildren(this); } }; function UncacheTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } UncacheTableContext.prototype = Object.create(StatementContext.prototype); UncacheTableContext.prototype.constructor = UncacheTableContext; SparkSqlParser.UncacheTableContext = UncacheTableContext; UncacheTableContext.prototype.UNCACHE = function() { return this.getToken(SparkSqlParser.UNCACHE, 0); }; UncacheTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; UncacheTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; UncacheTableContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; UncacheTableContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; UncacheTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterUncacheTable(this); } }; UncacheTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitUncacheTable(this); } }; UncacheTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitUncacheTable(this); } else { return visitor.visitChildren(this); } }; function DropFunctionContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DropFunctionContext.prototype = Object.create(StatementContext.prototype); DropFunctionContext.prototype.constructor = DropFunctionContext; SparkSqlParser.DropFunctionContext = DropFunctionContext; DropFunctionContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; DropFunctionContext.prototype.FUNCTION = function() { return this.getToken(SparkSqlParser.FUNCTION, 0); }; DropFunctionContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DropFunctionContext.prototype.TEMPORARY = function() { return this.getToken(SparkSqlParser.TEMPORARY, 0); }; DropFunctionContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; DropFunctionContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; DropFunctionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDropFunction(this); } }; DropFunctionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDropFunction(this); } }; DropFunctionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDropFunction(this); } else { return visitor.visitChildren(this); } }; function DescribeRelationContext(parser, ctx) { StatementContext.call(this, parser); this.option = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } DescribeRelationContext.prototype = Object.create(StatementContext.prototype); DescribeRelationContext.prototype.constructor = DescribeRelationContext; SparkSqlParser.DescribeRelationContext = DescribeRelationContext; DescribeRelationContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DescribeRelationContext.prototype.DESC = function() { return this.getToken(SparkSqlParser.DESC, 0); }; DescribeRelationContext.prototype.DESCRIBE = function() { return this.getToken(SparkSqlParser.DESCRIBE, 0); }; DescribeRelationContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; DescribeRelationContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; DescribeRelationContext.prototype.describeColName = function() { return this.getTypedRuleContext(DescribeColNameContext,0); }; DescribeRelationContext.prototype.EXTENDED = function() { return this.getToken(SparkSqlParser.EXTENDED, 0); }; DescribeRelationContext.prototype.FORMATTED = function() { return this.getToken(SparkSqlParser.FORMATTED, 0); }; DescribeRelationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDescribeRelation(this); } }; DescribeRelationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDescribeRelation(this); } }; DescribeRelationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDescribeRelation(this); } else { return visitor.visitChildren(this); } }; function LoadDataContext(parser, ctx) { StatementContext.call(this, parser); this.path = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } LoadDataContext.prototype = Object.create(StatementContext.prototype); LoadDataContext.prototype.constructor = LoadDataContext; SparkSqlParser.LoadDataContext = LoadDataContext; LoadDataContext.prototype.LOAD = function() { return this.getToken(SparkSqlParser.LOAD, 0); }; LoadDataContext.prototype.DATA = function() { return this.getToken(SparkSqlParser.DATA, 0); }; LoadDataContext.prototype.INPATH = function() { return this.getToken(SparkSqlParser.INPATH, 0); }; LoadDataContext.prototype.INTO = function() { return this.getToken(SparkSqlParser.INTO, 0); }; LoadDataContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; LoadDataContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; LoadDataContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; LoadDataContext.prototype.LOCAL = function() { return this.getToken(SparkSqlParser.LOCAL, 0); }; LoadDataContext.prototype.OVERWRITE = function() { return this.getToken(SparkSqlParser.OVERWRITE, 0); }; LoadDataContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; LoadDataContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterLoadData(this); } }; LoadDataContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitLoadData(this); } }; LoadDataContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitLoadData(this); } else { return visitor.visitChildren(this); } }; function ShowPartitionsContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowPartitionsContext.prototype = Object.create(StatementContext.prototype); ShowPartitionsContext.prototype.constructor = ShowPartitionsContext; SparkSqlParser.ShowPartitionsContext = ShowPartitionsContext; ShowPartitionsContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowPartitionsContext.prototype.PARTITIONS = function() { return this.getToken(SparkSqlParser.PARTITIONS, 0); }; ShowPartitionsContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ShowPartitionsContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; ShowPartitionsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowPartitions(this); } }; ShowPartitionsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowPartitions(this); } }; ShowPartitionsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowPartitions(this); } else { return visitor.visitChildren(this); } }; function DescribeFunctionContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DescribeFunctionContext.prototype = Object.create(StatementContext.prototype); DescribeFunctionContext.prototype.constructor = DescribeFunctionContext; SparkSqlParser.DescribeFunctionContext = DescribeFunctionContext; DescribeFunctionContext.prototype.FUNCTION = function() { return this.getToken(SparkSqlParser.FUNCTION, 0); }; DescribeFunctionContext.prototype.describeFuncName = function() { return this.getTypedRuleContext(DescribeFuncNameContext,0); }; DescribeFunctionContext.prototype.DESC = function() { return this.getToken(SparkSqlParser.DESC, 0); }; DescribeFunctionContext.prototype.DESCRIBE = function() { return this.getToken(SparkSqlParser.DESCRIBE, 0); }; DescribeFunctionContext.prototype.EXTENDED = function() { return this.getToken(SparkSqlParser.EXTENDED, 0); }; DescribeFunctionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDescribeFunction(this); } }; DescribeFunctionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDescribeFunction(this); } }; DescribeFunctionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDescribeFunction(this); } else { return visitor.visitChildren(this); } }; function RenameTableColumnContext(parser, ctx) { StatementContext.call(this, parser); this.table = null; // MultipartIdentifierContext; this.from = null; // MultipartIdentifierContext; this.to = null; // ErrorCapturingIdentifierContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } RenameTableColumnContext.prototype = Object.create(StatementContext.prototype); RenameTableColumnContext.prototype.constructor = RenameTableColumnContext; SparkSqlParser.RenameTableColumnContext = RenameTableColumnContext; RenameTableColumnContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; RenameTableColumnContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; RenameTableColumnContext.prototype.RENAME = function() { return this.getToken(SparkSqlParser.RENAME, 0); }; RenameTableColumnContext.prototype.COLUMN = function() { return this.getToken(SparkSqlParser.COLUMN, 0); }; RenameTableColumnContext.prototype.TO = function() { return this.getToken(SparkSqlParser.TO, 0); }; RenameTableColumnContext.prototype.multipartIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MultipartIdentifierContext); } else { return this.getTypedRuleContext(MultipartIdentifierContext,i); } }; RenameTableColumnContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; RenameTableColumnContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRenameTableColumn(this); } }; RenameTableColumnContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRenameTableColumn(this); } }; RenameTableColumnContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRenameTableColumn(this); } else { return visitor.visitChildren(this); } }; function StatementDefaultContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } StatementDefaultContext.prototype = Object.create(StatementContext.prototype); StatementDefaultContext.prototype.constructor = StatementDefaultContext; SparkSqlParser.StatementDefaultContext = StatementDefaultContext; StatementDefaultContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; StatementDefaultContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterStatementDefault(this); } }; StatementDefaultContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitStatementDefault(this); } }; StatementDefaultContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitStatementDefault(this); } else { return visitor.visitChildren(this); } }; function HiveChangeColumnContext(parser, ctx) { StatementContext.call(this, parser); this.table = null; // MultipartIdentifierContext; this.colName = null; // MultipartIdentifierContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } HiveChangeColumnContext.prototype = Object.create(StatementContext.prototype); HiveChangeColumnContext.prototype.constructor = HiveChangeColumnContext; SparkSqlParser.HiveChangeColumnContext = HiveChangeColumnContext; HiveChangeColumnContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; HiveChangeColumnContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; HiveChangeColumnContext.prototype.CHANGE = function() { return this.getToken(SparkSqlParser.CHANGE, 0); }; HiveChangeColumnContext.prototype.colType = function() { return this.getTypedRuleContext(ColTypeContext,0); }; HiveChangeColumnContext.prototype.multipartIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MultipartIdentifierContext); } else { return this.getTypedRuleContext(MultipartIdentifierContext,i); } }; HiveChangeColumnContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; HiveChangeColumnContext.prototype.COLUMN = function() { return this.getToken(SparkSqlParser.COLUMN, 0); }; HiveChangeColumnContext.prototype.colPosition = function() { return this.getTypedRuleContext(ColPositionContext,0); }; HiveChangeColumnContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterHiveChangeColumn(this); } }; HiveChangeColumnContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitHiveChangeColumn(this); } }; HiveChangeColumnContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitHiveChangeColumn(this); } else { return visitor.visitChildren(this); } }; function SetTimeZoneContext(parser, ctx) { StatementContext.call(this, parser); this.timezone = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } SetTimeZoneContext.prototype = Object.create(StatementContext.prototype); SetTimeZoneContext.prototype.constructor = SetTimeZoneContext; SparkSqlParser.SetTimeZoneContext = SetTimeZoneContext; SetTimeZoneContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetTimeZoneContext.prototype.TIME = function() { return this.getToken(SparkSqlParser.TIME, 0); }; SetTimeZoneContext.prototype.ZONE = function() { return this.getToken(SparkSqlParser.ZONE, 0); }; SetTimeZoneContext.prototype.interval = function() { return this.getTypedRuleContext(IntervalContext,0); }; SetTimeZoneContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; SetTimeZoneContext.prototype.LOCAL = function() { return this.getToken(SparkSqlParser.LOCAL, 0); }; SetTimeZoneContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetTimeZone(this); } }; SetTimeZoneContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetTimeZone(this); } }; SetTimeZoneContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetTimeZone(this); } else { return visitor.visitChildren(this); } }; function DescribeQueryContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DescribeQueryContext.prototype = Object.create(StatementContext.prototype); DescribeQueryContext.prototype.constructor = DescribeQueryContext; SparkSqlParser.DescribeQueryContext = DescribeQueryContext; DescribeQueryContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; DescribeQueryContext.prototype.DESC = function() { return this.getToken(SparkSqlParser.DESC, 0); }; DescribeQueryContext.prototype.DESCRIBE = function() { return this.getToken(SparkSqlParser.DESCRIBE, 0); }; DescribeQueryContext.prototype.QUERY = function() { return this.getToken(SparkSqlParser.QUERY, 0); }; DescribeQueryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDescribeQuery(this); } }; DescribeQueryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDescribeQuery(this); } }; DescribeQueryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDescribeQuery(this); } else { return visitor.visitChildren(this); } }; function TruncateTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } TruncateTableContext.prototype = Object.create(StatementContext.prototype); TruncateTableContext.prototype.constructor = TruncateTableContext; SparkSqlParser.TruncateTableContext = TruncateTableContext; TruncateTableContext.prototype.TRUNCATE = function() { return this.getToken(SparkSqlParser.TRUNCATE, 0); }; TruncateTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; TruncateTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; TruncateTableContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; TruncateTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTruncateTable(this); } }; TruncateTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTruncateTable(this); } }; TruncateTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTruncateTable(this); } else { return visitor.visitChildren(this); } }; function SetTableSerDeContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } SetTableSerDeContext.prototype = Object.create(StatementContext.prototype); SetTableSerDeContext.prototype.constructor = SetTableSerDeContext; SparkSqlParser.SetTableSerDeContext = SetTableSerDeContext; SetTableSerDeContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; SetTableSerDeContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; SetTableSerDeContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; SetTableSerDeContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetTableSerDeContext.prototype.SERDE = function() { return this.getToken(SparkSqlParser.SERDE, 0); }; SetTableSerDeContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; SetTableSerDeContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; SetTableSerDeContext.prototype.WITH = function() { return this.getToken(SparkSqlParser.WITH, 0); }; SetTableSerDeContext.prototype.SERDEPROPERTIES = function() { return this.getToken(SparkSqlParser.SERDEPROPERTIES, 0); }; SetTableSerDeContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; SetTableSerDeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetTableSerDe(this); } }; SetTableSerDeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetTableSerDe(this); } }; SetTableSerDeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetTableSerDe(this); } else { return visitor.visitChildren(this); } }; function CreateViewContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } CreateViewContext.prototype = Object.create(StatementContext.prototype); CreateViewContext.prototype.constructor = CreateViewContext; SparkSqlParser.CreateViewContext = CreateViewContext; CreateViewContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; CreateViewContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; CreateViewContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; CreateViewContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; CreateViewContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; CreateViewContext.prototype.OR = function() { return this.getToken(SparkSqlParser.OR, 0); }; CreateViewContext.prototype.REPLACE = function() { return this.getToken(SparkSqlParser.REPLACE, 0); }; CreateViewContext.prototype.TEMPORARY = function() { return this.getToken(SparkSqlParser.TEMPORARY, 0); }; CreateViewContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; CreateViewContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; CreateViewContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; CreateViewContext.prototype.identifierCommentList = function() { return this.getTypedRuleContext(IdentifierCommentListContext,0); }; CreateViewContext.prototype.commentSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(CommentSpecContext); } else { return this.getTypedRuleContext(CommentSpecContext,i); } }; CreateViewContext.prototype.PARTITIONED = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.PARTITIONED); } else { return this.getToken(SparkSqlParser.PARTITIONED, i); } }; CreateViewContext.prototype.ON = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.ON); } else { return this.getToken(SparkSqlParser.ON, i); } }; CreateViewContext.prototype.identifierList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierListContext); } else { return this.getTypedRuleContext(IdentifierListContext,i); } }; CreateViewContext.prototype.TBLPROPERTIES = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.TBLPROPERTIES); } else { return this.getToken(SparkSqlParser.TBLPROPERTIES, i); } }; CreateViewContext.prototype.tablePropertyList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TablePropertyListContext); } else { return this.getTypedRuleContext(TablePropertyListContext,i); } }; CreateViewContext.prototype.GLOBAL = function() { return this.getToken(SparkSqlParser.GLOBAL, 0); }; CreateViewContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateView(this); } }; CreateViewContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateView(this); } }; CreateViewContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateView(this); } else { return visitor.visitChildren(this); } }; function DropTablePartitionsContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DropTablePartitionsContext.prototype = Object.create(StatementContext.prototype); DropTablePartitionsContext.prototype.constructor = DropTablePartitionsContext; SparkSqlParser.DropTablePartitionsContext = DropTablePartitionsContext; DropTablePartitionsContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; DropTablePartitionsContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DropTablePartitionsContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; DropTablePartitionsContext.prototype.partitionSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(PartitionSpecContext); } else { return this.getTypedRuleContext(PartitionSpecContext,i); } }; DropTablePartitionsContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; DropTablePartitionsContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; DropTablePartitionsContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; DropTablePartitionsContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; DropTablePartitionsContext.prototype.PURGE = function() { return this.getToken(SparkSqlParser.PURGE, 0); }; DropTablePartitionsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDropTablePartitions(this); } }; DropTablePartitionsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDropTablePartitions(this); } }; DropTablePartitionsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDropTablePartitions(this); } else { return visitor.visitChildren(this); } }; function SetConfigurationContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } SetConfigurationContext.prototype = Object.create(StatementContext.prototype); SetConfigurationContext.prototype.constructor = SetConfigurationContext; SparkSqlParser.SetConfigurationContext = SetConfigurationContext; SetConfigurationContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetConfigurationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetConfiguration(this); } }; SetConfigurationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetConfiguration(this); } }; SetConfigurationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetConfiguration(this); } else { return visitor.visitChildren(this); } }; function DropTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DropTableContext.prototype = Object.create(StatementContext.prototype); DropTableContext.prototype.constructor = DropTableContext; SparkSqlParser.DropTableContext = DropTableContext; DropTableContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; DropTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; DropTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DropTableContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; DropTableContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; DropTableContext.prototype.PURGE = function() { return this.getToken(SparkSqlParser.PURGE, 0); }; DropTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDropTable(this); } }; DropTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDropTable(this); } }; DropTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDropTable(this); } else { return visitor.visitChildren(this); } }; function DescribeNamespaceContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } DescribeNamespaceContext.prototype = Object.create(StatementContext.prototype); DescribeNamespaceContext.prototype.constructor = DescribeNamespaceContext; SparkSqlParser.DescribeNamespaceContext = DescribeNamespaceContext; DescribeNamespaceContext.prototype.namespace = function() { return this.getTypedRuleContext(NamespaceContext,0); }; DescribeNamespaceContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DescribeNamespaceContext.prototype.DESC = function() { return this.getToken(SparkSqlParser.DESC, 0); }; DescribeNamespaceContext.prototype.DESCRIBE = function() { return this.getToken(SparkSqlParser.DESCRIBE, 0); }; DescribeNamespaceContext.prototype.EXTENDED = function() { return this.getToken(SparkSqlParser.EXTENDED, 0); }; DescribeNamespaceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDescribeNamespace(this); } }; DescribeNamespaceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDescribeNamespace(this); } }; DescribeNamespaceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDescribeNamespace(this); } else { return visitor.visitChildren(this); } }; function AlterTableAlterColumnContext(parser, ctx) { StatementContext.call(this, parser); this.table = null; // MultipartIdentifierContext; this.column = null; // MultipartIdentifierContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } AlterTableAlterColumnContext.prototype = Object.create(StatementContext.prototype); AlterTableAlterColumnContext.prototype.constructor = AlterTableAlterColumnContext; SparkSqlParser.AlterTableAlterColumnContext = AlterTableAlterColumnContext; AlterTableAlterColumnContext.prototype.ALTER = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.ALTER); } else { return this.getToken(SparkSqlParser.ALTER, i); } }; AlterTableAlterColumnContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; AlterTableAlterColumnContext.prototype.multipartIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MultipartIdentifierContext); } else { return this.getTypedRuleContext(MultipartIdentifierContext,i); } }; AlterTableAlterColumnContext.prototype.CHANGE = function() { return this.getToken(SparkSqlParser.CHANGE, 0); }; AlterTableAlterColumnContext.prototype.COLUMN = function() { return this.getToken(SparkSqlParser.COLUMN, 0); }; AlterTableAlterColumnContext.prototype.alterColumnAction = function() { return this.getTypedRuleContext(AlterColumnActionContext,0); }; AlterTableAlterColumnContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAlterTableAlterColumn(this); } }; AlterTableAlterColumnContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAlterTableAlterColumn(this); } }; AlterTableAlterColumnContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAlterTableAlterColumn(this); } else { return visitor.visitChildren(this); } }; function RefreshFunctionContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } RefreshFunctionContext.prototype = Object.create(StatementContext.prototype); RefreshFunctionContext.prototype.constructor = RefreshFunctionContext; SparkSqlParser.RefreshFunctionContext = RefreshFunctionContext; RefreshFunctionContext.prototype.REFRESH = function() { return this.getToken(SparkSqlParser.REFRESH, 0); }; RefreshFunctionContext.prototype.FUNCTION = function() { return this.getToken(SparkSqlParser.FUNCTION, 0); }; RefreshFunctionContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; RefreshFunctionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRefreshFunction(this); } }; RefreshFunctionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRefreshFunction(this); } }; RefreshFunctionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRefreshFunction(this); } else { return visitor.visitChildren(this); } }; function CommentTableContext(parser, ctx) { StatementContext.call(this, parser); this.comment = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } CommentTableContext.prototype = Object.create(StatementContext.prototype); CommentTableContext.prototype.constructor = CommentTableContext; SparkSqlParser.CommentTableContext = CommentTableContext; CommentTableContext.prototype.COMMENT = function() { return this.getToken(SparkSqlParser.COMMENT, 0); }; CommentTableContext.prototype.ON = function() { return this.getToken(SparkSqlParser.ON, 0); }; CommentTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; CommentTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; CommentTableContext.prototype.IS = function() { return this.getToken(SparkSqlParser.IS, 0); }; CommentTableContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; CommentTableContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; CommentTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCommentTable(this); } }; CommentTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCommentTable(this); } }; CommentTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCommentTable(this); } else { return visitor.visitChildren(this); } }; function CreateNamespaceContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } CreateNamespaceContext.prototype = Object.create(StatementContext.prototype); CreateNamespaceContext.prototype.constructor = CreateNamespaceContext; SparkSqlParser.CreateNamespaceContext = CreateNamespaceContext; CreateNamespaceContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; CreateNamespaceContext.prototype.namespace = function() { return this.getTypedRuleContext(NamespaceContext,0); }; CreateNamespaceContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; CreateNamespaceContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; CreateNamespaceContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; CreateNamespaceContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; CreateNamespaceContext.prototype.commentSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(CommentSpecContext); } else { return this.getTypedRuleContext(CommentSpecContext,i); } }; CreateNamespaceContext.prototype.locationSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(LocationSpecContext); } else { return this.getTypedRuleContext(LocationSpecContext,i); } }; CreateNamespaceContext.prototype.WITH = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.WITH); } else { return this.getToken(SparkSqlParser.WITH, i); } }; CreateNamespaceContext.prototype.tablePropertyList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TablePropertyListContext); } else { return this.getTypedRuleContext(TablePropertyListContext,i); } }; CreateNamespaceContext.prototype.DBPROPERTIES = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.DBPROPERTIES); } else { return this.getToken(SparkSqlParser.DBPROPERTIES, i); } }; CreateNamespaceContext.prototype.PROPERTIES = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.PROPERTIES); } else { return this.getToken(SparkSqlParser.PROPERTIES, i); } }; CreateNamespaceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateNamespace(this); } }; CreateNamespaceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateNamespace(this); } }; CreateNamespaceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateNamespace(this); } else { return visitor.visitChildren(this); } }; function ShowTblPropertiesContext(parser, ctx) { StatementContext.call(this, parser); this.table = null; // MultipartIdentifierContext; this.key = null; // TablePropertyKeyContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowTblPropertiesContext.prototype = Object.create(StatementContext.prototype); ShowTblPropertiesContext.prototype.constructor = ShowTblPropertiesContext; SparkSqlParser.ShowTblPropertiesContext = ShowTblPropertiesContext; ShowTblPropertiesContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowTblPropertiesContext.prototype.TBLPROPERTIES = function() { return this.getToken(SparkSqlParser.TBLPROPERTIES, 0); }; ShowTblPropertiesContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ShowTblPropertiesContext.prototype.tablePropertyKey = function() { return this.getTypedRuleContext(TablePropertyKeyContext,0); }; ShowTblPropertiesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowTblProperties(this); } }; ShowTblPropertiesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowTblProperties(this); } }; ShowTblPropertiesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowTblProperties(this); } else { return visitor.visitChildren(this); } }; function UnsetTablePropertiesContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } UnsetTablePropertiesContext.prototype = Object.create(StatementContext.prototype); UnsetTablePropertiesContext.prototype.constructor = UnsetTablePropertiesContext; SparkSqlParser.UnsetTablePropertiesContext = UnsetTablePropertiesContext; UnsetTablePropertiesContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; UnsetTablePropertiesContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; UnsetTablePropertiesContext.prototype.UNSET = function() { return this.getToken(SparkSqlParser.UNSET, 0); }; UnsetTablePropertiesContext.prototype.TBLPROPERTIES = function() { return this.getToken(SparkSqlParser.TBLPROPERTIES, 0); }; UnsetTablePropertiesContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; UnsetTablePropertiesContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; UnsetTablePropertiesContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; UnsetTablePropertiesContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; UnsetTablePropertiesContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; UnsetTablePropertiesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterUnsetTableProperties(this); } }; UnsetTablePropertiesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitUnsetTableProperties(this); } }; UnsetTablePropertiesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitUnsetTableProperties(this); } else { return visitor.visitChildren(this); } }; function SetTableLocationContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } SetTableLocationContext.prototype = Object.create(StatementContext.prototype); SetTableLocationContext.prototype.constructor = SetTableLocationContext; SparkSqlParser.SetTableLocationContext = SetTableLocationContext; SetTableLocationContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; SetTableLocationContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; SetTableLocationContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; SetTableLocationContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetTableLocationContext.prototype.locationSpec = function() { return this.getTypedRuleContext(LocationSpecContext,0); }; SetTableLocationContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; SetTableLocationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetTableLocation(this); } }; SetTableLocationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetTableLocation(this); } }; SetTableLocationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetTableLocation(this); } else { return visitor.visitChildren(this); } }; function DropTableColumnsContext(parser, ctx) { StatementContext.call(this, parser); this.columns = null; // MultipartIdentifierListContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } DropTableColumnsContext.prototype = Object.create(StatementContext.prototype); DropTableColumnsContext.prototype.constructor = DropTableColumnsContext; SparkSqlParser.DropTableColumnsContext = DropTableColumnsContext; DropTableColumnsContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; DropTableColumnsContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; DropTableColumnsContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DropTableColumnsContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; DropTableColumnsContext.prototype.COLUMN = function() { return this.getToken(SparkSqlParser.COLUMN, 0); }; DropTableColumnsContext.prototype.COLUMNS = function() { return this.getToken(SparkSqlParser.COLUMNS, 0); }; DropTableColumnsContext.prototype.multipartIdentifierList = function() { return this.getTypedRuleContext(MultipartIdentifierListContext,0); }; DropTableColumnsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDropTableColumns(this); } }; DropTableColumnsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDropTableColumns(this); } }; DropTableColumnsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDropTableColumns(this); } else { return visitor.visitChildren(this); } }; function ShowViewsContext(parser, ctx) { StatementContext.call(this, parser); this.pattern = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowViewsContext.prototype = Object.create(StatementContext.prototype); ShowViewsContext.prototype.constructor = ShowViewsContext; SparkSqlParser.ShowViewsContext = ShowViewsContext; ShowViewsContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowViewsContext.prototype.VIEWS = function() { return this.getToken(SparkSqlParser.VIEWS, 0); }; ShowViewsContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ShowViewsContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; ShowViewsContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; ShowViewsContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; ShowViewsContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; ShowViewsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowViews(this); } }; ShowViewsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowViews(this); } }; ShowViewsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowViews(this); } else { return visitor.visitChildren(this); } }; function ShowFunctionsContext(parser, ctx) { StatementContext.call(this, parser); this.pattern = null; // Token; StatementContext.prototype.copyFrom.call(this, ctx); return this; } ShowFunctionsContext.prototype = Object.create(StatementContext.prototype); ShowFunctionsContext.prototype.constructor = ShowFunctionsContext; SparkSqlParser.ShowFunctionsContext = ShowFunctionsContext; ShowFunctionsContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; ShowFunctionsContext.prototype.FUNCTIONS = function() { return this.getToken(SparkSqlParser.FUNCTIONS, 0); }; ShowFunctionsContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; ShowFunctionsContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ShowFunctionsContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; ShowFunctionsContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; ShowFunctionsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterShowFunctions(this); } }; ShowFunctionsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitShowFunctions(this); } }; ShowFunctionsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitShowFunctions(this); } else { return visitor.visitChildren(this); } }; function CacheTableContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } CacheTableContext.prototype = Object.create(StatementContext.prototype); CacheTableContext.prototype.constructor = CacheTableContext; SparkSqlParser.CacheTableContext = CacheTableContext; CacheTableContext.prototype.CACHE = function() { return this.getToken(SparkSqlParser.CACHE, 0); }; CacheTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; CacheTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; CacheTableContext.prototype.LAZY = function() { return this.getToken(SparkSqlParser.LAZY, 0); }; CacheTableContext.prototype.OPTIONS = function() { return this.getToken(SparkSqlParser.OPTIONS, 0); }; CacheTableContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; CacheTableContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; CacheTableContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; CacheTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCacheTable(this); } }; CacheTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCacheTable(this); } }; CacheTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCacheTable(this); } else { return visitor.visitChildren(this); } }; function AddTableColumnsContext(parser, ctx) { StatementContext.call(this, parser); this.columns = null; // QualifiedColTypeWithPositionListContext; StatementContext.prototype.copyFrom.call(this, ctx); return this; } AddTableColumnsContext.prototype = Object.create(StatementContext.prototype); AddTableColumnsContext.prototype.constructor = AddTableColumnsContext; SparkSqlParser.AddTableColumnsContext = AddTableColumnsContext; AddTableColumnsContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; AddTableColumnsContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; AddTableColumnsContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; AddTableColumnsContext.prototype.ADD = function() { return this.getToken(SparkSqlParser.ADD, 0); }; AddTableColumnsContext.prototype.COLUMN = function() { return this.getToken(SparkSqlParser.COLUMN, 0); }; AddTableColumnsContext.prototype.COLUMNS = function() { return this.getToken(SparkSqlParser.COLUMNS, 0); }; AddTableColumnsContext.prototype.qualifiedColTypeWithPositionList = function() { return this.getTypedRuleContext(QualifiedColTypeWithPositionListContext,0); }; AddTableColumnsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAddTableColumns(this); } }; AddTableColumnsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAddTableColumns(this); } }; AddTableColumnsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAddTableColumns(this); } else { return visitor.visitChildren(this); } }; function SetTablePropertiesContext(parser, ctx) { StatementContext.call(this, parser); StatementContext.prototype.copyFrom.call(this, ctx); return this; } SetTablePropertiesContext.prototype = Object.create(StatementContext.prototype); SetTablePropertiesContext.prototype.constructor = SetTablePropertiesContext; SparkSqlParser.SetTablePropertiesContext = SetTablePropertiesContext; SetTablePropertiesContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; SetTablePropertiesContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; SetTablePropertiesContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetTablePropertiesContext.prototype.TBLPROPERTIES = function() { return this.getToken(SparkSqlParser.TBLPROPERTIES, 0); }; SetTablePropertiesContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; SetTablePropertiesContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; SetTablePropertiesContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; SetTablePropertiesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetTableProperties(this); } }; SetTablePropertiesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetTableProperties(this); } }; SetTablePropertiesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetTableProperties(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.StatementContext = StatementContext; SparkSqlParser.prototype.statement = function() { var localctx = new StatementContext(this, this._ctx, this.state); this.enterRule(localctx, 14, SparkSqlParser.RULE_statement); var _la = 0; // Token type try { this.state = 1043; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,110,this._ctx); switch(la_) { case 1: localctx = new StatementDefaultContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 299; this.query(); break; case 2: localctx = new DmlStatementContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 301; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.WITH) { this.state = 300; this.ctes(); } this.state = 303; this.dmlStatementNoWith(); break; case 3: localctx = new UseContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 304; this.match(SparkSqlParser.USE); this.state = 306; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,2,this._ctx); if(la_===1) { this.state = 305; this.match(SparkSqlParser.NAMESPACE); } this.state = 308; this.multipartIdentifier(); break; case 4: localctx = new CreateNamespaceContext(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 309; this.match(SparkSqlParser.CREATE); this.state = 310; this.namespace(); this.state = 314; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,3,this._ctx); if(la_===1) { this.state = 311; this.match(SparkSqlParser.IF); this.state = 312; this.match(SparkSqlParser.NOT); this.state = 313; this.match(SparkSqlParser.EXISTS); } this.state = 316; this.multipartIdentifier(); this.state = 324; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.COMMENT || _la===SparkSqlParser.LOCATION || _la===SparkSqlParser.WITH) { this.state = 322; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.COMMENT: this.state = 317; this.commentSpec(); break; case SparkSqlParser.LOCATION: this.state = 318; this.locationSpec(); break; case SparkSqlParser.WITH: this.state = 319; this.match(SparkSqlParser.WITH); this.state = 320; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DBPROPERTIES || _la===SparkSqlParser.PROPERTIES)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 321; this.tablePropertyList(); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 326; this._errHandler.sync(this); _la = this._input.LA(1); } break; case 5: localctx = new SetNamespacePropertiesContext(this, localctx); this.enterOuterAlt(localctx, 5); this.state = 327; this.match(SparkSqlParser.ALTER); this.state = 328; this.namespace(); this.state = 329; this.multipartIdentifier(); this.state = 330; this.match(SparkSqlParser.SET); this.state = 331; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DBPROPERTIES || _la===SparkSqlParser.PROPERTIES)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 332; this.tablePropertyList(); break; case 6: localctx = new SetNamespaceLocationContext(this, localctx); this.enterOuterAlt(localctx, 6); this.state = 334; this.match(SparkSqlParser.ALTER); this.state = 335; this.namespace(); this.state = 336; this.multipartIdentifier(); this.state = 337; this.match(SparkSqlParser.SET); this.state = 338; this.locationSpec(); break; case 7: localctx = new DropNamespaceContext(this, localctx); this.enterOuterAlt(localctx, 7); this.state = 340; this.match(SparkSqlParser.DROP); this.state = 341; this.namespace(); this.state = 344; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,6,this._ctx); if(la_===1) { this.state = 342; this.match(SparkSqlParser.IF); this.state = 343; this.match(SparkSqlParser.EXISTS); } this.state = 346; this.multipartIdentifier(); this.state = 348; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.CASCADE || _la===SparkSqlParser.RESTRICT) { this.state = 347; _la = this._input.LA(1); if(!(_la===SparkSqlParser.CASCADE || _la===SparkSqlParser.RESTRICT)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } break; case 8: localctx = new ShowNamespacesContext(this, localctx); this.enterOuterAlt(localctx, 8); this.state = 350; this.match(SparkSqlParser.SHOW); this.state = 351; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DATABASES || _la===SparkSqlParser.NAMESPACES)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 354; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN) { this.state = 352; _la = this._input.LA(1); if(!(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 353; this.multipartIdentifier(); } this.state = 360; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LIKE || _la===SparkSqlParser.STRING) { this.state = 357; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LIKE) { this.state = 356; this.match(SparkSqlParser.LIKE); } this.state = 359; localctx.pattern = this.match(SparkSqlParser.STRING); } break; case 9: localctx = new CreateTableContext(this, localctx); this.enterOuterAlt(localctx, 9); this.state = 362; this.createTableHeader(); this.state = 367; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1) { this.state = 363; this.match(SparkSqlParser.T__1); this.state = 364; this.colTypeList(); this.state = 365; this.match(SparkSqlParser.T__2); } this.state = 369; this.tableProvider(); this.state = 370; this.createTableClauses(); this.state = 375; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1 || _la===SparkSqlParser.AS || _la===SparkSqlParser.FROM || _la===SparkSqlParser.MAP || _la===SparkSqlParser.REDUCE || _la===SparkSqlParser.SELECT || _la===SparkSqlParser.TABLE || _la===SparkSqlParser.VALUES || _la===SparkSqlParser.WITH) { this.state = 372; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AS) { this.state = 371; this.match(SparkSqlParser.AS); } this.state = 374; this.query(); } break; case 10: localctx = new CreateHiveTableContext(this, localctx); this.enterOuterAlt(localctx, 10); this.state = 377; this.createTableHeader(); this.state = 382; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,14,this._ctx); if(la_===1) { this.state = 378; this.match(SparkSqlParser.T__1); this.state = 379; localctx.columns = this.colTypeList(); this.state = 380; this.match(SparkSqlParser.T__2); } this.state = 405; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.CLUSTERED || _la===SparkSqlParser.COMMENT || _la===SparkSqlParser.LOCATION || _la===SparkSqlParser.PARTITIONED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SparkSqlParser.ROW - 199)) | (1 << (SparkSqlParser.SKEWED - 199)) | (1 << (SparkSqlParser.STORED - 199)) | (1 << (SparkSqlParser.TBLPROPERTIES - 199)))) !== 0)) { this.state = 403; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.COMMENT: this.state = 384; this.commentSpec(); break; case SparkSqlParser.PARTITIONED: this.state = 394; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,15,this._ctx); switch(la_) { case 1: this.state = 385; this.match(SparkSqlParser.PARTITIONED); this.state = 386; this.match(SparkSqlParser.BY); this.state = 387; this.match(SparkSqlParser.T__1); this.state = 388; localctx.partitionColumns = this.colTypeList(); this.state = 389; this.match(SparkSqlParser.T__2); break; case 2: this.state = 391; this.match(SparkSqlParser.PARTITIONED); this.state = 392; this.match(SparkSqlParser.BY); this.state = 393; localctx.partitionColumnNames = this.identifierList(); break; } break; case SparkSqlParser.CLUSTERED: this.state = 396; this.bucketSpec(); break; case SparkSqlParser.SKEWED: this.state = 397; this.skewSpec(); break; case SparkSqlParser.ROW: this.state = 398; this.rowFormat(); break; case SparkSqlParser.STORED: this.state = 399; this.createFileFormat(); break; case SparkSqlParser.LOCATION: this.state = 400; this.locationSpec(); break; case SparkSqlParser.TBLPROPERTIES: this.state = 401; this.match(SparkSqlParser.TBLPROPERTIES); this.state = 402; localctx.tableProps = this.tablePropertyList(); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 407; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 412; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1 || _la===SparkSqlParser.AS || _la===SparkSqlParser.FROM || _la===SparkSqlParser.MAP || _la===SparkSqlParser.REDUCE || _la===SparkSqlParser.SELECT || _la===SparkSqlParser.TABLE || _la===SparkSqlParser.VALUES || _la===SparkSqlParser.WITH) { this.state = 409; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AS) { this.state = 408; this.match(SparkSqlParser.AS); } this.state = 411; this.query(); } break; case 11: localctx = new CreateTableLikeContext(this, localctx); this.enterOuterAlt(localctx, 11); this.state = 414; this.match(SparkSqlParser.CREATE); this.state = 415; this.match(SparkSqlParser.TABLE); this.state = 419; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,20,this._ctx); if(la_===1) { this.state = 416; this.match(SparkSqlParser.IF); this.state = 417; this.match(SparkSqlParser.NOT); this.state = 418; this.match(SparkSqlParser.EXISTS); } this.state = 421; localctx.target = this.tableIdentifier(); this.state = 422; this.match(SparkSqlParser.LIKE); this.state = 423; localctx.source = this.tableIdentifier(); this.state = 432; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.LOCATION || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SparkSqlParser.ROW - 199)) | (1 << (SparkSqlParser.STORED - 199)) | (1 << (SparkSqlParser.TBLPROPERTIES - 199)))) !== 0) || _la===SparkSqlParser.USING) { this.state = 430; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.USING: this.state = 424; this.tableProvider(); break; case SparkSqlParser.ROW: this.state = 425; this.rowFormat(); break; case SparkSqlParser.STORED: this.state = 426; this.createFileFormat(); break; case SparkSqlParser.LOCATION: this.state = 427; this.locationSpec(); break; case SparkSqlParser.TBLPROPERTIES: this.state = 428; this.match(SparkSqlParser.TBLPROPERTIES); this.state = 429; localctx.tableProps = this.tablePropertyList(); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 434; this._errHandler.sync(this); _la = this._input.LA(1); } break; case 12: localctx = new ReplaceTableContext(this, localctx); this.enterOuterAlt(localctx, 12); this.state = 435; this.replaceTableHeader(); this.state = 440; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1) { this.state = 436; this.match(SparkSqlParser.T__1); this.state = 437; this.colTypeList(); this.state = 438; this.match(SparkSqlParser.T__2); } this.state = 442; this.tableProvider(); this.state = 443; this.createTableClauses(); this.state = 448; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1 || _la===SparkSqlParser.AS || _la===SparkSqlParser.FROM || _la===SparkSqlParser.MAP || _la===SparkSqlParser.REDUCE || _la===SparkSqlParser.SELECT || _la===SparkSqlParser.TABLE || _la===SparkSqlParser.VALUES || _la===SparkSqlParser.WITH) { this.state = 445; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AS) { this.state = 444; this.match(SparkSqlParser.AS); } this.state = 447; this.query(); } break; case 13: localctx = new AnalyzeContext(this, localctx); this.enterOuterAlt(localctx, 13); this.state = 450; this.match(SparkSqlParser.ANALYZE); this.state = 451; this.match(SparkSqlParser.TABLE); this.state = 452; this.multipartIdentifier(); this.state = 454; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 453; this.partitionSpec(); } this.state = 456; this.match(SparkSqlParser.COMPUTE); this.state = 457; this.match(SparkSqlParser.STATISTICS); this.state = 465; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,27,this._ctx); if(la_===1) { this.state = 458; this.identifier(); } else if(la_===2) { this.state = 459; this.match(SparkSqlParser.FOR); this.state = 460; this.match(SparkSqlParser.COLUMNS); this.state = 461; this.identifierSeq(); } else if(la_===3) { this.state = 462; this.match(SparkSqlParser.FOR); this.state = 463; this.match(SparkSqlParser.ALL); this.state = 464; this.match(SparkSqlParser.COLUMNS); } break; case 14: localctx = new AddTableColumnsContext(this, localctx); this.enterOuterAlt(localctx, 14); this.state = 467; this.match(SparkSqlParser.ALTER); this.state = 468; this.match(SparkSqlParser.TABLE); this.state = 469; this.multipartIdentifier(); this.state = 470; this.match(SparkSqlParser.ADD); this.state = 471; _la = this._input.LA(1); if(!(_la===SparkSqlParser.COLUMN || _la===SparkSqlParser.COLUMNS)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 472; localctx.columns = this.qualifiedColTypeWithPositionList(); break; case 15: localctx = new AddTableColumnsContext(this, localctx); this.enterOuterAlt(localctx, 15); this.state = 474; this.match(SparkSqlParser.ALTER); this.state = 475; this.match(SparkSqlParser.TABLE); this.state = 476; this.multipartIdentifier(); this.state = 477; this.match(SparkSqlParser.ADD); this.state = 478; _la = this._input.LA(1); if(!(_la===SparkSqlParser.COLUMN || _la===SparkSqlParser.COLUMNS)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 479; this.match(SparkSqlParser.T__1); this.state = 480; localctx.columns = this.qualifiedColTypeWithPositionList(); this.state = 481; this.match(SparkSqlParser.T__2); break; case 16: localctx = new RenameTableColumnContext(this, localctx); this.enterOuterAlt(localctx, 16); this.state = 483; this.match(SparkSqlParser.ALTER); this.state = 484; this.match(SparkSqlParser.TABLE); this.state = 485; localctx.table = this.multipartIdentifier(); this.state = 486; this.match(SparkSqlParser.RENAME); this.state = 487; this.match(SparkSqlParser.COLUMN); this.state = 488; localctx.from = this.multipartIdentifier(); this.state = 489; this.match(SparkSqlParser.TO); this.state = 490; localctx.to = this.errorCapturingIdentifier(); break; case 17: localctx = new DropTableColumnsContext(this, localctx); this.enterOuterAlt(localctx, 17); this.state = 492; this.match(SparkSqlParser.ALTER); this.state = 493; this.match(SparkSqlParser.TABLE); this.state = 494; this.multipartIdentifier(); this.state = 495; this.match(SparkSqlParser.DROP); this.state = 496; _la = this._input.LA(1); if(!(_la===SparkSqlParser.COLUMN || _la===SparkSqlParser.COLUMNS)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 497; this.match(SparkSqlParser.T__1); this.state = 498; localctx.columns = this.multipartIdentifierList(); this.state = 499; this.match(SparkSqlParser.T__2); break; case 18: localctx = new DropTableColumnsContext(this, localctx); this.enterOuterAlt(localctx, 18); this.state = 501; this.match(SparkSqlParser.ALTER); this.state = 502; this.match(SparkSqlParser.TABLE); this.state = 503; this.multipartIdentifier(); this.state = 504; this.match(SparkSqlParser.DROP); this.state = 505; _la = this._input.LA(1); if(!(_la===SparkSqlParser.COLUMN || _la===SparkSqlParser.COLUMNS)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 506; localctx.columns = this.multipartIdentifierList(); break; case 19: localctx = new RenameTableContext(this, localctx); this.enterOuterAlt(localctx, 19); this.state = 508; this.match(SparkSqlParser.ALTER); this.state = 509; _la = this._input.LA(1); if(!(_la===SparkSqlParser.TABLE || _la===SparkSqlParser.VIEW)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 510; localctx.from = this.multipartIdentifier(); this.state = 511; this.match(SparkSqlParser.RENAME); this.state = 512; this.match(SparkSqlParser.TO); this.state = 513; localctx.to = this.multipartIdentifier(); break; case 20: localctx = new SetTablePropertiesContext(this, localctx); this.enterOuterAlt(localctx, 20); this.state = 515; this.match(SparkSqlParser.ALTER); this.state = 516; _la = this._input.LA(1); if(!(_la===SparkSqlParser.TABLE || _la===SparkSqlParser.VIEW)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 517; this.multipartIdentifier(); this.state = 518; this.match(SparkSqlParser.SET); this.state = 519; this.match(SparkSqlParser.TBLPROPERTIES); this.state = 520; this.tablePropertyList(); break; case 21: localctx = new UnsetTablePropertiesContext(this, localctx); this.enterOuterAlt(localctx, 21); this.state = 522; this.match(SparkSqlParser.ALTER); this.state = 523; _la = this._input.LA(1); if(!(_la===SparkSqlParser.TABLE || _la===SparkSqlParser.VIEW)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 524; this.multipartIdentifier(); this.state = 525; this.match(SparkSqlParser.UNSET); this.state = 526; this.match(SparkSqlParser.TBLPROPERTIES); this.state = 529; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.IF) { this.state = 527; this.match(SparkSqlParser.IF); this.state = 528; this.match(SparkSqlParser.EXISTS); } this.state = 531; this.tablePropertyList(); break; case 22: localctx = new AlterTableAlterColumnContext(this, localctx); this.enterOuterAlt(localctx, 22); this.state = 533; this.match(SparkSqlParser.ALTER); this.state = 534; this.match(SparkSqlParser.TABLE); this.state = 535; localctx.table = this.multipartIdentifier(); this.state = 536; _la = this._input.LA(1); if(!(_la===SparkSqlParser.ALTER || _la===SparkSqlParser.CHANGE)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 538; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,29,this._ctx); if(la_===1) { this.state = 537; this.match(SparkSqlParser.COLUMN); } this.state = 540; localctx.column = this.multipartIdentifier(); this.state = 542; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AFTER || _la===SparkSqlParser.COMMENT || _la===SparkSqlParser.DROP || _la===SparkSqlParser.FIRST || _la===SparkSqlParser.SET || _la===SparkSqlParser.TYPE) { this.state = 541; this.alterColumnAction(); } break; case 23: localctx = new HiveChangeColumnContext(this, localctx); this.enterOuterAlt(localctx, 23); this.state = 544; this.match(SparkSqlParser.ALTER); this.state = 545; this.match(SparkSqlParser.TABLE); this.state = 546; localctx.table = this.multipartIdentifier(); this.state = 548; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 547; this.partitionSpec(); } this.state = 550; this.match(SparkSqlParser.CHANGE); this.state = 552; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,32,this._ctx); if(la_===1) { this.state = 551; this.match(SparkSqlParser.COLUMN); } this.state = 554; localctx.colName = this.multipartIdentifier(); this.state = 555; this.colType(); this.state = 557; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AFTER || _la===SparkSqlParser.FIRST) { this.state = 556; this.colPosition(); } break; case 24: localctx = new HiveReplaceColumnsContext(this, localctx); this.enterOuterAlt(localctx, 24); this.state = 559; this.match(SparkSqlParser.ALTER); this.state = 560; this.match(SparkSqlParser.TABLE); this.state = 561; localctx.table = this.multipartIdentifier(); this.state = 563; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 562; this.partitionSpec(); } this.state = 565; this.match(SparkSqlParser.REPLACE); this.state = 566; this.match(SparkSqlParser.COLUMNS); this.state = 567; this.match(SparkSqlParser.T__1); this.state = 568; localctx.columns = this.qualifiedColTypeWithPositionList(); this.state = 569; this.match(SparkSqlParser.T__2); break; case 25: localctx = new SetTableSerDeContext(this, localctx); this.enterOuterAlt(localctx, 25); this.state = 571; this.match(SparkSqlParser.ALTER); this.state = 572; this.match(SparkSqlParser.TABLE); this.state = 573; this.multipartIdentifier(); this.state = 575; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 574; this.partitionSpec(); } this.state = 577; this.match(SparkSqlParser.SET); this.state = 578; this.match(SparkSqlParser.SERDE); this.state = 579; this.match(SparkSqlParser.STRING); this.state = 583; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.WITH) { this.state = 580; this.match(SparkSqlParser.WITH); this.state = 581; this.match(SparkSqlParser.SERDEPROPERTIES); this.state = 582; this.tablePropertyList(); } break; case 26: localctx = new SetTableSerDeContext(this, localctx); this.enterOuterAlt(localctx, 26); this.state = 585; this.match(SparkSqlParser.ALTER); this.state = 586; this.match(SparkSqlParser.TABLE); this.state = 587; this.multipartIdentifier(); this.state = 589; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 588; this.partitionSpec(); } this.state = 591; this.match(SparkSqlParser.SET); this.state = 592; this.match(SparkSqlParser.SERDEPROPERTIES); this.state = 593; this.tablePropertyList(); break; case 27: localctx = new AddTablePartitionContext(this, localctx); this.enterOuterAlt(localctx, 27); this.state = 595; this.match(SparkSqlParser.ALTER); this.state = 596; _la = this._input.LA(1); if(!(_la===SparkSqlParser.TABLE || _la===SparkSqlParser.VIEW)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 597; this.multipartIdentifier(); this.state = 598; this.match(SparkSqlParser.ADD); this.state = 602; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.IF) { this.state = 599; this.match(SparkSqlParser.IF); this.state = 600; this.match(SparkSqlParser.NOT); this.state = 601; this.match(SparkSqlParser.EXISTS); } this.state = 605; this._errHandler.sync(this); _la = this._input.LA(1); do { this.state = 604; this.partitionSpecLocation(); this.state = 607; this._errHandler.sync(this); _la = this._input.LA(1); } while(_la===SparkSqlParser.PARTITION); break; case 28: localctx = new RenameTablePartitionContext(this, localctx); this.enterOuterAlt(localctx, 28); this.state = 609; this.match(SparkSqlParser.ALTER); this.state = 610; this.match(SparkSqlParser.TABLE); this.state = 611; this.multipartIdentifier(); this.state = 612; localctx.from = this.partitionSpec(); this.state = 613; this.match(SparkSqlParser.RENAME); this.state = 614; this.match(SparkSqlParser.TO); this.state = 615; localctx.to = this.partitionSpec(); break; case 29: localctx = new DropTablePartitionsContext(this, localctx); this.enterOuterAlt(localctx, 29); this.state = 617; this.match(SparkSqlParser.ALTER); this.state = 618; _la = this._input.LA(1); if(!(_la===SparkSqlParser.TABLE || _la===SparkSqlParser.VIEW)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 619; this.multipartIdentifier(); this.state = 620; this.match(SparkSqlParser.DROP); this.state = 623; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.IF) { this.state = 621; this.match(SparkSqlParser.IF); this.state = 622; this.match(SparkSqlParser.EXISTS); } this.state = 625; this.partitionSpec(); this.state = 630; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 626; this.match(SparkSqlParser.T__3); this.state = 627; this.partitionSpec(); this.state = 632; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 634; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PURGE) { this.state = 633; this.match(SparkSqlParser.PURGE); } break; case 30: localctx = new SetTableLocationContext(this, localctx); this.enterOuterAlt(localctx, 30); this.state = 636; this.match(SparkSqlParser.ALTER); this.state = 637; this.match(SparkSqlParser.TABLE); this.state = 638; this.multipartIdentifier(); this.state = 640; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 639; this.partitionSpec(); } this.state = 642; this.match(SparkSqlParser.SET); this.state = 643; this.locationSpec(); break; case 31: localctx = new RecoverPartitionsContext(this, localctx); this.enterOuterAlt(localctx, 31); this.state = 645; this.match(SparkSqlParser.ALTER); this.state = 646; this.match(SparkSqlParser.TABLE); this.state = 647; this.multipartIdentifier(); this.state = 648; this.match(SparkSqlParser.RECOVER); this.state = 649; this.match(SparkSqlParser.PARTITIONS); break; case 32: localctx = new DropTableContext(this, localctx); this.enterOuterAlt(localctx, 32); this.state = 651; this.match(SparkSqlParser.DROP); this.state = 652; this.match(SparkSqlParser.TABLE); this.state = 655; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,44,this._ctx); if(la_===1) { this.state = 653; this.match(SparkSqlParser.IF); this.state = 654; this.match(SparkSqlParser.EXISTS); } this.state = 657; this.multipartIdentifier(); this.state = 659; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PURGE) { this.state = 658; this.match(SparkSqlParser.PURGE); } break; case 33: localctx = new DropViewContext(this, localctx); this.enterOuterAlt(localctx, 33); this.state = 661; this.match(SparkSqlParser.DROP); this.state = 662; this.match(SparkSqlParser.VIEW); this.state = 665; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,46,this._ctx); if(la_===1) { this.state = 663; this.match(SparkSqlParser.IF); this.state = 664; this.match(SparkSqlParser.EXISTS); } this.state = 667; this.multipartIdentifier(); break; case 34: localctx = new CreateViewContext(this, localctx); this.enterOuterAlt(localctx, 34); this.state = 668; this.match(SparkSqlParser.CREATE); this.state = 671; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OR) { this.state = 669; this.match(SparkSqlParser.OR); this.state = 670; this.match(SparkSqlParser.REPLACE); } this.state = 677; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.GLOBAL || _la===SparkSqlParser.TEMPORARY) { this.state = 674; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.GLOBAL) { this.state = 673; this.match(SparkSqlParser.GLOBAL); } this.state = 676; this.match(SparkSqlParser.TEMPORARY); } this.state = 679; this.match(SparkSqlParser.VIEW); this.state = 683; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,50,this._ctx); if(la_===1) { this.state = 680; this.match(SparkSqlParser.IF); this.state = 681; this.match(SparkSqlParser.NOT); this.state = 682; this.match(SparkSqlParser.EXISTS); } this.state = 685; this.multipartIdentifier(); this.state = 687; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1) { this.state = 686; this.identifierCommentList(); } this.state = 697; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.COMMENT || _la===SparkSqlParser.PARTITIONED || _la===SparkSqlParser.TBLPROPERTIES) { this.state = 695; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.COMMENT: this.state = 689; this.commentSpec(); break; case SparkSqlParser.PARTITIONED: this.state = 690; this.match(SparkSqlParser.PARTITIONED); this.state = 691; this.match(SparkSqlParser.ON); this.state = 692; this.identifierList(); break; case SparkSqlParser.TBLPROPERTIES: this.state = 693; this.match(SparkSqlParser.TBLPROPERTIES); this.state = 694; this.tablePropertyList(); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 699; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 700; this.match(SparkSqlParser.AS); this.state = 701; this.query(); break; case 35: localctx = new CreateTempViewUsingContext(this, localctx); this.enterOuterAlt(localctx, 35); this.state = 703; this.match(SparkSqlParser.CREATE); this.state = 706; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OR) { this.state = 704; this.match(SparkSqlParser.OR); this.state = 705; this.match(SparkSqlParser.REPLACE); } this.state = 709; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.GLOBAL) { this.state = 708; this.match(SparkSqlParser.GLOBAL); } this.state = 711; this.match(SparkSqlParser.TEMPORARY); this.state = 712; this.match(SparkSqlParser.VIEW); this.state = 713; this.tableIdentifier(); this.state = 718; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1) { this.state = 714; this.match(SparkSqlParser.T__1); this.state = 715; this.colTypeList(); this.state = 716; this.match(SparkSqlParser.T__2); } this.state = 720; this.tableProvider(); this.state = 723; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OPTIONS) { this.state = 721; this.match(SparkSqlParser.OPTIONS); this.state = 722; this.tablePropertyList(); } break; case 36: localctx = new AlterViewQueryContext(this, localctx); this.enterOuterAlt(localctx, 36); this.state = 725; this.match(SparkSqlParser.ALTER); this.state = 726; this.match(SparkSqlParser.VIEW); this.state = 727; this.multipartIdentifier(); this.state = 729; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AS) { this.state = 728; this.match(SparkSqlParser.AS); } this.state = 731; this.query(); break; case 37: localctx = new CreateFunctionContext(this, localctx); this.enterOuterAlt(localctx, 37); this.state = 733; this.match(SparkSqlParser.CREATE); this.state = 736; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OR) { this.state = 734; this.match(SparkSqlParser.OR); this.state = 735; this.match(SparkSqlParser.REPLACE); } this.state = 739; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.TEMPORARY) { this.state = 738; this.match(SparkSqlParser.TEMPORARY); } this.state = 741; this.match(SparkSqlParser.FUNCTION); this.state = 745; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,61,this._ctx); if(la_===1) { this.state = 742; this.match(SparkSqlParser.IF); this.state = 743; this.match(SparkSqlParser.NOT); this.state = 744; this.match(SparkSqlParser.EXISTS); } this.state = 747; this.multipartIdentifier(); this.state = 748; this.match(SparkSqlParser.AS); this.state = 749; localctx.className = this.match(SparkSqlParser.STRING); this.state = 759; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.USING) { this.state = 750; this.match(SparkSqlParser.USING); this.state = 751; this.resource(); this.state = 756; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 752; this.match(SparkSqlParser.T__3); this.state = 753; this.resource(); this.state = 758; this._errHandler.sync(this); _la = this._input.LA(1); } } break; case 38: localctx = new DropFunctionContext(this, localctx); this.enterOuterAlt(localctx, 38); this.state = 761; this.match(SparkSqlParser.DROP); this.state = 763; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.TEMPORARY) { this.state = 762; this.match(SparkSqlParser.TEMPORARY); } this.state = 765; this.match(SparkSqlParser.FUNCTION); this.state = 768; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,65,this._ctx); if(la_===1) { this.state = 766; this.match(SparkSqlParser.IF); this.state = 767; this.match(SparkSqlParser.EXISTS); } this.state = 770; this.multipartIdentifier(); break; case 39: localctx = new ExplainContext(this, localctx); this.enterOuterAlt(localctx, 39); this.state = 771; this.match(SparkSqlParser.EXPLAIN); this.state = 773; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.CODEGEN || _la===SparkSqlParser.COST || _la===SparkSqlParser.EXTENDED || _la===SparkSqlParser.FORMATTED || _la===SparkSqlParser.LOGICAL) { this.state = 772; _la = this._input.LA(1); if(!(_la===SparkSqlParser.CODEGEN || _la===SparkSqlParser.COST || _la===SparkSqlParser.EXTENDED || _la===SparkSqlParser.FORMATTED || _la===SparkSqlParser.LOGICAL)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } this.state = 775; this.statement(); break; case 40: localctx = new ShowTablesContext(this, localctx); this.enterOuterAlt(localctx, 40); this.state = 776; this.match(SparkSqlParser.SHOW); this.state = 777; this.match(SparkSqlParser.TABLES); this.state = 780; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN) { this.state = 778; _la = this._input.LA(1); if(!(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 779; this.multipartIdentifier(); } this.state = 786; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LIKE || _la===SparkSqlParser.STRING) { this.state = 783; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LIKE) { this.state = 782; this.match(SparkSqlParser.LIKE); } this.state = 785; localctx.pattern = this.match(SparkSqlParser.STRING); } break; case 41: localctx = new ShowTableContext(this, localctx); this.enterOuterAlt(localctx, 41); this.state = 788; this.match(SparkSqlParser.SHOW); this.state = 789; this.match(SparkSqlParser.TABLE); this.state = 790; this.match(SparkSqlParser.EXTENDED); this.state = 793; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN) { this.state = 791; _la = this._input.LA(1); if(!(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 792; localctx.ns = this.multipartIdentifier(); } this.state = 795; this.match(SparkSqlParser.LIKE); this.state = 796; localctx.pattern = this.match(SparkSqlParser.STRING); this.state = 798; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 797; this.partitionSpec(); } break; case 42: localctx = new ShowTblPropertiesContext(this, localctx); this.enterOuterAlt(localctx, 42); this.state = 800; this.match(SparkSqlParser.SHOW); this.state = 801; this.match(SparkSqlParser.TBLPROPERTIES); this.state = 802; localctx.table = this.multipartIdentifier(); this.state = 807; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1) { this.state = 803; this.match(SparkSqlParser.T__1); this.state = 804; localctx.key = this.tablePropertyKey(); this.state = 805; this.match(SparkSqlParser.T__2); } break; case 43: localctx = new ShowColumnsContext(this, localctx); this.enterOuterAlt(localctx, 43); this.state = 809; this.match(SparkSqlParser.SHOW); this.state = 810; this.match(SparkSqlParser.COLUMNS); this.state = 811; _la = this._input.LA(1); if(!(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 812; localctx.table = this.multipartIdentifier(); this.state = 815; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN) { this.state = 813; _la = this._input.LA(1); if(!(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 814; localctx.ns = this.multipartIdentifier(); } break; case 44: localctx = new ShowViewsContext(this, localctx); this.enterOuterAlt(localctx, 44); this.state = 817; this.match(SparkSqlParser.SHOW); this.state = 818; this.match(SparkSqlParser.VIEWS); this.state = 821; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN) { this.state = 819; _la = this._input.LA(1); if(!(_la===SparkSqlParser.FROM || _la===SparkSqlParser.IN)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 820; this.multipartIdentifier(); } this.state = 827; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LIKE || _la===SparkSqlParser.STRING) { this.state = 824; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LIKE) { this.state = 823; this.match(SparkSqlParser.LIKE); } this.state = 826; localctx.pattern = this.match(SparkSqlParser.STRING); } break; case 45: localctx = new ShowPartitionsContext(this, localctx); this.enterOuterAlt(localctx, 45); this.state = 829; this.match(SparkSqlParser.SHOW); this.state = 830; this.match(SparkSqlParser.PARTITIONS); this.state = 831; this.multipartIdentifier(); this.state = 833; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 832; this.partitionSpec(); } break; case 46: localctx = new ShowFunctionsContext(this, localctx); this.enterOuterAlt(localctx, 46); this.state = 835; this.match(SparkSqlParser.SHOW); this.state = 837; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,78,this._ctx); if(la_===1) { this.state = 836; this.identifier(); } this.state = 839; this.match(SparkSqlParser.FUNCTIONS); this.state = 847; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,81,this._ctx); if(la_===1) { this.state = 841; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,79,this._ctx); if(la_===1) { this.state = 840; this.match(SparkSqlParser.LIKE); } this.state = 845; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,80,this._ctx); switch(la_) { case 1: this.state = 843; this.multipartIdentifier(); break; case 2: this.state = 844; localctx.pattern = this.match(SparkSqlParser.STRING); break; } } break; case 47: localctx = new ShowCreateTableContext(this, localctx); this.enterOuterAlt(localctx, 47); this.state = 849; this.match(SparkSqlParser.SHOW); this.state = 850; this.match(SparkSqlParser.CREATE); this.state = 851; this.match(SparkSqlParser.TABLE); this.state = 852; this.multipartIdentifier(); this.state = 855; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AS) { this.state = 853; this.match(SparkSqlParser.AS); this.state = 854; this.match(SparkSqlParser.SERDE); } break; case 48: localctx = new ShowCurrentNamespaceContext(this, localctx); this.enterOuterAlt(localctx, 48); this.state = 857; this.match(SparkSqlParser.SHOW); this.state = 858; this.match(SparkSqlParser.CURRENT); this.state = 859; this.match(SparkSqlParser.NAMESPACE); break; case 49: localctx = new DescribeFunctionContext(this, localctx); this.enterOuterAlt(localctx, 49); this.state = 860; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DESC || _la===SparkSqlParser.DESCRIBE)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 861; this.match(SparkSqlParser.FUNCTION); this.state = 863; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,83,this._ctx); if(la_===1) { this.state = 862; this.match(SparkSqlParser.EXTENDED); } this.state = 865; this.describeFuncName(); break; case 50: localctx = new DescribeNamespaceContext(this, localctx); this.enterOuterAlt(localctx, 50); this.state = 866; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DESC || _la===SparkSqlParser.DESCRIBE)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 867; this.namespace(); this.state = 869; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,84,this._ctx); if(la_===1) { this.state = 868; this.match(SparkSqlParser.EXTENDED); } this.state = 871; this.multipartIdentifier(); break; case 51: localctx = new DescribeRelationContext(this, localctx); this.enterOuterAlt(localctx, 51); this.state = 873; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DESC || _la===SparkSqlParser.DESCRIBE)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 875; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,85,this._ctx); if(la_===1) { this.state = 874; this.match(SparkSqlParser.TABLE); } this.state = 878; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,86,this._ctx); if(la_===1) { this.state = 877; localctx.option = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.EXTENDED || _la===SparkSqlParser.FORMATTED)) { localctx.option = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } this.state = 880; this.multipartIdentifier(); this.state = 882; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,87,this._ctx); if(la_===1) { this.state = 881; this.partitionSpec(); } this.state = 885; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,88,this._ctx); if(la_===1) { this.state = 884; this.describeColName(); } break; case 52: localctx = new DescribeQueryContext(this, localctx); this.enterOuterAlt(localctx, 52); this.state = 887; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DESC || _la===SparkSqlParser.DESCRIBE)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 889; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.QUERY) { this.state = 888; this.match(SparkSqlParser.QUERY); } this.state = 891; this.query(); break; case 53: localctx = new CommentNamespaceContext(this, localctx); this.enterOuterAlt(localctx, 53); this.state = 892; this.match(SparkSqlParser.COMMENT); this.state = 893; this.match(SparkSqlParser.ON); this.state = 894; this.namespace(); this.state = 895; this.multipartIdentifier(); this.state = 896; this.match(SparkSqlParser.IS); this.state = 897; localctx.comment = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.NULL || _la===SparkSqlParser.STRING)) { localctx.comment = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; case 54: localctx = new CommentTableContext(this, localctx); this.enterOuterAlt(localctx, 54); this.state = 899; this.match(SparkSqlParser.COMMENT); this.state = 900; this.match(SparkSqlParser.ON); this.state = 901; this.match(SparkSqlParser.TABLE); this.state = 902; this.multipartIdentifier(); this.state = 903; this.match(SparkSqlParser.IS); this.state = 904; localctx.comment = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.NULL || _la===SparkSqlParser.STRING)) { localctx.comment = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; case 55: localctx = new RefreshTableContext(this, localctx); this.enterOuterAlt(localctx, 55); this.state = 906; this.match(SparkSqlParser.REFRESH); this.state = 907; this.match(SparkSqlParser.TABLE); this.state = 908; this.multipartIdentifier(); break; case 56: localctx = new RefreshFunctionContext(this, localctx); this.enterOuterAlt(localctx, 56); this.state = 909; this.match(SparkSqlParser.REFRESH); this.state = 910; this.match(SparkSqlParser.FUNCTION); this.state = 911; this.multipartIdentifier(); break; case 57: localctx = new RefreshResourceContext(this, localctx); this.enterOuterAlt(localctx, 57); this.state = 912; this.match(SparkSqlParser.REFRESH); this.state = 920; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,91,this._ctx); switch(la_) { case 1: this.state = 913; this.match(SparkSqlParser.STRING); break; case 2: this.state = 917; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,90,this._ctx) while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1+1) { this.state = 914; this.matchWildcard(); } this.state = 919; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,90,this._ctx); } break; } break; case 58: localctx = new CacheTableContext(this, localctx); this.enterOuterAlt(localctx, 58); this.state = 922; this.match(SparkSqlParser.CACHE); this.state = 924; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LAZY) { this.state = 923; this.match(SparkSqlParser.LAZY); } this.state = 926; this.match(SparkSqlParser.TABLE); this.state = 927; this.multipartIdentifier(); this.state = 930; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OPTIONS) { this.state = 928; this.match(SparkSqlParser.OPTIONS); this.state = 929; this.tablePropertyList(); } this.state = 936; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__1 || _la===SparkSqlParser.AS || _la===SparkSqlParser.FROM || _la===SparkSqlParser.MAP || _la===SparkSqlParser.REDUCE || _la===SparkSqlParser.SELECT || _la===SparkSqlParser.TABLE || _la===SparkSqlParser.VALUES || _la===SparkSqlParser.WITH) { this.state = 933; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AS) { this.state = 932; this.match(SparkSqlParser.AS); } this.state = 935; this.query(); } break; case 59: localctx = new UncacheTableContext(this, localctx); this.enterOuterAlt(localctx, 59); this.state = 938; this.match(SparkSqlParser.UNCACHE); this.state = 939; this.match(SparkSqlParser.TABLE); this.state = 942; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,96,this._ctx); if(la_===1) { this.state = 940; this.match(SparkSqlParser.IF); this.state = 941; this.match(SparkSqlParser.EXISTS); } this.state = 944; this.multipartIdentifier(); break; case 60: localctx = new ClearCacheContext(this, localctx); this.enterOuterAlt(localctx, 60); this.state = 945; this.match(SparkSqlParser.CLEAR); this.state = 946; this.match(SparkSqlParser.CACHE); break; case 61: localctx = new LoadDataContext(this, localctx); this.enterOuterAlt(localctx, 61); this.state = 947; this.match(SparkSqlParser.LOAD); this.state = 948; this.match(SparkSqlParser.DATA); this.state = 950; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LOCAL) { this.state = 949; this.match(SparkSqlParser.LOCAL); } this.state = 952; this.match(SparkSqlParser.INPATH); this.state = 953; localctx.path = this.match(SparkSqlParser.STRING); this.state = 955; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OVERWRITE) { this.state = 954; this.match(SparkSqlParser.OVERWRITE); } this.state = 957; this.match(SparkSqlParser.INTO); this.state = 958; this.match(SparkSqlParser.TABLE); this.state = 959; this.multipartIdentifier(); this.state = 961; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 960; this.partitionSpec(); } break; case 62: localctx = new TruncateTableContext(this, localctx); this.enterOuterAlt(localctx, 62); this.state = 963; this.match(SparkSqlParser.TRUNCATE); this.state = 964; this.match(SparkSqlParser.TABLE); this.state = 965; this.multipartIdentifier(); this.state = 967; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 966; this.partitionSpec(); } break; case 63: localctx = new RepairTableContext(this, localctx); this.enterOuterAlt(localctx, 63); this.state = 969; this.match(SparkSqlParser.MSCK); this.state = 970; this.match(SparkSqlParser.REPAIR); this.state = 971; this.match(SparkSqlParser.TABLE); this.state = 972; this.multipartIdentifier(); break; case 64: localctx = new ManageResourceContext(this, localctx); this.enterOuterAlt(localctx, 64); this.state = 973; localctx.op = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.ADD || _la===SparkSqlParser.LIST)) { localctx.op = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 974; this.identifier(); this.state = 982; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,102,this._ctx); switch(la_) { case 1: this.state = 975; this.match(SparkSqlParser.STRING); break; case 2: this.state = 979; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,101,this._ctx) while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1+1) { this.state = 976; this.matchWildcard(); } this.state = 981; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,101,this._ctx); } break; } break; case 65: localctx = new FailNativeCommandContext(this, localctx); this.enterOuterAlt(localctx, 65); this.state = 984; this.match(SparkSqlParser.SET); this.state = 985; this.match(SparkSqlParser.ROLE); this.state = 989; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,103,this._ctx) while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1+1) { this.state = 986; this.matchWildcard(); } this.state = 991; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,103,this._ctx); } break; case 66: localctx = new SetTimeZoneContext(this, localctx); this.enterOuterAlt(localctx, 66); this.state = 992; this.match(SparkSqlParser.SET); this.state = 993; this.match(SparkSqlParser.TIME); this.state = 994; this.match(SparkSqlParser.ZONE); this.state = 995; this.interval(); break; case 67: localctx = new SetTimeZoneContext(this, localctx); this.enterOuterAlt(localctx, 67); this.state = 996; this.match(SparkSqlParser.SET); this.state = 997; this.match(SparkSqlParser.TIME); this.state = 998; this.match(SparkSqlParser.ZONE); this.state = 999; localctx.timezone = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.LOCAL || _la===SparkSqlParser.STRING)) { localctx.timezone = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; case 68: localctx = new SetTimeZoneContext(this, localctx); this.enterOuterAlt(localctx, 68); this.state = 1000; this.match(SparkSqlParser.SET); this.state = 1001; this.match(SparkSqlParser.TIME); this.state = 1002; this.match(SparkSqlParser.ZONE); this.state = 1006; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,104,this._ctx) while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1+1) { this.state = 1003; this.matchWildcard(); } this.state = 1008; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,104,this._ctx); } break; case 69: localctx = new SetQuotedConfigurationContext(this, localctx); this.enterOuterAlt(localctx, 69); this.state = 1009; this.match(SparkSqlParser.SET); this.state = 1010; this.configKey(); this.state = 1018; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.EQ) { this.state = 1011; this.match(SparkSqlParser.EQ); this.state = 1015; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,105,this._ctx) while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1+1) { this.state = 1012; this.matchWildcard(); } this.state = 1017; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,105,this._ctx); } } break; case 70: localctx = new SetConfigurationContext(this, localctx); this.enterOuterAlt(localctx, 70); this.state = 1020; this.match(SparkSqlParser.SET); this.state = 1024; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,107,this._ctx) while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1+1) { this.state = 1021; this.matchWildcard(); } this.state = 1026; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,107,this._ctx); } break; case 71: localctx = new ResetQuotedConfigurationContext(this, localctx); this.enterOuterAlt(localctx, 71); this.state = 1027; this.match(SparkSqlParser.RESET); this.state = 1028; this.configKey(); break; case 72: localctx = new ResetConfigurationContext(this, localctx); this.enterOuterAlt(localctx, 72); this.state = 1029; this.match(SparkSqlParser.RESET); this.state = 1033; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,108,this._ctx) while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1+1) { this.state = 1030; this.matchWildcard(); } this.state = 1035; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,108,this._ctx); } break; case 73: localctx = new FailNativeCommandContext(this, localctx); this.enterOuterAlt(localctx, 73); this.state = 1036; this.unsupportedHiveNativeCommands(); this.state = 1040; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,109,this._ctx) while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1+1) { this.state = 1037; this.matchWildcard(); } this.state = 1042; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,109,this._ctx); } break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ConfigKeyContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_configKey; return this; } ConfigKeyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ConfigKeyContext.prototype.constructor = ConfigKeyContext; ConfigKeyContext.prototype.quotedIdentifier = function() { return this.getTypedRuleContext(QuotedIdentifierContext,0); }; ConfigKeyContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterConfigKey(this); } }; ConfigKeyContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitConfigKey(this); } }; ConfigKeyContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitConfigKey(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ConfigKeyContext = ConfigKeyContext; SparkSqlParser.prototype.configKey = function() { var localctx = new ConfigKeyContext(this, this._ctx, this.state); this.enterRule(localctx, 16, SparkSqlParser.RULE_configKey); try { this.enterOuterAlt(localctx, 1); this.state = 1045; this.quotedIdentifier(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function UnsupportedHiveNativeCommandsContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_unsupportedHiveNativeCommands; this.kw1 = null; // Token this.kw2 = null; // Token this.kw3 = null; // Token this.kw4 = null; // Token this.kw5 = null; // Token this.kw6 = null; // Token return this; } UnsupportedHiveNativeCommandsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); UnsupportedHiveNativeCommandsContext.prototype.constructor = UnsupportedHiveNativeCommandsContext; UnsupportedHiveNativeCommandsContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.ROLE = function() { return this.getToken(SparkSqlParser.ROLE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; UnsupportedHiveNativeCommandsContext.prototype.GRANT = function() { return this.getToken(SparkSqlParser.GRANT, 0); }; UnsupportedHiveNativeCommandsContext.prototype.REVOKE = function() { return this.getToken(SparkSqlParser.REVOKE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; UnsupportedHiveNativeCommandsContext.prototype.PRINCIPALS = function() { return this.getToken(SparkSqlParser.PRINCIPALS, 0); }; UnsupportedHiveNativeCommandsContext.prototype.ROLES = function() { return this.getToken(SparkSqlParser.ROLES, 0); }; UnsupportedHiveNativeCommandsContext.prototype.CURRENT = function() { return this.getToken(SparkSqlParser.CURRENT, 0); }; UnsupportedHiveNativeCommandsContext.prototype.EXPORT = function() { return this.getToken(SparkSqlParser.EXPORT, 0); }; UnsupportedHiveNativeCommandsContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.IMPORT = function() { return this.getToken(SparkSqlParser.IMPORT, 0); }; UnsupportedHiveNativeCommandsContext.prototype.COMPACTIONS = function() { return this.getToken(SparkSqlParser.COMPACTIONS, 0); }; UnsupportedHiveNativeCommandsContext.prototype.TRANSACTIONS = function() { return this.getToken(SparkSqlParser.TRANSACTIONS, 0); }; UnsupportedHiveNativeCommandsContext.prototype.INDEXES = function() { return this.getToken(SparkSqlParser.INDEXES, 0); }; UnsupportedHiveNativeCommandsContext.prototype.LOCKS = function() { return this.getToken(SparkSqlParser.LOCKS, 0); }; UnsupportedHiveNativeCommandsContext.prototype.INDEX = function() { return this.getToken(SparkSqlParser.INDEX, 0); }; UnsupportedHiveNativeCommandsContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; UnsupportedHiveNativeCommandsContext.prototype.LOCK = function() { return this.getToken(SparkSqlParser.LOCK, 0); }; UnsupportedHiveNativeCommandsContext.prototype.DATABASE = function() { return this.getToken(SparkSqlParser.DATABASE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.UNLOCK = function() { return this.getToken(SparkSqlParser.UNLOCK, 0); }; UnsupportedHiveNativeCommandsContext.prototype.TEMPORARY = function() { return this.getToken(SparkSqlParser.TEMPORARY, 0); }; UnsupportedHiveNativeCommandsContext.prototype.MACRO = function() { return this.getToken(SparkSqlParser.MACRO, 0); }; UnsupportedHiveNativeCommandsContext.prototype.tableIdentifier = function() { return this.getTypedRuleContext(TableIdentifierContext,0); }; UnsupportedHiveNativeCommandsContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; UnsupportedHiveNativeCommandsContext.prototype.CLUSTERED = function() { return this.getToken(SparkSqlParser.CLUSTERED, 0); }; UnsupportedHiveNativeCommandsContext.prototype.BY = function() { return this.getToken(SparkSqlParser.BY, 0); }; UnsupportedHiveNativeCommandsContext.prototype.SORTED = function() { return this.getToken(SparkSqlParser.SORTED, 0); }; UnsupportedHiveNativeCommandsContext.prototype.SKEWED = function() { return this.getToken(SparkSqlParser.SKEWED, 0); }; UnsupportedHiveNativeCommandsContext.prototype.STORED = function() { return this.getToken(SparkSqlParser.STORED, 0); }; UnsupportedHiveNativeCommandsContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; UnsupportedHiveNativeCommandsContext.prototype.DIRECTORIES = function() { return this.getToken(SparkSqlParser.DIRECTORIES, 0); }; UnsupportedHiveNativeCommandsContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; UnsupportedHiveNativeCommandsContext.prototype.LOCATION = function() { return this.getToken(SparkSqlParser.LOCATION, 0); }; UnsupportedHiveNativeCommandsContext.prototype.EXCHANGE = function() { return this.getToken(SparkSqlParser.EXCHANGE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.PARTITION = function() { return this.getToken(SparkSqlParser.PARTITION, 0); }; UnsupportedHiveNativeCommandsContext.prototype.ARCHIVE = function() { return this.getToken(SparkSqlParser.ARCHIVE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.UNARCHIVE = function() { return this.getToken(SparkSqlParser.UNARCHIVE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.TOUCH = function() { return this.getToken(SparkSqlParser.TOUCH, 0); }; UnsupportedHiveNativeCommandsContext.prototype.COMPACT = function() { return this.getToken(SparkSqlParser.COMPACT, 0); }; UnsupportedHiveNativeCommandsContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; UnsupportedHiveNativeCommandsContext.prototype.CONCATENATE = function() { return this.getToken(SparkSqlParser.CONCATENATE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.FILEFORMAT = function() { return this.getToken(SparkSqlParser.FILEFORMAT, 0); }; UnsupportedHiveNativeCommandsContext.prototype.REPLACE = function() { return this.getToken(SparkSqlParser.REPLACE, 0); }; UnsupportedHiveNativeCommandsContext.prototype.COLUMNS = function() { return this.getToken(SparkSqlParser.COLUMNS, 0); }; UnsupportedHiveNativeCommandsContext.prototype.START = function() { return this.getToken(SparkSqlParser.START, 0); }; UnsupportedHiveNativeCommandsContext.prototype.TRANSACTION = function() { return this.getToken(SparkSqlParser.TRANSACTION, 0); }; UnsupportedHiveNativeCommandsContext.prototype.COMMIT = function() { return this.getToken(SparkSqlParser.COMMIT, 0); }; UnsupportedHiveNativeCommandsContext.prototype.ROLLBACK = function() { return this.getToken(SparkSqlParser.ROLLBACK, 0); }; UnsupportedHiveNativeCommandsContext.prototype.DFS = function() { return this.getToken(SparkSqlParser.DFS, 0); }; UnsupportedHiveNativeCommandsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterUnsupportedHiveNativeCommands(this); } }; UnsupportedHiveNativeCommandsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitUnsupportedHiveNativeCommands(this); } }; UnsupportedHiveNativeCommandsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitUnsupportedHiveNativeCommands(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.UnsupportedHiveNativeCommandsContext = UnsupportedHiveNativeCommandsContext; SparkSqlParser.prototype.unsupportedHiveNativeCommands = function() { var localctx = new UnsupportedHiveNativeCommandsContext(this, this._ctx, this.state); this.enterRule(localctx, 18, SparkSqlParser.RULE_unsupportedHiveNativeCommands); var _la = 0; // Token type try { this.state = 1215; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,118,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1047; localctx.kw1 = this.match(SparkSqlParser.CREATE); this.state = 1048; localctx.kw2 = this.match(SparkSqlParser.ROLE); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1049; localctx.kw1 = this.match(SparkSqlParser.DROP); this.state = 1050; localctx.kw2 = this.match(SparkSqlParser.ROLE); break; case 3: this.enterOuterAlt(localctx, 3); this.state = 1051; localctx.kw1 = this.match(SparkSqlParser.GRANT); this.state = 1053; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,111,this._ctx); if(la_===1) { this.state = 1052; localctx.kw2 = this.match(SparkSqlParser.ROLE); } break; case 4: this.enterOuterAlt(localctx, 4); this.state = 1055; localctx.kw1 = this.match(SparkSqlParser.REVOKE); this.state = 1057; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,112,this._ctx); if(la_===1) { this.state = 1056; localctx.kw2 = this.match(SparkSqlParser.ROLE); } break; case 5: this.enterOuterAlt(localctx, 5); this.state = 1059; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1060; localctx.kw2 = this.match(SparkSqlParser.GRANT); break; case 6: this.enterOuterAlt(localctx, 6); this.state = 1061; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1062; localctx.kw2 = this.match(SparkSqlParser.ROLE); this.state = 1064; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,113,this._ctx); if(la_===1) { this.state = 1063; localctx.kw3 = this.match(SparkSqlParser.GRANT); } break; case 7: this.enterOuterAlt(localctx, 7); this.state = 1066; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1067; localctx.kw2 = this.match(SparkSqlParser.PRINCIPALS); break; case 8: this.enterOuterAlt(localctx, 8); this.state = 1068; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1069; localctx.kw2 = this.match(SparkSqlParser.ROLES); break; case 9: this.enterOuterAlt(localctx, 9); this.state = 1070; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1071; localctx.kw2 = this.match(SparkSqlParser.CURRENT); this.state = 1072; localctx.kw3 = this.match(SparkSqlParser.ROLES); break; case 10: this.enterOuterAlt(localctx, 10); this.state = 1073; localctx.kw1 = this.match(SparkSqlParser.EXPORT); this.state = 1074; localctx.kw2 = this.match(SparkSqlParser.TABLE); break; case 11: this.enterOuterAlt(localctx, 11); this.state = 1075; localctx.kw1 = this.match(SparkSqlParser.IMPORT); this.state = 1076; localctx.kw2 = this.match(SparkSqlParser.TABLE); break; case 12: this.enterOuterAlt(localctx, 12); this.state = 1077; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1078; localctx.kw2 = this.match(SparkSqlParser.COMPACTIONS); break; case 13: this.enterOuterAlt(localctx, 13); this.state = 1079; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1080; localctx.kw2 = this.match(SparkSqlParser.CREATE); this.state = 1081; localctx.kw3 = this.match(SparkSqlParser.TABLE); break; case 14: this.enterOuterAlt(localctx, 14); this.state = 1082; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1083; localctx.kw2 = this.match(SparkSqlParser.TRANSACTIONS); break; case 15: this.enterOuterAlt(localctx, 15); this.state = 1084; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1085; localctx.kw2 = this.match(SparkSqlParser.INDEXES); break; case 16: this.enterOuterAlt(localctx, 16); this.state = 1086; localctx.kw1 = this.match(SparkSqlParser.SHOW); this.state = 1087; localctx.kw2 = this.match(SparkSqlParser.LOCKS); break; case 17: this.enterOuterAlt(localctx, 17); this.state = 1088; localctx.kw1 = this.match(SparkSqlParser.CREATE); this.state = 1089; localctx.kw2 = this.match(SparkSqlParser.INDEX); break; case 18: this.enterOuterAlt(localctx, 18); this.state = 1090; localctx.kw1 = this.match(SparkSqlParser.DROP); this.state = 1091; localctx.kw2 = this.match(SparkSqlParser.INDEX); break; case 19: this.enterOuterAlt(localctx, 19); this.state = 1092; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1093; localctx.kw2 = this.match(SparkSqlParser.INDEX); break; case 20: this.enterOuterAlt(localctx, 20); this.state = 1094; localctx.kw1 = this.match(SparkSqlParser.LOCK); this.state = 1095; localctx.kw2 = this.match(SparkSqlParser.TABLE); break; case 21: this.enterOuterAlt(localctx, 21); this.state = 1096; localctx.kw1 = this.match(SparkSqlParser.LOCK); this.state = 1097; localctx.kw2 = this.match(SparkSqlParser.DATABASE); break; case 22: this.enterOuterAlt(localctx, 22); this.state = 1098; localctx.kw1 = this.match(SparkSqlParser.UNLOCK); this.state = 1099; localctx.kw2 = this.match(SparkSqlParser.TABLE); break; case 23: this.enterOuterAlt(localctx, 23); this.state = 1100; localctx.kw1 = this.match(SparkSqlParser.UNLOCK); this.state = 1101; localctx.kw2 = this.match(SparkSqlParser.DATABASE); break; case 24: this.enterOuterAlt(localctx, 24); this.state = 1102; localctx.kw1 = this.match(SparkSqlParser.CREATE); this.state = 1103; localctx.kw2 = this.match(SparkSqlParser.TEMPORARY); this.state = 1104; localctx.kw3 = this.match(SparkSqlParser.MACRO); break; case 25: this.enterOuterAlt(localctx, 25); this.state = 1105; localctx.kw1 = this.match(SparkSqlParser.DROP); this.state = 1106; localctx.kw2 = this.match(SparkSqlParser.TEMPORARY); this.state = 1107; localctx.kw3 = this.match(SparkSqlParser.MACRO); break; case 26: this.enterOuterAlt(localctx, 26); this.state = 1108; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1109; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1110; this.tableIdentifier(); this.state = 1111; localctx.kw3 = this.match(SparkSqlParser.NOT); this.state = 1112; localctx.kw4 = this.match(SparkSqlParser.CLUSTERED); break; case 27: this.enterOuterAlt(localctx, 27); this.state = 1114; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1115; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1116; this.tableIdentifier(); this.state = 1117; localctx.kw3 = this.match(SparkSqlParser.CLUSTERED); this.state = 1118; localctx.kw4 = this.match(SparkSqlParser.BY); break; case 28: this.enterOuterAlt(localctx, 28); this.state = 1120; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1121; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1122; this.tableIdentifier(); this.state = 1123; localctx.kw3 = this.match(SparkSqlParser.NOT); this.state = 1124; localctx.kw4 = this.match(SparkSqlParser.SORTED); break; case 29: this.enterOuterAlt(localctx, 29); this.state = 1126; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1127; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1128; this.tableIdentifier(); this.state = 1129; localctx.kw3 = this.match(SparkSqlParser.SKEWED); this.state = 1130; localctx.kw4 = this.match(SparkSqlParser.BY); break; case 30: this.enterOuterAlt(localctx, 30); this.state = 1132; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1133; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1134; this.tableIdentifier(); this.state = 1135; localctx.kw3 = this.match(SparkSqlParser.NOT); this.state = 1136; localctx.kw4 = this.match(SparkSqlParser.SKEWED); break; case 31: this.enterOuterAlt(localctx, 31); this.state = 1138; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1139; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1140; this.tableIdentifier(); this.state = 1141; localctx.kw3 = this.match(SparkSqlParser.NOT); this.state = 1142; localctx.kw4 = this.match(SparkSqlParser.STORED); this.state = 1143; localctx.kw5 = this.match(SparkSqlParser.AS); this.state = 1144; localctx.kw6 = this.match(SparkSqlParser.DIRECTORIES); break; case 32: this.enterOuterAlt(localctx, 32); this.state = 1146; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1147; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1148; this.tableIdentifier(); this.state = 1149; localctx.kw3 = this.match(SparkSqlParser.SET); this.state = 1150; localctx.kw4 = this.match(SparkSqlParser.SKEWED); this.state = 1151; localctx.kw5 = this.match(SparkSqlParser.LOCATION); break; case 33: this.enterOuterAlt(localctx, 33); this.state = 1153; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1154; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1155; this.tableIdentifier(); this.state = 1156; localctx.kw3 = this.match(SparkSqlParser.EXCHANGE); this.state = 1157; localctx.kw4 = this.match(SparkSqlParser.PARTITION); break; case 34: this.enterOuterAlt(localctx, 34); this.state = 1159; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1160; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1161; this.tableIdentifier(); this.state = 1162; localctx.kw3 = this.match(SparkSqlParser.ARCHIVE); this.state = 1163; localctx.kw4 = this.match(SparkSqlParser.PARTITION); break; case 35: this.enterOuterAlt(localctx, 35); this.state = 1165; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1166; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1167; this.tableIdentifier(); this.state = 1168; localctx.kw3 = this.match(SparkSqlParser.UNARCHIVE); this.state = 1169; localctx.kw4 = this.match(SparkSqlParser.PARTITION); break; case 36: this.enterOuterAlt(localctx, 36); this.state = 1171; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1172; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1173; this.tableIdentifier(); this.state = 1174; localctx.kw3 = this.match(SparkSqlParser.TOUCH); break; case 37: this.enterOuterAlt(localctx, 37); this.state = 1176; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1177; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1178; this.tableIdentifier(); this.state = 1180; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 1179; this.partitionSpec(); } this.state = 1182; localctx.kw3 = this.match(SparkSqlParser.COMPACT); break; case 38: this.enterOuterAlt(localctx, 38); this.state = 1184; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1185; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1186; this.tableIdentifier(); this.state = 1188; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 1187; this.partitionSpec(); } this.state = 1190; localctx.kw3 = this.match(SparkSqlParser.CONCATENATE); break; case 39: this.enterOuterAlt(localctx, 39); this.state = 1192; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1193; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1194; this.tableIdentifier(); this.state = 1196; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 1195; this.partitionSpec(); } this.state = 1198; localctx.kw3 = this.match(SparkSqlParser.SET); this.state = 1199; localctx.kw4 = this.match(SparkSqlParser.FILEFORMAT); break; case 40: this.enterOuterAlt(localctx, 40); this.state = 1201; localctx.kw1 = this.match(SparkSqlParser.ALTER); this.state = 1202; localctx.kw2 = this.match(SparkSqlParser.TABLE); this.state = 1203; this.tableIdentifier(); this.state = 1205; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 1204; this.partitionSpec(); } this.state = 1207; localctx.kw3 = this.match(SparkSqlParser.REPLACE); this.state = 1208; localctx.kw4 = this.match(SparkSqlParser.COLUMNS); break; case 41: this.enterOuterAlt(localctx, 41); this.state = 1210; localctx.kw1 = this.match(SparkSqlParser.START); this.state = 1211; localctx.kw2 = this.match(SparkSqlParser.TRANSACTION); break; case 42: this.enterOuterAlt(localctx, 42); this.state = 1212; localctx.kw1 = this.match(SparkSqlParser.COMMIT); break; case 43: this.enterOuterAlt(localctx, 43); this.state = 1213; localctx.kw1 = this.match(SparkSqlParser.ROLLBACK); break; case 44: this.enterOuterAlt(localctx, 44); this.state = 1214; localctx.kw1 = this.match(SparkSqlParser.DFS); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function CreateTableHeaderContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_createTableHeader; return this; } CreateTableHeaderContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); CreateTableHeaderContext.prototype.constructor = CreateTableHeaderContext; CreateTableHeaderContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; CreateTableHeaderContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; CreateTableHeaderContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; CreateTableHeaderContext.prototype.TEMPORARY = function() { return this.getToken(SparkSqlParser.TEMPORARY, 0); }; CreateTableHeaderContext.prototype.EXTERNAL = function() { return this.getToken(SparkSqlParser.EXTERNAL, 0); }; CreateTableHeaderContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; CreateTableHeaderContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; CreateTableHeaderContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; CreateTableHeaderContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateTableHeader(this); } }; CreateTableHeaderContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateTableHeader(this); } }; CreateTableHeaderContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateTableHeader(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.CreateTableHeaderContext = CreateTableHeaderContext; SparkSqlParser.prototype.createTableHeader = function() { var localctx = new CreateTableHeaderContext(this, this._ctx, this.state); this.enterRule(localctx, 20, SparkSqlParser.RULE_createTableHeader); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1217; this.match(SparkSqlParser.CREATE); this.state = 1219; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.TEMPORARY) { this.state = 1218; this.match(SparkSqlParser.TEMPORARY); } this.state = 1222; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.EXTERNAL) { this.state = 1221; this.match(SparkSqlParser.EXTERNAL); } this.state = 1224; this.match(SparkSqlParser.TABLE); this.state = 1228; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,121,this._ctx); if(la_===1) { this.state = 1225; this.match(SparkSqlParser.IF); this.state = 1226; this.match(SparkSqlParser.NOT); this.state = 1227; this.match(SparkSqlParser.EXISTS); } this.state = 1230; this.multipartIdentifier(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ReplaceTableHeaderContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_replaceTableHeader; return this; } ReplaceTableHeaderContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ReplaceTableHeaderContext.prototype.constructor = ReplaceTableHeaderContext; ReplaceTableHeaderContext.prototype.REPLACE = function() { return this.getToken(SparkSqlParser.REPLACE, 0); }; ReplaceTableHeaderContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; ReplaceTableHeaderContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; ReplaceTableHeaderContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; ReplaceTableHeaderContext.prototype.OR = function() { return this.getToken(SparkSqlParser.OR, 0); }; ReplaceTableHeaderContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterReplaceTableHeader(this); } }; ReplaceTableHeaderContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitReplaceTableHeader(this); } }; ReplaceTableHeaderContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitReplaceTableHeader(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ReplaceTableHeaderContext = ReplaceTableHeaderContext; SparkSqlParser.prototype.replaceTableHeader = function() { var localctx = new ReplaceTableHeaderContext(this, this._ctx, this.state); this.enterRule(localctx, 22, SparkSqlParser.RULE_replaceTableHeader); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1234; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.CREATE) { this.state = 1232; this.match(SparkSqlParser.CREATE); this.state = 1233; this.match(SparkSqlParser.OR); } this.state = 1236; this.match(SparkSqlParser.REPLACE); this.state = 1237; this.match(SparkSqlParser.TABLE); this.state = 1238; this.multipartIdentifier(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function BucketSpecContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_bucketSpec; return this; } BucketSpecContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); BucketSpecContext.prototype.constructor = BucketSpecContext; BucketSpecContext.prototype.CLUSTERED = function() { return this.getToken(SparkSqlParser.CLUSTERED, 0); }; BucketSpecContext.prototype.BY = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.BY); } else { return this.getToken(SparkSqlParser.BY, i); } }; BucketSpecContext.prototype.identifierList = function() { return this.getTypedRuleContext(IdentifierListContext,0); }; BucketSpecContext.prototype.INTO = function() { return this.getToken(SparkSqlParser.INTO, 0); }; BucketSpecContext.prototype.INTEGER_VALUE = function() { return this.getToken(SparkSqlParser.INTEGER_VALUE, 0); }; BucketSpecContext.prototype.BUCKETS = function() { return this.getToken(SparkSqlParser.BUCKETS, 0); }; BucketSpecContext.prototype.SORTED = function() { return this.getToken(SparkSqlParser.SORTED, 0); }; BucketSpecContext.prototype.orderedIdentifierList = function() { return this.getTypedRuleContext(OrderedIdentifierListContext,0); }; BucketSpecContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterBucketSpec(this); } }; BucketSpecContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitBucketSpec(this); } }; BucketSpecContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitBucketSpec(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.BucketSpecContext = BucketSpecContext; SparkSqlParser.prototype.bucketSpec = function() { var localctx = new BucketSpecContext(this, this._ctx, this.state); this.enterRule(localctx, 24, SparkSqlParser.RULE_bucketSpec); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1240; this.match(SparkSqlParser.CLUSTERED); this.state = 1241; this.match(SparkSqlParser.BY); this.state = 1242; this.identifierList(); this.state = 1246; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.SORTED) { this.state = 1243; this.match(SparkSqlParser.SORTED); this.state = 1244; this.match(SparkSqlParser.BY); this.state = 1245; this.orderedIdentifierList(); } this.state = 1248; this.match(SparkSqlParser.INTO); this.state = 1249; this.match(SparkSqlParser.INTEGER_VALUE); this.state = 1250; this.match(SparkSqlParser.BUCKETS); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SkewSpecContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_skewSpec; return this; } SkewSpecContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SkewSpecContext.prototype.constructor = SkewSpecContext; SkewSpecContext.prototype.SKEWED = function() { return this.getToken(SparkSqlParser.SKEWED, 0); }; SkewSpecContext.prototype.BY = function() { return this.getToken(SparkSqlParser.BY, 0); }; SkewSpecContext.prototype.identifierList = function() { return this.getTypedRuleContext(IdentifierListContext,0); }; SkewSpecContext.prototype.ON = function() { return this.getToken(SparkSqlParser.ON, 0); }; SkewSpecContext.prototype.constantList = function() { return this.getTypedRuleContext(ConstantListContext,0); }; SkewSpecContext.prototype.nestedConstantList = function() { return this.getTypedRuleContext(NestedConstantListContext,0); }; SkewSpecContext.prototype.STORED = function() { return this.getToken(SparkSqlParser.STORED, 0); }; SkewSpecContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; SkewSpecContext.prototype.DIRECTORIES = function() { return this.getToken(SparkSqlParser.DIRECTORIES, 0); }; SkewSpecContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSkewSpec(this); } }; SkewSpecContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSkewSpec(this); } }; SkewSpecContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSkewSpec(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SkewSpecContext = SkewSpecContext; SparkSqlParser.prototype.skewSpec = function() { var localctx = new SkewSpecContext(this, this._ctx, this.state); this.enterRule(localctx, 26, SparkSqlParser.RULE_skewSpec); try { this.enterOuterAlt(localctx, 1); this.state = 1252; this.match(SparkSqlParser.SKEWED); this.state = 1253; this.match(SparkSqlParser.BY); this.state = 1254; this.identifierList(); this.state = 1255; this.match(SparkSqlParser.ON); this.state = 1258; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,124,this._ctx); switch(la_) { case 1: this.state = 1256; this.constantList(); break; case 2: this.state = 1257; this.nestedConstantList(); break; } this.state = 1263; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,125,this._ctx); if(la_===1) { this.state = 1260; this.match(SparkSqlParser.STORED); this.state = 1261; this.match(SparkSqlParser.AS); this.state = 1262; this.match(SparkSqlParser.DIRECTORIES); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function LocationSpecContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_locationSpec; return this; } LocationSpecContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); LocationSpecContext.prototype.constructor = LocationSpecContext; LocationSpecContext.prototype.LOCATION = function() { return this.getToken(SparkSqlParser.LOCATION, 0); }; LocationSpecContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; LocationSpecContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterLocationSpec(this); } }; LocationSpecContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitLocationSpec(this); } }; LocationSpecContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitLocationSpec(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.LocationSpecContext = LocationSpecContext; SparkSqlParser.prototype.locationSpec = function() { var localctx = new LocationSpecContext(this, this._ctx, this.state); this.enterRule(localctx, 28, SparkSqlParser.RULE_locationSpec); try { this.enterOuterAlt(localctx, 1); this.state = 1265; this.match(SparkSqlParser.LOCATION); this.state = 1266; this.match(SparkSqlParser.STRING); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function CommentSpecContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_commentSpec; return this; } CommentSpecContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); CommentSpecContext.prototype.constructor = CommentSpecContext; CommentSpecContext.prototype.COMMENT = function() { return this.getToken(SparkSqlParser.COMMENT, 0); }; CommentSpecContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; CommentSpecContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCommentSpec(this); } }; CommentSpecContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCommentSpec(this); } }; CommentSpecContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCommentSpec(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.CommentSpecContext = CommentSpecContext; SparkSqlParser.prototype.commentSpec = function() { var localctx = new CommentSpecContext(this, this._ctx, this.state); this.enterRule(localctx, 30, SparkSqlParser.RULE_commentSpec); try { this.enterOuterAlt(localctx, 1); this.state = 1268; this.match(SparkSqlParser.COMMENT); this.state = 1269; this.match(SparkSqlParser.STRING); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QueryContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_query; return this; } QueryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QueryContext.prototype.constructor = QueryContext; QueryContext.prototype.queryTerm = function() { return this.getTypedRuleContext(QueryTermContext,0); }; QueryContext.prototype.queryOrganization = function() { return this.getTypedRuleContext(QueryOrganizationContext,0); }; QueryContext.prototype.ctes = function() { return this.getTypedRuleContext(CtesContext,0); }; QueryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQuery(this); } }; QueryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQuery(this); } }; QueryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQuery(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QueryContext = QueryContext; SparkSqlParser.prototype.query = function() { var localctx = new QueryContext(this, this._ctx, this.state); this.enterRule(localctx, 32, SparkSqlParser.RULE_query); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1272; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.WITH) { this.state = 1271; this.ctes(); } this.state = 1274; this.queryTerm(0); this.state = 1275; this.queryOrganization(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function InsertIntoContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_insertInto; return this; } InsertIntoContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); InsertIntoContext.prototype.constructor = InsertIntoContext; InsertIntoContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function InsertOverwriteHiveDirContext(parser, ctx) { InsertIntoContext.call(this, parser); this.path = null; // Token; InsertIntoContext.prototype.copyFrom.call(this, ctx); return this; } InsertOverwriteHiveDirContext.prototype = Object.create(InsertIntoContext.prototype); InsertOverwriteHiveDirContext.prototype.constructor = InsertOverwriteHiveDirContext; SparkSqlParser.InsertOverwriteHiveDirContext = InsertOverwriteHiveDirContext; InsertOverwriteHiveDirContext.prototype.INSERT = function() { return this.getToken(SparkSqlParser.INSERT, 0); }; InsertOverwriteHiveDirContext.prototype.OVERWRITE = function() { return this.getToken(SparkSqlParser.OVERWRITE, 0); }; InsertOverwriteHiveDirContext.prototype.DIRECTORY = function() { return this.getToken(SparkSqlParser.DIRECTORY, 0); }; InsertOverwriteHiveDirContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; InsertOverwriteHiveDirContext.prototype.LOCAL = function() { return this.getToken(SparkSqlParser.LOCAL, 0); }; InsertOverwriteHiveDirContext.prototype.rowFormat = function() { return this.getTypedRuleContext(RowFormatContext,0); }; InsertOverwriteHiveDirContext.prototype.createFileFormat = function() { return this.getTypedRuleContext(CreateFileFormatContext,0); }; InsertOverwriteHiveDirContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterInsertOverwriteHiveDir(this); } }; InsertOverwriteHiveDirContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitInsertOverwriteHiveDir(this); } }; InsertOverwriteHiveDirContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitInsertOverwriteHiveDir(this); } else { return visitor.visitChildren(this); } }; function InsertOverwriteDirContext(parser, ctx) { InsertIntoContext.call(this, parser); this.path = null; // Token; InsertIntoContext.prototype.copyFrom.call(this, ctx); return this; } InsertOverwriteDirContext.prototype = Object.create(InsertIntoContext.prototype); InsertOverwriteDirContext.prototype.constructor = InsertOverwriteDirContext; SparkSqlParser.InsertOverwriteDirContext = InsertOverwriteDirContext; InsertOverwriteDirContext.prototype.INSERT = function() { return this.getToken(SparkSqlParser.INSERT, 0); }; InsertOverwriteDirContext.prototype.OVERWRITE = function() { return this.getToken(SparkSqlParser.OVERWRITE, 0); }; InsertOverwriteDirContext.prototype.DIRECTORY = function() { return this.getToken(SparkSqlParser.DIRECTORY, 0); }; InsertOverwriteDirContext.prototype.tableProvider = function() { return this.getTypedRuleContext(TableProviderContext,0); }; InsertOverwriteDirContext.prototype.LOCAL = function() { return this.getToken(SparkSqlParser.LOCAL, 0); }; InsertOverwriteDirContext.prototype.OPTIONS = function() { return this.getToken(SparkSqlParser.OPTIONS, 0); }; InsertOverwriteDirContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; InsertOverwriteDirContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; InsertOverwriteDirContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterInsertOverwriteDir(this); } }; InsertOverwriteDirContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitInsertOverwriteDir(this); } }; InsertOverwriteDirContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitInsertOverwriteDir(this); } else { return visitor.visitChildren(this); } }; function InsertOverwriteTableContext(parser, ctx) { InsertIntoContext.call(this, parser); InsertIntoContext.prototype.copyFrom.call(this, ctx); return this; } InsertOverwriteTableContext.prototype = Object.create(InsertIntoContext.prototype); InsertOverwriteTableContext.prototype.constructor = InsertOverwriteTableContext; SparkSqlParser.InsertOverwriteTableContext = InsertOverwriteTableContext; InsertOverwriteTableContext.prototype.INSERT = function() { return this.getToken(SparkSqlParser.INSERT, 0); }; InsertOverwriteTableContext.prototype.OVERWRITE = function() { return this.getToken(SparkSqlParser.OVERWRITE, 0); }; InsertOverwriteTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; InsertOverwriteTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; InsertOverwriteTableContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; InsertOverwriteTableContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; InsertOverwriteTableContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; InsertOverwriteTableContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; InsertOverwriteTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterInsertOverwriteTable(this); } }; InsertOverwriteTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitInsertOverwriteTable(this); } }; InsertOverwriteTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitInsertOverwriteTable(this); } else { return visitor.visitChildren(this); } }; function InsertIntoTableContext(parser, ctx) { InsertIntoContext.call(this, parser); InsertIntoContext.prototype.copyFrom.call(this, ctx); return this; } InsertIntoTableContext.prototype = Object.create(InsertIntoContext.prototype); InsertIntoTableContext.prototype.constructor = InsertIntoTableContext; SparkSqlParser.InsertIntoTableContext = InsertIntoTableContext; InsertIntoTableContext.prototype.INSERT = function() { return this.getToken(SparkSqlParser.INSERT, 0); }; InsertIntoTableContext.prototype.INTO = function() { return this.getToken(SparkSqlParser.INTO, 0); }; InsertIntoTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; InsertIntoTableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; InsertIntoTableContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; InsertIntoTableContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; InsertIntoTableContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; InsertIntoTableContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; InsertIntoTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterInsertIntoTable(this); } }; InsertIntoTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitInsertIntoTable(this); } }; InsertIntoTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitInsertIntoTable(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.InsertIntoContext = InsertIntoContext; SparkSqlParser.prototype.insertInto = function() { var localctx = new InsertIntoContext(this, this._ctx, this.state); this.enterRule(localctx, 34, SparkSqlParser.RULE_insertInto); var _la = 0; // Token type try { this.state = 1332; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,139,this._ctx); switch(la_) { case 1: localctx = new InsertOverwriteTableContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 1277; this.match(SparkSqlParser.INSERT); this.state = 1278; this.match(SparkSqlParser.OVERWRITE); this.state = 1280; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,127,this._ctx); if(la_===1) { this.state = 1279; this.match(SparkSqlParser.TABLE); } this.state = 1282; this.multipartIdentifier(); this.state = 1289; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 1283; this.partitionSpec(); this.state = 1287; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.IF) { this.state = 1284; this.match(SparkSqlParser.IF); this.state = 1285; this.match(SparkSqlParser.NOT); this.state = 1286; this.match(SparkSqlParser.EXISTS); } } break; case 2: localctx = new InsertIntoTableContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 1291; this.match(SparkSqlParser.INSERT); this.state = 1292; this.match(SparkSqlParser.INTO); this.state = 1294; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,130,this._ctx); if(la_===1) { this.state = 1293; this.match(SparkSqlParser.TABLE); } this.state = 1296; this.multipartIdentifier(); this.state = 1298; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PARTITION) { this.state = 1297; this.partitionSpec(); } this.state = 1303; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.IF) { this.state = 1300; this.match(SparkSqlParser.IF); this.state = 1301; this.match(SparkSqlParser.NOT); this.state = 1302; this.match(SparkSqlParser.EXISTS); } break; case 3: localctx = new InsertOverwriteHiveDirContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 1305; this.match(SparkSqlParser.INSERT); this.state = 1306; this.match(SparkSqlParser.OVERWRITE); this.state = 1308; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LOCAL) { this.state = 1307; this.match(SparkSqlParser.LOCAL); } this.state = 1310; this.match(SparkSqlParser.DIRECTORY); this.state = 1311; localctx.path = this.match(SparkSqlParser.STRING); this.state = 1313; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ROW) { this.state = 1312; this.rowFormat(); } this.state = 1316; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.STORED) { this.state = 1315; this.createFileFormat(); } break; case 4: localctx = new InsertOverwriteDirContext(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 1318; this.match(SparkSqlParser.INSERT); this.state = 1319; this.match(SparkSqlParser.OVERWRITE); this.state = 1321; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LOCAL) { this.state = 1320; this.match(SparkSqlParser.LOCAL); } this.state = 1323; this.match(SparkSqlParser.DIRECTORY); this.state = 1325; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.STRING) { this.state = 1324; localctx.path = this.match(SparkSqlParser.STRING); } this.state = 1327; this.tableProvider(); this.state = 1330; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OPTIONS) { this.state = 1328; this.match(SparkSqlParser.OPTIONS); this.state = 1329; this.tablePropertyList(); } break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function PartitionSpecLocationContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_partitionSpecLocation; return this; } PartitionSpecLocationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PartitionSpecLocationContext.prototype.constructor = PartitionSpecLocationContext; PartitionSpecLocationContext.prototype.partitionSpec = function() { return this.getTypedRuleContext(PartitionSpecContext,0); }; PartitionSpecLocationContext.prototype.locationSpec = function() { return this.getTypedRuleContext(LocationSpecContext,0); }; PartitionSpecLocationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPartitionSpecLocation(this); } }; PartitionSpecLocationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPartitionSpecLocation(this); } }; PartitionSpecLocationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPartitionSpecLocation(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.PartitionSpecLocationContext = PartitionSpecLocationContext; SparkSqlParser.prototype.partitionSpecLocation = function() { var localctx = new PartitionSpecLocationContext(this, this._ctx, this.state); this.enterRule(localctx, 36, SparkSqlParser.RULE_partitionSpecLocation); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1334; this.partitionSpec(); this.state = 1336; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LOCATION) { this.state = 1335; this.locationSpec(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function PartitionSpecContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_partitionSpec; return this; } PartitionSpecContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PartitionSpecContext.prototype.constructor = PartitionSpecContext; PartitionSpecContext.prototype.PARTITION = function() { return this.getToken(SparkSqlParser.PARTITION, 0); }; PartitionSpecContext.prototype.partitionVal = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(PartitionValContext); } else { return this.getTypedRuleContext(PartitionValContext,i); } }; PartitionSpecContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPartitionSpec(this); } }; PartitionSpecContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPartitionSpec(this); } }; PartitionSpecContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPartitionSpec(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.PartitionSpecContext = PartitionSpecContext; SparkSqlParser.prototype.partitionSpec = function() { var localctx = new PartitionSpecContext(this, this._ctx, this.state); this.enterRule(localctx, 38, SparkSqlParser.RULE_partitionSpec); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1338; this.match(SparkSqlParser.PARTITION); this.state = 1339; this.match(SparkSqlParser.T__1); this.state = 1340; this.partitionVal(); this.state = 1345; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1341; this.match(SparkSqlParser.T__3); this.state = 1342; this.partitionVal(); this.state = 1347; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1348; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function PartitionValContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_partitionVal; return this; } PartitionValContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PartitionValContext.prototype.constructor = PartitionValContext; PartitionValContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; PartitionValContext.prototype.EQ = function() { return this.getToken(SparkSqlParser.EQ, 0); }; PartitionValContext.prototype.constant = function() { return this.getTypedRuleContext(ConstantContext,0); }; PartitionValContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPartitionVal(this); } }; PartitionValContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPartitionVal(this); } }; PartitionValContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPartitionVal(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.PartitionValContext = PartitionValContext; SparkSqlParser.prototype.partitionVal = function() { var localctx = new PartitionValContext(this, this._ctx, this.state); this.enterRule(localctx, 40, SparkSqlParser.RULE_partitionVal); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1350; this.identifier(); this.state = 1353; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.EQ) { this.state = 1351; this.match(SparkSqlParser.EQ); this.state = 1352; this.constant(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NamespaceContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_namespace; return this; } NamespaceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NamespaceContext.prototype.constructor = NamespaceContext; NamespaceContext.prototype.NAMESPACE = function() { return this.getToken(SparkSqlParser.NAMESPACE, 0); }; NamespaceContext.prototype.DATABASE = function() { return this.getToken(SparkSqlParser.DATABASE, 0); }; NamespaceContext.prototype.SCHEMA = function() { return this.getToken(SparkSqlParser.SCHEMA, 0); }; NamespaceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNamespace(this); } }; NamespaceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNamespace(this); } }; NamespaceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNamespace(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NamespaceContext = NamespaceContext; SparkSqlParser.prototype.namespace = function() { var localctx = new NamespaceContext(this, this._ctx, this.state); this.enterRule(localctx, 42, SparkSqlParser.RULE_namespace); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1355; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DATABASE || _la===SparkSqlParser.NAMESPACE || _la===SparkSqlParser.SCHEMA)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function DescribeFuncNameContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_describeFuncName; return this; } DescribeFuncNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); DescribeFuncNameContext.prototype.constructor = DescribeFuncNameContext; DescribeFuncNameContext.prototype.qualifiedName = function() { return this.getTypedRuleContext(QualifiedNameContext,0); }; DescribeFuncNameContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; DescribeFuncNameContext.prototype.comparisonOperator = function() { return this.getTypedRuleContext(ComparisonOperatorContext,0); }; DescribeFuncNameContext.prototype.arithmeticOperator = function() { return this.getTypedRuleContext(ArithmeticOperatorContext,0); }; DescribeFuncNameContext.prototype.predicateOperator = function() { return this.getTypedRuleContext(PredicateOperatorContext,0); }; DescribeFuncNameContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDescribeFuncName(this); } }; DescribeFuncNameContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDescribeFuncName(this); } }; DescribeFuncNameContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDescribeFuncName(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.DescribeFuncNameContext = DescribeFuncNameContext; SparkSqlParser.prototype.describeFuncName = function() { var localctx = new DescribeFuncNameContext(this, this._ctx, this.state); this.enterRule(localctx, 44, SparkSqlParser.RULE_describeFuncName); try { this.state = 1362; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,143,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1357; this.qualifiedName(); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1358; this.match(SparkSqlParser.STRING); break; case 3: this.enterOuterAlt(localctx, 3); this.state = 1359; this.comparisonOperator(); break; case 4: this.enterOuterAlt(localctx, 4); this.state = 1360; this.arithmeticOperator(); break; case 5: this.enterOuterAlt(localctx, 5); this.state = 1361; this.predicateOperator(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function DescribeColNameContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_describeColName; this._identifier = null; // IdentifierContext this.nameParts = []; // of IdentifierContexts return this; } DescribeColNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); DescribeColNameContext.prototype.constructor = DescribeColNameContext; DescribeColNameContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; DescribeColNameContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDescribeColName(this); } }; DescribeColNameContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDescribeColName(this); } }; DescribeColNameContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDescribeColName(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.DescribeColNameContext = DescribeColNameContext; SparkSqlParser.prototype.describeColName = function() { var localctx = new DescribeColNameContext(this, this._ctx, this.state); this.enterRule(localctx, 46, SparkSqlParser.RULE_describeColName); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1364; localctx._identifier = this.identifier(); localctx.nameParts.push(localctx._identifier); this.state = 1369; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__4) { this.state = 1365; this.match(SparkSqlParser.T__4); this.state = 1366; localctx._identifier = this.identifier(); localctx.nameParts.push(localctx._identifier); this.state = 1371; this._errHandler.sync(this); _la = this._input.LA(1); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function CtesContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_ctes; return this; } CtesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); CtesContext.prototype.constructor = CtesContext; CtesContext.prototype.WITH = function() { return this.getToken(SparkSqlParser.WITH, 0); }; CtesContext.prototype.namedQuery = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(NamedQueryContext); } else { return this.getTypedRuleContext(NamedQueryContext,i); } }; CtesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCtes(this); } }; CtesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCtes(this); } }; CtesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCtes(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.CtesContext = CtesContext; SparkSqlParser.prototype.ctes = function() { var localctx = new CtesContext(this, this._ctx, this.state); this.enterRule(localctx, 48, SparkSqlParser.RULE_ctes); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1372; this.match(SparkSqlParser.WITH); this.state = 1373; this.namedQuery(); this.state = 1378; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1374; this.match(SparkSqlParser.T__3); this.state = 1375; this.namedQuery(); this.state = 1380; this._errHandler.sync(this); _la = this._input.LA(1); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NamedQueryContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_namedQuery; this.name = null; // ErrorCapturingIdentifierContext this.columnAliases = null; // IdentifierListContext return this; } NamedQueryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NamedQueryContext.prototype.constructor = NamedQueryContext; NamedQueryContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; NamedQueryContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; NamedQueryContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; NamedQueryContext.prototype.identifierList = function() { return this.getTypedRuleContext(IdentifierListContext,0); }; NamedQueryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNamedQuery(this); } }; NamedQueryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNamedQuery(this); } }; NamedQueryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNamedQuery(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NamedQueryContext = NamedQueryContext; SparkSqlParser.prototype.namedQuery = function() { var localctx = new NamedQueryContext(this, this._ctx, this.state); this.enterRule(localctx, 50, SparkSqlParser.RULE_namedQuery); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1381; localctx.name = this.errorCapturingIdentifier(); this.state = 1383; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,146,this._ctx); if(la_===1) { this.state = 1382; localctx.columnAliases = this.identifierList(); } this.state = 1386; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AS) { this.state = 1385; this.match(SparkSqlParser.AS); } this.state = 1388; this.match(SparkSqlParser.T__1); this.state = 1389; this.query(); this.state = 1390; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TableProviderContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_tableProvider; return this; } TableProviderContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TableProviderContext.prototype.constructor = TableProviderContext; TableProviderContext.prototype.USING = function() { return this.getToken(SparkSqlParser.USING, 0); }; TableProviderContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; TableProviderContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTableProvider(this); } }; TableProviderContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTableProvider(this); } }; TableProviderContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTableProvider(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TableProviderContext = TableProviderContext; SparkSqlParser.prototype.tableProvider = function() { var localctx = new TableProviderContext(this, this._ctx, this.state); this.enterRule(localctx, 52, SparkSqlParser.RULE_tableProvider); try { this.enterOuterAlt(localctx, 1); this.state = 1392; this.match(SparkSqlParser.USING); this.state = 1393; this.multipartIdentifier(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function CreateTableClausesContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_createTableClauses; this.partitioning = null; // TransformListContext this.tableProps = null; // TablePropertyListContext return this; } CreateTableClausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); CreateTableClausesContext.prototype.constructor = CreateTableClausesContext; CreateTableClausesContext.prototype.bucketSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(BucketSpecContext); } else { return this.getTypedRuleContext(BucketSpecContext,i); } }; CreateTableClausesContext.prototype.locationSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(LocationSpecContext); } else { return this.getTypedRuleContext(LocationSpecContext,i); } }; CreateTableClausesContext.prototype.commentSpec = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(CommentSpecContext); } else { return this.getTypedRuleContext(CommentSpecContext,i); } }; CreateTableClausesContext.prototype.OPTIONS = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.OPTIONS); } else { return this.getToken(SparkSqlParser.OPTIONS, i); } }; CreateTableClausesContext.prototype.tablePropertyList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TablePropertyListContext); } else { return this.getTypedRuleContext(TablePropertyListContext,i); } }; CreateTableClausesContext.prototype.PARTITIONED = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.PARTITIONED); } else { return this.getToken(SparkSqlParser.PARTITIONED, i); } }; CreateTableClausesContext.prototype.BY = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.BY); } else { return this.getToken(SparkSqlParser.BY, i); } }; CreateTableClausesContext.prototype.TBLPROPERTIES = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.TBLPROPERTIES); } else { return this.getToken(SparkSqlParser.TBLPROPERTIES, i); } }; CreateTableClausesContext.prototype.transformList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TransformListContext); } else { return this.getTypedRuleContext(TransformListContext,i); } }; CreateTableClausesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateTableClauses(this); } }; CreateTableClausesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateTableClauses(this); } }; CreateTableClausesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateTableClauses(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.CreateTableClausesContext = CreateTableClausesContext; SparkSqlParser.prototype.createTableClauses = function() { var localctx = new CreateTableClausesContext(this, this._ctx, this.state); this.enterRule(localctx, 54, SparkSqlParser.RULE_createTableClauses); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1407; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.CLUSTERED || _la===SparkSqlParser.COMMENT || ((((_la - 137)) & ~0x1f) == 0 && ((1 << (_la - 137)) & ((1 << (SparkSqlParser.LOCATION - 137)) | (1 << (SparkSqlParser.OPTIONS - 137)) | (1 << (SparkSqlParser.PARTITIONED - 137)))) !== 0) || _la===SparkSqlParser.TBLPROPERTIES) { this.state = 1405; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.OPTIONS: this.state = 1395; this.match(SparkSqlParser.OPTIONS); this.state = 1396; this.tablePropertyList(); break; case SparkSqlParser.PARTITIONED: this.state = 1397; this.match(SparkSqlParser.PARTITIONED); this.state = 1398; this.match(SparkSqlParser.BY); this.state = 1399; localctx.partitioning = this.transformList(); break; case SparkSqlParser.CLUSTERED: this.state = 1400; this.bucketSpec(); break; case SparkSqlParser.LOCATION: this.state = 1401; this.locationSpec(); break; case SparkSqlParser.COMMENT: this.state = 1402; this.commentSpec(); break; case SparkSqlParser.TBLPROPERTIES: this.state = 1403; this.match(SparkSqlParser.TBLPROPERTIES); this.state = 1404; localctx.tableProps = this.tablePropertyList(); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 1409; this._errHandler.sync(this); _la = this._input.LA(1); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TablePropertyListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_tablePropertyList; return this; } TablePropertyListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TablePropertyListContext.prototype.constructor = TablePropertyListContext; TablePropertyListContext.prototype.tableProperty = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TablePropertyContext); } else { return this.getTypedRuleContext(TablePropertyContext,i); } }; TablePropertyListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTablePropertyList(this); } }; TablePropertyListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTablePropertyList(this); } }; TablePropertyListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTablePropertyList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TablePropertyListContext = TablePropertyListContext; SparkSqlParser.prototype.tablePropertyList = function() { var localctx = new TablePropertyListContext(this, this._ctx, this.state); this.enterRule(localctx, 56, SparkSqlParser.RULE_tablePropertyList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1410; this.match(SparkSqlParser.T__1); this.state = 1411; this.tableProperty(); this.state = 1416; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1412; this.match(SparkSqlParser.T__3); this.state = 1413; this.tableProperty(); this.state = 1418; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1419; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TablePropertyContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_tableProperty; this.key = null; // TablePropertyKeyContext this.value = null; // TablePropertyValueContext return this; } TablePropertyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TablePropertyContext.prototype.constructor = TablePropertyContext; TablePropertyContext.prototype.tablePropertyKey = function() { return this.getTypedRuleContext(TablePropertyKeyContext,0); }; TablePropertyContext.prototype.tablePropertyValue = function() { return this.getTypedRuleContext(TablePropertyValueContext,0); }; TablePropertyContext.prototype.EQ = function() { return this.getToken(SparkSqlParser.EQ, 0); }; TablePropertyContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTableProperty(this); } }; TablePropertyContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTableProperty(this); } }; TablePropertyContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTableProperty(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TablePropertyContext = TablePropertyContext; SparkSqlParser.prototype.tableProperty = function() { var localctx = new TablePropertyContext(this, this._ctx, this.state); this.enterRule(localctx, 58, SparkSqlParser.RULE_tableProperty); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1421; localctx.key = this.tablePropertyKey(); this.state = 1426; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.FALSE || _la===SparkSqlParser.TRUE || _la===SparkSqlParser.EQ || ((((_la - 279)) & ~0x1f) == 0 && ((1 << (_la - 279)) & ((1 << (SparkSqlParser.STRING - 279)) | (1 << (SparkSqlParser.INTEGER_VALUE - 279)) | (1 << (SparkSqlParser.DECIMAL_VALUE - 279)))) !== 0)) { this.state = 1423; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.EQ) { this.state = 1422; this.match(SparkSqlParser.EQ); } this.state = 1425; localctx.value = this.tablePropertyValue(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TablePropertyKeyContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_tablePropertyKey; return this; } TablePropertyKeyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TablePropertyKeyContext.prototype.constructor = TablePropertyKeyContext; TablePropertyKeyContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; TablePropertyKeyContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; TablePropertyKeyContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTablePropertyKey(this); } }; TablePropertyKeyContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTablePropertyKey(this); } }; TablePropertyKeyContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTablePropertyKey(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TablePropertyKeyContext = TablePropertyKeyContext; SparkSqlParser.prototype.tablePropertyKey = function() { var localctx = new TablePropertyKeyContext(this, this._ctx, this.state); this.enterRule(localctx, 60, SparkSqlParser.RULE_tablePropertyKey); var _la = 0; // Token type try { this.state = 1437; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,154,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1428; this.identifier(); this.state = 1433; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__4) { this.state = 1429; this.match(SparkSqlParser.T__4); this.state = 1430; this.identifier(); this.state = 1435; this._errHandler.sync(this); _la = this._input.LA(1); } break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1436; this.match(SparkSqlParser.STRING); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TablePropertyValueContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_tablePropertyValue; return this; } TablePropertyValueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TablePropertyValueContext.prototype.constructor = TablePropertyValueContext; TablePropertyValueContext.prototype.INTEGER_VALUE = function() { return this.getToken(SparkSqlParser.INTEGER_VALUE, 0); }; TablePropertyValueContext.prototype.DECIMAL_VALUE = function() { return this.getToken(SparkSqlParser.DECIMAL_VALUE, 0); }; TablePropertyValueContext.prototype.booleanValue = function() { return this.getTypedRuleContext(BooleanValueContext,0); }; TablePropertyValueContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; TablePropertyValueContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTablePropertyValue(this); } }; TablePropertyValueContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTablePropertyValue(this); } }; TablePropertyValueContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTablePropertyValue(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TablePropertyValueContext = TablePropertyValueContext; SparkSqlParser.prototype.tablePropertyValue = function() { var localctx = new TablePropertyValueContext(this, this._ctx, this.state); this.enterRule(localctx, 62, SparkSqlParser.RULE_tablePropertyValue); try { this.state = 1443; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.INTEGER_VALUE: this.enterOuterAlt(localctx, 1); this.state = 1439; this.match(SparkSqlParser.INTEGER_VALUE); break; case SparkSqlParser.DECIMAL_VALUE: this.enterOuterAlt(localctx, 2); this.state = 1440; this.match(SparkSqlParser.DECIMAL_VALUE); break; case SparkSqlParser.FALSE: case SparkSqlParser.TRUE: this.enterOuterAlt(localctx, 3); this.state = 1441; this.booleanValue(); break; case SparkSqlParser.STRING: this.enterOuterAlt(localctx, 4); this.state = 1442; this.match(SparkSqlParser.STRING); break; default: throw new antlr4.error.NoViableAltException(this); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ConstantListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_constantList; return this; } ConstantListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ConstantListContext.prototype.constructor = ConstantListContext; ConstantListContext.prototype.constant = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ConstantContext); } else { return this.getTypedRuleContext(ConstantContext,i); } }; ConstantListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterConstantList(this); } }; ConstantListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitConstantList(this); } }; ConstantListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitConstantList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ConstantListContext = ConstantListContext; SparkSqlParser.prototype.constantList = function() { var localctx = new ConstantListContext(this, this._ctx, this.state); this.enterRule(localctx, 64, SparkSqlParser.RULE_constantList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1445; this.match(SparkSqlParser.T__1); this.state = 1446; this.constant(); this.state = 1451; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1447; this.match(SparkSqlParser.T__3); this.state = 1448; this.constant(); this.state = 1453; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1454; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NestedConstantListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_nestedConstantList; return this; } NestedConstantListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NestedConstantListContext.prototype.constructor = NestedConstantListContext; NestedConstantListContext.prototype.constantList = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ConstantListContext); } else { return this.getTypedRuleContext(ConstantListContext,i); } }; NestedConstantListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNestedConstantList(this); } }; NestedConstantListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNestedConstantList(this); } }; NestedConstantListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNestedConstantList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NestedConstantListContext = NestedConstantListContext; SparkSqlParser.prototype.nestedConstantList = function() { var localctx = new NestedConstantListContext(this, this._ctx, this.state); this.enterRule(localctx, 66, SparkSqlParser.RULE_nestedConstantList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1456; this.match(SparkSqlParser.T__1); this.state = 1457; this.constantList(); this.state = 1462; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1458; this.match(SparkSqlParser.T__3); this.state = 1459; this.constantList(); this.state = 1464; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1465; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function CreateFileFormatContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_createFileFormat; return this; } CreateFileFormatContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); CreateFileFormatContext.prototype.constructor = CreateFileFormatContext; CreateFileFormatContext.prototype.STORED = function() { return this.getToken(SparkSqlParser.STORED, 0); }; CreateFileFormatContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; CreateFileFormatContext.prototype.fileFormat = function() { return this.getTypedRuleContext(FileFormatContext,0); }; CreateFileFormatContext.prototype.BY = function() { return this.getToken(SparkSqlParser.BY, 0); }; CreateFileFormatContext.prototype.storageHandler = function() { return this.getTypedRuleContext(StorageHandlerContext,0); }; CreateFileFormatContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCreateFileFormat(this); } }; CreateFileFormatContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCreateFileFormat(this); } }; CreateFileFormatContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCreateFileFormat(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.CreateFileFormatContext = CreateFileFormatContext; SparkSqlParser.prototype.createFileFormat = function() { var localctx = new CreateFileFormatContext(this, this._ctx, this.state); this.enterRule(localctx, 68, SparkSqlParser.RULE_createFileFormat); try { this.state = 1473; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,158,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1467; this.match(SparkSqlParser.STORED); this.state = 1468; this.match(SparkSqlParser.AS); this.state = 1469; this.fileFormat(); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1470; this.match(SparkSqlParser.STORED); this.state = 1471; this.match(SparkSqlParser.BY); this.state = 1472; this.storageHandler(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function FileFormatContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_fileFormat; return this; } FileFormatContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); FileFormatContext.prototype.constructor = FileFormatContext; FileFormatContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function TableFileFormatContext(parser, ctx) { FileFormatContext.call(this, parser); this.inFmt = null; // Token; this.outFmt = null; // Token; FileFormatContext.prototype.copyFrom.call(this, ctx); return this; } TableFileFormatContext.prototype = Object.create(FileFormatContext.prototype); TableFileFormatContext.prototype.constructor = TableFileFormatContext; SparkSqlParser.TableFileFormatContext = TableFileFormatContext; TableFileFormatContext.prototype.INPUTFORMAT = function() { return this.getToken(SparkSqlParser.INPUTFORMAT, 0); }; TableFileFormatContext.prototype.OUTPUTFORMAT = function() { return this.getToken(SparkSqlParser.OUTPUTFORMAT, 0); }; TableFileFormatContext.prototype.STRING = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.STRING); } else { return this.getToken(SparkSqlParser.STRING, i); } }; TableFileFormatContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTableFileFormat(this); } }; TableFileFormatContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTableFileFormat(this); } }; TableFileFormatContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTableFileFormat(this); } else { return visitor.visitChildren(this); } }; function GenericFileFormatContext(parser, ctx) { FileFormatContext.call(this, parser); FileFormatContext.prototype.copyFrom.call(this, ctx); return this; } GenericFileFormatContext.prototype = Object.create(FileFormatContext.prototype); GenericFileFormatContext.prototype.constructor = GenericFileFormatContext; SparkSqlParser.GenericFileFormatContext = GenericFileFormatContext; GenericFileFormatContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; GenericFileFormatContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterGenericFileFormat(this); } }; GenericFileFormatContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitGenericFileFormat(this); } }; GenericFileFormatContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitGenericFileFormat(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.FileFormatContext = FileFormatContext; SparkSqlParser.prototype.fileFormat = function() { var localctx = new FileFormatContext(this, this._ctx, this.state); this.enterRule(localctx, 70, SparkSqlParser.RULE_fileFormat); try { this.state = 1480; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,159,this._ctx); switch(la_) { case 1: localctx = new TableFileFormatContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 1475; this.match(SparkSqlParser.INPUTFORMAT); this.state = 1476; localctx.inFmt = this.match(SparkSqlParser.STRING); this.state = 1477; this.match(SparkSqlParser.OUTPUTFORMAT); this.state = 1478; localctx.outFmt = this.match(SparkSqlParser.STRING); break; case 2: localctx = new GenericFileFormatContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 1479; this.identifier(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function StorageHandlerContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_storageHandler; return this; } StorageHandlerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); StorageHandlerContext.prototype.constructor = StorageHandlerContext; StorageHandlerContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; StorageHandlerContext.prototype.WITH = function() { return this.getToken(SparkSqlParser.WITH, 0); }; StorageHandlerContext.prototype.SERDEPROPERTIES = function() { return this.getToken(SparkSqlParser.SERDEPROPERTIES, 0); }; StorageHandlerContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; StorageHandlerContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterStorageHandler(this); } }; StorageHandlerContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitStorageHandler(this); } }; StorageHandlerContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitStorageHandler(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.StorageHandlerContext = StorageHandlerContext; SparkSqlParser.prototype.storageHandler = function() { var localctx = new StorageHandlerContext(this, this._ctx, this.state); this.enterRule(localctx, 72, SparkSqlParser.RULE_storageHandler); try { this.enterOuterAlt(localctx, 1); this.state = 1482; this.match(SparkSqlParser.STRING); this.state = 1486; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,160,this._ctx); if(la_===1) { this.state = 1483; this.match(SparkSqlParser.WITH); this.state = 1484; this.match(SparkSqlParser.SERDEPROPERTIES); this.state = 1485; this.tablePropertyList(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ResourceContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_resource; return this; } ResourceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ResourceContext.prototype.constructor = ResourceContext; ResourceContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; ResourceContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; ResourceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterResource(this); } }; ResourceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitResource(this); } }; ResourceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitResource(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ResourceContext = ResourceContext; SparkSqlParser.prototype.resource = function() { var localctx = new ResourceContext(this, this._ctx, this.state); this.enterRule(localctx, 74, SparkSqlParser.RULE_resource); try { this.enterOuterAlt(localctx, 1); this.state = 1488; this.identifier(); this.state = 1489; this.match(SparkSqlParser.STRING); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function DmlStatementNoWithContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_dmlStatementNoWith; return this; } DmlStatementNoWithContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); DmlStatementNoWithContext.prototype.constructor = DmlStatementNoWithContext; DmlStatementNoWithContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function DeleteFromTableContext(parser, ctx) { DmlStatementNoWithContext.call(this, parser); DmlStatementNoWithContext.prototype.copyFrom.call(this, ctx); return this; } DeleteFromTableContext.prototype = Object.create(DmlStatementNoWithContext.prototype); DeleteFromTableContext.prototype.constructor = DeleteFromTableContext; SparkSqlParser.DeleteFromTableContext = DeleteFromTableContext; DeleteFromTableContext.prototype.DELETE = function() { return this.getToken(SparkSqlParser.DELETE, 0); }; DeleteFromTableContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; DeleteFromTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; DeleteFromTableContext.prototype.tableAlias = function() { return this.getTypedRuleContext(TableAliasContext,0); }; DeleteFromTableContext.prototype.whereClause = function() { return this.getTypedRuleContext(WhereClauseContext,0); }; DeleteFromTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDeleteFromTable(this); } }; DeleteFromTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDeleteFromTable(this); } }; DeleteFromTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDeleteFromTable(this); } else { return visitor.visitChildren(this); } }; function SingleInsertQueryContext(parser, ctx) { DmlStatementNoWithContext.call(this, parser); DmlStatementNoWithContext.prototype.copyFrom.call(this, ctx); return this; } SingleInsertQueryContext.prototype = Object.create(DmlStatementNoWithContext.prototype); SingleInsertQueryContext.prototype.constructor = SingleInsertQueryContext; SparkSqlParser.SingleInsertQueryContext = SingleInsertQueryContext; SingleInsertQueryContext.prototype.insertInto = function() { return this.getTypedRuleContext(InsertIntoContext,0); }; SingleInsertQueryContext.prototype.queryTerm = function() { return this.getTypedRuleContext(QueryTermContext,0); }; SingleInsertQueryContext.prototype.queryOrganization = function() { return this.getTypedRuleContext(QueryOrganizationContext,0); }; SingleInsertQueryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSingleInsertQuery(this); } }; SingleInsertQueryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSingleInsertQuery(this); } }; SingleInsertQueryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSingleInsertQuery(this); } else { return visitor.visitChildren(this); } }; function MultiInsertQueryContext(parser, ctx) { DmlStatementNoWithContext.call(this, parser); DmlStatementNoWithContext.prototype.copyFrom.call(this, ctx); return this; } MultiInsertQueryContext.prototype = Object.create(DmlStatementNoWithContext.prototype); MultiInsertQueryContext.prototype.constructor = MultiInsertQueryContext; SparkSqlParser.MultiInsertQueryContext = MultiInsertQueryContext; MultiInsertQueryContext.prototype.fromClause = function() { return this.getTypedRuleContext(FromClauseContext,0); }; MultiInsertQueryContext.prototype.multiInsertQueryBody = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MultiInsertQueryBodyContext); } else { return this.getTypedRuleContext(MultiInsertQueryBodyContext,i); } }; MultiInsertQueryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterMultiInsertQuery(this); } }; MultiInsertQueryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitMultiInsertQuery(this); } }; MultiInsertQueryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitMultiInsertQuery(this); } else { return visitor.visitChildren(this); } }; function UpdateTableContext(parser, ctx) { DmlStatementNoWithContext.call(this, parser); DmlStatementNoWithContext.prototype.copyFrom.call(this, ctx); return this; } UpdateTableContext.prototype = Object.create(DmlStatementNoWithContext.prototype); UpdateTableContext.prototype.constructor = UpdateTableContext; SparkSqlParser.UpdateTableContext = UpdateTableContext; UpdateTableContext.prototype.UPDATE = function() { return this.getToken(SparkSqlParser.UPDATE, 0); }; UpdateTableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; UpdateTableContext.prototype.tableAlias = function() { return this.getTypedRuleContext(TableAliasContext,0); }; UpdateTableContext.prototype.setClause = function() { return this.getTypedRuleContext(SetClauseContext,0); }; UpdateTableContext.prototype.whereClause = function() { return this.getTypedRuleContext(WhereClauseContext,0); }; UpdateTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterUpdateTable(this); } }; UpdateTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitUpdateTable(this); } }; UpdateTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitUpdateTable(this); } else { return visitor.visitChildren(this); } }; function MergeIntoTableContext(parser, ctx) { DmlStatementNoWithContext.call(this, parser); this.target = null; // MultipartIdentifierContext; this.targetAlias = null; // TableAliasContext; this.source = null; // MultipartIdentifierContext; this.sourceQuery = null; // QueryContext; this.sourceAlias = null; // TableAliasContext; this.mergeCondition = null; // BooleanExpressionContext; DmlStatementNoWithContext.prototype.copyFrom.call(this, ctx); return this; } MergeIntoTableContext.prototype = Object.create(DmlStatementNoWithContext.prototype); MergeIntoTableContext.prototype.constructor = MergeIntoTableContext; SparkSqlParser.MergeIntoTableContext = MergeIntoTableContext; MergeIntoTableContext.prototype.MERGE = function() { return this.getToken(SparkSqlParser.MERGE, 0); }; MergeIntoTableContext.prototype.INTO = function() { return this.getToken(SparkSqlParser.INTO, 0); }; MergeIntoTableContext.prototype.USING = function() { return this.getToken(SparkSqlParser.USING, 0); }; MergeIntoTableContext.prototype.ON = function() { return this.getToken(SparkSqlParser.ON, 0); }; MergeIntoTableContext.prototype.multipartIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MultipartIdentifierContext); } else { return this.getTypedRuleContext(MultipartIdentifierContext,i); } }; MergeIntoTableContext.prototype.tableAlias = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TableAliasContext); } else { return this.getTypedRuleContext(TableAliasContext,i); } }; MergeIntoTableContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; MergeIntoTableContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; MergeIntoTableContext.prototype.matchedClause = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MatchedClauseContext); } else { return this.getTypedRuleContext(MatchedClauseContext,i); } }; MergeIntoTableContext.prototype.notMatchedClause = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(NotMatchedClauseContext); } else { return this.getTypedRuleContext(NotMatchedClauseContext,i); } }; MergeIntoTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterMergeIntoTable(this); } }; MergeIntoTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitMergeIntoTable(this); } }; MergeIntoTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitMergeIntoTable(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.DmlStatementNoWithContext = DmlStatementNoWithContext; SparkSqlParser.prototype.dmlStatementNoWith = function() { var localctx = new DmlStatementNoWithContext(this, this._ctx, this.state); this.enterRule(localctx, 76, SparkSqlParser.RULE_dmlStatementNoWith); var _la = 0; // Token type try { this.state = 1542; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.INSERT: localctx = new SingleInsertQueryContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 1491; this.insertInto(); this.state = 1492; this.queryTerm(0); this.state = 1493; this.queryOrganization(); break; case SparkSqlParser.FROM: localctx = new MultiInsertQueryContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 1495; this.fromClause(); this.state = 1497; this._errHandler.sync(this); _la = this._input.LA(1); do { this.state = 1496; this.multiInsertQueryBody(); this.state = 1499; this._errHandler.sync(this); _la = this._input.LA(1); } while(_la===SparkSqlParser.INSERT); break; case SparkSqlParser.DELETE: localctx = new DeleteFromTableContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 1501; this.match(SparkSqlParser.DELETE); this.state = 1502; this.match(SparkSqlParser.FROM); this.state = 1503; this.multipartIdentifier(); this.state = 1504; this.tableAlias(); this.state = 1506; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.WHERE) { this.state = 1505; this.whereClause(); } break; case SparkSqlParser.UPDATE: localctx = new UpdateTableContext(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 1508; this.match(SparkSqlParser.UPDATE); this.state = 1509; this.multipartIdentifier(); this.state = 1510; this.tableAlias(); this.state = 1511; this.setClause(); this.state = 1513; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.WHERE) { this.state = 1512; this.whereClause(); } break; case SparkSqlParser.MERGE: localctx = new MergeIntoTableContext(this, localctx); this.enterOuterAlt(localctx, 5); this.state = 1515; this.match(SparkSqlParser.MERGE); this.state = 1516; this.match(SparkSqlParser.INTO); this.state = 1517; localctx.target = this.multipartIdentifier(); this.state = 1518; localctx.targetAlias = this.tableAlias(); this.state = 1519; this.match(SparkSqlParser.USING); this.state = 1525; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,164,this._ctx); switch(la_) { case 1: this.state = 1520; localctx.source = this.multipartIdentifier(); break; case 2: this.state = 1521; this.match(SparkSqlParser.T__1); this.state = 1522; localctx.sourceQuery = this.query(); this.state = 1523; this.match(SparkSqlParser.T__2); break; } this.state = 1527; localctx.sourceAlias = this.tableAlias(); this.state = 1528; this.match(SparkSqlParser.ON); this.state = 1529; localctx.mergeCondition = this.booleanExpression(0); this.state = 1533; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,165,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1530; this.matchedClause(); } this.state = 1535; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,165,this._ctx); } this.state = 1539; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.WHEN) { this.state = 1536; this.notMatchedClause(); this.state = 1541; this._errHandler.sync(this); _la = this._input.LA(1); } break; default: throw new antlr4.error.NoViableAltException(this); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QueryOrganizationContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_queryOrganization; this._sortItem = null; // SortItemContext this.order = []; // of SortItemContexts this._expression = null; // ExpressionContext this.clusterBy = []; // of ExpressionContexts this.distributeBy = []; // of ExpressionContexts this.sort = []; // of SortItemContexts this.limit = null; // ExpressionContext return this; } QueryOrganizationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QueryOrganizationContext.prototype.constructor = QueryOrganizationContext; QueryOrganizationContext.prototype.ORDER = function() { return this.getToken(SparkSqlParser.ORDER, 0); }; QueryOrganizationContext.prototype.BY = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.BY); } else { return this.getToken(SparkSqlParser.BY, i); } }; QueryOrganizationContext.prototype.CLUSTER = function() { return this.getToken(SparkSqlParser.CLUSTER, 0); }; QueryOrganizationContext.prototype.DISTRIBUTE = function() { return this.getToken(SparkSqlParser.DISTRIBUTE, 0); }; QueryOrganizationContext.prototype.SORT = function() { return this.getToken(SparkSqlParser.SORT, 0); }; QueryOrganizationContext.prototype.windowClause = function() { return this.getTypedRuleContext(WindowClauseContext,0); }; QueryOrganizationContext.prototype.LIMIT = function() { return this.getToken(SparkSqlParser.LIMIT, 0); }; QueryOrganizationContext.prototype.sortItem = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(SortItemContext); } else { return this.getTypedRuleContext(SortItemContext,i); } }; QueryOrganizationContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; QueryOrganizationContext.prototype.ALL = function() { return this.getToken(SparkSqlParser.ALL, 0); }; QueryOrganizationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQueryOrganization(this); } }; QueryOrganizationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQueryOrganization(this); } }; QueryOrganizationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQueryOrganization(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QueryOrganizationContext = QueryOrganizationContext; SparkSqlParser.prototype.queryOrganization = function() { var localctx = new QueryOrganizationContext(this, this._ctx, this.state); this.enterRule(localctx, 78, SparkSqlParser.RULE_queryOrganization); try { this.enterOuterAlt(localctx, 1); this.state = 1554; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,169,this._ctx); if(la_===1) { this.state = 1544; this.match(SparkSqlParser.ORDER); this.state = 1545; this.match(SparkSqlParser.BY); this.state = 1546; localctx._sortItem = this.sortItem(); localctx.order.push(localctx._sortItem); this.state = 1551; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,168,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1547; this.match(SparkSqlParser.T__3); this.state = 1548; localctx._sortItem = this.sortItem(); localctx.order.push(localctx._sortItem); } this.state = 1553; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,168,this._ctx); } } this.state = 1566; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,171,this._ctx); if(la_===1) { this.state = 1556; this.match(SparkSqlParser.CLUSTER); this.state = 1557; this.match(SparkSqlParser.BY); this.state = 1558; localctx._expression = this.expression(); localctx.clusterBy.push(localctx._expression); this.state = 1563; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,170,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1559; this.match(SparkSqlParser.T__3); this.state = 1560; localctx._expression = this.expression(); localctx.clusterBy.push(localctx._expression); } this.state = 1565; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,170,this._ctx); } } this.state = 1578; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,173,this._ctx); if(la_===1) { this.state = 1568; this.match(SparkSqlParser.DISTRIBUTE); this.state = 1569; this.match(SparkSqlParser.BY); this.state = 1570; localctx._expression = this.expression(); localctx.distributeBy.push(localctx._expression); this.state = 1575; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,172,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1571; this.match(SparkSqlParser.T__3); this.state = 1572; localctx._expression = this.expression(); localctx.distributeBy.push(localctx._expression); } this.state = 1577; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,172,this._ctx); } } this.state = 1590; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,175,this._ctx); if(la_===1) { this.state = 1580; this.match(SparkSqlParser.SORT); this.state = 1581; this.match(SparkSqlParser.BY); this.state = 1582; localctx._sortItem = this.sortItem(); localctx.sort.push(localctx._sortItem); this.state = 1587; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,174,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1583; this.match(SparkSqlParser.T__3); this.state = 1584; localctx._sortItem = this.sortItem(); localctx.sort.push(localctx._sortItem); } this.state = 1589; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,174,this._ctx); } } this.state = 1593; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,176,this._ctx); if(la_===1) { this.state = 1592; this.windowClause(); } this.state = 1600; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,178,this._ctx); if(la_===1) { this.state = 1595; this.match(SparkSqlParser.LIMIT); this.state = 1598; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,177,this._ctx); switch(la_) { case 1: this.state = 1596; this.match(SparkSqlParser.ALL); break; case 2: this.state = 1597; localctx.limit = this.expression(); break; } } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function MultiInsertQueryBodyContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_multiInsertQueryBody; return this; } MultiInsertQueryBodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); MultiInsertQueryBodyContext.prototype.constructor = MultiInsertQueryBodyContext; MultiInsertQueryBodyContext.prototype.insertInto = function() { return this.getTypedRuleContext(InsertIntoContext,0); }; MultiInsertQueryBodyContext.prototype.fromStatementBody = function() { return this.getTypedRuleContext(FromStatementBodyContext,0); }; MultiInsertQueryBodyContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterMultiInsertQueryBody(this); } }; MultiInsertQueryBodyContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitMultiInsertQueryBody(this); } }; MultiInsertQueryBodyContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitMultiInsertQueryBody(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.MultiInsertQueryBodyContext = MultiInsertQueryBodyContext; SparkSqlParser.prototype.multiInsertQueryBody = function() { var localctx = new MultiInsertQueryBodyContext(this, this._ctx, this.state); this.enterRule(localctx, 80, SparkSqlParser.RULE_multiInsertQueryBody); try { this.enterOuterAlt(localctx, 1); this.state = 1602; this.insertInto(); this.state = 1603; this.fromStatementBody(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QueryTermContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_queryTerm; return this; } QueryTermContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QueryTermContext.prototype.constructor = QueryTermContext; QueryTermContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function QueryTermDefaultContext(parser, ctx) { QueryTermContext.call(this, parser); QueryTermContext.prototype.copyFrom.call(this, ctx); return this; } QueryTermDefaultContext.prototype = Object.create(QueryTermContext.prototype); QueryTermDefaultContext.prototype.constructor = QueryTermDefaultContext; SparkSqlParser.QueryTermDefaultContext = QueryTermDefaultContext; QueryTermDefaultContext.prototype.queryPrimary = function() { return this.getTypedRuleContext(QueryPrimaryContext,0); }; QueryTermDefaultContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQueryTermDefault(this); } }; QueryTermDefaultContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQueryTermDefault(this); } }; QueryTermDefaultContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQueryTermDefault(this); } else { return visitor.visitChildren(this); } }; function SetOperationContext(parser, ctx) { QueryTermContext.call(this, parser); this.left = null; // QueryTermContext; this.operator = null; // Token; this.right = null; // QueryTermContext; QueryTermContext.prototype.copyFrom.call(this, ctx); return this; } SetOperationContext.prototype = Object.create(QueryTermContext.prototype); SetOperationContext.prototype.constructor = SetOperationContext; SparkSqlParser.SetOperationContext = SetOperationContext; SetOperationContext.prototype.queryTerm = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(QueryTermContext); } else { return this.getTypedRuleContext(QueryTermContext,i); } }; SetOperationContext.prototype.INTERSECT = function() { return this.getToken(SparkSqlParser.INTERSECT, 0); }; SetOperationContext.prototype.UNION = function() { return this.getToken(SparkSqlParser.UNION, 0); }; SetOperationContext.prototype.EXCEPT = function() { return this.getToken(SparkSqlParser.EXCEPT, 0); }; SetOperationContext.prototype.SETMINUS = function() { return this.getToken(SparkSqlParser.SETMINUS, 0); }; SetOperationContext.prototype.setQuantifier = function() { return this.getTypedRuleContext(SetQuantifierContext,0); }; SetOperationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetOperation(this); } }; SetOperationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetOperation(this); } }; SetOperationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetOperation(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.prototype.queryTerm = function(_p) { if(_p===undefined) { _p = 0; } var _parentctx = this._ctx; var _parentState = this.state; var localctx = new QueryTermContext(this, this._ctx, _parentState); var _prevctx = localctx; var _startState = 82; this.enterRecursionRule(localctx, 82, SparkSqlParser.RULE_queryTerm, _p); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); localctx = new QueryTermDefaultContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 1606; this.queryPrimary(); this._ctx.stop = this._input.LT(-1); this.state = 1631; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,183,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { if(this._parseListeners!==null) { this.triggerExitRuleEvent(); } _prevctx = localctx; this.state = 1629; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,182,this._ctx); switch(la_) { case 1: localctx = new SetOperationContext(this, new QueryTermContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_queryTerm); this.state = 1608; if (!( this.precpred(this._ctx, 3))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 3)"); } this.state = 1609; if (!( legacy_setops_precedence_enbled)) { throw new antlr4.error.FailedPredicateException(this, "legacy_setops_precedence_enbled"); } this.state = 1610; localctx.operator = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.EXCEPT || _la===SparkSqlParser.INTERSECT || _la===SparkSqlParser.SETMINUS || _la===SparkSqlParser.UNION)) { localctx.operator = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 1612; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ALL || _la===SparkSqlParser.DISTINCT) { this.state = 1611; this.setQuantifier(); } this.state = 1614; localctx.right = this.queryTerm(4); break; case 2: localctx = new SetOperationContext(this, new QueryTermContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_queryTerm); this.state = 1615; if (!( this.precpred(this._ctx, 2))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 2)"); } this.state = 1616; if (!( !legacy_setops_precedence_enbled)) { throw new antlr4.error.FailedPredicateException(this, "!legacy_setops_precedence_enbled"); } this.state = 1617; localctx.operator = this.match(SparkSqlParser.INTERSECT); this.state = 1619; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ALL || _la===SparkSqlParser.DISTINCT) { this.state = 1618; this.setQuantifier(); } this.state = 1621; localctx.right = this.queryTerm(3); break; case 3: localctx = new SetOperationContext(this, new QueryTermContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_queryTerm); this.state = 1622; if (!( this.precpred(this._ctx, 1))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 1)"); } this.state = 1623; if (!( !legacy_setops_precedence_enbled)) { throw new antlr4.error.FailedPredicateException(this, "!legacy_setops_precedence_enbled"); } this.state = 1624; localctx.operator = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.EXCEPT || _la===SparkSqlParser.SETMINUS || _la===SparkSqlParser.UNION)) { localctx.operator = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 1626; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ALL || _la===SparkSqlParser.DISTINCT) { this.state = 1625; this.setQuantifier(); } this.state = 1628; localctx.right = this.queryTerm(2); break; } } this.state = 1633; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,183,this._ctx); } } catch( error) { if(error instanceof antlr4.error.RecognitionException) { localctx.exception = error; this._errHandler.reportError(this, error); this._errHandler.recover(this, error); } else { throw error; } } finally { this.unrollRecursionContexts(_parentctx) } return localctx; }; function QueryPrimaryContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_queryPrimary; return this; } QueryPrimaryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QueryPrimaryContext.prototype.constructor = QueryPrimaryContext; QueryPrimaryContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function SubqueryContext(parser, ctx) { QueryPrimaryContext.call(this, parser); QueryPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } SubqueryContext.prototype = Object.create(QueryPrimaryContext.prototype); SubqueryContext.prototype.constructor = SubqueryContext; SparkSqlParser.SubqueryContext = SubqueryContext; SubqueryContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; SubqueryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSubquery(this); } }; SubqueryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSubquery(this); } }; SubqueryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSubquery(this); } else { return visitor.visitChildren(this); } }; function QueryPrimaryDefaultContext(parser, ctx) { QueryPrimaryContext.call(this, parser); QueryPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } QueryPrimaryDefaultContext.prototype = Object.create(QueryPrimaryContext.prototype); QueryPrimaryDefaultContext.prototype.constructor = QueryPrimaryDefaultContext; SparkSqlParser.QueryPrimaryDefaultContext = QueryPrimaryDefaultContext; QueryPrimaryDefaultContext.prototype.querySpecification = function() { return this.getTypedRuleContext(QuerySpecificationContext,0); }; QueryPrimaryDefaultContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQueryPrimaryDefault(this); } }; QueryPrimaryDefaultContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQueryPrimaryDefault(this); } }; QueryPrimaryDefaultContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQueryPrimaryDefault(this); } else { return visitor.visitChildren(this); } }; function InlineTableDefault1Context(parser, ctx) { QueryPrimaryContext.call(this, parser); QueryPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } InlineTableDefault1Context.prototype = Object.create(QueryPrimaryContext.prototype); InlineTableDefault1Context.prototype.constructor = InlineTableDefault1Context; SparkSqlParser.InlineTableDefault1Context = InlineTableDefault1Context; InlineTableDefault1Context.prototype.inlineTable = function() { return this.getTypedRuleContext(InlineTableContext,0); }; InlineTableDefault1Context.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterInlineTableDefault1(this); } }; InlineTableDefault1Context.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitInlineTableDefault1(this); } }; InlineTableDefault1Context.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitInlineTableDefault1(this); } else { return visitor.visitChildren(this); } }; function FromStmtContext(parser, ctx) { QueryPrimaryContext.call(this, parser); QueryPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } FromStmtContext.prototype = Object.create(QueryPrimaryContext.prototype); FromStmtContext.prototype.constructor = FromStmtContext; SparkSqlParser.FromStmtContext = FromStmtContext; FromStmtContext.prototype.fromStatement = function() { return this.getTypedRuleContext(FromStatementContext,0); }; FromStmtContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFromStmt(this); } }; FromStmtContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFromStmt(this); } }; FromStmtContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFromStmt(this); } else { return visitor.visitChildren(this); } }; function TableContext(parser, ctx) { QueryPrimaryContext.call(this, parser); QueryPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } TableContext.prototype = Object.create(QueryPrimaryContext.prototype); TableContext.prototype.constructor = TableContext; SparkSqlParser.TableContext = TableContext; TableContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; TableContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; TableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTable(this); } }; TableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTable(this); } }; TableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTable(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QueryPrimaryContext = QueryPrimaryContext; SparkSqlParser.prototype.queryPrimary = function() { var localctx = new QueryPrimaryContext(this, this._ctx, this.state); this.enterRule(localctx, 84, SparkSqlParser.RULE_queryPrimary); try { this.state = 1643; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.MAP: case SparkSqlParser.REDUCE: case SparkSqlParser.SELECT: localctx = new QueryPrimaryDefaultContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 1634; this.querySpecification(); break; case SparkSqlParser.FROM: localctx = new FromStmtContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 1635; this.fromStatement(); break; case SparkSqlParser.TABLE: localctx = new TableContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 1636; this.match(SparkSqlParser.TABLE); this.state = 1637; this.multipartIdentifier(); break; case SparkSqlParser.VALUES: localctx = new InlineTableDefault1Context(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 1638; this.inlineTable(); break; case SparkSqlParser.T__1: localctx = new SubqueryContext(this, localctx); this.enterOuterAlt(localctx, 5); this.state = 1639; this.match(SparkSqlParser.T__1); this.state = 1640; this.query(); this.state = 1641; this.match(SparkSqlParser.T__2); break; default: throw new antlr4.error.NoViableAltException(this); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SortItemContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_sortItem; this.ordering = null; // Token this.nullOrder = null; // Token return this; } SortItemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SortItemContext.prototype.constructor = SortItemContext; SortItemContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; SortItemContext.prototype.NULLS = function() { return this.getToken(SparkSqlParser.NULLS, 0); }; SortItemContext.prototype.ASC = function() { return this.getToken(SparkSqlParser.ASC, 0); }; SortItemContext.prototype.DESC = function() { return this.getToken(SparkSqlParser.DESC, 0); }; SortItemContext.prototype.LAST = function() { return this.getToken(SparkSqlParser.LAST, 0); }; SortItemContext.prototype.FIRST = function() { return this.getToken(SparkSqlParser.FIRST, 0); }; SortItemContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSortItem(this); } }; SortItemContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSortItem(this); } }; SortItemContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSortItem(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SortItemContext = SortItemContext; SparkSqlParser.prototype.sortItem = function() { var localctx = new SortItemContext(this, this._ctx, this.state); this.enterRule(localctx, 86, SparkSqlParser.RULE_sortItem); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1645; this.expression(); this.state = 1647; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,185,this._ctx); if(la_===1) { this.state = 1646; localctx.ordering = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.ASC || _la===SparkSqlParser.DESC)) { localctx.ordering = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } this.state = 1651; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,186,this._ctx); if(la_===1) { this.state = 1649; this.match(SparkSqlParser.NULLS); this.state = 1650; localctx.nullOrder = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.FIRST || _la===SparkSqlParser.LAST)) { localctx.nullOrder = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function FromStatementContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_fromStatement; return this; } FromStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); FromStatementContext.prototype.constructor = FromStatementContext; FromStatementContext.prototype.fromClause = function() { return this.getTypedRuleContext(FromClauseContext,0); }; FromStatementContext.prototype.fromStatementBody = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(FromStatementBodyContext); } else { return this.getTypedRuleContext(FromStatementBodyContext,i); } }; FromStatementContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFromStatement(this); } }; FromStatementContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFromStatement(this); } }; FromStatementContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFromStatement(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.FromStatementContext = FromStatementContext; SparkSqlParser.prototype.fromStatement = function() { var localctx = new FromStatementContext(this, this._ctx, this.state); this.enterRule(localctx, 88, SparkSqlParser.RULE_fromStatement); try { this.enterOuterAlt(localctx, 1); this.state = 1653; this.fromClause(); this.state = 1655; this._errHandler.sync(this); var _alt = 1; do { switch (_alt) { case 1: this.state = 1654; this.fromStatementBody(); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 1657; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,187, this._ctx); } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER ); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function FromStatementBodyContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_fromStatementBody; return this; } FromStatementBodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); FromStatementBodyContext.prototype.constructor = FromStatementBodyContext; FromStatementBodyContext.prototype.transformClause = function() { return this.getTypedRuleContext(TransformClauseContext,0); }; FromStatementBodyContext.prototype.queryOrganization = function() { return this.getTypedRuleContext(QueryOrganizationContext,0); }; FromStatementBodyContext.prototype.whereClause = function() { return this.getTypedRuleContext(WhereClauseContext,0); }; FromStatementBodyContext.prototype.selectClause = function() { return this.getTypedRuleContext(SelectClauseContext,0); }; FromStatementBodyContext.prototype.lateralView = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(LateralViewContext); } else { return this.getTypedRuleContext(LateralViewContext,i); } }; FromStatementBodyContext.prototype.aggregationClause = function() { return this.getTypedRuleContext(AggregationClauseContext,0); }; FromStatementBodyContext.prototype.havingClause = function() { return this.getTypedRuleContext(HavingClauseContext,0); }; FromStatementBodyContext.prototype.windowClause = function() { return this.getTypedRuleContext(WindowClauseContext,0); }; FromStatementBodyContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFromStatementBody(this); } }; FromStatementBodyContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFromStatementBody(this); } }; FromStatementBodyContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFromStatementBody(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.FromStatementBodyContext = FromStatementBodyContext; SparkSqlParser.prototype.fromStatementBody = function() { var localctx = new FromStatementBodyContext(this, this._ctx, this.state); this.enterRule(localctx, 90, SparkSqlParser.RULE_fromStatementBody); try { this.state = 1686; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,194,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1659; this.transformClause(); this.state = 1661; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,188,this._ctx); if(la_===1) { this.state = 1660; this.whereClause(); } this.state = 1663; this.queryOrganization(); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1665; this.selectClause(); this.state = 1669; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,189,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1666; this.lateralView(); } this.state = 1671; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,189,this._ctx); } this.state = 1673; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,190,this._ctx); if(la_===1) { this.state = 1672; this.whereClause(); } this.state = 1676; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,191,this._ctx); if(la_===1) { this.state = 1675; this.aggregationClause(); } this.state = 1679; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,192,this._ctx); if(la_===1) { this.state = 1678; this.havingClause(); } this.state = 1682; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,193,this._ctx); if(la_===1) { this.state = 1681; this.windowClause(); } this.state = 1684; this.queryOrganization(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QuerySpecificationContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_querySpecification; return this; } QuerySpecificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QuerySpecificationContext.prototype.constructor = QuerySpecificationContext; QuerySpecificationContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function RegularQuerySpecificationContext(parser, ctx) { QuerySpecificationContext.call(this, parser); QuerySpecificationContext.prototype.copyFrom.call(this, ctx); return this; } RegularQuerySpecificationContext.prototype = Object.create(QuerySpecificationContext.prototype); RegularQuerySpecificationContext.prototype.constructor = RegularQuerySpecificationContext; SparkSqlParser.RegularQuerySpecificationContext = RegularQuerySpecificationContext; RegularQuerySpecificationContext.prototype.selectClause = function() { return this.getTypedRuleContext(SelectClauseContext,0); }; RegularQuerySpecificationContext.prototype.fromClause = function() { return this.getTypedRuleContext(FromClauseContext,0); }; RegularQuerySpecificationContext.prototype.lateralView = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(LateralViewContext); } else { return this.getTypedRuleContext(LateralViewContext,i); } }; RegularQuerySpecificationContext.prototype.whereClause = function() { return this.getTypedRuleContext(WhereClauseContext,0); }; RegularQuerySpecificationContext.prototype.aggregationClause = function() { return this.getTypedRuleContext(AggregationClauseContext,0); }; RegularQuerySpecificationContext.prototype.havingClause = function() { return this.getTypedRuleContext(HavingClauseContext,0); }; RegularQuerySpecificationContext.prototype.windowClause = function() { return this.getTypedRuleContext(WindowClauseContext,0); }; RegularQuerySpecificationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRegularQuerySpecification(this); } }; RegularQuerySpecificationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRegularQuerySpecification(this); } }; RegularQuerySpecificationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRegularQuerySpecification(this); } else { return visitor.visitChildren(this); } }; function TransformQuerySpecificationContext(parser, ctx) { QuerySpecificationContext.call(this, parser); QuerySpecificationContext.prototype.copyFrom.call(this, ctx); return this; } TransformQuerySpecificationContext.prototype = Object.create(QuerySpecificationContext.prototype); TransformQuerySpecificationContext.prototype.constructor = TransformQuerySpecificationContext; SparkSqlParser.TransformQuerySpecificationContext = TransformQuerySpecificationContext; TransformQuerySpecificationContext.prototype.transformClause = function() { return this.getTypedRuleContext(TransformClauseContext,0); }; TransformQuerySpecificationContext.prototype.fromClause = function() { return this.getTypedRuleContext(FromClauseContext,0); }; TransformQuerySpecificationContext.prototype.whereClause = function() { return this.getTypedRuleContext(WhereClauseContext,0); }; TransformQuerySpecificationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTransformQuerySpecification(this); } }; TransformQuerySpecificationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTransformQuerySpecification(this); } }; TransformQuerySpecificationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTransformQuerySpecification(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QuerySpecificationContext = QuerySpecificationContext; SparkSqlParser.prototype.querySpecification = function() { var localctx = new QuerySpecificationContext(this, this._ctx, this.state); this.enterRule(localctx, 92, SparkSqlParser.RULE_querySpecification); try { this.state = 1717; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,203,this._ctx); switch(la_) { case 1: localctx = new TransformQuerySpecificationContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 1688; this.transformClause(); this.state = 1690; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,195,this._ctx); if(la_===1) { this.state = 1689; this.fromClause(); } this.state = 1693; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,196,this._ctx); if(la_===1) { this.state = 1692; this.whereClause(); } break; case 2: localctx = new RegularQuerySpecificationContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 1695; this.selectClause(); this.state = 1697; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,197,this._ctx); if(la_===1) { this.state = 1696; this.fromClause(); } this.state = 1702; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,198,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1699; this.lateralView(); } this.state = 1704; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,198,this._ctx); } this.state = 1706; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,199,this._ctx); if(la_===1) { this.state = 1705; this.whereClause(); } this.state = 1709; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,200,this._ctx); if(la_===1) { this.state = 1708; this.aggregationClause(); } this.state = 1712; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,201,this._ctx); if(la_===1) { this.state = 1711; this.havingClause(); } this.state = 1715; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,202,this._ctx); if(la_===1) { this.state = 1714; this.windowClause(); } break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TransformClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_transformClause; this.kind = null; // Token this.inRowFormat = null; // RowFormatContext this.recordWriter = null; // Token this.script = null; // Token this.outRowFormat = null; // RowFormatContext this.recordReader = null; // Token return this; } TransformClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TransformClauseContext.prototype.constructor = TransformClauseContext; TransformClauseContext.prototype.USING = function() { return this.getToken(SparkSqlParser.USING, 0); }; TransformClauseContext.prototype.STRING = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.STRING); } else { return this.getToken(SparkSqlParser.STRING, i); } }; TransformClauseContext.prototype.SELECT = function() { return this.getToken(SparkSqlParser.SELECT, 0); }; TransformClauseContext.prototype.namedExpressionSeq = function() { return this.getTypedRuleContext(NamedExpressionSeqContext,0); }; TransformClauseContext.prototype.TRANSFORM = function() { return this.getToken(SparkSqlParser.TRANSFORM, 0); }; TransformClauseContext.prototype.MAP = function() { return this.getToken(SparkSqlParser.MAP, 0); }; TransformClauseContext.prototype.REDUCE = function() { return this.getToken(SparkSqlParser.REDUCE, 0); }; TransformClauseContext.prototype.RECORDWRITER = function() { return this.getToken(SparkSqlParser.RECORDWRITER, 0); }; TransformClauseContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; TransformClauseContext.prototype.RECORDREADER = function() { return this.getToken(SparkSqlParser.RECORDREADER, 0); }; TransformClauseContext.prototype.rowFormat = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(RowFormatContext); } else { return this.getTypedRuleContext(RowFormatContext,i); } }; TransformClauseContext.prototype.identifierSeq = function() { return this.getTypedRuleContext(IdentifierSeqContext,0); }; TransformClauseContext.prototype.colTypeList = function() { return this.getTypedRuleContext(ColTypeListContext,0); }; TransformClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTransformClause(this); } }; TransformClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTransformClause(this); } }; TransformClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTransformClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TransformClauseContext = TransformClauseContext; SparkSqlParser.prototype.transformClause = function() { var localctx = new TransformClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 94, SparkSqlParser.RULE_transformClause); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1729; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.SELECT: this.state = 1719; this.match(SparkSqlParser.SELECT); this.state = 1720; localctx.kind = this.match(SparkSqlParser.TRANSFORM); this.state = 1721; this.match(SparkSqlParser.T__1); this.state = 1722; this.namedExpressionSeq(); this.state = 1723; this.match(SparkSqlParser.T__2); break; case SparkSqlParser.MAP: this.state = 1725; localctx.kind = this.match(SparkSqlParser.MAP); this.state = 1726; this.namedExpressionSeq(); break; case SparkSqlParser.REDUCE: this.state = 1727; localctx.kind = this.match(SparkSqlParser.REDUCE); this.state = 1728; this.namedExpressionSeq(); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 1732; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ROW) { this.state = 1731; localctx.inRowFormat = this.rowFormat(); } this.state = 1736; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.RECORDWRITER) { this.state = 1734; this.match(SparkSqlParser.RECORDWRITER); this.state = 1735; localctx.recordWriter = this.match(SparkSqlParser.STRING); } this.state = 1738; this.match(SparkSqlParser.USING); this.state = 1739; localctx.script = this.match(SparkSqlParser.STRING); this.state = 1752; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,209,this._ctx); if(la_===1) { this.state = 1740; this.match(SparkSqlParser.AS); this.state = 1750; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,208,this._ctx); switch(la_) { case 1: this.state = 1741; this.identifierSeq(); break; case 2: this.state = 1742; this.colTypeList(); break; case 3: this.state = 1743; this.match(SparkSqlParser.T__1); this.state = 1746; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,207,this._ctx); switch(la_) { case 1: this.state = 1744; this.identifierSeq(); break; case 2: this.state = 1745; this.colTypeList(); break; } this.state = 1748; this.match(SparkSqlParser.T__2); break; } } this.state = 1755; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,210,this._ctx); if(la_===1) { this.state = 1754; localctx.outRowFormat = this.rowFormat(); } this.state = 1759; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,211,this._ctx); if(la_===1) { this.state = 1757; this.match(SparkSqlParser.RECORDREADER); this.state = 1758; localctx.recordReader = this.match(SparkSqlParser.STRING); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SelectClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_selectClause; this._hint = null; // HintContext this.hints = []; // of HintContexts return this; } SelectClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SelectClauseContext.prototype.constructor = SelectClauseContext; SelectClauseContext.prototype.SELECT = function() { return this.getToken(SparkSqlParser.SELECT, 0); }; SelectClauseContext.prototype.namedExpressionSeq = function() { return this.getTypedRuleContext(NamedExpressionSeqContext,0); }; SelectClauseContext.prototype.setQuantifier = function() { return this.getTypedRuleContext(SetQuantifierContext,0); }; SelectClauseContext.prototype.hint = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(HintContext); } else { return this.getTypedRuleContext(HintContext,i); } }; SelectClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSelectClause(this); } }; SelectClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSelectClause(this); } }; SelectClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSelectClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SelectClauseContext = SelectClauseContext; SparkSqlParser.prototype.selectClause = function() { var localctx = new SelectClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 96, SparkSqlParser.RULE_selectClause); try { this.enterOuterAlt(localctx, 1); this.state = 1761; this.match(SparkSqlParser.SELECT); this.state = 1765; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,212,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1762; localctx._hint = this.hint(); localctx.hints.push(localctx._hint); } this.state = 1767; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,212,this._ctx); } this.state = 1769; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,213,this._ctx); if(la_===1) { this.state = 1768; this.setQuantifier(); } this.state = 1771; this.namedExpressionSeq(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SetClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_setClause; return this; } SetClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SetClauseContext.prototype.constructor = SetClauseContext; SetClauseContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; SetClauseContext.prototype.assignmentList = function() { return this.getTypedRuleContext(AssignmentListContext,0); }; SetClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetClause(this); } }; SetClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetClause(this); } }; SetClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SetClauseContext = SetClauseContext; SparkSqlParser.prototype.setClause = function() { var localctx = new SetClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 98, SparkSqlParser.RULE_setClause); try { this.enterOuterAlt(localctx, 1); this.state = 1773; this.match(SparkSqlParser.SET); this.state = 1774; this.assignmentList(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function MatchedClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_matchedClause; this.matchedCond = null; // BooleanExpressionContext return this; } MatchedClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); MatchedClauseContext.prototype.constructor = MatchedClauseContext; MatchedClauseContext.prototype.WHEN = function() { return this.getToken(SparkSqlParser.WHEN, 0); }; MatchedClauseContext.prototype.MATCHED = function() { return this.getToken(SparkSqlParser.MATCHED, 0); }; MatchedClauseContext.prototype.THEN = function() { return this.getToken(SparkSqlParser.THEN, 0); }; MatchedClauseContext.prototype.matchedAction = function() { return this.getTypedRuleContext(MatchedActionContext,0); }; MatchedClauseContext.prototype.AND = function() { return this.getToken(SparkSqlParser.AND, 0); }; MatchedClauseContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; MatchedClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterMatchedClause(this); } }; MatchedClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitMatchedClause(this); } }; MatchedClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitMatchedClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.MatchedClauseContext = MatchedClauseContext; SparkSqlParser.prototype.matchedClause = function() { var localctx = new MatchedClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 100, SparkSqlParser.RULE_matchedClause); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1776; this.match(SparkSqlParser.WHEN); this.state = 1777; this.match(SparkSqlParser.MATCHED); this.state = 1780; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AND) { this.state = 1778; this.match(SparkSqlParser.AND); this.state = 1779; localctx.matchedCond = this.booleanExpression(0); } this.state = 1782; this.match(SparkSqlParser.THEN); this.state = 1783; this.matchedAction(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NotMatchedClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_notMatchedClause; this.notMatchedCond = null; // BooleanExpressionContext return this; } NotMatchedClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NotMatchedClauseContext.prototype.constructor = NotMatchedClauseContext; NotMatchedClauseContext.prototype.WHEN = function() { return this.getToken(SparkSqlParser.WHEN, 0); }; NotMatchedClauseContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; NotMatchedClauseContext.prototype.MATCHED = function() { return this.getToken(SparkSqlParser.MATCHED, 0); }; NotMatchedClauseContext.prototype.THEN = function() { return this.getToken(SparkSqlParser.THEN, 0); }; NotMatchedClauseContext.prototype.notMatchedAction = function() { return this.getTypedRuleContext(NotMatchedActionContext,0); }; NotMatchedClauseContext.prototype.AND = function() { return this.getToken(SparkSqlParser.AND, 0); }; NotMatchedClauseContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; NotMatchedClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNotMatchedClause(this); } }; NotMatchedClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNotMatchedClause(this); } }; NotMatchedClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNotMatchedClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NotMatchedClauseContext = NotMatchedClauseContext; SparkSqlParser.prototype.notMatchedClause = function() { var localctx = new NotMatchedClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 102, SparkSqlParser.RULE_notMatchedClause); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1785; this.match(SparkSqlParser.WHEN); this.state = 1786; this.match(SparkSqlParser.NOT); this.state = 1787; this.match(SparkSqlParser.MATCHED); this.state = 1790; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AND) { this.state = 1788; this.match(SparkSqlParser.AND); this.state = 1789; localctx.notMatchedCond = this.booleanExpression(0); } this.state = 1792; this.match(SparkSqlParser.THEN); this.state = 1793; this.notMatchedAction(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function MatchedActionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_matchedAction; return this; } MatchedActionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); MatchedActionContext.prototype.constructor = MatchedActionContext; MatchedActionContext.prototype.DELETE = function() { return this.getToken(SparkSqlParser.DELETE, 0); }; MatchedActionContext.prototype.UPDATE = function() { return this.getToken(SparkSqlParser.UPDATE, 0); }; MatchedActionContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; MatchedActionContext.prototype.ASTERISK = function() { return this.getToken(SparkSqlParser.ASTERISK, 0); }; MatchedActionContext.prototype.assignmentList = function() { return this.getTypedRuleContext(AssignmentListContext,0); }; MatchedActionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterMatchedAction(this); } }; MatchedActionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitMatchedAction(this); } }; MatchedActionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitMatchedAction(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.MatchedActionContext = MatchedActionContext; SparkSqlParser.prototype.matchedAction = function() { var localctx = new MatchedActionContext(this, this._ctx, this.state); this.enterRule(localctx, 104, SparkSqlParser.RULE_matchedAction); try { this.state = 1802; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,216,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1795; this.match(SparkSqlParser.DELETE); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1796; this.match(SparkSqlParser.UPDATE); this.state = 1797; this.match(SparkSqlParser.SET); this.state = 1798; this.match(SparkSqlParser.ASTERISK); break; case 3: this.enterOuterAlt(localctx, 3); this.state = 1799; this.match(SparkSqlParser.UPDATE); this.state = 1800; this.match(SparkSqlParser.SET); this.state = 1801; this.assignmentList(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NotMatchedActionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_notMatchedAction; this.columns = null; // MultipartIdentifierListContext return this; } NotMatchedActionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NotMatchedActionContext.prototype.constructor = NotMatchedActionContext; NotMatchedActionContext.prototype.INSERT = function() { return this.getToken(SparkSqlParser.INSERT, 0); }; NotMatchedActionContext.prototype.ASTERISK = function() { return this.getToken(SparkSqlParser.ASTERISK, 0); }; NotMatchedActionContext.prototype.VALUES = function() { return this.getToken(SparkSqlParser.VALUES, 0); }; NotMatchedActionContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; NotMatchedActionContext.prototype.multipartIdentifierList = function() { return this.getTypedRuleContext(MultipartIdentifierListContext,0); }; NotMatchedActionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNotMatchedAction(this); } }; NotMatchedActionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNotMatchedAction(this); } }; NotMatchedActionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNotMatchedAction(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NotMatchedActionContext = NotMatchedActionContext; SparkSqlParser.prototype.notMatchedAction = function() { var localctx = new NotMatchedActionContext(this, this._ctx, this.state); this.enterRule(localctx, 106, SparkSqlParser.RULE_notMatchedAction); var _la = 0; // Token type try { this.state = 1822; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,218,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1804; this.match(SparkSqlParser.INSERT); this.state = 1805; this.match(SparkSqlParser.ASTERISK); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1806; this.match(SparkSqlParser.INSERT); this.state = 1807; this.match(SparkSqlParser.T__1); this.state = 1808; localctx.columns = this.multipartIdentifierList(); this.state = 1809; this.match(SparkSqlParser.T__2); this.state = 1810; this.match(SparkSqlParser.VALUES); this.state = 1811; this.match(SparkSqlParser.T__1); this.state = 1812; this.expression(); this.state = 1817; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1813; this.match(SparkSqlParser.T__3); this.state = 1814; this.expression(); this.state = 1819; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1820; this.match(SparkSqlParser.T__2); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function AssignmentListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_assignmentList; return this; } AssignmentListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); AssignmentListContext.prototype.constructor = AssignmentListContext; AssignmentListContext.prototype.assignment = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(AssignmentContext); } else { return this.getTypedRuleContext(AssignmentContext,i); } }; AssignmentListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAssignmentList(this); } }; AssignmentListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAssignmentList(this); } }; AssignmentListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAssignmentList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.AssignmentListContext = AssignmentListContext; SparkSqlParser.prototype.assignmentList = function() { var localctx = new AssignmentListContext(this, this._ctx, this.state); this.enterRule(localctx, 108, SparkSqlParser.RULE_assignmentList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1824; this.assignment(); this.state = 1829; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1825; this.match(SparkSqlParser.T__3); this.state = 1826; this.assignment(); this.state = 1831; this._errHandler.sync(this); _la = this._input.LA(1); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function AssignmentContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_assignment; this.key = null; // MultipartIdentifierContext this.value = null; // ExpressionContext return this; } AssignmentContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); AssignmentContext.prototype.constructor = AssignmentContext; AssignmentContext.prototype.EQ = function() { return this.getToken(SparkSqlParser.EQ, 0); }; AssignmentContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; AssignmentContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; AssignmentContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAssignment(this); } }; AssignmentContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAssignment(this); } }; AssignmentContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAssignment(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.AssignmentContext = AssignmentContext; SparkSqlParser.prototype.assignment = function() { var localctx = new AssignmentContext(this, this._ctx, this.state); this.enterRule(localctx, 110, SparkSqlParser.RULE_assignment); try { this.enterOuterAlt(localctx, 1); this.state = 1832; localctx.key = this.multipartIdentifier(); this.state = 1833; this.match(SparkSqlParser.EQ); this.state = 1834; localctx.value = this.expression(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function WhereClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_whereClause; return this; } WhereClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); WhereClauseContext.prototype.constructor = WhereClauseContext; WhereClauseContext.prototype.WHERE = function() { return this.getToken(SparkSqlParser.WHERE, 0); }; WhereClauseContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; WhereClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterWhereClause(this); } }; WhereClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitWhereClause(this); } }; WhereClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitWhereClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.WhereClauseContext = WhereClauseContext; SparkSqlParser.prototype.whereClause = function() { var localctx = new WhereClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 112, SparkSqlParser.RULE_whereClause); try { this.enterOuterAlt(localctx, 1); this.state = 1836; this.match(SparkSqlParser.WHERE); this.state = 1837; this.booleanExpression(0); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function HavingClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_havingClause; return this; } HavingClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); HavingClauseContext.prototype.constructor = HavingClauseContext; HavingClauseContext.prototype.HAVING = function() { return this.getToken(SparkSqlParser.HAVING, 0); }; HavingClauseContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; HavingClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterHavingClause(this); } }; HavingClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitHavingClause(this); } }; HavingClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitHavingClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.HavingClauseContext = HavingClauseContext; SparkSqlParser.prototype.havingClause = function() { var localctx = new HavingClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 114, SparkSqlParser.RULE_havingClause); try { this.enterOuterAlt(localctx, 1); this.state = 1839; this.match(SparkSqlParser.HAVING); this.state = 1840; this.booleanExpression(0); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function HintContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_hint; this._hintStatement = null; // HintStatementContext this.hintStatements = []; // of HintStatementContexts return this; } HintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); HintContext.prototype.constructor = HintContext; HintContext.prototype.hintStatement = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(HintStatementContext); } else { return this.getTypedRuleContext(HintStatementContext,i); } }; HintContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterHint(this); } }; HintContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitHint(this); } }; HintContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitHint(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.HintContext = HintContext; SparkSqlParser.prototype.hint = function() { var localctx = new HintContext(this, this._ctx, this.state); this.enterRule(localctx, 116, SparkSqlParser.RULE_hint); try { this.enterOuterAlt(localctx, 1); this.state = 1842; this.match(SparkSqlParser.T__5); this.state = 1843; localctx._hintStatement = this.hintStatement(); localctx.hintStatements.push(localctx._hintStatement); this.state = 1850; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,221,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1845; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,220,this._ctx); if(la_===1) { this.state = 1844; this.match(SparkSqlParser.T__3); } this.state = 1847; localctx._hintStatement = this.hintStatement(); localctx.hintStatements.push(localctx._hintStatement); } this.state = 1852; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,221,this._ctx); } this.state = 1853; this.match(SparkSqlParser.T__6); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function HintStatementContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_hintStatement; this.hintName = null; // IdentifierContext this._primaryExpression = null; // PrimaryExpressionContext this.parameters = []; // of PrimaryExpressionContexts return this; } HintStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); HintStatementContext.prototype.constructor = HintStatementContext; HintStatementContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; HintStatementContext.prototype.primaryExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(PrimaryExpressionContext); } else { return this.getTypedRuleContext(PrimaryExpressionContext,i); } }; HintStatementContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterHintStatement(this); } }; HintStatementContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitHintStatement(this); } }; HintStatementContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitHintStatement(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.HintStatementContext = HintStatementContext; SparkSqlParser.prototype.hintStatement = function() { var localctx = new HintStatementContext(this, this._ctx, this.state); this.enterRule(localctx, 118, SparkSqlParser.RULE_hintStatement); var _la = 0; // Token type try { this.state = 1868; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,223,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1855; localctx.hintName = this.identifier(); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1856; localctx.hintName = this.identifier(); this.state = 1857; this.match(SparkSqlParser.T__1); this.state = 1858; localctx._primaryExpression = this.primaryExpression(0); localctx.parameters.push(localctx._primaryExpression); this.state = 1863; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1859; this.match(SparkSqlParser.T__3); this.state = 1860; localctx._primaryExpression = this.primaryExpression(0); localctx.parameters.push(localctx._primaryExpression); this.state = 1865; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1866; this.match(SparkSqlParser.T__2); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function FromClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_fromClause; return this; } FromClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); FromClauseContext.prototype.constructor = FromClauseContext; FromClauseContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; FromClauseContext.prototype.relation = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(RelationContext); } else { return this.getTypedRuleContext(RelationContext,i); } }; FromClauseContext.prototype.lateralView = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(LateralViewContext); } else { return this.getTypedRuleContext(LateralViewContext,i); } }; FromClauseContext.prototype.pivotClause = function() { return this.getTypedRuleContext(PivotClauseContext,0); }; FromClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFromClause(this); } }; FromClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFromClause(this); } }; FromClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFromClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.FromClauseContext = FromClauseContext; SparkSqlParser.prototype.fromClause = function() { var localctx = new FromClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 120, SparkSqlParser.RULE_fromClause); try { this.enterOuterAlt(localctx, 1); this.state = 1870; this.match(SparkSqlParser.FROM); this.state = 1871; this.relation(); this.state = 1876; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,224,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1872; this.match(SparkSqlParser.T__3); this.state = 1873; this.relation(); } this.state = 1878; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,224,this._ctx); } this.state = 1882; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,225,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1879; this.lateralView(); } this.state = 1884; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,225,this._ctx); } this.state = 1886; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,226,this._ctx); if(la_===1) { this.state = 1885; this.pivotClause(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function AggregationClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_aggregationClause; this._expression = null; // ExpressionContext this.groupingExpressions = []; // of ExpressionContexts this.kind = null; // Token return this; } AggregationClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); AggregationClauseContext.prototype.constructor = AggregationClauseContext; AggregationClauseContext.prototype.GROUP = function() { return this.getToken(SparkSqlParser.GROUP, 0); }; AggregationClauseContext.prototype.BY = function() { return this.getToken(SparkSqlParser.BY, 0); }; AggregationClauseContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; AggregationClauseContext.prototype.WITH = function() { return this.getToken(SparkSqlParser.WITH, 0); }; AggregationClauseContext.prototype.SETS = function() { return this.getToken(SparkSqlParser.SETS, 0); }; AggregationClauseContext.prototype.groupingSet = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(GroupingSetContext); } else { return this.getTypedRuleContext(GroupingSetContext,i); } }; AggregationClauseContext.prototype.ROLLUP = function() { return this.getToken(SparkSqlParser.ROLLUP, 0); }; AggregationClauseContext.prototype.CUBE = function() { return this.getToken(SparkSqlParser.CUBE, 0); }; AggregationClauseContext.prototype.GROUPING = function() { return this.getToken(SparkSqlParser.GROUPING, 0); }; AggregationClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAggregationClause(this); } }; AggregationClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAggregationClause(this); } }; AggregationClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAggregationClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.AggregationClauseContext = AggregationClauseContext; SparkSqlParser.prototype.aggregationClause = function() { var localctx = new AggregationClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 122, SparkSqlParser.RULE_aggregationClause); var _la = 0; // Token type try { this.state = 1932; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,231,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1888; this.match(SparkSqlParser.GROUP); this.state = 1889; this.match(SparkSqlParser.BY); this.state = 1890; localctx._expression = this.expression(); localctx.groupingExpressions.push(localctx._expression); this.state = 1895; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,227,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 1891; this.match(SparkSqlParser.T__3); this.state = 1892; localctx._expression = this.expression(); localctx.groupingExpressions.push(localctx._expression); } this.state = 1897; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,227,this._ctx); } this.state = 1915; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,229,this._ctx); if(la_===1) { this.state = 1898; this.match(SparkSqlParser.WITH); this.state = 1899; localctx.kind = this.match(SparkSqlParser.ROLLUP); } else if(la_===2) { this.state = 1900; this.match(SparkSqlParser.WITH); this.state = 1901; localctx.kind = this.match(SparkSqlParser.CUBE); } else if(la_===3) { this.state = 1902; localctx.kind = this.match(SparkSqlParser.GROUPING); this.state = 1903; this.match(SparkSqlParser.SETS); this.state = 1904; this.match(SparkSqlParser.T__1); this.state = 1905; this.groupingSet(); this.state = 1910; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1906; this.match(SparkSqlParser.T__3); this.state = 1907; this.groupingSet(); this.state = 1912; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1913; this.match(SparkSqlParser.T__2); } break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1917; this.match(SparkSqlParser.GROUP); this.state = 1918; this.match(SparkSqlParser.BY); this.state = 1919; localctx.kind = this.match(SparkSqlParser.GROUPING); this.state = 1920; this.match(SparkSqlParser.SETS); this.state = 1921; this.match(SparkSqlParser.T__1); this.state = 1922; this.groupingSet(); this.state = 1927; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1923; this.match(SparkSqlParser.T__3); this.state = 1924; this.groupingSet(); this.state = 1929; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1930; this.match(SparkSqlParser.T__2); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function GroupingSetContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_groupingSet; return this; } GroupingSetContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); GroupingSetContext.prototype.constructor = GroupingSetContext; GroupingSetContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; GroupingSetContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterGroupingSet(this); } }; GroupingSetContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitGroupingSet(this); } }; GroupingSetContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitGroupingSet(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.GroupingSetContext = GroupingSetContext; SparkSqlParser.prototype.groupingSet = function() { var localctx = new GroupingSetContext(this, this._ctx, this.state); this.enterRule(localctx, 124, SparkSqlParser.RULE_groupingSet); var _la = 0; // Token type try { this.state = 1947; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,234,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1934; this.match(SparkSqlParser.T__1); this.state = 1943; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,233,this._ctx); if(la_===1) { this.state = 1935; this.expression(); this.state = 1940; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1936; this.match(SparkSqlParser.T__3); this.state = 1937; this.expression(); this.state = 1942; this._errHandler.sync(this); _la = this._input.LA(1); } } this.state = 1945; this.match(SparkSqlParser.T__2); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1946; this.expression(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function PivotClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_pivotClause; this.aggregates = null; // NamedExpressionSeqContext this._pivotValue = null; // PivotValueContext this.pivotValues = []; // of PivotValueContexts return this; } PivotClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PivotClauseContext.prototype.constructor = PivotClauseContext; PivotClauseContext.prototype.PIVOT = function() { return this.getToken(SparkSqlParser.PIVOT, 0); }; PivotClauseContext.prototype.FOR = function() { return this.getToken(SparkSqlParser.FOR, 0); }; PivotClauseContext.prototype.pivotColumn = function() { return this.getTypedRuleContext(PivotColumnContext,0); }; PivotClauseContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; PivotClauseContext.prototype.namedExpressionSeq = function() { return this.getTypedRuleContext(NamedExpressionSeqContext,0); }; PivotClauseContext.prototype.pivotValue = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(PivotValueContext); } else { return this.getTypedRuleContext(PivotValueContext,i); } }; PivotClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPivotClause(this); } }; PivotClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPivotClause(this); } }; PivotClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPivotClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.PivotClauseContext = PivotClauseContext; SparkSqlParser.prototype.pivotClause = function() { var localctx = new PivotClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 126, SparkSqlParser.RULE_pivotClause); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1949; this.match(SparkSqlParser.PIVOT); this.state = 1950; this.match(SparkSqlParser.T__1); this.state = 1951; localctx.aggregates = this.namedExpressionSeq(); this.state = 1952; this.match(SparkSqlParser.FOR); this.state = 1953; this.pivotColumn(); this.state = 1954; this.match(SparkSqlParser.IN); this.state = 1955; this.match(SparkSqlParser.T__1); this.state = 1956; localctx._pivotValue = this.pivotValue(); localctx.pivotValues.push(localctx._pivotValue); this.state = 1961; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1957; this.match(SparkSqlParser.T__3); this.state = 1958; localctx._pivotValue = this.pivotValue(); localctx.pivotValues.push(localctx._pivotValue); this.state = 1963; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1964; this.match(SparkSqlParser.T__2); this.state = 1965; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function PivotColumnContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_pivotColumn; this._identifier = null; // IdentifierContext this.identifiers = []; // of IdentifierContexts return this; } PivotColumnContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PivotColumnContext.prototype.constructor = PivotColumnContext; PivotColumnContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; PivotColumnContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPivotColumn(this); } }; PivotColumnContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPivotColumn(this); } }; PivotColumnContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPivotColumn(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.PivotColumnContext = PivotColumnContext; SparkSqlParser.prototype.pivotColumn = function() { var localctx = new PivotColumnContext(this, this._ctx, this.state); this.enterRule(localctx, 128, SparkSqlParser.RULE_pivotColumn); var _la = 0; // Token type try { this.state = 1979; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,237,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 1967; localctx._identifier = this.identifier(); localctx.identifiers.push(localctx._identifier); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 1968; this.match(SparkSqlParser.T__1); this.state = 1969; localctx._identifier = this.identifier(); localctx.identifiers.push(localctx._identifier); this.state = 1974; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1970; this.match(SparkSqlParser.T__3); this.state = 1971; localctx._identifier = this.identifier(); localctx.identifiers.push(localctx._identifier); this.state = 1976; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 1977; this.match(SparkSqlParser.T__2); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function PivotValueContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_pivotValue; return this; } PivotValueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PivotValueContext.prototype.constructor = PivotValueContext; PivotValueContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; PivotValueContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; PivotValueContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; PivotValueContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPivotValue(this); } }; PivotValueContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPivotValue(this); } }; PivotValueContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPivotValue(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.PivotValueContext = PivotValueContext; SparkSqlParser.prototype.pivotValue = function() { var localctx = new PivotValueContext(this, this._ctx, this.state); this.enterRule(localctx, 130, SparkSqlParser.RULE_pivotValue); try { this.enterOuterAlt(localctx, 1); this.state = 1981; this.expression(); this.state = 1986; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,239,this._ctx); if(la_===1) { this.state = 1983; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,238,this._ctx); if(la_===1) { this.state = 1982; this.match(SparkSqlParser.AS); } this.state = 1985; this.identifier(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function LateralViewContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_lateralView; this.tblName = null; // IdentifierContext this._identifier = null; // IdentifierContext this.colName = []; // of IdentifierContexts return this; } LateralViewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); LateralViewContext.prototype.constructor = LateralViewContext; LateralViewContext.prototype.LATERAL = function() { return this.getToken(SparkSqlParser.LATERAL, 0); }; LateralViewContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; LateralViewContext.prototype.qualifiedName = function() { return this.getTypedRuleContext(QualifiedNameContext,0); }; LateralViewContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; LateralViewContext.prototype.OUTER = function() { return this.getToken(SparkSqlParser.OUTER, 0); }; LateralViewContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; LateralViewContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; LateralViewContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterLateralView(this); } }; LateralViewContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitLateralView(this); } }; LateralViewContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitLateralView(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.LateralViewContext = LateralViewContext; SparkSqlParser.prototype.lateralView = function() { var localctx = new LateralViewContext(this, this._ctx, this.state); this.enterRule(localctx, 132, SparkSqlParser.RULE_lateralView); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 1988; this.match(SparkSqlParser.LATERAL); this.state = 1989; this.match(SparkSqlParser.VIEW); this.state = 1991; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,240,this._ctx); if(la_===1) { this.state = 1990; this.match(SparkSqlParser.OUTER); } this.state = 1993; this.qualifiedName(); this.state = 1994; this.match(SparkSqlParser.T__1); this.state = 2003; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,242,this._ctx); if(la_===1) { this.state = 1995; this.expression(); this.state = 2000; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 1996; this.match(SparkSqlParser.T__3); this.state = 1997; this.expression(); this.state = 2002; this._errHandler.sync(this); _la = this._input.LA(1); } } this.state = 2005; this.match(SparkSqlParser.T__2); this.state = 2006; localctx.tblName = this.identifier(); this.state = 2018; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,245,this._ctx); if(la_===1) { this.state = 2008; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,243,this._ctx); if(la_===1) { this.state = 2007; this.match(SparkSqlParser.AS); } this.state = 2010; localctx._identifier = this.identifier(); localctx.colName.push(localctx._identifier); this.state = 2015; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,244,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2011; this.match(SparkSqlParser.T__3); this.state = 2012; localctx._identifier = this.identifier(); localctx.colName.push(localctx._identifier); } this.state = 2017; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,244,this._ctx); } } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SetQuantifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_setQuantifier; return this; } SetQuantifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SetQuantifierContext.prototype.constructor = SetQuantifierContext; SetQuantifierContext.prototype.DISTINCT = function() { return this.getToken(SparkSqlParser.DISTINCT, 0); }; SetQuantifierContext.prototype.ALL = function() { return this.getToken(SparkSqlParser.ALL, 0); }; SetQuantifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSetQuantifier(this); } }; SetQuantifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSetQuantifier(this); } }; SetQuantifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSetQuantifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SetQuantifierContext = SetQuantifierContext; SparkSqlParser.prototype.setQuantifier = function() { var localctx = new SetQuantifierContext(this, this._ctx, this.state); this.enterRule(localctx, 134, SparkSqlParser.RULE_setQuantifier); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2020; _la = this._input.LA(1); if(!(_la===SparkSqlParser.ALL || _la===SparkSqlParser.DISTINCT)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function RelationContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_relation; return this; } RelationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); RelationContext.prototype.constructor = RelationContext; RelationContext.prototype.relationPrimary = function() { return this.getTypedRuleContext(RelationPrimaryContext,0); }; RelationContext.prototype.joinRelation = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(JoinRelationContext); } else { return this.getTypedRuleContext(JoinRelationContext,i); } }; RelationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRelation(this); } }; RelationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRelation(this); } }; RelationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRelation(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.RelationContext = RelationContext; SparkSqlParser.prototype.relation = function() { var localctx = new RelationContext(this, this._ctx, this.state); this.enterRule(localctx, 136, SparkSqlParser.RULE_relation); try { this.enterOuterAlt(localctx, 1); this.state = 2022; this.relationPrimary(); this.state = 2026; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,246,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2023; this.joinRelation(); } this.state = 2028; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,246,this._ctx); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function JoinRelationContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_joinRelation; this.right = null; // RelationPrimaryContext return this; } JoinRelationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); JoinRelationContext.prototype.constructor = JoinRelationContext; JoinRelationContext.prototype.JOIN = function() { return this.getToken(SparkSqlParser.JOIN, 0); }; JoinRelationContext.prototype.relationPrimary = function() { return this.getTypedRuleContext(RelationPrimaryContext,0); }; JoinRelationContext.prototype.joinType = function() { return this.getTypedRuleContext(JoinTypeContext,0); }; JoinRelationContext.prototype.joinCriteria = function() { return this.getTypedRuleContext(JoinCriteriaContext,0); }; JoinRelationContext.prototype.NATURAL = function() { return this.getToken(SparkSqlParser.NATURAL, 0); }; JoinRelationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterJoinRelation(this); } }; JoinRelationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitJoinRelation(this); } }; JoinRelationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitJoinRelation(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.JoinRelationContext = JoinRelationContext; SparkSqlParser.prototype.joinRelation = function() { var localctx = new JoinRelationContext(this, this._ctx, this.state); this.enterRule(localctx, 138, SparkSqlParser.RULE_joinRelation); try { this.state = 2040; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.ANTI: case SparkSqlParser.CROSS: case SparkSqlParser.FULL: case SparkSqlParser.INNER: case SparkSqlParser.JOIN: case SparkSqlParser.LEFT: case SparkSqlParser.RIGHT: case SparkSqlParser.SEMI: this.enterOuterAlt(localctx, 1); this.state = 2029; this.joinType(); this.state = 2030; this.match(SparkSqlParser.JOIN); this.state = 2031; localctx.right = this.relationPrimary(); this.state = 2033; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,247,this._ctx); if(la_===1) { this.state = 2032; this.joinCriteria(); } break; case SparkSqlParser.NATURAL: this.enterOuterAlt(localctx, 2); this.state = 2035; this.match(SparkSqlParser.NATURAL); this.state = 2036; this.joinType(); this.state = 2037; this.match(SparkSqlParser.JOIN); this.state = 2038; localctx.right = this.relationPrimary(); break; default: throw new antlr4.error.NoViableAltException(this); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function JoinTypeContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_joinType; return this; } JoinTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); JoinTypeContext.prototype.constructor = JoinTypeContext; JoinTypeContext.prototype.INNER = function() { return this.getToken(SparkSqlParser.INNER, 0); }; JoinTypeContext.prototype.CROSS = function() { return this.getToken(SparkSqlParser.CROSS, 0); }; JoinTypeContext.prototype.LEFT = function() { return this.getToken(SparkSqlParser.LEFT, 0); }; JoinTypeContext.prototype.OUTER = function() { return this.getToken(SparkSqlParser.OUTER, 0); }; JoinTypeContext.prototype.SEMI = function() { return this.getToken(SparkSqlParser.SEMI, 0); }; JoinTypeContext.prototype.RIGHT = function() { return this.getToken(SparkSqlParser.RIGHT, 0); }; JoinTypeContext.prototype.FULL = function() { return this.getToken(SparkSqlParser.FULL, 0); }; JoinTypeContext.prototype.ANTI = function() { return this.getToken(SparkSqlParser.ANTI, 0); }; JoinTypeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterJoinType(this); } }; JoinTypeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitJoinType(this); } }; JoinTypeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitJoinType(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.JoinTypeContext = JoinTypeContext; SparkSqlParser.prototype.joinType = function() { var localctx = new JoinTypeContext(this, this._ctx, this.state); this.enterRule(localctx, 140, SparkSqlParser.RULE_joinType); var _la = 0; // Token type try { this.state = 2066; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,255,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 2043; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.INNER) { this.state = 2042; this.match(SparkSqlParser.INNER); } break; case 2: this.enterOuterAlt(localctx, 2); this.state = 2045; this.match(SparkSqlParser.CROSS); break; case 3: this.enterOuterAlt(localctx, 3); this.state = 2046; this.match(SparkSqlParser.LEFT); this.state = 2048; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OUTER) { this.state = 2047; this.match(SparkSqlParser.OUTER); } break; case 4: this.enterOuterAlt(localctx, 4); this.state = 2051; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LEFT) { this.state = 2050; this.match(SparkSqlParser.LEFT); } this.state = 2053; this.match(SparkSqlParser.SEMI); break; case 5: this.enterOuterAlt(localctx, 5); this.state = 2054; this.match(SparkSqlParser.RIGHT); this.state = 2056; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OUTER) { this.state = 2055; this.match(SparkSqlParser.OUTER); } break; case 6: this.enterOuterAlt(localctx, 6); this.state = 2058; this.match(SparkSqlParser.FULL); this.state = 2060; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.OUTER) { this.state = 2059; this.match(SparkSqlParser.OUTER); } break; case 7: this.enterOuterAlt(localctx, 7); this.state = 2063; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.LEFT) { this.state = 2062; this.match(SparkSqlParser.LEFT); } this.state = 2065; this.match(SparkSqlParser.ANTI); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function JoinCriteriaContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_joinCriteria; return this; } JoinCriteriaContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); JoinCriteriaContext.prototype.constructor = JoinCriteriaContext; JoinCriteriaContext.prototype.ON = function() { return this.getToken(SparkSqlParser.ON, 0); }; JoinCriteriaContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; JoinCriteriaContext.prototype.USING = function() { return this.getToken(SparkSqlParser.USING, 0); }; JoinCriteriaContext.prototype.identifierList = function() { return this.getTypedRuleContext(IdentifierListContext,0); }; JoinCriteriaContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterJoinCriteria(this); } }; JoinCriteriaContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitJoinCriteria(this); } }; JoinCriteriaContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitJoinCriteria(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.JoinCriteriaContext = JoinCriteriaContext; SparkSqlParser.prototype.joinCriteria = function() { var localctx = new JoinCriteriaContext(this, this._ctx, this.state); this.enterRule(localctx, 142, SparkSqlParser.RULE_joinCriteria); try { this.state = 2072; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.ON: this.enterOuterAlt(localctx, 1); this.state = 2068; this.match(SparkSqlParser.ON); this.state = 2069; this.booleanExpression(0); break; case SparkSqlParser.USING: this.enterOuterAlt(localctx, 2); this.state = 2070; this.match(SparkSqlParser.USING); this.state = 2071; this.identifierList(); break; default: throw new antlr4.error.NoViableAltException(this); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SampleContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_sample; return this; } SampleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SampleContext.prototype.constructor = SampleContext; SampleContext.prototype.TABLESAMPLE = function() { return this.getToken(SparkSqlParser.TABLESAMPLE, 0); }; SampleContext.prototype.sampleMethod = function() { return this.getTypedRuleContext(SampleMethodContext,0); }; SampleContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSample(this); } }; SampleContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSample(this); } }; SampleContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSample(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SampleContext = SampleContext; SparkSqlParser.prototype.sample = function() { var localctx = new SampleContext(this, this._ctx, this.state); this.enterRule(localctx, 144, SparkSqlParser.RULE_sample); try { this.enterOuterAlt(localctx, 1); this.state = 2074; this.match(SparkSqlParser.TABLESAMPLE); this.state = 2075; this.match(SparkSqlParser.T__1); this.state = 2077; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,257,this._ctx); if(la_===1) { this.state = 2076; this.sampleMethod(); } this.state = 2079; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function SampleMethodContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_sampleMethod; return this; } SampleMethodContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); SampleMethodContext.prototype.constructor = SampleMethodContext; SampleMethodContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function SampleByRowsContext(parser, ctx) { SampleMethodContext.call(this, parser); SampleMethodContext.prototype.copyFrom.call(this, ctx); return this; } SampleByRowsContext.prototype = Object.create(SampleMethodContext.prototype); SampleByRowsContext.prototype.constructor = SampleByRowsContext; SparkSqlParser.SampleByRowsContext = SampleByRowsContext; SampleByRowsContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; SampleByRowsContext.prototype.ROWS = function() { return this.getToken(SparkSqlParser.ROWS, 0); }; SampleByRowsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSampleByRows(this); } }; SampleByRowsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSampleByRows(this); } }; SampleByRowsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSampleByRows(this); } else { return visitor.visitChildren(this); } }; function SampleByPercentileContext(parser, ctx) { SampleMethodContext.call(this, parser); this.negativeSign = null; // Token; this.percentage = null; // Token; SampleMethodContext.prototype.copyFrom.call(this, ctx); return this; } SampleByPercentileContext.prototype = Object.create(SampleMethodContext.prototype); SampleByPercentileContext.prototype.constructor = SampleByPercentileContext; SparkSqlParser.SampleByPercentileContext = SampleByPercentileContext; SampleByPercentileContext.prototype.PERCENTLIT = function() { return this.getToken(SparkSqlParser.PERCENTLIT, 0); }; SampleByPercentileContext.prototype.INTEGER_VALUE = function() { return this.getToken(SparkSqlParser.INTEGER_VALUE, 0); }; SampleByPercentileContext.prototype.DECIMAL_VALUE = function() { return this.getToken(SparkSqlParser.DECIMAL_VALUE, 0); }; SampleByPercentileContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; SampleByPercentileContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSampleByPercentile(this); } }; SampleByPercentileContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSampleByPercentile(this); } }; SampleByPercentileContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSampleByPercentile(this); } else { return visitor.visitChildren(this); } }; function SampleByBucketContext(parser, ctx) { SampleMethodContext.call(this, parser); this.sampleType = null; // Token; this.numerator = null; // Token; this.denominator = null; // Token; SampleMethodContext.prototype.copyFrom.call(this, ctx); return this; } SampleByBucketContext.prototype = Object.create(SampleMethodContext.prototype); SampleByBucketContext.prototype.constructor = SampleByBucketContext; SparkSqlParser.SampleByBucketContext = SampleByBucketContext; SampleByBucketContext.prototype.OUT = function() { return this.getToken(SparkSqlParser.OUT, 0); }; SampleByBucketContext.prototype.OF = function() { return this.getToken(SparkSqlParser.OF, 0); }; SampleByBucketContext.prototype.BUCKET = function() { return this.getToken(SparkSqlParser.BUCKET, 0); }; SampleByBucketContext.prototype.INTEGER_VALUE = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.INTEGER_VALUE); } else { return this.getToken(SparkSqlParser.INTEGER_VALUE, i); } }; SampleByBucketContext.prototype.ON = function() { return this.getToken(SparkSqlParser.ON, 0); }; SampleByBucketContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; SampleByBucketContext.prototype.qualifiedName = function() { return this.getTypedRuleContext(QualifiedNameContext,0); }; SampleByBucketContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSampleByBucket(this); } }; SampleByBucketContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSampleByBucket(this); } }; SampleByBucketContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSampleByBucket(this); } else { return visitor.visitChildren(this); } }; function SampleByBytesContext(parser, ctx) { SampleMethodContext.call(this, parser); this.bytes = null; // ExpressionContext; SampleMethodContext.prototype.copyFrom.call(this, ctx); return this; } SampleByBytesContext.prototype = Object.create(SampleMethodContext.prototype); SampleByBytesContext.prototype.constructor = SampleByBytesContext; SparkSqlParser.SampleByBytesContext = SampleByBytesContext; SampleByBytesContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; SampleByBytesContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSampleByBytes(this); } }; SampleByBytesContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSampleByBytes(this); } }; SampleByBytesContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSampleByBytes(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.SampleMethodContext = SampleMethodContext; SparkSqlParser.prototype.sampleMethod = function() { var localctx = new SampleMethodContext(this, this._ctx, this.state); this.enterRule(localctx, 146, SparkSqlParser.RULE_sampleMethod); var _la = 0; // Token type try { this.state = 2105; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,261,this._ctx); switch(la_) { case 1: localctx = new SampleByPercentileContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2082; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2081; localctx.negativeSign = this.match(SparkSqlParser.MINUS); } this.state = 2084; localctx.percentage = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.INTEGER_VALUE || _la===SparkSqlParser.DECIMAL_VALUE)) { localctx.percentage = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2085; this.match(SparkSqlParser.PERCENTLIT); break; case 2: localctx = new SampleByRowsContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2086; this.expression(); this.state = 2087; this.match(SparkSqlParser.ROWS); break; case 3: localctx = new SampleByBucketContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 2089; localctx.sampleType = this.match(SparkSqlParser.BUCKET); this.state = 2090; localctx.numerator = this.match(SparkSqlParser.INTEGER_VALUE); this.state = 2091; this.match(SparkSqlParser.OUT); this.state = 2092; this.match(SparkSqlParser.OF); this.state = 2093; localctx.denominator = this.match(SparkSqlParser.INTEGER_VALUE); this.state = 2102; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ON) { this.state = 2094; this.match(SparkSqlParser.ON); this.state = 2100; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,259,this._ctx); switch(la_) { case 1: this.state = 2095; this.identifier(); break; case 2: this.state = 2096; this.qualifiedName(); this.state = 2097; this.match(SparkSqlParser.T__1); this.state = 2098; this.match(SparkSqlParser.T__2); break; } } break; case 4: localctx = new SampleByBytesContext(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 2104; localctx.bytes = this.expression(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function IdentifierListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_identifierList; return this; } IdentifierListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); IdentifierListContext.prototype.constructor = IdentifierListContext; IdentifierListContext.prototype.identifierSeq = function() { return this.getTypedRuleContext(IdentifierSeqContext,0); }; IdentifierListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIdentifierList(this); } }; IdentifierListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIdentifierList(this); } }; IdentifierListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIdentifierList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.IdentifierListContext = IdentifierListContext; SparkSqlParser.prototype.identifierList = function() { var localctx = new IdentifierListContext(this, this._ctx, this.state); this.enterRule(localctx, 148, SparkSqlParser.RULE_identifierList); try { this.enterOuterAlt(localctx, 1); this.state = 2107; this.match(SparkSqlParser.T__1); this.state = 2108; this.identifierSeq(); this.state = 2109; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function IdentifierSeqContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_identifierSeq; this._errorCapturingIdentifier = null; // ErrorCapturingIdentifierContext this.ident = []; // of ErrorCapturingIdentifierContexts return this; } IdentifierSeqContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); IdentifierSeqContext.prototype.constructor = IdentifierSeqContext; IdentifierSeqContext.prototype.errorCapturingIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ErrorCapturingIdentifierContext); } else { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,i); } }; IdentifierSeqContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIdentifierSeq(this); } }; IdentifierSeqContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIdentifierSeq(this); } }; IdentifierSeqContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIdentifierSeq(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.IdentifierSeqContext = IdentifierSeqContext; SparkSqlParser.prototype.identifierSeq = function() { var localctx = new IdentifierSeqContext(this, this._ctx, this.state); this.enterRule(localctx, 150, SparkSqlParser.RULE_identifierSeq); try { this.enterOuterAlt(localctx, 1); this.state = 2111; localctx._errorCapturingIdentifier = this.errorCapturingIdentifier(); localctx.ident.push(localctx._errorCapturingIdentifier); this.state = 2116; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,262,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2112; this.match(SparkSqlParser.T__3); this.state = 2113; localctx._errorCapturingIdentifier = this.errorCapturingIdentifier(); localctx.ident.push(localctx._errorCapturingIdentifier); } this.state = 2118; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,262,this._ctx); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function OrderedIdentifierListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_orderedIdentifierList; return this; } OrderedIdentifierListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); OrderedIdentifierListContext.prototype.constructor = OrderedIdentifierListContext; OrderedIdentifierListContext.prototype.orderedIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(OrderedIdentifierContext); } else { return this.getTypedRuleContext(OrderedIdentifierContext,i); } }; OrderedIdentifierListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterOrderedIdentifierList(this); } }; OrderedIdentifierListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitOrderedIdentifierList(this); } }; OrderedIdentifierListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitOrderedIdentifierList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.OrderedIdentifierListContext = OrderedIdentifierListContext; SparkSqlParser.prototype.orderedIdentifierList = function() { var localctx = new OrderedIdentifierListContext(this, this._ctx, this.state); this.enterRule(localctx, 152, SparkSqlParser.RULE_orderedIdentifierList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2119; this.match(SparkSqlParser.T__1); this.state = 2120; this.orderedIdentifier(); this.state = 2125; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2121; this.match(SparkSqlParser.T__3); this.state = 2122; this.orderedIdentifier(); this.state = 2127; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 2128; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function OrderedIdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_orderedIdentifier; this.ident = null; // ErrorCapturingIdentifierContext this.ordering = null; // Token return this; } OrderedIdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); OrderedIdentifierContext.prototype.constructor = OrderedIdentifierContext; OrderedIdentifierContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; OrderedIdentifierContext.prototype.ASC = function() { return this.getToken(SparkSqlParser.ASC, 0); }; OrderedIdentifierContext.prototype.DESC = function() { return this.getToken(SparkSqlParser.DESC, 0); }; OrderedIdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterOrderedIdentifier(this); } }; OrderedIdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitOrderedIdentifier(this); } }; OrderedIdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitOrderedIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.OrderedIdentifierContext = OrderedIdentifierContext; SparkSqlParser.prototype.orderedIdentifier = function() { var localctx = new OrderedIdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 154, SparkSqlParser.RULE_orderedIdentifier); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2130; localctx.ident = this.errorCapturingIdentifier(); this.state = 2132; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ASC || _la===SparkSqlParser.DESC) { this.state = 2131; localctx.ordering = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.ASC || _la===SparkSqlParser.DESC)) { localctx.ordering = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function IdentifierCommentListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_identifierCommentList; return this; } IdentifierCommentListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); IdentifierCommentListContext.prototype.constructor = IdentifierCommentListContext; IdentifierCommentListContext.prototype.identifierComment = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierCommentContext); } else { return this.getTypedRuleContext(IdentifierCommentContext,i); } }; IdentifierCommentListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIdentifierCommentList(this); } }; IdentifierCommentListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIdentifierCommentList(this); } }; IdentifierCommentListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIdentifierCommentList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.IdentifierCommentListContext = IdentifierCommentListContext; SparkSqlParser.prototype.identifierCommentList = function() { var localctx = new IdentifierCommentListContext(this, this._ctx, this.state); this.enterRule(localctx, 156, SparkSqlParser.RULE_identifierCommentList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2134; this.match(SparkSqlParser.T__1); this.state = 2135; this.identifierComment(); this.state = 2140; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2136; this.match(SparkSqlParser.T__3); this.state = 2137; this.identifierComment(); this.state = 2142; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 2143; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function IdentifierCommentContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_identifierComment; return this; } IdentifierCommentContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); IdentifierCommentContext.prototype.constructor = IdentifierCommentContext; IdentifierCommentContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; IdentifierCommentContext.prototype.commentSpec = function() { return this.getTypedRuleContext(CommentSpecContext,0); }; IdentifierCommentContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIdentifierComment(this); } }; IdentifierCommentContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIdentifierComment(this); } }; IdentifierCommentContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIdentifierComment(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.IdentifierCommentContext = IdentifierCommentContext; SparkSqlParser.prototype.identifierComment = function() { var localctx = new IdentifierCommentContext(this, this._ctx, this.state); this.enterRule(localctx, 158, SparkSqlParser.RULE_identifierComment); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2145; this.identifier(); this.state = 2147; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.COMMENT) { this.state = 2146; this.commentSpec(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function RelationPrimaryContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_relationPrimary; return this; } RelationPrimaryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); RelationPrimaryContext.prototype.constructor = RelationPrimaryContext; RelationPrimaryContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function TableValuedFunctionContext(parser, ctx) { RelationPrimaryContext.call(this, parser); RelationPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } TableValuedFunctionContext.prototype = Object.create(RelationPrimaryContext.prototype); TableValuedFunctionContext.prototype.constructor = TableValuedFunctionContext; SparkSqlParser.TableValuedFunctionContext = TableValuedFunctionContext; TableValuedFunctionContext.prototype.functionTable = function() { return this.getTypedRuleContext(FunctionTableContext,0); }; TableValuedFunctionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTableValuedFunction(this); } }; TableValuedFunctionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTableValuedFunction(this); } }; TableValuedFunctionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTableValuedFunction(this); } else { return visitor.visitChildren(this); } }; function InlineTableDefault2Context(parser, ctx) { RelationPrimaryContext.call(this, parser); RelationPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } InlineTableDefault2Context.prototype = Object.create(RelationPrimaryContext.prototype); InlineTableDefault2Context.prototype.constructor = InlineTableDefault2Context; SparkSqlParser.InlineTableDefault2Context = InlineTableDefault2Context; InlineTableDefault2Context.prototype.inlineTable = function() { return this.getTypedRuleContext(InlineTableContext,0); }; InlineTableDefault2Context.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterInlineTableDefault2(this); } }; InlineTableDefault2Context.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitInlineTableDefault2(this); } }; InlineTableDefault2Context.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitInlineTableDefault2(this); } else { return visitor.visitChildren(this); } }; function AliasedRelationContext(parser, ctx) { RelationPrimaryContext.call(this, parser); RelationPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } AliasedRelationContext.prototype = Object.create(RelationPrimaryContext.prototype); AliasedRelationContext.prototype.constructor = AliasedRelationContext; SparkSqlParser.AliasedRelationContext = AliasedRelationContext; AliasedRelationContext.prototype.relation = function() { return this.getTypedRuleContext(RelationContext,0); }; AliasedRelationContext.prototype.tableAlias = function() { return this.getTypedRuleContext(TableAliasContext,0); }; AliasedRelationContext.prototype.sample = function() { return this.getTypedRuleContext(SampleContext,0); }; AliasedRelationContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAliasedRelation(this); } }; AliasedRelationContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAliasedRelation(this); } }; AliasedRelationContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAliasedRelation(this); } else { return visitor.visitChildren(this); } }; function AliasedQueryContext(parser, ctx) { RelationPrimaryContext.call(this, parser); RelationPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } AliasedQueryContext.prototype = Object.create(RelationPrimaryContext.prototype); AliasedQueryContext.prototype.constructor = AliasedQueryContext; SparkSqlParser.AliasedQueryContext = AliasedQueryContext; AliasedQueryContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; AliasedQueryContext.prototype.tableAlias = function() { return this.getTypedRuleContext(TableAliasContext,0); }; AliasedQueryContext.prototype.sample = function() { return this.getTypedRuleContext(SampleContext,0); }; AliasedQueryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAliasedQuery(this); } }; AliasedQueryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAliasedQuery(this); } }; AliasedQueryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAliasedQuery(this); } else { return visitor.visitChildren(this); } }; function TableNameContext(parser, ctx) { RelationPrimaryContext.call(this, parser); RelationPrimaryContext.prototype.copyFrom.call(this, ctx); return this; } TableNameContext.prototype = Object.create(RelationPrimaryContext.prototype); TableNameContext.prototype.constructor = TableNameContext; SparkSqlParser.TableNameContext = TableNameContext; TableNameContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; TableNameContext.prototype.tableAlias = function() { return this.getTypedRuleContext(TableAliasContext,0); }; TableNameContext.prototype.sample = function() { return this.getTypedRuleContext(SampleContext,0); }; TableNameContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTableName(this); } }; TableNameContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTableName(this); } }; TableNameContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTableName(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.RelationPrimaryContext = RelationPrimaryContext; SparkSqlParser.prototype.relationPrimary = function() { var localctx = new RelationPrimaryContext(this, this._ctx, this.state); this.enterRule(localctx, 160, SparkSqlParser.RULE_relationPrimary); try { this.state = 2173; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,270,this._ctx); switch(la_) { case 1: localctx = new TableNameContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2149; this.multipartIdentifier(); this.state = 2151; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,267,this._ctx); if(la_===1) { this.state = 2150; this.sample(); } this.state = 2153; this.tableAlias(); break; case 2: localctx = new AliasedQueryContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2155; this.match(SparkSqlParser.T__1); this.state = 2156; this.query(); this.state = 2157; this.match(SparkSqlParser.T__2); this.state = 2159; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,268,this._ctx); if(la_===1) { this.state = 2158; this.sample(); } this.state = 2161; this.tableAlias(); break; case 3: localctx = new AliasedRelationContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 2163; this.match(SparkSqlParser.T__1); this.state = 2164; this.relation(); this.state = 2165; this.match(SparkSqlParser.T__2); this.state = 2167; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,269,this._ctx); if(la_===1) { this.state = 2166; this.sample(); } this.state = 2169; this.tableAlias(); break; case 4: localctx = new InlineTableDefault2Context(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 2171; this.inlineTable(); break; case 5: localctx = new TableValuedFunctionContext(this, localctx); this.enterOuterAlt(localctx, 5); this.state = 2172; this.functionTable(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function InlineTableContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_inlineTable; return this; } InlineTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); InlineTableContext.prototype.constructor = InlineTableContext; InlineTableContext.prototype.VALUES = function() { return this.getToken(SparkSqlParser.VALUES, 0); }; InlineTableContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; InlineTableContext.prototype.tableAlias = function() { return this.getTypedRuleContext(TableAliasContext,0); }; InlineTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterInlineTable(this); } }; InlineTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitInlineTable(this); } }; InlineTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitInlineTable(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.InlineTableContext = InlineTableContext; SparkSqlParser.prototype.inlineTable = function() { var localctx = new InlineTableContext(this, this._ctx, this.state); this.enterRule(localctx, 162, SparkSqlParser.RULE_inlineTable); try { this.enterOuterAlt(localctx, 1); this.state = 2175; this.match(SparkSqlParser.VALUES); this.state = 2176; this.expression(); this.state = 2181; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,271,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2177; this.match(SparkSqlParser.T__3); this.state = 2178; this.expression(); } this.state = 2183; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,271,this._ctx); } this.state = 2184; this.tableAlias(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function FunctionTableContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_functionTable; this.funcName = null; // ErrorCapturingIdentifierContext return this; } FunctionTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); FunctionTableContext.prototype.constructor = FunctionTableContext; FunctionTableContext.prototype.tableAlias = function() { return this.getTypedRuleContext(TableAliasContext,0); }; FunctionTableContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; FunctionTableContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; FunctionTableContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFunctionTable(this); } }; FunctionTableContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFunctionTable(this); } }; FunctionTableContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFunctionTable(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.FunctionTableContext = FunctionTableContext; SparkSqlParser.prototype.functionTable = function() { var localctx = new FunctionTableContext(this, this._ctx, this.state); this.enterRule(localctx, 164, SparkSqlParser.RULE_functionTable); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2186; localctx.funcName = this.errorCapturingIdentifier(); this.state = 2187; this.match(SparkSqlParser.T__1); this.state = 2196; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,273,this._ctx); if(la_===1) { this.state = 2188; this.expression(); this.state = 2193; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2189; this.match(SparkSqlParser.T__3); this.state = 2190; this.expression(); this.state = 2195; this._errHandler.sync(this); _la = this._input.LA(1); } } this.state = 2198; this.match(SparkSqlParser.T__2); this.state = 2199; this.tableAlias(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TableAliasContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_tableAlias; return this; } TableAliasContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TableAliasContext.prototype.constructor = TableAliasContext; TableAliasContext.prototype.strictIdentifier = function() { return this.getTypedRuleContext(StrictIdentifierContext,0); }; TableAliasContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; TableAliasContext.prototype.identifierList = function() { return this.getTypedRuleContext(IdentifierListContext,0); }; TableAliasContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTableAlias(this); } }; TableAliasContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTableAlias(this); } }; TableAliasContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTableAlias(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TableAliasContext = TableAliasContext; SparkSqlParser.prototype.tableAlias = function() { var localctx = new TableAliasContext(this, this._ctx, this.state); this.enterRule(localctx, 166, SparkSqlParser.RULE_tableAlias); try { this.enterOuterAlt(localctx, 1); this.state = 2208; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,276,this._ctx); if(la_===1) { this.state = 2202; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,274,this._ctx); if(la_===1) { this.state = 2201; this.match(SparkSqlParser.AS); } this.state = 2204; this.strictIdentifier(); this.state = 2206; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,275,this._ctx); if(la_===1) { this.state = 2205; this.identifierList(); } } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function RowFormatContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_rowFormat; return this; } RowFormatContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); RowFormatContext.prototype.constructor = RowFormatContext; RowFormatContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function RowFormatSerdeContext(parser, ctx) { RowFormatContext.call(this, parser); this.name = null; // Token; this.props = null; // TablePropertyListContext; RowFormatContext.prototype.copyFrom.call(this, ctx); return this; } RowFormatSerdeContext.prototype = Object.create(RowFormatContext.prototype); RowFormatSerdeContext.prototype.constructor = RowFormatSerdeContext; SparkSqlParser.RowFormatSerdeContext = RowFormatSerdeContext; RowFormatSerdeContext.prototype.ROW = function() { return this.getToken(SparkSqlParser.ROW, 0); }; RowFormatSerdeContext.prototype.FORMAT = function() { return this.getToken(SparkSqlParser.FORMAT, 0); }; RowFormatSerdeContext.prototype.SERDE = function() { return this.getToken(SparkSqlParser.SERDE, 0); }; RowFormatSerdeContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; RowFormatSerdeContext.prototype.WITH = function() { return this.getToken(SparkSqlParser.WITH, 0); }; RowFormatSerdeContext.prototype.SERDEPROPERTIES = function() { return this.getToken(SparkSqlParser.SERDEPROPERTIES, 0); }; RowFormatSerdeContext.prototype.tablePropertyList = function() { return this.getTypedRuleContext(TablePropertyListContext,0); }; RowFormatSerdeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRowFormatSerde(this); } }; RowFormatSerdeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRowFormatSerde(this); } }; RowFormatSerdeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRowFormatSerde(this); } else { return visitor.visitChildren(this); } }; function RowFormatDelimitedContext(parser, ctx) { RowFormatContext.call(this, parser); this.fieldsTerminatedBy = null; // Token; this.escapedBy = null; // Token; this.collectionItemsTerminatedBy = null; // Token; this.keysTerminatedBy = null; // Token; this.linesSeparatedBy = null; // Token; this.nullDefinedAs = null; // Token; RowFormatContext.prototype.copyFrom.call(this, ctx); return this; } RowFormatDelimitedContext.prototype = Object.create(RowFormatContext.prototype); RowFormatDelimitedContext.prototype.constructor = RowFormatDelimitedContext; SparkSqlParser.RowFormatDelimitedContext = RowFormatDelimitedContext; RowFormatDelimitedContext.prototype.ROW = function() { return this.getToken(SparkSqlParser.ROW, 0); }; RowFormatDelimitedContext.prototype.FORMAT = function() { return this.getToken(SparkSqlParser.FORMAT, 0); }; RowFormatDelimitedContext.prototype.DELIMITED = function() { return this.getToken(SparkSqlParser.DELIMITED, 0); }; RowFormatDelimitedContext.prototype.FIELDS = function() { return this.getToken(SparkSqlParser.FIELDS, 0); }; RowFormatDelimitedContext.prototype.TERMINATED = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.TERMINATED); } else { return this.getToken(SparkSqlParser.TERMINATED, i); } }; RowFormatDelimitedContext.prototype.BY = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.BY); } else { return this.getToken(SparkSqlParser.BY, i); } }; RowFormatDelimitedContext.prototype.COLLECTION = function() { return this.getToken(SparkSqlParser.COLLECTION, 0); }; RowFormatDelimitedContext.prototype.ITEMS = function() { return this.getToken(SparkSqlParser.ITEMS, 0); }; RowFormatDelimitedContext.prototype.MAP = function() { return this.getToken(SparkSqlParser.MAP, 0); }; RowFormatDelimitedContext.prototype.KEYS = function() { return this.getToken(SparkSqlParser.KEYS, 0); }; RowFormatDelimitedContext.prototype.LINES = function() { return this.getToken(SparkSqlParser.LINES, 0); }; RowFormatDelimitedContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; RowFormatDelimitedContext.prototype.DEFINED = function() { return this.getToken(SparkSqlParser.DEFINED, 0); }; RowFormatDelimitedContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; RowFormatDelimitedContext.prototype.STRING = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.STRING); } else { return this.getToken(SparkSqlParser.STRING, i); } }; RowFormatDelimitedContext.prototype.ESCAPED = function() { return this.getToken(SparkSqlParser.ESCAPED, 0); }; RowFormatDelimitedContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRowFormatDelimited(this); } }; RowFormatDelimitedContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRowFormatDelimited(this); } }; RowFormatDelimitedContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRowFormatDelimited(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.RowFormatContext = RowFormatContext; SparkSqlParser.prototype.rowFormat = function() { var localctx = new RowFormatContext(this, this._ctx, this.state); this.enterRule(localctx, 168, SparkSqlParser.RULE_rowFormat); try { this.state = 2259; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,284,this._ctx); switch(la_) { case 1: localctx = new RowFormatSerdeContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2210; this.match(SparkSqlParser.ROW); this.state = 2211; this.match(SparkSqlParser.FORMAT); this.state = 2212; this.match(SparkSqlParser.SERDE); this.state = 2213; localctx.name = this.match(SparkSqlParser.STRING); this.state = 2217; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,277,this._ctx); if(la_===1) { this.state = 2214; this.match(SparkSqlParser.WITH); this.state = 2215; this.match(SparkSqlParser.SERDEPROPERTIES); this.state = 2216; localctx.props = this.tablePropertyList(); } break; case 2: localctx = new RowFormatDelimitedContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2219; this.match(SparkSqlParser.ROW); this.state = 2220; this.match(SparkSqlParser.FORMAT); this.state = 2221; this.match(SparkSqlParser.DELIMITED); this.state = 2231; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,279,this._ctx); if(la_===1) { this.state = 2222; this.match(SparkSqlParser.FIELDS); this.state = 2223; this.match(SparkSqlParser.TERMINATED); this.state = 2224; this.match(SparkSqlParser.BY); this.state = 2225; localctx.fieldsTerminatedBy = this.match(SparkSqlParser.STRING); this.state = 2229; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,278,this._ctx); if(la_===1) { this.state = 2226; this.match(SparkSqlParser.ESCAPED); this.state = 2227; this.match(SparkSqlParser.BY); this.state = 2228; localctx.escapedBy = this.match(SparkSqlParser.STRING); } } this.state = 2238; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,280,this._ctx); if(la_===1) { this.state = 2233; this.match(SparkSqlParser.COLLECTION); this.state = 2234; this.match(SparkSqlParser.ITEMS); this.state = 2235; this.match(SparkSqlParser.TERMINATED); this.state = 2236; this.match(SparkSqlParser.BY); this.state = 2237; localctx.collectionItemsTerminatedBy = this.match(SparkSqlParser.STRING); } this.state = 2245; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,281,this._ctx); if(la_===1) { this.state = 2240; this.match(SparkSqlParser.MAP); this.state = 2241; this.match(SparkSqlParser.KEYS); this.state = 2242; this.match(SparkSqlParser.TERMINATED); this.state = 2243; this.match(SparkSqlParser.BY); this.state = 2244; localctx.keysTerminatedBy = this.match(SparkSqlParser.STRING); } this.state = 2251; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,282,this._ctx); if(la_===1) { this.state = 2247; this.match(SparkSqlParser.LINES); this.state = 2248; this.match(SparkSqlParser.TERMINATED); this.state = 2249; this.match(SparkSqlParser.BY); this.state = 2250; localctx.linesSeparatedBy = this.match(SparkSqlParser.STRING); } this.state = 2257; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,283,this._ctx); if(la_===1) { this.state = 2253; this.match(SparkSqlParser.NULL); this.state = 2254; this.match(SparkSqlParser.DEFINED); this.state = 2255; this.match(SparkSqlParser.AS); this.state = 2256; localctx.nullDefinedAs = this.match(SparkSqlParser.STRING); } break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function MultipartIdentifierListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_multipartIdentifierList; return this; } MultipartIdentifierListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); MultipartIdentifierListContext.prototype.constructor = MultipartIdentifierListContext; MultipartIdentifierListContext.prototype.multipartIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(MultipartIdentifierContext); } else { return this.getTypedRuleContext(MultipartIdentifierContext,i); } }; MultipartIdentifierListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterMultipartIdentifierList(this); } }; MultipartIdentifierListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitMultipartIdentifierList(this); } }; MultipartIdentifierListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitMultipartIdentifierList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.MultipartIdentifierListContext = MultipartIdentifierListContext; SparkSqlParser.prototype.multipartIdentifierList = function() { var localctx = new MultipartIdentifierListContext(this, this._ctx, this.state); this.enterRule(localctx, 170, SparkSqlParser.RULE_multipartIdentifierList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2261; this.multipartIdentifier(); this.state = 2266; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2262; this.match(SparkSqlParser.T__3); this.state = 2263; this.multipartIdentifier(); this.state = 2268; this._errHandler.sync(this); _la = this._input.LA(1); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function MultipartIdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_multipartIdentifier; this._errorCapturingIdentifier = null; // ErrorCapturingIdentifierContext this.parts = []; // of ErrorCapturingIdentifierContexts return this; } MultipartIdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); MultipartIdentifierContext.prototype.constructor = MultipartIdentifierContext; MultipartIdentifierContext.prototype.errorCapturingIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ErrorCapturingIdentifierContext); } else { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,i); } }; MultipartIdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterMultipartIdentifier(this); } }; MultipartIdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitMultipartIdentifier(this); } }; MultipartIdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitMultipartIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.MultipartIdentifierContext = MultipartIdentifierContext; SparkSqlParser.prototype.multipartIdentifier = function() { var localctx = new MultipartIdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 172, SparkSqlParser.RULE_multipartIdentifier); try { this.enterOuterAlt(localctx, 1); this.state = 2269; localctx._errorCapturingIdentifier = this.errorCapturingIdentifier(); localctx.parts.push(localctx._errorCapturingIdentifier); this.state = 2274; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,286,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2270; this.match(SparkSqlParser.T__4); this.state = 2271; localctx._errorCapturingIdentifier = this.errorCapturingIdentifier(); localctx.parts.push(localctx._errorCapturingIdentifier); } this.state = 2276; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,286,this._ctx); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TableIdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_tableIdentifier; this.db = null; // ErrorCapturingIdentifierContext this.table = null; // ErrorCapturingIdentifierContext return this; } TableIdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TableIdentifierContext.prototype.constructor = TableIdentifierContext; TableIdentifierContext.prototype.errorCapturingIdentifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ErrorCapturingIdentifierContext); } else { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,i); } }; TableIdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTableIdentifier(this); } }; TableIdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTableIdentifier(this); } }; TableIdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTableIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TableIdentifierContext = TableIdentifierContext; SparkSqlParser.prototype.tableIdentifier = function() { var localctx = new TableIdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 174, SparkSqlParser.RULE_tableIdentifier); try { this.enterOuterAlt(localctx, 1); this.state = 2280; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,287,this._ctx); if(la_===1) { this.state = 2277; localctx.db = this.errorCapturingIdentifier(); this.state = 2278; this.match(SparkSqlParser.T__4); } this.state = 2282; localctx.table = this.errorCapturingIdentifier(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NamedExpressionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_namedExpression; this.name = null; // ErrorCapturingIdentifierContext return this; } NamedExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NamedExpressionContext.prototype.constructor = NamedExpressionContext; NamedExpressionContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; NamedExpressionContext.prototype.identifierList = function() { return this.getTypedRuleContext(IdentifierListContext,0); }; NamedExpressionContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; NamedExpressionContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; NamedExpressionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNamedExpression(this); } }; NamedExpressionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNamedExpression(this); } }; NamedExpressionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNamedExpression(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NamedExpressionContext = NamedExpressionContext; SparkSqlParser.prototype.namedExpression = function() { var localctx = new NamedExpressionContext(this, this._ctx, this.state); this.enterRule(localctx, 176, SparkSqlParser.RULE_namedExpression); try { this.enterOuterAlt(localctx, 1); this.state = 2284; this.expression(); this.state = 2292; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,290,this._ctx); if(la_===1) { this.state = 2286; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,288,this._ctx); if(la_===1) { this.state = 2285; this.match(SparkSqlParser.AS); } this.state = 2290; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,289,this._ctx); switch(la_) { case 1: this.state = 2288; localctx.name = this.errorCapturingIdentifier(); break; case 2: this.state = 2289; this.identifierList(); break; } } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NamedExpressionSeqContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_namedExpressionSeq; return this; } NamedExpressionSeqContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NamedExpressionSeqContext.prototype.constructor = NamedExpressionSeqContext; NamedExpressionSeqContext.prototype.namedExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(NamedExpressionContext); } else { return this.getTypedRuleContext(NamedExpressionContext,i); } }; NamedExpressionSeqContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNamedExpressionSeq(this); } }; NamedExpressionSeqContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNamedExpressionSeq(this); } }; NamedExpressionSeqContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNamedExpressionSeq(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NamedExpressionSeqContext = NamedExpressionSeqContext; SparkSqlParser.prototype.namedExpressionSeq = function() { var localctx = new NamedExpressionSeqContext(this, this._ctx, this.state); this.enterRule(localctx, 178, SparkSqlParser.RULE_namedExpressionSeq); try { this.enterOuterAlt(localctx, 1); this.state = 2294; this.namedExpression(); this.state = 2299; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,291,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2295; this.match(SparkSqlParser.T__3); this.state = 2296; this.namedExpression(); } this.state = 2301; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,291,this._ctx); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TransformListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_transformList; this._transform = null; // TransformContext this.transforms = []; // of TransformContexts return this; } TransformListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TransformListContext.prototype.constructor = TransformListContext; TransformListContext.prototype.transform = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TransformContext); } else { return this.getTypedRuleContext(TransformContext,i); } }; TransformListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTransformList(this); } }; TransformListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTransformList(this); } }; TransformListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTransformList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TransformListContext = TransformListContext; SparkSqlParser.prototype.transformList = function() { var localctx = new TransformListContext(this, this._ctx, this.state); this.enterRule(localctx, 180, SparkSqlParser.RULE_transformList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2302; this.match(SparkSqlParser.T__1); this.state = 2303; localctx._transform = this.transform(); localctx.transforms.push(localctx._transform); this.state = 2308; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2304; this.match(SparkSqlParser.T__3); this.state = 2305; localctx._transform = this.transform(); localctx.transforms.push(localctx._transform); this.state = 2310; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 2311; this.match(SparkSqlParser.T__2); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TransformContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_transform; return this; } TransformContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TransformContext.prototype.constructor = TransformContext; TransformContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function IdentityTransformContext(parser, ctx) { TransformContext.call(this, parser); TransformContext.prototype.copyFrom.call(this, ctx); return this; } IdentityTransformContext.prototype = Object.create(TransformContext.prototype); IdentityTransformContext.prototype.constructor = IdentityTransformContext; SparkSqlParser.IdentityTransformContext = IdentityTransformContext; IdentityTransformContext.prototype.qualifiedName = function() { return this.getTypedRuleContext(QualifiedNameContext,0); }; IdentityTransformContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIdentityTransform(this); } }; IdentityTransformContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIdentityTransform(this); } }; IdentityTransformContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIdentityTransform(this); } else { return visitor.visitChildren(this); } }; function ApplyTransformContext(parser, ctx) { TransformContext.call(this, parser); this.transformName = null; // IdentifierContext; this._transformArgument = null; // TransformArgumentContext; this.argument = []; // of TransformArgumentContexts; TransformContext.prototype.copyFrom.call(this, ctx); return this; } ApplyTransformContext.prototype = Object.create(TransformContext.prototype); ApplyTransformContext.prototype.constructor = ApplyTransformContext; SparkSqlParser.ApplyTransformContext = ApplyTransformContext; ApplyTransformContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; ApplyTransformContext.prototype.transformArgument = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(TransformArgumentContext); } else { return this.getTypedRuleContext(TransformArgumentContext,i); } }; ApplyTransformContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterApplyTransform(this); } }; ApplyTransformContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitApplyTransform(this); } }; ApplyTransformContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitApplyTransform(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TransformContext = TransformContext; SparkSqlParser.prototype.transform = function() { var localctx = new TransformContext(this, this._ctx, this.state); this.enterRule(localctx, 182, SparkSqlParser.RULE_transform); var _la = 0; // Token type try { this.state = 2326; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,294,this._ctx); switch(la_) { case 1: localctx = new IdentityTransformContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2313; this.qualifiedName(); break; case 2: localctx = new ApplyTransformContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2314; localctx.transformName = this.identifier(); this.state = 2315; this.match(SparkSqlParser.T__1); this.state = 2316; localctx._transformArgument = this.transformArgument(); localctx.argument.push(localctx._transformArgument); this.state = 2321; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2317; this.match(SparkSqlParser.T__3); this.state = 2318; localctx._transformArgument = this.transformArgument(); localctx.argument.push(localctx._transformArgument); this.state = 2323; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 2324; this.match(SparkSqlParser.T__2); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function TransformArgumentContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_transformArgument; return this; } TransformArgumentContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); TransformArgumentContext.prototype.constructor = TransformArgumentContext; TransformArgumentContext.prototype.qualifiedName = function() { return this.getTypedRuleContext(QualifiedNameContext,0); }; TransformArgumentContext.prototype.constant = function() { return this.getTypedRuleContext(ConstantContext,0); }; TransformArgumentContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTransformArgument(this); } }; TransformArgumentContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTransformArgument(this); } }; TransformArgumentContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTransformArgument(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.TransformArgumentContext = TransformArgumentContext; SparkSqlParser.prototype.transformArgument = function() { var localctx = new TransformArgumentContext(this, this._ctx, this.state); this.enterRule(localctx, 184, SparkSqlParser.RULE_transformArgument); try { this.state = 2330; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,295,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 2328; this.qualifiedName(); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 2329; this.constant(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ExpressionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_expression; return this; } ExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ExpressionContext.prototype.constructor = ExpressionContext; ExpressionContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; ExpressionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterExpression(this); } }; ExpressionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitExpression(this); } }; ExpressionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitExpression(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ExpressionContext = ExpressionContext; SparkSqlParser.prototype.expression = function() { var localctx = new ExpressionContext(this, this._ctx, this.state); this.enterRule(localctx, 186, SparkSqlParser.RULE_expression); try { this.enterOuterAlt(localctx, 1); this.state = 2332; this.booleanExpression(0); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function BooleanExpressionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_booleanExpression; return this; } BooleanExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); BooleanExpressionContext.prototype.constructor = BooleanExpressionContext; BooleanExpressionContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function LogicalNotContext(parser, ctx) { BooleanExpressionContext.call(this, parser); BooleanExpressionContext.prototype.copyFrom.call(this, ctx); return this; } LogicalNotContext.prototype = Object.create(BooleanExpressionContext.prototype); LogicalNotContext.prototype.constructor = LogicalNotContext; SparkSqlParser.LogicalNotContext = LogicalNotContext; LogicalNotContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; LogicalNotContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; LogicalNotContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterLogicalNot(this); } }; LogicalNotContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitLogicalNot(this); } }; LogicalNotContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitLogicalNot(this); } else { return visitor.visitChildren(this); } }; function PredicatedContext(parser, ctx) { BooleanExpressionContext.call(this, parser); BooleanExpressionContext.prototype.copyFrom.call(this, ctx); return this; } PredicatedContext.prototype = Object.create(BooleanExpressionContext.prototype); PredicatedContext.prototype.constructor = PredicatedContext; SparkSqlParser.PredicatedContext = PredicatedContext; PredicatedContext.prototype.valueExpression = function() { return this.getTypedRuleContext(ValueExpressionContext,0); }; PredicatedContext.prototype.predicate = function() { return this.getTypedRuleContext(PredicateContext,0); }; PredicatedContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPredicated(this); } }; PredicatedContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPredicated(this); } }; PredicatedContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPredicated(this); } else { return visitor.visitChildren(this); } }; function ExistsContext(parser, ctx) { BooleanExpressionContext.call(this, parser); BooleanExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ExistsContext.prototype = Object.create(BooleanExpressionContext.prototype); ExistsContext.prototype.constructor = ExistsContext; SparkSqlParser.ExistsContext = ExistsContext; ExistsContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; ExistsContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; ExistsContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterExists(this); } }; ExistsContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitExists(this); } }; ExistsContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitExists(this); } else { return visitor.visitChildren(this); } }; function LogicalBinaryContext(parser, ctx) { BooleanExpressionContext.call(this, parser); this.left = null; // BooleanExpressionContext; this.operator = null; // Token; this.right = null; // BooleanExpressionContext; BooleanExpressionContext.prototype.copyFrom.call(this, ctx); return this; } LogicalBinaryContext.prototype = Object.create(BooleanExpressionContext.prototype); LogicalBinaryContext.prototype.constructor = LogicalBinaryContext; SparkSqlParser.LogicalBinaryContext = LogicalBinaryContext; LogicalBinaryContext.prototype.booleanExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(BooleanExpressionContext); } else { return this.getTypedRuleContext(BooleanExpressionContext,i); } }; LogicalBinaryContext.prototype.AND = function() { return this.getToken(SparkSqlParser.AND, 0); }; LogicalBinaryContext.prototype.OR = function() { return this.getToken(SparkSqlParser.OR, 0); }; LogicalBinaryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterLogicalBinary(this); } }; LogicalBinaryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitLogicalBinary(this); } }; LogicalBinaryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitLogicalBinary(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.prototype.booleanExpression = function(_p) { if(_p===undefined) { _p = 0; } var _parentctx = this._ctx; var _parentState = this.state; var localctx = new BooleanExpressionContext(this, this._ctx, _parentState); var _prevctx = localctx; var _startState = 188; this.enterRecursionRule(localctx, 188, SparkSqlParser.RULE_booleanExpression, _p); try { this.enterOuterAlt(localctx, 1); this.state = 2346; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,297,this._ctx); switch(la_) { case 1: localctx = new LogicalNotContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2335; this.match(SparkSqlParser.NOT); this.state = 2336; this.booleanExpression(5); break; case 2: localctx = new ExistsContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2337; this.match(SparkSqlParser.EXISTS); this.state = 2338; this.match(SparkSqlParser.T__1); this.state = 2339; this.query(); this.state = 2340; this.match(SparkSqlParser.T__2); break; case 3: localctx = new PredicatedContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2342; this.valueExpression(0); this.state = 2344; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,296,this._ctx); if(la_===1) { this.state = 2343; this.predicate(); } break; } this._ctx.stop = this._input.LT(-1); this.state = 2356; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,299,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { if(this._parseListeners!==null) { this.triggerExitRuleEvent(); } _prevctx = localctx; this.state = 2354; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,298,this._ctx); switch(la_) { case 1: localctx = new LogicalBinaryContext(this, new BooleanExpressionContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_booleanExpression); this.state = 2348; if (!( this.precpred(this._ctx, 2))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 2)"); } this.state = 2349; localctx.operator = this.match(SparkSqlParser.AND); this.state = 2350; localctx.right = this.booleanExpression(3); break; case 2: localctx = new LogicalBinaryContext(this, new BooleanExpressionContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_booleanExpression); this.state = 2351; if (!( this.precpred(this._ctx, 1))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 1)"); } this.state = 2352; localctx.operator = this.match(SparkSqlParser.OR); this.state = 2353; localctx.right = this.booleanExpression(2); break; } } this.state = 2358; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,299,this._ctx); } } catch( error) { if(error instanceof antlr4.error.RecognitionException) { localctx.exception = error; this._errHandler.reportError(this, error); this._errHandler.recover(this, error); } else { throw error; } } finally { this.unrollRecursionContexts(_parentctx) } return localctx; }; function PredicateContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_predicate; this.kind = null; // Token this.lower = null; // ValueExpressionContext this.upper = null; // ValueExpressionContext this.pattern = null; // ValueExpressionContext this.quantifier = null; // Token this.escapeChar = null; // Token this.right = null; // ValueExpressionContext return this; } PredicateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PredicateContext.prototype.constructor = PredicateContext; PredicateContext.prototype.AND = function() { return this.getToken(SparkSqlParser.AND, 0); }; PredicateContext.prototype.BETWEEN = function() { return this.getToken(SparkSqlParser.BETWEEN, 0); }; PredicateContext.prototype.valueExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ValueExpressionContext); } else { return this.getTypedRuleContext(ValueExpressionContext,i); } }; PredicateContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; PredicateContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; PredicateContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; PredicateContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; PredicateContext.prototype.RLIKE = function() { return this.getToken(SparkSqlParser.RLIKE, 0); }; PredicateContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; PredicateContext.prototype.ANY = function() { return this.getToken(SparkSqlParser.ANY, 0); }; PredicateContext.prototype.SOME = function() { return this.getToken(SparkSqlParser.SOME, 0); }; PredicateContext.prototype.ALL = function() { return this.getToken(SparkSqlParser.ALL, 0); }; PredicateContext.prototype.ESCAPE = function() { return this.getToken(SparkSqlParser.ESCAPE, 0); }; PredicateContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; PredicateContext.prototype.IS = function() { return this.getToken(SparkSqlParser.IS, 0); }; PredicateContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; PredicateContext.prototype.TRUE = function() { return this.getToken(SparkSqlParser.TRUE, 0); }; PredicateContext.prototype.FALSE = function() { return this.getToken(SparkSqlParser.FALSE, 0); }; PredicateContext.prototype.UNKNOWN = function() { return this.getToken(SparkSqlParser.UNKNOWN, 0); }; PredicateContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; PredicateContext.prototype.DISTINCT = function() { return this.getToken(SparkSqlParser.DISTINCT, 0); }; PredicateContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPredicate(this); } }; PredicateContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPredicate(this); } }; PredicateContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPredicate(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.PredicateContext = PredicateContext; SparkSqlParser.prototype.predicate = function() { var localctx = new PredicateContext(this, this._ctx, this.state); this.enterRule(localctx, 190, SparkSqlParser.RULE_predicate); var _la = 0; // Token type try { this.state = 2441; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,313,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 2360; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2359; this.match(SparkSqlParser.NOT); } this.state = 2362; localctx.kind = this.match(SparkSqlParser.BETWEEN); this.state = 2363; localctx.lower = this.valueExpression(0); this.state = 2364; this.match(SparkSqlParser.AND); this.state = 2365; localctx.upper = this.valueExpression(0); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 2368; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2367; this.match(SparkSqlParser.NOT); } this.state = 2370; localctx.kind = this.match(SparkSqlParser.IN); this.state = 2371; this.match(SparkSqlParser.T__1); this.state = 2372; this.expression(); this.state = 2377; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2373; this.match(SparkSqlParser.T__3); this.state = 2374; this.expression(); this.state = 2379; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 2380; this.match(SparkSqlParser.T__2); break; case 3: this.enterOuterAlt(localctx, 3); this.state = 2383; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2382; this.match(SparkSqlParser.NOT); } this.state = 2385; localctx.kind = this.match(SparkSqlParser.IN); this.state = 2386; this.match(SparkSqlParser.T__1); this.state = 2387; this.query(); this.state = 2388; this.match(SparkSqlParser.T__2); break; case 4: this.enterOuterAlt(localctx, 4); this.state = 2391; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2390; this.match(SparkSqlParser.NOT); } this.state = 2393; localctx.kind = this.match(SparkSqlParser.RLIKE); this.state = 2394; localctx.pattern = this.valueExpression(0); break; case 5: this.enterOuterAlt(localctx, 5); this.state = 2396; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2395; this.match(SparkSqlParser.NOT); } this.state = 2398; localctx.kind = this.match(SparkSqlParser.LIKE); this.state = 2399; localctx.quantifier = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.ALL || _la===SparkSqlParser.ANY || _la===SparkSqlParser.SOME)) { localctx.quantifier = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2413; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,307,this._ctx); switch(la_) { case 1: this.state = 2400; this.match(SparkSqlParser.T__1); this.state = 2401; this.match(SparkSqlParser.T__2); break; case 2: this.state = 2402; this.match(SparkSqlParser.T__1); this.state = 2403; this.expression(); this.state = 2408; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2404; this.match(SparkSqlParser.T__3); this.state = 2405; this.expression(); this.state = 2410; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 2411; this.match(SparkSqlParser.T__2); break; } break; case 6: this.enterOuterAlt(localctx, 6); this.state = 2416; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2415; this.match(SparkSqlParser.NOT); } this.state = 2418; localctx.kind = this.match(SparkSqlParser.LIKE); this.state = 2419; localctx.pattern = this.valueExpression(0); this.state = 2422; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,309,this._ctx); if(la_===1) { this.state = 2420; this.match(SparkSqlParser.ESCAPE); this.state = 2421; localctx.escapeChar = this.match(SparkSqlParser.STRING); } break; case 7: this.enterOuterAlt(localctx, 7); this.state = 2424; this.match(SparkSqlParser.IS); this.state = 2426; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2425; this.match(SparkSqlParser.NOT); } this.state = 2428; localctx.kind = this.match(SparkSqlParser.NULL); break; case 8: this.enterOuterAlt(localctx, 8); this.state = 2429; this.match(SparkSqlParser.IS); this.state = 2431; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2430; this.match(SparkSqlParser.NOT); } this.state = 2433; localctx.kind = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.FALSE || _la===SparkSqlParser.TRUE || _la===SparkSqlParser.UNKNOWN)) { localctx.kind = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; case 9: this.enterOuterAlt(localctx, 9); this.state = 2434; this.match(SparkSqlParser.IS); this.state = 2436; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2435; this.match(SparkSqlParser.NOT); } this.state = 2438; localctx.kind = this.match(SparkSqlParser.DISTINCT); this.state = 2439; this.match(SparkSqlParser.FROM); this.state = 2440; localctx.right = this.valueExpression(0); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ValueExpressionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_valueExpression; return this; } ValueExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ValueExpressionContext.prototype.constructor = ValueExpressionContext; ValueExpressionContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function ValueExpressionDefaultContext(parser, ctx) { ValueExpressionContext.call(this, parser); ValueExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ValueExpressionDefaultContext.prototype = Object.create(ValueExpressionContext.prototype); ValueExpressionDefaultContext.prototype.constructor = ValueExpressionDefaultContext; SparkSqlParser.ValueExpressionDefaultContext = ValueExpressionDefaultContext; ValueExpressionDefaultContext.prototype.primaryExpression = function() { return this.getTypedRuleContext(PrimaryExpressionContext,0); }; ValueExpressionDefaultContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterValueExpressionDefault(this); } }; ValueExpressionDefaultContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitValueExpressionDefault(this); } }; ValueExpressionDefaultContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitValueExpressionDefault(this); } else { return visitor.visitChildren(this); } }; function ComparisonContext(parser, ctx) { ValueExpressionContext.call(this, parser); this.left = null; // ValueExpressionContext; this.right = null; // ValueExpressionContext; ValueExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ComparisonContext.prototype = Object.create(ValueExpressionContext.prototype); ComparisonContext.prototype.constructor = ComparisonContext; SparkSqlParser.ComparisonContext = ComparisonContext; ComparisonContext.prototype.comparisonOperator = function() { return this.getTypedRuleContext(ComparisonOperatorContext,0); }; ComparisonContext.prototype.valueExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ValueExpressionContext); } else { return this.getTypedRuleContext(ValueExpressionContext,i); } }; ComparisonContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterComparison(this); } }; ComparisonContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitComparison(this); } }; ComparisonContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitComparison(this); } else { return visitor.visitChildren(this); } }; function ArithmeticBinaryContext(parser, ctx) { ValueExpressionContext.call(this, parser); this.left = null; // ValueExpressionContext; this.operator = null; // Token; this.right = null; // ValueExpressionContext; ValueExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ArithmeticBinaryContext.prototype = Object.create(ValueExpressionContext.prototype); ArithmeticBinaryContext.prototype.constructor = ArithmeticBinaryContext; SparkSqlParser.ArithmeticBinaryContext = ArithmeticBinaryContext; ArithmeticBinaryContext.prototype.valueExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ValueExpressionContext); } else { return this.getTypedRuleContext(ValueExpressionContext,i); } }; ArithmeticBinaryContext.prototype.ASTERISK = function() { return this.getToken(SparkSqlParser.ASTERISK, 0); }; ArithmeticBinaryContext.prototype.SLASH = function() { return this.getToken(SparkSqlParser.SLASH, 0); }; ArithmeticBinaryContext.prototype.PERCENT = function() { return this.getToken(SparkSqlParser.PERCENT, 0); }; ArithmeticBinaryContext.prototype.DIV = function() { return this.getToken(SparkSqlParser.DIV, 0); }; ArithmeticBinaryContext.prototype.PLUS = function() { return this.getToken(SparkSqlParser.PLUS, 0); }; ArithmeticBinaryContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; ArithmeticBinaryContext.prototype.CONCAT_PIPE = function() { return this.getToken(SparkSqlParser.CONCAT_PIPE, 0); }; ArithmeticBinaryContext.prototype.AMPERSAND = function() { return this.getToken(SparkSqlParser.AMPERSAND, 0); }; ArithmeticBinaryContext.prototype.HAT = function() { return this.getToken(SparkSqlParser.HAT, 0); }; ArithmeticBinaryContext.prototype.PIPE = function() { return this.getToken(SparkSqlParser.PIPE, 0); }; ArithmeticBinaryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterArithmeticBinary(this); } }; ArithmeticBinaryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitArithmeticBinary(this); } }; ArithmeticBinaryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitArithmeticBinary(this); } else { return visitor.visitChildren(this); } }; function ArithmeticUnaryContext(parser, ctx) { ValueExpressionContext.call(this, parser); this.operator = null; // Token; ValueExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ArithmeticUnaryContext.prototype = Object.create(ValueExpressionContext.prototype); ArithmeticUnaryContext.prototype.constructor = ArithmeticUnaryContext; SparkSqlParser.ArithmeticUnaryContext = ArithmeticUnaryContext; ArithmeticUnaryContext.prototype.valueExpression = function() { return this.getTypedRuleContext(ValueExpressionContext,0); }; ArithmeticUnaryContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; ArithmeticUnaryContext.prototype.PLUS = function() { return this.getToken(SparkSqlParser.PLUS, 0); }; ArithmeticUnaryContext.prototype.TILDE = function() { return this.getToken(SparkSqlParser.TILDE, 0); }; ArithmeticUnaryContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterArithmeticUnary(this); } }; ArithmeticUnaryContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitArithmeticUnary(this); } }; ArithmeticUnaryContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitArithmeticUnary(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.prototype.valueExpression = function(_p) { if(_p===undefined) { _p = 0; } var _parentctx = this._ctx; var _parentState = this.state; var localctx = new ValueExpressionContext(this, this._ctx, _parentState); var _prevctx = localctx; var _startState = 192; this.enterRecursionRule(localctx, 192, SparkSqlParser.RULE_valueExpression, _p); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2447; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,314,this._ctx); switch(la_) { case 1: localctx = new ValueExpressionDefaultContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2444; this.primaryExpression(0); break; case 2: localctx = new ArithmeticUnaryContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2445; localctx.operator = this._input.LT(1); _la = this._input.LA(1); if(!(((((_la - 269)) & ~0x1f) == 0 && ((1 << (_la - 269)) & ((1 << (SparkSqlParser.PLUS - 269)) | (1 << (SparkSqlParser.MINUS - 269)) | (1 << (SparkSqlParser.TILDE - 269)))) !== 0))) { localctx.operator = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2446; this.valueExpression(7); break; } this._ctx.stop = this._input.LT(-1); this.state = 2470; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,316,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { if(this._parseListeners!==null) { this.triggerExitRuleEvent(); } _prevctx = localctx; this.state = 2468; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,315,this._ctx); switch(la_) { case 1: localctx = new ArithmeticBinaryContext(this, new ValueExpressionContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_valueExpression); this.state = 2449; if (!( this.precpred(this._ctx, 6))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 6)"); } this.state = 2450; localctx.operator = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.DIV || ((((_la - 271)) & ~0x1f) == 0 && ((1 << (_la - 271)) & ((1 << (SparkSqlParser.ASTERISK - 271)) | (1 << (SparkSqlParser.SLASH - 271)) | (1 << (SparkSqlParser.PERCENT - 271)))) !== 0))) { localctx.operator = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2451; localctx.right = this.valueExpression(7); break; case 2: localctx = new ArithmeticBinaryContext(this, new ValueExpressionContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_valueExpression); this.state = 2452; if (!( this.precpred(this._ctx, 5))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 5)"); } this.state = 2453; localctx.operator = this._input.LT(1); _la = this._input.LA(1); if(!(((((_la - 269)) & ~0x1f) == 0 && ((1 << (_la - 269)) & ((1 << (SparkSqlParser.PLUS - 269)) | (1 << (SparkSqlParser.MINUS - 269)) | (1 << (SparkSqlParser.CONCAT_PIPE - 269)))) !== 0))) { localctx.operator = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2454; localctx.right = this.valueExpression(6); break; case 3: localctx = new ArithmeticBinaryContext(this, new ValueExpressionContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_valueExpression); this.state = 2455; if (!( this.precpred(this._ctx, 4))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 4)"); } this.state = 2456; localctx.operator = this.match(SparkSqlParser.AMPERSAND); this.state = 2457; localctx.right = this.valueExpression(5); break; case 4: localctx = new ArithmeticBinaryContext(this, new ValueExpressionContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_valueExpression); this.state = 2458; if (!( this.precpred(this._ctx, 3))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 3)"); } this.state = 2459; localctx.operator = this.match(SparkSqlParser.HAT); this.state = 2460; localctx.right = this.valueExpression(4); break; case 5: localctx = new ArithmeticBinaryContext(this, new ValueExpressionContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_valueExpression); this.state = 2461; if (!( this.precpred(this._ctx, 2))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 2)"); } this.state = 2462; localctx.operator = this.match(SparkSqlParser.PIPE); this.state = 2463; localctx.right = this.valueExpression(3); break; case 6: localctx = new ComparisonContext(this, new ValueExpressionContext(this, _parentctx, _parentState)); localctx.left = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_valueExpression); this.state = 2464; if (!( this.precpred(this._ctx, 1))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 1)"); } this.state = 2465; this.comparisonOperator(); this.state = 2466; localctx.right = this.valueExpression(2); break; } } this.state = 2472; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,316,this._ctx); } } catch( error) { if(error instanceof antlr4.error.RecognitionException) { localctx.exception = error; this._errHandler.reportError(this, error); this._errHandler.recover(this, error); } else { throw error; } } finally { this.unrollRecursionContexts(_parentctx) } return localctx; }; function PrimaryExpressionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_primaryExpression; return this; } PrimaryExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PrimaryExpressionContext.prototype.constructor = PrimaryExpressionContext; PrimaryExpressionContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function StructContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this._namedExpression = null; // NamedExpressionContext; this.argument = []; // of NamedExpressionContexts; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } StructContext.prototype = Object.create(PrimaryExpressionContext.prototype); StructContext.prototype.constructor = StructContext; SparkSqlParser.StructContext = StructContext; StructContext.prototype.STRUCT = function() { return this.getToken(SparkSqlParser.STRUCT, 0); }; StructContext.prototype.namedExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(NamedExpressionContext); } else { return this.getTypedRuleContext(NamedExpressionContext,i); } }; StructContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterStruct(this); } }; StructContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitStruct(this); } }; StructContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitStruct(this); } else { return visitor.visitChildren(this); } }; function DereferenceContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.base = null; // PrimaryExpressionContext; this.fieldName = null; // IdentifierContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } DereferenceContext.prototype = Object.create(PrimaryExpressionContext.prototype); DereferenceContext.prototype.constructor = DereferenceContext; SparkSqlParser.DereferenceContext = DereferenceContext; DereferenceContext.prototype.primaryExpression = function() { return this.getTypedRuleContext(PrimaryExpressionContext,0); }; DereferenceContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; DereferenceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDereference(this); } }; DereferenceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDereference(this); } }; DereferenceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDereference(this); } else { return visitor.visitChildren(this); } }; function SimpleCaseContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.value = null; // ExpressionContext; this.elseExpression = null; // ExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } SimpleCaseContext.prototype = Object.create(PrimaryExpressionContext.prototype); SimpleCaseContext.prototype.constructor = SimpleCaseContext; SparkSqlParser.SimpleCaseContext = SimpleCaseContext; SimpleCaseContext.prototype.CASE = function() { return this.getToken(SparkSqlParser.CASE, 0); }; SimpleCaseContext.prototype.END = function() { return this.getToken(SparkSqlParser.END, 0); }; SimpleCaseContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; SimpleCaseContext.prototype.whenClause = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(WhenClauseContext); } else { return this.getTypedRuleContext(WhenClauseContext,i); } }; SimpleCaseContext.prototype.ELSE = function() { return this.getToken(SparkSqlParser.ELSE, 0); }; SimpleCaseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSimpleCase(this); } }; SimpleCaseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSimpleCase(this); } }; SimpleCaseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSimpleCase(this); } else { return visitor.visitChildren(this); } }; function ColumnReferenceContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ColumnReferenceContext.prototype = Object.create(PrimaryExpressionContext.prototype); ColumnReferenceContext.prototype.constructor = ColumnReferenceContext; SparkSqlParser.ColumnReferenceContext = ColumnReferenceContext; ColumnReferenceContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; ColumnReferenceContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterColumnReference(this); } }; ColumnReferenceContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitColumnReference(this); } }; ColumnReferenceContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitColumnReference(this); } else { return visitor.visitChildren(this); } }; function RowConstructorContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } RowConstructorContext.prototype = Object.create(PrimaryExpressionContext.prototype); RowConstructorContext.prototype.constructor = RowConstructorContext; SparkSqlParser.RowConstructorContext = RowConstructorContext; RowConstructorContext.prototype.namedExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(NamedExpressionContext); } else { return this.getTypedRuleContext(NamedExpressionContext,i); } }; RowConstructorContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRowConstructor(this); } }; RowConstructorContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRowConstructor(this); } }; RowConstructorContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRowConstructor(this); } else { return visitor.visitChildren(this); } }; function LastContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } LastContext.prototype = Object.create(PrimaryExpressionContext.prototype); LastContext.prototype.constructor = LastContext; SparkSqlParser.LastContext = LastContext; LastContext.prototype.LAST = function() { return this.getToken(SparkSqlParser.LAST, 0); }; LastContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; LastContext.prototype.IGNORE = function() { return this.getToken(SparkSqlParser.IGNORE, 0); }; LastContext.prototype.NULLS = function() { return this.getToken(SparkSqlParser.NULLS, 0); }; LastContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterLast(this); } }; LastContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitLast(this); } }; LastContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitLast(this); } else { return visitor.visitChildren(this); } }; function StarContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } StarContext.prototype = Object.create(PrimaryExpressionContext.prototype); StarContext.prototype.constructor = StarContext; SparkSqlParser.StarContext = StarContext; StarContext.prototype.ASTERISK = function() { return this.getToken(SparkSqlParser.ASTERISK, 0); }; StarContext.prototype.qualifiedName = function() { return this.getTypedRuleContext(QualifiedNameContext,0); }; StarContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterStar(this); } }; StarContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitStar(this); } }; StarContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitStar(this); } else { return visitor.visitChildren(this); } }; function OverlayContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.input = null; // ValueExpressionContext; this.replace = null; // ValueExpressionContext; this.position = null; // ValueExpressionContext; this.length = null; // ValueExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } OverlayContext.prototype = Object.create(PrimaryExpressionContext.prototype); OverlayContext.prototype.constructor = OverlayContext; SparkSqlParser.OverlayContext = OverlayContext; OverlayContext.prototype.OVERLAY = function() { return this.getToken(SparkSqlParser.OVERLAY, 0); }; OverlayContext.prototype.PLACING = function() { return this.getToken(SparkSqlParser.PLACING, 0); }; OverlayContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; OverlayContext.prototype.valueExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ValueExpressionContext); } else { return this.getTypedRuleContext(ValueExpressionContext,i); } }; OverlayContext.prototype.FOR = function() { return this.getToken(SparkSqlParser.FOR, 0); }; OverlayContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterOverlay(this); } }; OverlayContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitOverlay(this); } }; OverlayContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitOverlay(this); } else { return visitor.visitChildren(this); } }; function SubscriptContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.value = null; // PrimaryExpressionContext; this.index = null; // ValueExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } SubscriptContext.prototype = Object.create(PrimaryExpressionContext.prototype); SubscriptContext.prototype.constructor = SubscriptContext; SparkSqlParser.SubscriptContext = SubscriptContext; SubscriptContext.prototype.primaryExpression = function() { return this.getTypedRuleContext(PrimaryExpressionContext,0); }; SubscriptContext.prototype.valueExpression = function() { return this.getTypedRuleContext(ValueExpressionContext,0); }; SubscriptContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSubscript(this); } }; SubscriptContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSubscript(this); } }; SubscriptContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSubscript(this); } else { return visitor.visitChildren(this); } }; function SubqueryExpressionContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } SubqueryExpressionContext.prototype = Object.create(PrimaryExpressionContext.prototype); SubqueryExpressionContext.prototype.constructor = SubqueryExpressionContext; SparkSqlParser.SubqueryExpressionContext = SubqueryExpressionContext; SubqueryExpressionContext.prototype.query = function() { return this.getTypedRuleContext(QueryContext,0); }; SubqueryExpressionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSubqueryExpression(this); } }; SubqueryExpressionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSubqueryExpression(this); } }; SubqueryExpressionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSubqueryExpression(this); } else { return visitor.visitChildren(this); } }; function SubstringContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.str = null; // ValueExpressionContext; this.pos = null; // ValueExpressionContext; this.len = null; // ValueExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } SubstringContext.prototype = Object.create(PrimaryExpressionContext.prototype); SubstringContext.prototype.constructor = SubstringContext; SparkSqlParser.SubstringContext = SubstringContext; SubstringContext.prototype.SUBSTR = function() { return this.getToken(SparkSqlParser.SUBSTR, 0); }; SubstringContext.prototype.SUBSTRING = function() { return this.getToken(SparkSqlParser.SUBSTRING, 0); }; SubstringContext.prototype.valueExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ValueExpressionContext); } else { return this.getTypedRuleContext(ValueExpressionContext,i); } }; SubstringContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; SubstringContext.prototype.FOR = function() { return this.getToken(SparkSqlParser.FOR, 0); }; SubstringContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSubstring(this); } }; SubstringContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSubstring(this); } }; SubstringContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSubstring(this); } else { return visitor.visitChildren(this); } }; function CurrentDatetimeContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.name = null; // Token; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } CurrentDatetimeContext.prototype = Object.create(PrimaryExpressionContext.prototype); CurrentDatetimeContext.prototype.constructor = CurrentDatetimeContext; SparkSqlParser.CurrentDatetimeContext = CurrentDatetimeContext; CurrentDatetimeContext.prototype.CURRENT_DATE = function() { return this.getToken(SparkSqlParser.CURRENT_DATE, 0); }; CurrentDatetimeContext.prototype.CURRENT_TIMESTAMP = function() { return this.getToken(SparkSqlParser.CURRENT_TIMESTAMP, 0); }; CurrentDatetimeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCurrentDatetime(this); } }; CurrentDatetimeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCurrentDatetime(this); } }; CurrentDatetimeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCurrentDatetime(this); } else { return visitor.visitChildren(this); } }; function CastContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } CastContext.prototype = Object.create(PrimaryExpressionContext.prototype); CastContext.prototype.constructor = CastContext; SparkSqlParser.CastContext = CastContext; CastContext.prototype.CAST = function() { return this.getToken(SparkSqlParser.CAST, 0); }; CastContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; CastContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; CastContext.prototype.dataType = function() { return this.getTypedRuleContext(DataTypeContext,0); }; CastContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterCast(this); } }; CastContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitCast(this); } }; CastContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitCast(this); } else { return visitor.visitChildren(this); } }; function ConstantDefaultContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ConstantDefaultContext.prototype = Object.create(PrimaryExpressionContext.prototype); ConstantDefaultContext.prototype.constructor = ConstantDefaultContext; SparkSqlParser.ConstantDefaultContext = ConstantDefaultContext; ConstantDefaultContext.prototype.constant = function() { return this.getTypedRuleContext(ConstantContext,0); }; ConstantDefaultContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterConstantDefault(this); } }; ConstantDefaultContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitConstantDefault(this); } }; ConstantDefaultContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitConstantDefault(this); } else { return visitor.visitChildren(this); } }; function LambdaContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } LambdaContext.prototype = Object.create(PrimaryExpressionContext.prototype); LambdaContext.prototype.constructor = LambdaContext; SparkSqlParser.LambdaContext = LambdaContext; LambdaContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; LambdaContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; LambdaContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterLambda(this); } }; LambdaContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitLambda(this); } }; LambdaContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitLambda(this); } else { return visitor.visitChildren(this); } }; function ParenthesizedExpressionContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ParenthesizedExpressionContext.prototype = Object.create(PrimaryExpressionContext.prototype); ParenthesizedExpressionContext.prototype.constructor = ParenthesizedExpressionContext; SparkSqlParser.ParenthesizedExpressionContext = ParenthesizedExpressionContext; ParenthesizedExpressionContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; ParenthesizedExpressionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterParenthesizedExpression(this); } }; ParenthesizedExpressionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitParenthesizedExpression(this); } }; ParenthesizedExpressionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitParenthesizedExpression(this); } else { return visitor.visitChildren(this); } }; function ExtractContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.field = null; // IdentifierContext; this.source = null; // ValueExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } ExtractContext.prototype = Object.create(PrimaryExpressionContext.prototype); ExtractContext.prototype.constructor = ExtractContext; SparkSqlParser.ExtractContext = ExtractContext; ExtractContext.prototype.EXTRACT = function() { return this.getToken(SparkSqlParser.EXTRACT, 0); }; ExtractContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; ExtractContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; ExtractContext.prototype.valueExpression = function() { return this.getTypedRuleContext(ValueExpressionContext,0); }; ExtractContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterExtract(this); } }; ExtractContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitExtract(this); } }; ExtractContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitExtract(this); } else { return visitor.visitChildren(this); } }; function TrimContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.trimOption = null; // Token; this.trimStr = null; // ValueExpressionContext; this.srcStr = null; // ValueExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } TrimContext.prototype = Object.create(PrimaryExpressionContext.prototype); TrimContext.prototype.constructor = TrimContext; SparkSqlParser.TrimContext = TrimContext; TrimContext.prototype.TRIM = function() { return this.getToken(SparkSqlParser.TRIM, 0); }; TrimContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; TrimContext.prototype.valueExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ValueExpressionContext); } else { return this.getTypedRuleContext(ValueExpressionContext,i); } }; TrimContext.prototype.BOTH = function() { return this.getToken(SparkSqlParser.BOTH, 0); }; TrimContext.prototype.LEADING = function() { return this.getToken(SparkSqlParser.LEADING, 0); }; TrimContext.prototype.TRAILING = function() { return this.getToken(SparkSqlParser.TRAILING, 0); }; TrimContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTrim(this); } }; TrimContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTrim(this); } }; TrimContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTrim(this); } else { return visitor.visitChildren(this); } }; function FunctionCallContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this._expression = null; // ExpressionContext; this.argument = []; // of ExpressionContexts; this.where = null; // BooleanExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } FunctionCallContext.prototype = Object.create(PrimaryExpressionContext.prototype); FunctionCallContext.prototype.constructor = FunctionCallContext; SparkSqlParser.FunctionCallContext = FunctionCallContext; FunctionCallContext.prototype.functionName = function() { return this.getTypedRuleContext(FunctionNameContext,0); }; FunctionCallContext.prototype.FILTER = function() { return this.getToken(SparkSqlParser.FILTER, 0); }; FunctionCallContext.prototype.WHERE = function() { return this.getToken(SparkSqlParser.WHERE, 0); }; FunctionCallContext.prototype.OVER = function() { return this.getToken(SparkSqlParser.OVER, 0); }; FunctionCallContext.prototype.windowSpec = function() { return this.getTypedRuleContext(WindowSpecContext,0); }; FunctionCallContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; FunctionCallContext.prototype.booleanExpression = function() { return this.getTypedRuleContext(BooleanExpressionContext,0); }; FunctionCallContext.prototype.setQuantifier = function() { return this.getTypedRuleContext(SetQuantifierContext,0); }; FunctionCallContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFunctionCall(this); } }; FunctionCallContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFunctionCall(this); } }; FunctionCallContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFunctionCall(this); } else { return visitor.visitChildren(this); } }; function SearchedCaseContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.elseExpression = null; // ExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } SearchedCaseContext.prototype = Object.create(PrimaryExpressionContext.prototype); SearchedCaseContext.prototype.constructor = SearchedCaseContext; SparkSqlParser.SearchedCaseContext = SearchedCaseContext; SearchedCaseContext.prototype.CASE = function() { return this.getToken(SparkSqlParser.CASE, 0); }; SearchedCaseContext.prototype.END = function() { return this.getToken(SparkSqlParser.END, 0); }; SearchedCaseContext.prototype.whenClause = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(WhenClauseContext); } else { return this.getTypedRuleContext(WhenClauseContext,i); } }; SearchedCaseContext.prototype.ELSE = function() { return this.getToken(SparkSqlParser.ELSE, 0); }; SearchedCaseContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; SearchedCaseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSearchedCase(this); } }; SearchedCaseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSearchedCase(this); } }; SearchedCaseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSearchedCase(this); } else { return visitor.visitChildren(this); } }; function PositionContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); this.substr = null; // ValueExpressionContext; this.str = null; // ValueExpressionContext; PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } PositionContext.prototype = Object.create(PrimaryExpressionContext.prototype); PositionContext.prototype.constructor = PositionContext; SparkSqlParser.PositionContext = PositionContext; PositionContext.prototype.POSITION = function() { return this.getToken(SparkSqlParser.POSITION, 0); }; PositionContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; PositionContext.prototype.valueExpression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ValueExpressionContext); } else { return this.getTypedRuleContext(ValueExpressionContext,i); } }; PositionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPosition(this); } }; PositionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPosition(this); } }; PositionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPosition(this); } else { return visitor.visitChildren(this); } }; function FirstContext(parser, ctx) { PrimaryExpressionContext.call(this, parser); PrimaryExpressionContext.prototype.copyFrom.call(this, ctx); return this; } FirstContext.prototype = Object.create(PrimaryExpressionContext.prototype); FirstContext.prototype.constructor = FirstContext; SparkSqlParser.FirstContext = FirstContext; FirstContext.prototype.FIRST = function() { return this.getToken(SparkSqlParser.FIRST, 0); }; FirstContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; FirstContext.prototype.IGNORE = function() { return this.getToken(SparkSqlParser.IGNORE, 0); }; FirstContext.prototype.NULLS = function() { return this.getToken(SparkSqlParser.NULLS, 0); }; FirstContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFirst(this); } }; FirstContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFirst(this); } }; FirstContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFirst(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.prototype.primaryExpression = function(_p) { if(_p===undefined) { _p = 0; } var _parentctx = this._ctx; var _parentState = this.state; var localctx = new PrimaryExpressionContext(this, this._ctx, _parentState); var _prevctx = localctx; var _startState = 194; this.enterRecursionRule(localctx, 194, SparkSqlParser.RULE_primaryExpression, _p); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2657; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,336,this._ctx); switch(la_) { case 1: localctx = new CurrentDatetimeContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2474; localctx.name = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.CURRENT_DATE || _la===SparkSqlParser.CURRENT_TIMESTAMP)) { localctx.name = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; case 2: localctx = new SearchedCaseContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2475; this.match(SparkSqlParser.CASE); this.state = 2477; this._errHandler.sync(this); _la = this._input.LA(1); do { this.state = 2476; this.whenClause(); this.state = 2479; this._errHandler.sync(this); _la = this._input.LA(1); } while(_la===SparkSqlParser.WHEN); this.state = 2483; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ELSE) { this.state = 2481; this.match(SparkSqlParser.ELSE); this.state = 2482; localctx.elseExpression = this.expression(); } this.state = 2485; this.match(SparkSqlParser.END); break; case 3: localctx = new SimpleCaseContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2487; this.match(SparkSqlParser.CASE); this.state = 2488; localctx.value = this.expression(); this.state = 2490; this._errHandler.sync(this); _la = this._input.LA(1); do { this.state = 2489; this.whenClause(); this.state = 2492; this._errHandler.sync(this); _la = this._input.LA(1); } while(_la===SparkSqlParser.WHEN); this.state = 2496; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ELSE) { this.state = 2494; this.match(SparkSqlParser.ELSE); this.state = 2495; localctx.elseExpression = this.expression(); } this.state = 2498; this.match(SparkSqlParser.END); break; case 4: localctx = new CastContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2500; this.match(SparkSqlParser.CAST); this.state = 2501; this.match(SparkSqlParser.T__1); this.state = 2502; this.expression(); this.state = 2503; this.match(SparkSqlParser.AS); this.state = 2504; this.dataType(); this.state = 2505; this.match(SparkSqlParser.T__2); break; case 5: localctx = new StructContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2507; this.match(SparkSqlParser.STRUCT); this.state = 2508; this.match(SparkSqlParser.T__1); this.state = 2517; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,322,this._ctx); if(la_===1) { this.state = 2509; localctx._namedExpression = this.namedExpression(); localctx.argument.push(localctx._namedExpression); this.state = 2514; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2510; this.match(SparkSqlParser.T__3); this.state = 2511; localctx._namedExpression = this.namedExpression(); localctx.argument.push(localctx._namedExpression); this.state = 2516; this._errHandler.sync(this); _la = this._input.LA(1); } } this.state = 2519; this.match(SparkSqlParser.T__2); break; case 6: localctx = new FirstContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2520; this.match(SparkSqlParser.FIRST); this.state = 2521; this.match(SparkSqlParser.T__1); this.state = 2522; this.expression(); this.state = 2525; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.IGNORE) { this.state = 2523; this.match(SparkSqlParser.IGNORE); this.state = 2524; this.match(SparkSqlParser.NULLS); } this.state = 2527; this.match(SparkSqlParser.T__2); break; case 7: localctx = new LastContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2529; this.match(SparkSqlParser.LAST); this.state = 2530; this.match(SparkSqlParser.T__1); this.state = 2531; this.expression(); this.state = 2534; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.IGNORE) { this.state = 2532; this.match(SparkSqlParser.IGNORE); this.state = 2533; this.match(SparkSqlParser.NULLS); } this.state = 2536; this.match(SparkSqlParser.T__2); break; case 8: localctx = new PositionContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2538; this.match(SparkSqlParser.POSITION); this.state = 2539; this.match(SparkSqlParser.T__1); this.state = 2540; localctx.substr = this.valueExpression(0); this.state = 2541; this.match(SparkSqlParser.IN); this.state = 2542; localctx.str = this.valueExpression(0); this.state = 2543; this.match(SparkSqlParser.T__2); break; case 9: localctx = new ConstantDefaultContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2545; this.constant(); break; case 10: localctx = new StarContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2546; this.match(SparkSqlParser.ASTERISK); break; case 11: localctx = new StarContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2547; this.qualifiedName(); this.state = 2548; this.match(SparkSqlParser.T__4); this.state = 2549; this.match(SparkSqlParser.ASTERISK); break; case 12: localctx = new RowConstructorContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2551; this.match(SparkSqlParser.T__1); this.state = 2552; this.namedExpression(); this.state = 2555; this._errHandler.sync(this); _la = this._input.LA(1); do { this.state = 2553; this.match(SparkSqlParser.T__3); this.state = 2554; this.namedExpression(); this.state = 2557; this._errHandler.sync(this); _la = this._input.LA(1); } while(_la===SparkSqlParser.T__3); this.state = 2559; this.match(SparkSqlParser.T__2); break; case 13: localctx = new SubqueryExpressionContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2561; this.match(SparkSqlParser.T__1); this.state = 2562; this.query(); this.state = 2563; this.match(SparkSqlParser.T__2); break; case 14: localctx = new FunctionCallContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2565; this.functionName(); this.state = 2566; this.match(SparkSqlParser.T__1); this.state = 2578; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,328,this._ctx); if(la_===1) { this.state = 2568; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,326,this._ctx); if(la_===1) { this.state = 2567; this.setQuantifier(); } this.state = 2570; localctx._expression = this.expression(); localctx.argument.push(localctx._expression); this.state = 2575; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2571; this.match(SparkSqlParser.T__3); this.state = 2572; localctx._expression = this.expression(); localctx.argument.push(localctx._expression); this.state = 2577; this._errHandler.sync(this); _la = this._input.LA(1); } } this.state = 2580; this.match(SparkSqlParser.T__2); this.state = 2587; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,329,this._ctx); if(la_===1) { this.state = 2581; this.match(SparkSqlParser.FILTER); this.state = 2582; this.match(SparkSqlParser.T__1); this.state = 2583; this.match(SparkSqlParser.WHERE); this.state = 2584; localctx.where = this.booleanExpression(0); this.state = 2585; this.match(SparkSqlParser.T__2); } this.state = 2591; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,330,this._ctx); if(la_===1) { this.state = 2589; this.match(SparkSqlParser.OVER); this.state = 2590; this.windowSpec(); } break; case 15: localctx = new LambdaContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2593; this.identifier(); this.state = 2594; this.match(SparkSqlParser.T__7); this.state = 2595; this.expression(); break; case 16: localctx = new LambdaContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2597; this.match(SparkSqlParser.T__1); this.state = 2598; this.identifier(); this.state = 2601; this._errHandler.sync(this); _la = this._input.LA(1); do { this.state = 2599; this.match(SparkSqlParser.T__3); this.state = 2600; this.identifier(); this.state = 2603; this._errHandler.sync(this); _la = this._input.LA(1); } while(_la===SparkSqlParser.T__3); this.state = 2605; this.match(SparkSqlParser.T__2); this.state = 2606; this.match(SparkSqlParser.T__7); this.state = 2607; this.expression(); break; case 17: localctx = new ColumnReferenceContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2609; this.identifier(); break; case 18: localctx = new ParenthesizedExpressionContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2610; this.match(SparkSqlParser.T__1); this.state = 2611; this.expression(); this.state = 2612; this.match(SparkSqlParser.T__2); break; case 19: localctx = new ExtractContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2614; this.match(SparkSqlParser.EXTRACT); this.state = 2615; this.match(SparkSqlParser.T__1); this.state = 2616; localctx.field = this.identifier(); this.state = 2617; this.match(SparkSqlParser.FROM); this.state = 2618; localctx.source = this.valueExpression(0); this.state = 2619; this.match(SparkSqlParser.T__2); break; case 20: localctx = new SubstringContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2621; _la = this._input.LA(1); if(!(_la===SparkSqlParser.SUBSTR || _la===SparkSqlParser.SUBSTRING)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2622; this.match(SparkSqlParser.T__1); this.state = 2623; localctx.str = this.valueExpression(0); this.state = 2624; _la = this._input.LA(1); if(!(_la===SparkSqlParser.T__3 || _la===SparkSqlParser.FROM)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2625; localctx.pos = this.valueExpression(0); this.state = 2628; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.T__3 || _la===SparkSqlParser.FOR) { this.state = 2626; _la = this._input.LA(1); if(!(_la===SparkSqlParser.T__3 || _la===SparkSqlParser.FOR)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2627; localctx.len = this.valueExpression(0); } this.state = 2630; this.match(SparkSqlParser.T__2); break; case 21: localctx = new TrimContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2632; this.match(SparkSqlParser.TRIM); this.state = 2633; this.match(SparkSqlParser.T__1); this.state = 2635; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,333,this._ctx); if(la_===1) { this.state = 2634; localctx.trimOption = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.BOTH || _la===SparkSqlParser.LEADING || _la===SparkSqlParser.TRAILING)) { localctx.trimOption = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } this.state = 2638; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,334,this._ctx); if(la_===1) { this.state = 2637; localctx.trimStr = this.valueExpression(0); } this.state = 2640; this.match(SparkSqlParser.FROM); this.state = 2641; localctx.srcStr = this.valueExpression(0); this.state = 2642; this.match(SparkSqlParser.T__2); break; case 22: localctx = new OverlayContext(this, localctx); this._ctx = localctx; _prevctx = localctx; this.state = 2644; this.match(SparkSqlParser.OVERLAY); this.state = 2645; this.match(SparkSqlParser.T__1); this.state = 2646; localctx.input = this.valueExpression(0); this.state = 2647; this.match(SparkSqlParser.PLACING); this.state = 2648; localctx.replace = this.valueExpression(0); this.state = 2649; this.match(SparkSqlParser.FROM); this.state = 2650; localctx.position = this.valueExpression(0); this.state = 2653; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.FOR) { this.state = 2651; this.match(SparkSqlParser.FOR); this.state = 2652; localctx.length = this.valueExpression(0); } this.state = 2655; this.match(SparkSqlParser.T__2); break; } this._ctx.stop = this._input.LT(-1); this.state = 2669; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,338,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { if(this._parseListeners!==null) { this.triggerExitRuleEvent(); } _prevctx = localctx; this.state = 2667; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,337,this._ctx); switch(la_) { case 1: localctx = new SubscriptContext(this, new PrimaryExpressionContext(this, _parentctx, _parentState)); localctx.value = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_primaryExpression); this.state = 2659; if (!( this.precpred(this._ctx, 8))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 8)"); } this.state = 2660; this.match(SparkSqlParser.T__8); this.state = 2661; localctx.index = this.valueExpression(0); this.state = 2662; this.match(SparkSqlParser.T__9); break; case 2: localctx = new DereferenceContext(this, new PrimaryExpressionContext(this, _parentctx, _parentState)); localctx.base = _prevctx; this.pushNewRecursionContext(localctx, _startState, SparkSqlParser.RULE_primaryExpression); this.state = 2664; if (!( this.precpred(this._ctx, 6))) { throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 6)"); } this.state = 2665; this.match(SparkSqlParser.T__4); this.state = 2666; localctx.fieldName = this.identifier(); break; } } this.state = 2671; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,338,this._ctx); } } catch( error) { if(error instanceof antlr4.error.RecognitionException) { localctx.exception = error; this._errHandler.reportError(this, error); this._errHandler.recover(this, error); } else { throw error; } } finally { this.unrollRecursionContexts(_parentctx) } return localctx; }; function ConstantContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_constant; return this; } ConstantContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ConstantContext.prototype.constructor = ConstantContext; ConstantContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function NullLiteralContext(parser, ctx) { ConstantContext.call(this, parser); ConstantContext.prototype.copyFrom.call(this, ctx); return this; } NullLiteralContext.prototype = Object.create(ConstantContext.prototype); NullLiteralContext.prototype.constructor = NullLiteralContext; SparkSqlParser.NullLiteralContext = NullLiteralContext; NullLiteralContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; NullLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNullLiteral(this); } }; NullLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNullLiteral(this); } }; NullLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNullLiteral(this); } else { return visitor.visitChildren(this); } }; function StringLiteralContext(parser, ctx) { ConstantContext.call(this, parser); ConstantContext.prototype.copyFrom.call(this, ctx); return this; } StringLiteralContext.prototype = Object.create(ConstantContext.prototype); StringLiteralContext.prototype.constructor = StringLiteralContext; SparkSqlParser.StringLiteralContext = StringLiteralContext; StringLiteralContext.prototype.STRING = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.STRING); } else { return this.getToken(SparkSqlParser.STRING, i); } }; StringLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterStringLiteral(this); } }; StringLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitStringLiteral(this); } }; StringLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitStringLiteral(this); } else { return visitor.visitChildren(this); } }; function TypeConstructorContext(parser, ctx) { ConstantContext.call(this, parser); ConstantContext.prototype.copyFrom.call(this, ctx); return this; } TypeConstructorContext.prototype = Object.create(ConstantContext.prototype); TypeConstructorContext.prototype.constructor = TypeConstructorContext; SparkSqlParser.TypeConstructorContext = TypeConstructorContext; TypeConstructorContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; TypeConstructorContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; TypeConstructorContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTypeConstructor(this); } }; TypeConstructorContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTypeConstructor(this); } }; TypeConstructorContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTypeConstructor(this); } else { return visitor.visitChildren(this); } }; function IntervalLiteralContext(parser, ctx) { ConstantContext.call(this, parser); ConstantContext.prototype.copyFrom.call(this, ctx); return this; } IntervalLiteralContext.prototype = Object.create(ConstantContext.prototype); IntervalLiteralContext.prototype.constructor = IntervalLiteralContext; SparkSqlParser.IntervalLiteralContext = IntervalLiteralContext; IntervalLiteralContext.prototype.interval = function() { return this.getTypedRuleContext(IntervalContext,0); }; IntervalLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIntervalLiteral(this); } }; IntervalLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIntervalLiteral(this); } }; IntervalLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIntervalLiteral(this); } else { return visitor.visitChildren(this); } }; function NumericLiteralContext(parser, ctx) { ConstantContext.call(this, parser); ConstantContext.prototype.copyFrom.call(this, ctx); return this; } NumericLiteralContext.prototype = Object.create(ConstantContext.prototype); NumericLiteralContext.prototype.constructor = NumericLiteralContext; SparkSqlParser.NumericLiteralContext = NumericLiteralContext; NumericLiteralContext.prototype.number = function() { return this.getTypedRuleContext(NumberContext,0); }; NumericLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNumericLiteral(this); } }; NumericLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNumericLiteral(this); } }; NumericLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNumericLiteral(this); } else { return visitor.visitChildren(this); } }; function BooleanLiteralContext(parser, ctx) { ConstantContext.call(this, parser); ConstantContext.prototype.copyFrom.call(this, ctx); return this; } BooleanLiteralContext.prototype = Object.create(ConstantContext.prototype); BooleanLiteralContext.prototype.constructor = BooleanLiteralContext; SparkSqlParser.BooleanLiteralContext = BooleanLiteralContext; BooleanLiteralContext.prototype.booleanValue = function() { return this.getTypedRuleContext(BooleanValueContext,0); }; BooleanLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterBooleanLiteral(this); } }; BooleanLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitBooleanLiteral(this); } }; BooleanLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitBooleanLiteral(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ConstantContext = ConstantContext; SparkSqlParser.prototype.constant = function() { var localctx = new ConstantContext(this, this._ctx, this.state); this.enterRule(localctx, 196, SparkSqlParser.RULE_constant); try { this.state = 2684; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,340,this._ctx); switch(la_) { case 1: localctx = new NullLiteralContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2672; this.match(SparkSqlParser.NULL); break; case 2: localctx = new IntervalLiteralContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2673; this.interval(); break; case 3: localctx = new TypeConstructorContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 2674; this.identifier(); this.state = 2675; this.match(SparkSqlParser.STRING); break; case 4: localctx = new NumericLiteralContext(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 2677; this.number(); break; case 5: localctx = new BooleanLiteralContext(this, localctx); this.enterOuterAlt(localctx, 5); this.state = 2678; this.booleanValue(); break; case 6: localctx = new StringLiteralContext(this, localctx); this.enterOuterAlt(localctx, 6); this.state = 2680; this._errHandler.sync(this); var _alt = 1; do { switch (_alt) { case 1: this.state = 2679; this.match(SparkSqlParser.STRING); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 2682; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,339, this._ctx); } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER ); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ComparisonOperatorContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_comparisonOperator; return this; } ComparisonOperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ComparisonOperatorContext.prototype.constructor = ComparisonOperatorContext; ComparisonOperatorContext.prototype.EQ = function() { return this.getToken(SparkSqlParser.EQ, 0); }; ComparisonOperatorContext.prototype.NEQ = function() { return this.getToken(SparkSqlParser.NEQ, 0); }; ComparisonOperatorContext.prototype.NEQJ = function() { return this.getToken(SparkSqlParser.NEQJ, 0); }; ComparisonOperatorContext.prototype.LT = function() { return this.getToken(SparkSqlParser.LT, 0); }; ComparisonOperatorContext.prototype.LTE = function() { return this.getToken(SparkSqlParser.LTE, 0); }; ComparisonOperatorContext.prototype.GT = function() { return this.getToken(SparkSqlParser.GT, 0); }; ComparisonOperatorContext.prototype.GTE = function() { return this.getToken(SparkSqlParser.GTE, 0); }; ComparisonOperatorContext.prototype.NSEQ = function() { return this.getToken(SparkSqlParser.NSEQ, 0); }; ComparisonOperatorContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterComparisonOperator(this); } }; ComparisonOperatorContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitComparisonOperator(this); } }; ComparisonOperatorContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitComparisonOperator(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ComparisonOperatorContext = ComparisonOperatorContext; SparkSqlParser.prototype.comparisonOperator = function() { var localctx = new ComparisonOperatorContext(this, this._ctx, this.state); this.enterRule(localctx, 198, SparkSqlParser.RULE_comparisonOperator); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2686; _la = this._input.LA(1); if(!(((((_la - 261)) & ~0x1f) == 0 && ((1 << (_la - 261)) & ((1 << (SparkSqlParser.EQ - 261)) | (1 << (SparkSqlParser.NSEQ - 261)) | (1 << (SparkSqlParser.NEQ - 261)) | (1 << (SparkSqlParser.NEQJ - 261)) | (1 << (SparkSqlParser.LT - 261)) | (1 << (SparkSqlParser.LTE - 261)) | (1 << (SparkSqlParser.GT - 261)) | (1 << (SparkSqlParser.GTE - 261)))) !== 0))) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ArithmeticOperatorContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_arithmeticOperator; return this; } ArithmeticOperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ArithmeticOperatorContext.prototype.constructor = ArithmeticOperatorContext; ArithmeticOperatorContext.prototype.PLUS = function() { return this.getToken(SparkSqlParser.PLUS, 0); }; ArithmeticOperatorContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; ArithmeticOperatorContext.prototype.ASTERISK = function() { return this.getToken(SparkSqlParser.ASTERISK, 0); }; ArithmeticOperatorContext.prototype.SLASH = function() { return this.getToken(SparkSqlParser.SLASH, 0); }; ArithmeticOperatorContext.prototype.PERCENT = function() { return this.getToken(SparkSqlParser.PERCENT, 0); }; ArithmeticOperatorContext.prototype.DIV = function() { return this.getToken(SparkSqlParser.DIV, 0); }; ArithmeticOperatorContext.prototype.TILDE = function() { return this.getToken(SparkSqlParser.TILDE, 0); }; ArithmeticOperatorContext.prototype.AMPERSAND = function() { return this.getToken(SparkSqlParser.AMPERSAND, 0); }; ArithmeticOperatorContext.prototype.PIPE = function() { return this.getToken(SparkSqlParser.PIPE, 0); }; ArithmeticOperatorContext.prototype.CONCAT_PIPE = function() { return this.getToken(SparkSqlParser.CONCAT_PIPE, 0); }; ArithmeticOperatorContext.prototype.HAT = function() { return this.getToken(SparkSqlParser.HAT, 0); }; ArithmeticOperatorContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterArithmeticOperator(this); } }; ArithmeticOperatorContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitArithmeticOperator(this); } }; ArithmeticOperatorContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitArithmeticOperator(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ArithmeticOperatorContext = ArithmeticOperatorContext; SparkSqlParser.prototype.arithmeticOperator = function() { var localctx = new ArithmeticOperatorContext(this, this._ctx, this.state); this.enterRule(localctx, 200, SparkSqlParser.RULE_arithmeticOperator); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2688; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DIV || ((((_la - 269)) & ~0x1f) == 0 && ((1 << (_la - 269)) & ((1 << (SparkSqlParser.PLUS - 269)) | (1 << (SparkSqlParser.MINUS - 269)) | (1 << (SparkSqlParser.ASTERISK - 269)) | (1 << (SparkSqlParser.SLASH - 269)) | (1 << (SparkSqlParser.PERCENT - 269)) | (1 << (SparkSqlParser.TILDE - 269)) | (1 << (SparkSqlParser.AMPERSAND - 269)) | (1 << (SparkSqlParser.PIPE - 269)) | (1 << (SparkSqlParser.CONCAT_PIPE - 269)) | (1 << (SparkSqlParser.HAT - 269)))) !== 0))) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function PredicateOperatorContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_predicateOperator; return this; } PredicateOperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); PredicateOperatorContext.prototype.constructor = PredicateOperatorContext; PredicateOperatorContext.prototype.OR = function() { return this.getToken(SparkSqlParser.OR, 0); }; PredicateOperatorContext.prototype.AND = function() { return this.getToken(SparkSqlParser.AND, 0); }; PredicateOperatorContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; PredicateOperatorContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; PredicateOperatorContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPredicateOperator(this); } }; PredicateOperatorContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPredicateOperator(this); } }; PredicateOperatorContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPredicateOperator(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.PredicateOperatorContext = PredicateOperatorContext; SparkSqlParser.prototype.predicateOperator = function() { var localctx = new PredicateOperatorContext(this, this._ctx, this.state); this.enterRule(localctx, 202, SparkSqlParser.RULE_predicateOperator); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2690; _la = this._input.LA(1); if(!(_la===SparkSqlParser.AND || _la===SparkSqlParser.IN || _la===SparkSqlParser.NOT || _la===SparkSqlParser.OR)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function BooleanValueContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_booleanValue; return this; } BooleanValueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); BooleanValueContext.prototype.constructor = BooleanValueContext; BooleanValueContext.prototype.TRUE = function() { return this.getToken(SparkSqlParser.TRUE, 0); }; BooleanValueContext.prototype.FALSE = function() { return this.getToken(SparkSqlParser.FALSE, 0); }; BooleanValueContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterBooleanValue(this); } }; BooleanValueContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitBooleanValue(this); } }; BooleanValueContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitBooleanValue(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.BooleanValueContext = BooleanValueContext; SparkSqlParser.prototype.booleanValue = function() { var localctx = new BooleanValueContext(this, this._ctx, this.state); this.enterRule(localctx, 204, SparkSqlParser.RULE_booleanValue); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2692; _la = this._input.LA(1); if(!(_la===SparkSqlParser.FALSE || _la===SparkSqlParser.TRUE)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function IntervalContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_interval; return this; } IntervalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); IntervalContext.prototype.constructor = IntervalContext; IntervalContext.prototype.INTERVAL = function() { return this.getToken(SparkSqlParser.INTERVAL, 0); }; IntervalContext.prototype.errorCapturingMultiUnitsInterval = function() { return this.getTypedRuleContext(ErrorCapturingMultiUnitsIntervalContext,0); }; IntervalContext.prototype.errorCapturingUnitToUnitInterval = function() { return this.getTypedRuleContext(ErrorCapturingUnitToUnitIntervalContext,0); }; IntervalContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterInterval(this); } }; IntervalContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitInterval(this); } }; IntervalContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitInterval(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.IntervalContext = IntervalContext; SparkSqlParser.prototype.interval = function() { var localctx = new IntervalContext(this, this._ctx, this.state); this.enterRule(localctx, 206, SparkSqlParser.RULE_interval); try { this.enterOuterAlt(localctx, 1); this.state = 2694; this.match(SparkSqlParser.INTERVAL); this.state = 2697; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,341,this._ctx); if(la_===1) { this.state = 2695; this.errorCapturingMultiUnitsInterval(); } else if(la_===2) { this.state = 2696; this.errorCapturingUnitToUnitInterval(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ErrorCapturingMultiUnitsIntervalContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_errorCapturingMultiUnitsInterval; return this; } ErrorCapturingMultiUnitsIntervalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ErrorCapturingMultiUnitsIntervalContext.prototype.constructor = ErrorCapturingMultiUnitsIntervalContext; ErrorCapturingMultiUnitsIntervalContext.prototype.multiUnitsInterval = function() { return this.getTypedRuleContext(MultiUnitsIntervalContext,0); }; ErrorCapturingMultiUnitsIntervalContext.prototype.unitToUnitInterval = function() { return this.getTypedRuleContext(UnitToUnitIntervalContext,0); }; ErrorCapturingMultiUnitsIntervalContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterErrorCapturingMultiUnitsInterval(this); } }; ErrorCapturingMultiUnitsIntervalContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitErrorCapturingMultiUnitsInterval(this); } }; ErrorCapturingMultiUnitsIntervalContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitErrorCapturingMultiUnitsInterval(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ErrorCapturingMultiUnitsIntervalContext = ErrorCapturingMultiUnitsIntervalContext; SparkSqlParser.prototype.errorCapturingMultiUnitsInterval = function() { var localctx = new ErrorCapturingMultiUnitsIntervalContext(this, this._ctx, this.state); this.enterRule(localctx, 208, SparkSqlParser.RULE_errorCapturingMultiUnitsInterval); try { this.enterOuterAlt(localctx, 1); this.state = 2699; this.multiUnitsInterval(); this.state = 2701; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,342,this._ctx); if(la_===1) { this.state = 2700; this.unitToUnitInterval(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function MultiUnitsIntervalContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_multiUnitsInterval; this._identifier = null; // IdentifierContext this.unit = []; // of IdentifierContexts return this; } MultiUnitsIntervalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); MultiUnitsIntervalContext.prototype.constructor = MultiUnitsIntervalContext; MultiUnitsIntervalContext.prototype.intervalValue = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IntervalValueContext); } else { return this.getTypedRuleContext(IntervalValueContext,i); } }; MultiUnitsIntervalContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; MultiUnitsIntervalContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterMultiUnitsInterval(this); } }; MultiUnitsIntervalContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitMultiUnitsInterval(this); } }; MultiUnitsIntervalContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitMultiUnitsInterval(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.MultiUnitsIntervalContext = MultiUnitsIntervalContext; SparkSqlParser.prototype.multiUnitsInterval = function() { var localctx = new MultiUnitsIntervalContext(this, this._ctx, this.state); this.enterRule(localctx, 210, SparkSqlParser.RULE_multiUnitsInterval); try { this.enterOuterAlt(localctx, 1); this.state = 2706; this._errHandler.sync(this); var _alt = 1; do { switch (_alt) { case 1: this.state = 2703; this.intervalValue(); this.state = 2704; localctx._identifier = this.identifier(); localctx.unit.push(localctx._identifier); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 2708; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,343, this._ctx); } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER ); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ErrorCapturingUnitToUnitIntervalContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_errorCapturingUnitToUnitInterval; this.body = null; // UnitToUnitIntervalContext this.error1 = null; // MultiUnitsIntervalContext this.error2 = null; // UnitToUnitIntervalContext return this; } ErrorCapturingUnitToUnitIntervalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ErrorCapturingUnitToUnitIntervalContext.prototype.constructor = ErrorCapturingUnitToUnitIntervalContext; ErrorCapturingUnitToUnitIntervalContext.prototype.unitToUnitInterval = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(UnitToUnitIntervalContext); } else { return this.getTypedRuleContext(UnitToUnitIntervalContext,i); } }; ErrorCapturingUnitToUnitIntervalContext.prototype.multiUnitsInterval = function() { return this.getTypedRuleContext(MultiUnitsIntervalContext,0); }; ErrorCapturingUnitToUnitIntervalContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterErrorCapturingUnitToUnitInterval(this); } }; ErrorCapturingUnitToUnitIntervalContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitErrorCapturingUnitToUnitInterval(this); } }; ErrorCapturingUnitToUnitIntervalContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitErrorCapturingUnitToUnitInterval(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ErrorCapturingUnitToUnitIntervalContext = ErrorCapturingUnitToUnitIntervalContext; SparkSqlParser.prototype.errorCapturingUnitToUnitInterval = function() { var localctx = new ErrorCapturingUnitToUnitIntervalContext(this, this._ctx, this.state); this.enterRule(localctx, 212, SparkSqlParser.RULE_errorCapturingUnitToUnitInterval); try { this.enterOuterAlt(localctx, 1); this.state = 2710; localctx.body = this.unitToUnitInterval(); this.state = 2713; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,344,this._ctx); if(la_===1) { this.state = 2711; localctx.error1 = this.multiUnitsInterval(); } else if(la_===2) { this.state = 2712; localctx.error2 = this.unitToUnitInterval(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function UnitToUnitIntervalContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_unitToUnitInterval; this.value = null; // IntervalValueContext this.from = null; // IdentifierContext this.to = null; // IdentifierContext return this; } UnitToUnitIntervalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); UnitToUnitIntervalContext.prototype.constructor = UnitToUnitIntervalContext; UnitToUnitIntervalContext.prototype.TO = function() { return this.getToken(SparkSqlParser.TO, 0); }; UnitToUnitIntervalContext.prototype.intervalValue = function() { return this.getTypedRuleContext(IntervalValueContext,0); }; UnitToUnitIntervalContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; UnitToUnitIntervalContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterUnitToUnitInterval(this); } }; UnitToUnitIntervalContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitUnitToUnitInterval(this); } }; UnitToUnitIntervalContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitUnitToUnitInterval(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.UnitToUnitIntervalContext = UnitToUnitIntervalContext; SparkSqlParser.prototype.unitToUnitInterval = function() { var localctx = new UnitToUnitIntervalContext(this, this._ctx, this.state); this.enterRule(localctx, 214, SparkSqlParser.RULE_unitToUnitInterval); try { this.enterOuterAlt(localctx, 1); this.state = 2715; localctx.value = this.intervalValue(); this.state = 2716; localctx.from = this.identifier(); this.state = 2717; this.match(SparkSqlParser.TO); this.state = 2718; localctx.to = this.identifier(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function IntervalValueContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_intervalValue; return this; } IntervalValueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); IntervalValueContext.prototype.constructor = IntervalValueContext; IntervalValueContext.prototype.INTEGER_VALUE = function() { return this.getToken(SparkSqlParser.INTEGER_VALUE, 0); }; IntervalValueContext.prototype.DECIMAL_VALUE = function() { return this.getToken(SparkSqlParser.DECIMAL_VALUE, 0); }; IntervalValueContext.prototype.PLUS = function() { return this.getToken(SparkSqlParser.PLUS, 0); }; IntervalValueContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; IntervalValueContext.prototype.STRING = function() { return this.getToken(SparkSqlParser.STRING, 0); }; IntervalValueContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIntervalValue(this); } }; IntervalValueContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIntervalValue(this); } }; IntervalValueContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIntervalValue(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.IntervalValueContext = IntervalValueContext; SparkSqlParser.prototype.intervalValue = function() { var localctx = new IntervalValueContext(this, this._ctx, this.state); this.enterRule(localctx, 216, SparkSqlParser.RULE_intervalValue); var _la = 0; // Token type try { this.state = 2725; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.PLUS: case SparkSqlParser.MINUS: case SparkSqlParser.INTEGER_VALUE: case SparkSqlParser.DECIMAL_VALUE: this.enterOuterAlt(localctx, 1); this.state = 2721; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.PLUS || _la===SparkSqlParser.MINUS) { this.state = 2720; _la = this._input.LA(1); if(!(_la===SparkSqlParser.PLUS || _la===SparkSqlParser.MINUS)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } this.state = 2723; _la = this._input.LA(1); if(!(_la===SparkSqlParser.INTEGER_VALUE || _la===SparkSqlParser.DECIMAL_VALUE)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; case SparkSqlParser.STRING: this.enterOuterAlt(localctx, 2); this.state = 2724; this.match(SparkSqlParser.STRING); break; default: throw new antlr4.error.NoViableAltException(this); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ColPositionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_colPosition; this.position = null; // Token this.afterCol = null; // ErrorCapturingIdentifierContext return this; } ColPositionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ColPositionContext.prototype.constructor = ColPositionContext; ColPositionContext.prototype.FIRST = function() { return this.getToken(SparkSqlParser.FIRST, 0); }; ColPositionContext.prototype.AFTER = function() { return this.getToken(SparkSqlParser.AFTER, 0); }; ColPositionContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; ColPositionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterColPosition(this); } }; ColPositionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitColPosition(this); } }; ColPositionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitColPosition(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ColPositionContext = ColPositionContext; SparkSqlParser.prototype.colPosition = function() { var localctx = new ColPositionContext(this, this._ctx, this.state); this.enterRule(localctx, 218, SparkSqlParser.RULE_colPosition); try { this.state = 2730; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.FIRST: this.enterOuterAlt(localctx, 1); this.state = 2727; localctx.position = this.match(SparkSqlParser.FIRST); break; case SparkSqlParser.AFTER: this.enterOuterAlt(localctx, 2); this.state = 2728; localctx.position = this.match(SparkSqlParser.AFTER); this.state = 2729; localctx.afterCol = this.errorCapturingIdentifier(); break; default: throw new antlr4.error.NoViableAltException(this); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function DataTypeContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_dataType; return this; } DataTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); DataTypeContext.prototype.constructor = DataTypeContext; DataTypeContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function ComplexDataTypeContext(parser, ctx) { DataTypeContext.call(this, parser); this.complex = null; // Token; DataTypeContext.prototype.copyFrom.call(this, ctx); return this; } ComplexDataTypeContext.prototype = Object.create(DataTypeContext.prototype); ComplexDataTypeContext.prototype.constructor = ComplexDataTypeContext; SparkSqlParser.ComplexDataTypeContext = ComplexDataTypeContext; ComplexDataTypeContext.prototype.LT = function() { return this.getToken(SparkSqlParser.LT, 0); }; ComplexDataTypeContext.prototype.dataType = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(DataTypeContext); } else { return this.getTypedRuleContext(DataTypeContext,i); } }; ComplexDataTypeContext.prototype.GT = function() { return this.getToken(SparkSqlParser.GT, 0); }; ComplexDataTypeContext.prototype.ARRAY = function() { return this.getToken(SparkSqlParser.ARRAY, 0); }; ComplexDataTypeContext.prototype.MAP = function() { return this.getToken(SparkSqlParser.MAP, 0); }; ComplexDataTypeContext.prototype.STRUCT = function() { return this.getToken(SparkSqlParser.STRUCT, 0); }; ComplexDataTypeContext.prototype.NEQ = function() { return this.getToken(SparkSqlParser.NEQ, 0); }; ComplexDataTypeContext.prototype.complexColTypeList = function() { return this.getTypedRuleContext(ComplexColTypeListContext,0); }; ComplexDataTypeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterComplexDataType(this); } }; ComplexDataTypeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitComplexDataType(this); } }; ComplexDataTypeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitComplexDataType(this); } else { return visitor.visitChildren(this); } }; function PrimitiveDataTypeContext(parser, ctx) { DataTypeContext.call(this, parser); DataTypeContext.prototype.copyFrom.call(this, ctx); return this; } PrimitiveDataTypeContext.prototype = Object.create(DataTypeContext.prototype); PrimitiveDataTypeContext.prototype.constructor = PrimitiveDataTypeContext; SparkSqlParser.PrimitiveDataTypeContext = PrimitiveDataTypeContext; PrimitiveDataTypeContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; PrimitiveDataTypeContext.prototype.INTEGER_VALUE = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.INTEGER_VALUE); } else { return this.getToken(SparkSqlParser.INTEGER_VALUE, i); } }; PrimitiveDataTypeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterPrimitiveDataType(this); } }; PrimitiveDataTypeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitPrimitiveDataType(this); } }; PrimitiveDataTypeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitPrimitiveDataType(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.DataTypeContext = DataTypeContext; SparkSqlParser.prototype.dataType = function() { var localctx = new DataTypeContext(this, this._ctx, this.state); this.enterRule(localctx, 220, SparkSqlParser.RULE_dataType); var _la = 0; // Token type try { this.state = 2766; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,352,this._ctx); switch(la_) { case 1: localctx = new ComplexDataTypeContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2732; localctx.complex = this.match(SparkSqlParser.ARRAY); this.state = 2733; this.match(SparkSqlParser.LT); this.state = 2734; this.dataType(); this.state = 2735; this.match(SparkSqlParser.GT); break; case 2: localctx = new ComplexDataTypeContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2737; localctx.complex = this.match(SparkSqlParser.MAP); this.state = 2738; this.match(SparkSqlParser.LT); this.state = 2739; this.dataType(); this.state = 2740; this.match(SparkSqlParser.T__3); this.state = 2741; this.dataType(); this.state = 2742; this.match(SparkSqlParser.GT); break; case 3: localctx = new ComplexDataTypeContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 2744; localctx.complex = this.match(SparkSqlParser.STRUCT); this.state = 2751; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.LT: this.state = 2745; this.match(SparkSqlParser.LT); this.state = 2747; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,348,this._ctx); if(la_===1) { this.state = 2746; this.complexColTypeList(); } this.state = 2749; this.match(SparkSqlParser.GT); break; case SparkSqlParser.NEQ: this.state = 2750; this.match(SparkSqlParser.NEQ); break; default: throw new antlr4.error.NoViableAltException(this); } break; case 4: localctx = new PrimitiveDataTypeContext(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 2753; this.identifier(); this.state = 2764; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,351,this._ctx); if(la_===1) { this.state = 2754; this.match(SparkSqlParser.T__1); this.state = 2755; this.match(SparkSqlParser.INTEGER_VALUE); this.state = 2760; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2756; this.match(SparkSqlParser.T__3); this.state = 2757; this.match(SparkSqlParser.INTEGER_VALUE); this.state = 2762; this._errHandler.sync(this); _la = this._input.LA(1); } this.state = 2763; this.match(SparkSqlParser.T__2); } break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QualifiedColTypeWithPositionListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_qualifiedColTypeWithPositionList; return this; } QualifiedColTypeWithPositionListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QualifiedColTypeWithPositionListContext.prototype.constructor = QualifiedColTypeWithPositionListContext; QualifiedColTypeWithPositionListContext.prototype.qualifiedColTypeWithPosition = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(QualifiedColTypeWithPositionContext); } else { return this.getTypedRuleContext(QualifiedColTypeWithPositionContext,i); } }; QualifiedColTypeWithPositionListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQualifiedColTypeWithPositionList(this); } }; QualifiedColTypeWithPositionListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQualifiedColTypeWithPositionList(this); } }; QualifiedColTypeWithPositionListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQualifiedColTypeWithPositionList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QualifiedColTypeWithPositionListContext = QualifiedColTypeWithPositionListContext; SparkSqlParser.prototype.qualifiedColTypeWithPositionList = function() { var localctx = new QualifiedColTypeWithPositionListContext(this, this._ctx, this.state); this.enterRule(localctx, 222, SparkSqlParser.RULE_qualifiedColTypeWithPositionList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2768; this.qualifiedColTypeWithPosition(); this.state = 2773; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2769; this.match(SparkSqlParser.T__3); this.state = 2770; this.qualifiedColTypeWithPosition(); this.state = 2775; this._errHandler.sync(this); _la = this._input.LA(1); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QualifiedColTypeWithPositionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_qualifiedColTypeWithPosition; this.name = null; // MultipartIdentifierContext return this; } QualifiedColTypeWithPositionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QualifiedColTypeWithPositionContext.prototype.constructor = QualifiedColTypeWithPositionContext; QualifiedColTypeWithPositionContext.prototype.dataType = function() { return this.getTypedRuleContext(DataTypeContext,0); }; QualifiedColTypeWithPositionContext.prototype.multipartIdentifier = function() { return this.getTypedRuleContext(MultipartIdentifierContext,0); }; QualifiedColTypeWithPositionContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; QualifiedColTypeWithPositionContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; QualifiedColTypeWithPositionContext.prototype.commentSpec = function() { return this.getTypedRuleContext(CommentSpecContext,0); }; QualifiedColTypeWithPositionContext.prototype.colPosition = function() { return this.getTypedRuleContext(ColPositionContext,0); }; QualifiedColTypeWithPositionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQualifiedColTypeWithPosition(this); } }; QualifiedColTypeWithPositionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQualifiedColTypeWithPosition(this); } }; QualifiedColTypeWithPositionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQualifiedColTypeWithPosition(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QualifiedColTypeWithPositionContext = QualifiedColTypeWithPositionContext; SparkSqlParser.prototype.qualifiedColTypeWithPosition = function() { var localctx = new QualifiedColTypeWithPositionContext(this, this._ctx, this.state); this.enterRule(localctx, 224, SparkSqlParser.RULE_qualifiedColTypeWithPosition); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2776; localctx.name = this.multipartIdentifier(); this.state = 2777; this.dataType(); this.state = 2780; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2778; this.match(SparkSqlParser.NOT); this.state = 2779; this.match(SparkSqlParser.NULL); } this.state = 2783; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.COMMENT) { this.state = 2782; this.commentSpec(); } this.state = 2786; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.AFTER || _la===SparkSqlParser.FIRST) { this.state = 2785; this.colPosition(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ColTypeListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_colTypeList; return this; } ColTypeListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ColTypeListContext.prototype.constructor = ColTypeListContext; ColTypeListContext.prototype.colType = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ColTypeContext); } else { return this.getTypedRuleContext(ColTypeContext,i); } }; ColTypeListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterColTypeList(this); } }; ColTypeListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitColTypeList(this); } }; ColTypeListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitColTypeList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ColTypeListContext = ColTypeListContext; SparkSqlParser.prototype.colTypeList = function() { var localctx = new ColTypeListContext(this, this._ctx, this.state); this.enterRule(localctx, 226, SparkSqlParser.RULE_colTypeList); try { this.enterOuterAlt(localctx, 1); this.state = 2788; this.colType(); this.state = 2793; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,357,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2789; this.match(SparkSqlParser.T__3); this.state = 2790; this.colType(); } this.state = 2795; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,357,this._ctx); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ColTypeContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_colType; this.colName = null; // ErrorCapturingIdentifierContext return this; } ColTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ColTypeContext.prototype.constructor = ColTypeContext; ColTypeContext.prototype.dataType = function() { return this.getTypedRuleContext(DataTypeContext,0); }; ColTypeContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; ColTypeContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; ColTypeContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; ColTypeContext.prototype.commentSpec = function() { return this.getTypedRuleContext(CommentSpecContext,0); }; ColTypeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterColType(this); } }; ColTypeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitColType(this); } }; ColTypeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitColType(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ColTypeContext = ColTypeContext; SparkSqlParser.prototype.colType = function() { var localctx = new ColTypeContext(this, this._ctx, this.state); this.enterRule(localctx, 228, SparkSqlParser.RULE_colType); try { this.enterOuterAlt(localctx, 1); this.state = 2796; localctx.colName = this.errorCapturingIdentifier(); this.state = 2797; this.dataType(); this.state = 2800; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,358,this._ctx); if(la_===1) { this.state = 2798; this.match(SparkSqlParser.NOT); this.state = 2799; this.match(SparkSqlParser.NULL); } this.state = 2803; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,359,this._ctx); if(la_===1) { this.state = 2802; this.commentSpec(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ComplexColTypeListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_complexColTypeList; return this; } ComplexColTypeListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ComplexColTypeListContext.prototype.constructor = ComplexColTypeListContext; ComplexColTypeListContext.prototype.complexColType = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ComplexColTypeContext); } else { return this.getTypedRuleContext(ComplexColTypeContext,i); } }; ComplexColTypeListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterComplexColTypeList(this); } }; ComplexColTypeListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitComplexColTypeList(this); } }; ComplexColTypeListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitComplexColTypeList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ComplexColTypeListContext = ComplexColTypeListContext; SparkSqlParser.prototype.complexColTypeList = function() { var localctx = new ComplexColTypeListContext(this, this._ctx, this.state); this.enterRule(localctx, 230, SparkSqlParser.RULE_complexColTypeList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2805; this.complexColType(); this.state = 2810; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2806; this.match(SparkSqlParser.T__3); this.state = 2807; this.complexColType(); this.state = 2812; this._errHandler.sync(this); _la = this._input.LA(1); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ComplexColTypeContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_complexColType; return this; } ComplexColTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ComplexColTypeContext.prototype.constructor = ComplexColTypeContext; ComplexColTypeContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; ComplexColTypeContext.prototype.dataType = function() { return this.getTypedRuleContext(DataTypeContext,0); }; ComplexColTypeContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; ComplexColTypeContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; ComplexColTypeContext.prototype.commentSpec = function() { return this.getTypedRuleContext(CommentSpecContext,0); }; ComplexColTypeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterComplexColType(this); } }; ComplexColTypeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitComplexColType(this); } }; ComplexColTypeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitComplexColType(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ComplexColTypeContext = ComplexColTypeContext; SparkSqlParser.prototype.complexColType = function() { var localctx = new ComplexColTypeContext(this, this._ctx, this.state); this.enterRule(localctx, 232, SparkSqlParser.RULE_complexColType); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2813; this.identifier(); this.state = 2814; this.match(SparkSqlParser.T__10); this.state = 2815; this.dataType(); this.state = 2818; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.NOT) { this.state = 2816; this.match(SparkSqlParser.NOT); this.state = 2817; this.match(SparkSqlParser.NULL); } this.state = 2821; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.COMMENT) { this.state = 2820; this.commentSpec(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function WhenClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_whenClause; this.condition = null; // ExpressionContext this.result = null; // ExpressionContext return this; } WhenClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); WhenClauseContext.prototype.constructor = WhenClauseContext; WhenClauseContext.prototype.WHEN = function() { return this.getToken(SparkSqlParser.WHEN, 0); }; WhenClauseContext.prototype.THEN = function() { return this.getToken(SparkSqlParser.THEN, 0); }; WhenClauseContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; WhenClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterWhenClause(this); } }; WhenClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitWhenClause(this); } }; WhenClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitWhenClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.WhenClauseContext = WhenClauseContext; SparkSqlParser.prototype.whenClause = function() { var localctx = new WhenClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 234, SparkSqlParser.RULE_whenClause); try { this.enterOuterAlt(localctx, 1); this.state = 2823; this.match(SparkSqlParser.WHEN); this.state = 2824; localctx.condition = this.expression(); this.state = 2825; this.match(SparkSqlParser.THEN); this.state = 2826; localctx.result = this.expression(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function WindowClauseContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_windowClause; return this; } WindowClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); WindowClauseContext.prototype.constructor = WindowClauseContext; WindowClauseContext.prototype.WINDOW = function() { return this.getToken(SparkSqlParser.WINDOW, 0); }; WindowClauseContext.prototype.namedWindow = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(NamedWindowContext); } else { return this.getTypedRuleContext(NamedWindowContext,i); } }; WindowClauseContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterWindowClause(this); } }; WindowClauseContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitWindowClause(this); } }; WindowClauseContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitWindowClause(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.WindowClauseContext = WindowClauseContext; SparkSqlParser.prototype.windowClause = function() { var localctx = new WindowClauseContext(this, this._ctx, this.state); this.enterRule(localctx, 236, SparkSqlParser.RULE_windowClause); try { this.enterOuterAlt(localctx, 1); this.state = 2828; this.match(SparkSqlParser.WINDOW); this.state = 2829; this.namedWindow(); this.state = 2834; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,363,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2830; this.match(SparkSqlParser.T__3); this.state = 2831; this.namedWindow(); } this.state = 2836; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,363,this._ctx); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NamedWindowContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_namedWindow; this.name = null; // ErrorCapturingIdentifierContext return this; } NamedWindowContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NamedWindowContext.prototype.constructor = NamedWindowContext; NamedWindowContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; NamedWindowContext.prototype.windowSpec = function() { return this.getTypedRuleContext(WindowSpecContext,0); }; NamedWindowContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; NamedWindowContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNamedWindow(this); } }; NamedWindowContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNamedWindow(this); } }; NamedWindowContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNamedWindow(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NamedWindowContext = NamedWindowContext; SparkSqlParser.prototype.namedWindow = function() { var localctx = new NamedWindowContext(this, this._ctx, this.state); this.enterRule(localctx, 238, SparkSqlParser.RULE_namedWindow); try { this.enterOuterAlt(localctx, 1); this.state = 2837; localctx.name = this.errorCapturingIdentifier(); this.state = 2838; this.match(SparkSqlParser.AS); this.state = 2839; this.windowSpec(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function WindowSpecContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_windowSpec; return this; } WindowSpecContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); WindowSpecContext.prototype.constructor = WindowSpecContext; WindowSpecContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function WindowRefContext(parser, ctx) { WindowSpecContext.call(this, parser); this.name = null; // ErrorCapturingIdentifierContext; WindowSpecContext.prototype.copyFrom.call(this, ctx); return this; } WindowRefContext.prototype = Object.create(WindowSpecContext.prototype); WindowRefContext.prototype.constructor = WindowRefContext; SparkSqlParser.WindowRefContext = WindowRefContext; WindowRefContext.prototype.errorCapturingIdentifier = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierContext,0); }; WindowRefContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterWindowRef(this); } }; WindowRefContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitWindowRef(this); } }; WindowRefContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitWindowRef(this); } else { return visitor.visitChildren(this); } }; function WindowDefContext(parser, ctx) { WindowSpecContext.call(this, parser); this._expression = null; // ExpressionContext; this.partition = []; // of ExpressionContexts; WindowSpecContext.prototype.copyFrom.call(this, ctx); return this; } WindowDefContext.prototype = Object.create(WindowSpecContext.prototype); WindowDefContext.prototype.constructor = WindowDefContext; SparkSqlParser.WindowDefContext = WindowDefContext; WindowDefContext.prototype.CLUSTER = function() { return this.getToken(SparkSqlParser.CLUSTER, 0); }; WindowDefContext.prototype.BY = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.BY); } else { return this.getToken(SparkSqlParser.BY, i); } }; WindowDefContext.prototype.expression = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(ExpressionContext); } else { return this.getTypedRuleContext(ExpressionContext,i); } }; WindowDefContext.prototype.windowFrame = function() { return this.getTypedRuleContext(WindowFrameContext,0); }; WindowDefContext.prototype.sortItem = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(SortItemContext); } else { return this.getTypedRuleContext(SortItemContext,i); } }; WindowDefContext.prototype.PARTITION = function() { return this.getToken(SparkSqlParser.PARTITION, 0); }; WindowDefContext.prototype.DISTRIBUTE = function() { return this.getToken(SparkSqlParser.DISTRIBUTE, 0); }; WindowDefContext.prototype.ORDER = function() { return this.getToken(SparkSqlParser.ORDER, 0); }; WindowDefContext.prototype.SORT = function() { return this.getToken(SparkSqlParser.SORT, 0); }; WindowDefContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterWindowDef(this); } }; WindowDefContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitWindowDef(this); } }; WindowDefContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitWindowDef(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.WindowSpecContext = WindowSpecContext; SparkSqlParser.prototype.windowSpec = function() { var localctx = new WindowSpecContext(this, this._ctx, this.state); this.enterRule(localctx, 240, SparkSqlParser.RULE_windowSpec); var _la = 0; // Token type try { this.state = 2887; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,371,this._ctx); switch(la_) { case 1: localctx = new WindowRefContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2841; localctx.name = this.errorCapturingIdentifier(); break; case 2: localctx = new WindowRefContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2842; this.match(SparkSqlParser.T__1); this.state = 2843; localctx.name = this.errorCapturingIdentifier(); this.state = 2844; this.match(SparkSqlParser.T__2); break; case 3: localctx = new WindowDefContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 2846; this.match(SparkSqlParser.T__1); this.state = 2881; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.CLUSTER: this.state = 2847; this.match(SparkSqlParser.CLUSTER); this.state = 2848; this.match(SparkSqlParser.BY); this.state = 2849; localctx._expression = this.expression(); localctx.partition.push(localctx._expression); this.state = 2854; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2850; this.match(SparkSqlParser.T__3); this.state = 2851; localctx._expression = this.expression(); localctx.partition.push(localctx._expression); this.state = 2856; this._errHandler.sync(this); _la = this._input.LA(1); } break; case SparkSqlParser.T__2: case SparkSqlParser.DISTRIBUTE: case SparkSqlParser.ORDER: case SparkSqlParser.PARTITION: case SparkSqlParser.RANGE: case SparkSqlParser.ROWS: case SparkSqlParser.SORT: this.state = 2867; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.DISTRIBUTE || _la===SparkSqlParser.PARTITION) { this.state = 2857; _la = this._input.LA(1); if(!(_la===SparkSqlParser.DISTRIBUTE || _la===SparkSqlParser.PARTITION)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2858; this.match(SparkSqlParser.BY); this.state = 2859; localctx._expression = this.expression(); localctx.partition.push(localctx._expression); this.state = 2864; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2860; this.match(SparkSqlParser.T__3); this.state = 2861; localctx._expression = this.expression(); localctx.partition.push(localctx._expression); this.state = 2866; this._errHandler.sync(this); _la = this._input.LA(1); } } this.state = 2879; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.ORDER || _la===SparkSqlParser.SORT) { this.state = 2869; _la = this._input.LA(1); if(!(_la===SparkSqlParser.ORDER || _la===SparkSqlParser.SORT)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 2870; this.match(SparkSqlParser.BY); this.state = 2871; this.sortItem(); this.state = 2876; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2872; this.match(SparkSqlParser.T__3); this.state = 2873; this.sortItem(); this.state = 2878; this._errHandler.sync(this); _la = this._input.LA(1); } } break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 2884; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.RANGE || _la===SparkSqlParser.ROWS) { this.state = 2883; this.windowFrame(); } this.state = 2886; this.match(SparkSqlParser.T__2); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function WindowFrameContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_windowFrame; this.frameType = null; // Token this.start = null; // FrameBoundContext this.end = null; // FrameBoundContext return this; } WindowFrameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); WindowFrameContext.prototype.constructor = WindowFrameContext; WindowFrameContext.prototype.RANGE = function() { return this.getToken(SparkSqlParser.RANGE, 0); }; WindowFrameContext.prototype.frameBound = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(FrameBoundContext); } else { return this.getTypedRuleContext(FrameBoundContext,i); } }; WindowFrameContext.prototype.ROWS = function() { return this.getToken(SparkSqlParser.ROWS, 0); }; WindowFrameContext.prototype.BETWEEN = function() { return this.getToken(SparkSqlParser.BETWEEN, 0); }; WindowFrameContext.prototype.AND = function() { return this.getToken(SparkSqlParser.AND, 0); }; WindowFrameContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterWindowFrame(this); } }; WindowFrameContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitWindowFrame(this); } }; WindowFrameContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitWindowFrame(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.WindowFrameContext = WindowFrameContext; SparkSqlParser.prototype.windowFrame = function() { var localctx = new WindowFrameContext(this, this._ctx, this.state); this.enterRule(localctx, 242, SparkSqlParser.RULE_windowFrame); try { this.state = 2905; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,372,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 2889; localctx.frameType = this.match(SparkSqlParser.RANGE); this.state = 2890; localctx.start = this.frameBound(); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 2891; localctx.frameType = this.match(SparkSqlParser.ROWS); this.state = 2892; localctx.start = this.frameBound(); break; case 3: this.enterOuterAlt(localctx, 3); this.state = 2893; localctx.frameType = this.match(SparkSqlParser.RANGE); this.state = 2894; this.match(SparkSqlParser.BETWEEN); this.state = 2895; localctx.start = this.frameBound(); this.state = 2896; this.match(SparkSqlParser.AND); this.state = 2897; localctx.end = this.frameBound(); break; case 4: this.enterOuterAlt(localctx, 4); this.state = 2899; localctx.frameType = this.match(SparkSqlParser.ROWS); this.state = 2900; this.match(SparkSqlParser.BETWEEN); this.state = 2901; localctx.start = this.frameBound(); this.state = 2902; this.match(SparkSqlParser.AND); this.state = 2903; localctx.end = this.frameBound(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function FrameBoundContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_frameBound; this.boundType = null; // Token return this; } FrameBoundContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); FrameBoundContext.prototype.constructor = FrameBoundContext; FrameBoundContext.prototype.UNBOUNDED = function() { return this.getToken(SparkSqlParser.UNBOUNDED, 0); }; FrameBoundContext.prototype.PRECEDING = function() { return this.getToken(SparkSqlParser.PRECEDING, 0); }; FrameBoundContext.prototype.FOLLOWING = function() { return this.getToken(SparkSqlParser.FOLLOWING, 0); }; FrameBoundContext.prototype.ROW = function() { return this.getToken(SparkSqlParser.ROW, 0); }; FrameBoundContext.prototype.CURRENT = function() { return this.getToken(SparkSqlParser.CURRENT, 0); }; FrameBoundContext.prototype.expression = function() { return this.getTypedRuleContext(ExpressionContext,0); }; FrameBoundContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFrameBound(this); } }; FrameBoundContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFrameBound(this); } }; FrameBoundContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFrameBound(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.FrameBoundContext = FrameBoundContext; SparkSqlParser.prototype.frameBound = function() { var localctx = new FrameBoundContext(this, this._ctx, this.state); this.enterRule(localctx, 244, SparkSqlParser.RULE_frameBound); var _la = 0; // Token type try { this.state = 2914; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,373,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 2907; this.match(SparkSqlParser.UNBOUNDED); this.state = 2908; localctx.boundType = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.FOLLOWING || _la===SparkSqlParser.PRECEDING)) { localctx.boundType = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; case 2: this.enterOuterAlt(localctx, 2); this.state = 2909; localctx.boundType = this.match(SparkSqlParser.CURRENT); this.state = 2910; this.match(SparkSqlParser.ROW); break; case 3: this.enterOuterAlt(localctx, 3); this.state = 2911; this.expression(); this.state = 2912; localctx.boundType = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.FOLLOWING || _la===SparkSqlParser.PRECEDING)) { localctx.boundType = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QualifiedNameListContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_qualifiedNameList; return this; } QualifiedNameListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QualifiedNameListContext.prototype.constructor = QualifiedNameListContext; QualifiedNameListContext.prototype.qualifiedName = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(QualifiedNameContext); } else { return this.getTypedRuleContext(QualifiedNameContext,i); } }; QualifiedNameListContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQualifiedNameList(this); } }; QualifiedNameListContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQualifiedNameList(this); } }; QualifiedNameListContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQualifiedNameList(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QualifiedNameListContext = QualifiedNameListContext; SparkSqlParser.prototype.qualifiedNameList = function() { var localctx = new QualifiedNameListContext(this, this._ctx, this.state); this.enterRule(localctx, 246, SparkSqlParser.RULE_qualifiedNameList); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 2916; this.qualifiedName(); this.state = 2921; this._errHandler.sync(this); _la = this._input.LA(1); while(_la===SparkSqlParser.T__3) { this.state = 2917; this.match(SparkSqlParser.T__3); this.state = 2918; this.qualifiedName(); this.state = 2923; this._errHandler.sync(this); _la = this._input.LA(1); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function FunctionNameContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_functionName; return this; } FunctionNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); FunctionNameContext.prototype.constructor = FunctionNameContext; FunctionNameContext.prototype.qualifiedName = function() { return this.getTypedRuleContext(QualifiedNameContext,0); }; FunctionNameContext.prototype.FILTER = function() { return this.getToken(SparkSqlParser.FILTER, 0); }; FunctionNameContext.prototype.LEFT = function() { return this.getToken(SparkSqlParser.LEFT, 0); }; FunctionNameContext.prototype.RIGHT = function() { return this.getToken(SparkSqlParser.RIGHT, 0); }; FunctionNameContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFunctionName(this); } }; FunctionNameContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFunctionName(this); } }; FunctionNameContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFunctionName(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.FunctionNameContext = FunctionNameContext; SparkSqlParser.prototype.functionName = function() { var localctx = new FunctionNameContext(this, this._ctx, this.state); this.enterRule(localctx, 248, SparkSqlParser.RULE_functionName); try { this.state = 2928; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,375,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 2924; this.qualifiedName(); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 2925; this.match(SparkSqlParser.FILTER); break; case 3: this.enterOuterAlt(localctx, 3); this.state = 2926; this.match(SparkSqlParser.LEFT); break; case 4: this.enterOuterAlt(localctx, 4); this.state = 2927; this.match(SparkSqlParser.RIGHT); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QualifiedNameContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_qualifiedName; return this; } QualifiedNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QualifiedNameContext.prototype.constructor = QualifiedNameContext; QualifiedNameContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; QualifiedNameContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQualifiedName(this); } }; QualifiedNameContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQualifiedName(this); } }; QualifiedNameContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQualifiedName(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QualifiedNameContext = QualifiedNameContext; SparkSqlParser.prototype.qualifiedName = function() { var localctx = new QualifiedNameContext(this, this._ctx, this.state); this.enterRule(localctx, 250, SparkSqlParser.RULE_qualifiedName); try { this.enterOuterAlt(localctx, 1); this.state = 2930; this.identifier(); this.state = 2935; this._errHandler.sync(this); var _alt = this._interp.adaptivePredict(this._input,376,this._ctx) while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) { if(_alt===1) { this.state = 2931; this.match(SparkSqlParser.T__4); this.state = 2932; this.identifier(); } this.state = 2937; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,376,this._ctx); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ErrorCapturingIdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_errorCapturingIdentifier; return this; } ErrorCapturingIdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ErrorCapturingIdentifierContext.prototype.constructor = ErrorCapturingIdentifierContext; ErrorCapturingIdentifierContext.prototype.identifier = function() { return this.getTypedRuleContext(IdentifierContext,0); }; ErrorCapturingIdentifierContext.prototype.errorCapturingIdentifierExtra = function() { return this.getTypedRuleContext(ErrorCapturingIdentifierExtraContext,0); }; ErrorCapturingIdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterErrorCapturingIdentifier(this); } }; ErrorCapturingIdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitErrorCapturingIdentifier(this); } }; ErrorCapturingIdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitErrorCapturingIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ErrorCapturingIdentifierContext = ErrorCapturingIdentifierContext; SparkSqlParser.prototype.errorCapturingIdentifier = function() { var localctx = new ErrorCapturingIdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 252, SparkSqlParser.RULE_errorCapturingIdentifier); try { this.enterOuterAlt(localctx, 1); this.state = 2938; this.identifier(); this.state = 2939; this.errorCapturingIdentifierExtra(); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function ErrorCapturingIdentifierExtraContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_errorCapturingIdentifierExtra; return this; } ErrorCapturingIdentifierExtraContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); ErrorCapturingIdentifierExtraContext.prototype.constructor = ErrorCapturingIdentifierExtraContext; ErrorCapturingIdentifierExtraContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function ErrorIdentContext(parser, ctx) { ErrorCapturingIdentifierExtraContext.call(this, parser); ErrorCapturingIdentifierExtraContext.prototype.copyFrom.call(this, ctx); return this; } ErrorIdentContext.prototype = Object.create(ErrorCapturingIdentifierExtraContext.prototype); ErrorIdentContext.prototype.constructor = ErrorIdentContext; SparkSqlParser.ErrorIdentContext = ErrorIdentContext; ErrorIdentContext.prototype.MINUS = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTokens(SparkSqlParser.MINUS); } else { return this.getToken(SparkSqlParser.MINUS, i); } }; ErrorIdentContext.prototype.identifier = function(i) { if(i===undefined) { i = null; } if(i===null) { return this.getTypedRuleContexts(IdentifierContext); } else { return this.getTypedRuleContext(IdentifierContext,i); } }; ErrorIdentContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterErrorIdent(this); } }; ErrorIdentContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitErrorIdent(this); } }; ErrorIdentContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitErrorIdent(this); } else { return visitor.visitChildren(this); } }; function RealIdentContext(parser, ctx) { ErrorCapturingIdentifierExtraContext.call(this, parser); ErrorCapturingIdentifierExtraContext.prototype.copyFrom.call(this, ctx); return this; } RealIdentContext.prototype = Object.create(ErrorCapturingIdentifierExtraContext.prototype); RealIdentContext.prototype.constructor = RealIdentContext; SparkSqlParser.RealIdentContext = RealIdentContext; RealIdentContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterRealIdent(this); } }; RealIdentContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitRealIdent(this); } }; RealIdentContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitRealIdent(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.ErrorCapturingIdentifierExtraContext = ErrorCapturingIdentifierExtraContext; SparkSqlParser.prototype.errorCapturingIdentifierExtra = function() { var localctx = new ErrorCapturingIdentifierExtraContext(this, this._ctx, this.state); this.enterRule(localctx, 254, SparkSqlParser.RULE_errorCapturingIdentifierExtra); try { this.state = 2948; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,378,this._ctx); switch(la_) { case 1: localctx = new ErrorIdentContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2943; this._errHandler.sync(this); var _alt = 1; do { switch (_alt) { case 1: this.state = 2941; this.match(SparkSqlParser.MINUS); this.state = 2942; this.identifier(); break; default: throw new antlr4.error.NoViableAltException(this); } this.state = 2945; this._errHandler.sync(this); _alt = this._interp.adaptivePredict(this._input,377, this._ctx); } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER ); break; case 2: localctx = new RealIdentContext(this, localctx); this.enterOuterAlt(localctx, 2); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function IdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_identifier; return this; } IdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); IdentifierContext.prototype.constructor = IdentifierContext; IdentifierContext.prototype.strictIdentifier = function() { return this.getTypedRuleContext(StrictIdentifierContext,0); }; IdentifierContext.prototype.strictNonReserved = function() { return this.getTypedRuleContext(StrictNonReservedContext,0); }; IdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIdentifier(this); } }; IdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIdentifier(this); } }; IdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.IdentifierContext = IdentifierContext; SparkSqlParser.prototype.identifier = function() { var localctx = new IdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 256, SparkSqlParser.RULE_identifier); try { this.state = 2953; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,379,this._ctx); switch(la_) { case 1: this.enterOuterAlt(localctx, 1); this.state = 2950; this.strictIdentifier(); break; case 2: this.enterOuterAlt(localctx, 2); this.state = 2951; if (!( !SQL_standard_keyword_behavior)) { throw new antlr4.error.FailedPredicateException(this, "!SQL_standard_keyword_behavior"); } this.state = 2952; this.strictNonReserved(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function StrictIdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_strictIdentifier; return this; } StrictIdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); StrictIdentifierContext.prototype.constructor = StrictIdentifierContext; StrictIdentifierContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function QuotedIdentifierAlternativeContext(parser, ctx) { StrictIdentifierContext.call(this, parser); StrictIdentifierContext.prototype.copyFrom.call(this, ctx); return this; } QuotedIdentifierAlternativeContext.prototype = Object.create(StrictIdentifierContext.prototype); QuotedIdentifierAlternativeContext.prototype.constructor = QuotedIdentifierAlternativeContext; SparkSqlParser.QuotedIdentifierAlternativeContext = QuotedIdentifierAlternativeContext; QuotedIdentifierAlternativeContext.prototype.quotedIdentifier = function() { return this.getTypedRuleContext(QuotedIdentifierContext,0); }; QuotedIdentifierAlternativeContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQuotedIdentifierAlternative(this); } }; QuotedIdentifierAlternativeContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQuotedIdentifierAlternative(this); } }; QuotedIdentifierAlternativeContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQuotedIdentifierAlternative(this); } else { return visitor.visitChildren(this); } }; function UnquotedIdentifierContext(parser, ctx) { StrictIdentifierContext.call(this, parser); StrictIdentifierContext.prototype.copyFrom.call(this, ctx); return this; } UnquotedIdentifierContext.prototype = Object.create(StrictIdentifierContext.prototype); UnquotedIdentifierContext.prototype.constructor = UnquotedIdentifierContext; SparkSqlParser.UnquotedIdentifierContext = UnquotedIdentifierContext; UnquotedIdentifierContext.prototype.IDENTIFIER = function() { return this.getToken(SparkSqlParser.IDENTIFIER, 0); }; UnquotedIdentifierContext.prototype.ansiNonReserved = function() { return this.getTypedRuleContext(AnsiNonReservedContext,0); }; UnquotedIdentifierContext.prototype.nonReserved = function() { return this.getTypedRuleContext(NonReservedContext,0); }; UnquotedIdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterUnquotedIdentifier(this); } }; UnquotedIdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitUnquotedIdentifier(this); } }; UnquotedIdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitUnquotedIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.StrictIdentifierContext = StrictIdentifierContext; SparkSqlParser.prototype.strictIdentifier = function() { var localctx = new StrictIdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 258, SparkSqlParser.RULE_strictIdentifier); try { this.state = 2961; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,380,this._ctx); switch(la_) { case 1: localctx = new UnquotedIdentifierContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2955; this.match(SparkSqlParser.IDENTIFIER); break; case 2: localctx = new QuotedIdentifierAlternativeContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2956; this.quotedIdentifier(); break; case 3: localctx = new UnquotedIdentifierContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 2957; if (!( SQL_standard_keyword_behavior)) { throw new antlr4.error.FailedPredicateException(this, "SQL_standard_keyword_behavior"); } this.state = 2958; this.ansiNonReserved(); break; case 4: localctx = new UnquotedIdentifierContext(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 2959; if (!( !SQL_standard_keyword_behavior)) { throw new antlr4.error.FailedPredicateException(this, "!SQL_standard_keyword_behavior"); } this.state = 2960; this.nonReserved(); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function QuotedIdentifierContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_quotedIdentifier; return this; } QuotedIdentifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); QuotedIdentifierContext.prototype.constructor = QuotedIdentifierContext; QuotedIdentifierContext.prototype.BACKQUOTED_IDENTIFIER = function() { return this.getToken(SparkSqlParser.BACKQUOTED_IDENTIFIER, 0); }; QuotedIdentifierContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterQuotedIdentifier(this); } }; QuotedIdentifierContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitQuotedIdentifier(this); } }; QuotedIdentifierContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitQuotedIdentifier(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.QuotedIdentifierContext = QuotedIdentifierContext; SparkSqlParser.prototype.quotedIdentifier = function() { var localctx = new QuotedIdentifierContext(this, this._ctx, this.state); this.enterRule(localctx, 260, SparkSqlParser.RULE_quotedIdentifier); try { this.enterOuterAlt(localctx, 1); this.state = 2963; this.match(SparkSqlParser.BACKQUOTED_IDENTIFIER); } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NumberContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_number; return this; } NumberContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NumberContext.prototype.constructor = NumberContext; NumberContext.prototype.copyFrom = function(ctx) { antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx); }; function DecimalLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } DecimalLiteralContext.prototype = Object.create(NumberContext.prototype); DecimalLiteralContext.prototype.constructor = DecimalLiteralContext; SparkSqlParser.DecimalLiteralContext = DecimalLiteralContext; DecimalLiteralContext.prototype.DECIMAL_VALUE = function() { return this.getToken(SparkSqlParser.DECIMAL_VALUE, 0); }; DecimalLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; DecimalLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDecimalLiteral(this); } }; DecimalLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDecimalLiteral(this); } }; DecimalLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDecimalLiteral(this); } else { return visitor.visitChildren(this); } }; function BigIntLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } BigIntLiteralContext.prototype = Object.create(NumberContext.prototype); BigIntLiteralContext.prototype.constructor = BigIntLiteralContext; SparkSqlParser.BigIntLiteralContext = BigIntLiteralContext; BigIntLiteralContext.prototype.BIGINT_LITERAL = function() { return this.getToken(SparkSqlParser.BIGINT_LITERAL, 0); }; BigIntLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; BigIntLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterBigIntLiteral(this); } }; BigIntLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitBigIntLiteral(this); } }; BigIntLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitBigIntLiteral(this); } else { return visitor.visitChildren(this); } }; function TinyIntLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } TinyIntLiteralContext.prototype = Object.create(NumberContext.prototype); TinyIntLiteralContext.prototype.constructor = TinyIntLiteralContext; SparkSqlParser.TinyIntLiteralContext = TinyIntLiteralContext; TinyIntLiteralContext.prototype.TINYINT_LITERAL = function() { return this.getToken(SparkSqlParser.TINYINT_LITERAL, 0); }; TinyIntLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; TinyIntLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterTinyIntLiteral(this); } }; TinyIntLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitTinyIntLiteral(this); } }; TinyIntLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitTinyIntLiteral(this); } else { return visitor.visitChildren(this); } }; function LegacyDecimalLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } LegacyDecimalLiteralContext.prototype = Object.create(NumberContext.prototype); LegacyDecimalLiteralContext.prototype.constructor = LegacyDecimalLiteralContext; SparkSqlParser.LegacyDecimalLiteralContext = LegacyDecimalLiteralContext; LegacyDecimalLiteralContext.prototype.EXPONENT_VALUE = function() { return this.getToken(SparkSqlParser.EXPONENT_VALUE, 0); }; LegacyDecimalLiteralContext.prototype.DECIMAL_VALUE = function() { return this.getToken(SparkSqlParser.DECIMAL_VALUE, 0); }; LegacyDecimalLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; LegacyDecimalLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterLegacyDecimalLiteral(this); } }; LegacyDecimalLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitLegacyDecimalLiteral(this); } }; LegacyDecimalLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitLegacyDecimalLiteral(this); } else { return visitor.visitChildren(this); } }; function BigDecimalLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } BigDecimalLiteralContext.prototype = Object.create(NumberContext.prototype); BigDecimalLiteralContext.prototype.constructor = BigDecimalLiteralContext; SparkSqlParser.BigDecimalLiteralContext = BigDecimalLiteralContext; BigDecimalLiteralContext.prototype.BIGDECIMAL_LITERAL = function() { return this.getToken(SparkSqlParser.BIGDECIMAL_LITERAL, 0); }; BigDecimalLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; BigDecimalLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterBigDecimalLiteral(this); } }; BigDecimalLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitBigDecimalLiteral(this); } }; BigDecimalLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitBigDecimalLiteral(this); } else { return visitor.visitChildren(this); } }; function ExponentLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } ExponentLiteralContext.prototype = Object.create(NumberContext.prototype); ExponentLiteralContext.prototype.constructor = ExponentLiteralContext; SparkSqlParser.ExponentLiteralContext = ExponentLiteralContext; ExponentLiteralContext.prototype.EXPONENT_VALUE = function() { return this.getToken(SparkSqlParser.EXPONENT_VALUE, 0); }; ExponentLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; ExponentLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterExponentLiteral(this); } }; ExponentLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitExponentLiteral(this); } }; ExponentLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitExponentLiteral(this); } else { return visitor.visitChildren(this); } }; function DoubleLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } DoubleLiteralContext.prototype = Object.create(NumberContext.prototype); DoubleLiteralContext.prototype.constructor = DoubleLiteralContext; SparkSqlParser.DoubleLiteralContext = DoubleLiteralContext; DoubleLiteralContext.prototype.DOUBLE_LITERAL = function() { return this.getToken(SparkSqlParser.DOUBLE_LITERAL, 0); }; DoubleLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; DoubleLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterDoubleLiteral(this); } }; DoubleLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitDoubleLiteral(this); } }; DoubleLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitDoubleLiteral(this); } else { return visitor.visitChildren(this); } }; function IntegerLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } IntegerLiteralContext.prototype = Object.create(NumberContext.prototype); IntegerLiteralContext.prototype.constructor = IntegerLiteralContext; SparkSqlParser.IntegerLiteralContext = IntegerLiteralContext; IntegerLiteralContext.prototype.INTEGER_VALUE = function() { return this.getToken(SparkSqlParser.INTEGER_VALUE, 0); }; IntegerLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; IntegerLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterIntegerLiteral(this); } }; IntegerLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitIntegerLiteral(this); } }; IntegerLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitIntegerLiteral(this); } else { return visitor.visitChildren(this); } }; function FloatLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } FloatLiteralContext.prototype = Object.create(NumberContext.prototype); FloatLiteralContext.prototype.constructor = FloatLiteralContext; SparkSqlParser.FloatLiteralContext = FloatLiteralContext; FloatLiteralContext.prototype.FLOAT_LITERAL = function() { return this.getToken(SparkSqlParser.FLOAT_LITERAL, 0); }; FloatLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; FloatLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterFloatLiteral(this); } }; FloatLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitFloatLiteral(this); } }; FloatLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitFloatLiteral(this); } else { return visitor.visitChildren(this); } }; function SmallIntLiteralContext(parser, ctx) { NumberContext.call(this, parser); NumberContext.prototype.copyFrom.call(this, ctx); return this; } SmallIntLiteralContext.prototype = Object.create(NumberContext.prototype); SmallIntLiteralContext.prototype.constructor = SmallIntLiteralContext; SparkSqlParser.SmallIntLiteralContext = SmallIntLiteralContext; SmallIntLiteralContext.prototype.SMALLINT_LITERAL = function() { return this.getToken(SparkSqlParser.SMALLINT_LITERAL, 0); }; SmallIntLiteralContext.prototype.MINUS = function() { return this.getToken(SparkSqlParser.MINUS, 0); }; SmallIntLiteralContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterSmallIntLiteral(this); } }; SmallIntLiteralContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitSmallIntLiteral(this); } }; SmallIntLiteralContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitSmallIntLiteral(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NumberContext = NumberContext; SparkSqlParser.prototype.number = function() { var localctx = new NumberContext(this, this._ctx, this.state); this.enterRule(localctx, 262, SparkSqlParser.RULE_number); var _la = 0; // Token type try { this.state = 3008; this._errHandler.sync(this); var la_ = this._interp.adaptivePredict(this._input,391,this._ctx); switch(la_) { case 1: localctx = new ExponentLiteralContext(this, localctx); this.enterOuterAlt(localctx, 1); this.state = 2965; if (!( !legacy_exponent_literal_as_decimal_enabled)) { throw new antlr4.error.FailedPredicateException(this, "!legacy_exponent_literal_as_decimal_enabled"); } this.state = 2967; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2966; this.match(SparkSqlParser.MINUS); } this.state = 2969; this.match(SparkSqlParser.EXPONENT_VALUE); break; case 2: localctx = new DecimalLiteralContext(this, localctx); this.enterOuterAlt(localctx, 2); this.state = 2970; if (!( !legacy_exponent_literal_as_decimal_enabled)) { throw new antlr4.error.FailedPredicateException(this, "!legacy_exponent_literal_as_decimal_enabled"); } this.state = 2972; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2971; this.match(SparkSqlParser.MINUS); } this.state = 2974; this.match(SparkSqlParser.DECIMAL_VALUE); break; case 3: localctx = new LegacyDecimalLiteralContext(this, localctx); this.enterOuterAlt(localctx, 3); this.state = 2975; if (!( legacy_exponent_literal_as_decimal_enabled)) { throw new antlr4.error.FailedPredicateException(this, "legacy_exponent_literal_as_decimal_enabled"); } this.state = 2977; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2976; this.match(SparkSqlParser.MINUS); } this.state = 2979; _la = this._input.LA(1); if(!(_la===SparkSqlParser.EXPONENT_VALUE || _la===SparkSqlParser.DECIMAL_VALUE)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } break; case 4: localctx = new IntegerLiteralContext(this, localctx); this.enterOuterAlt(localctx, 4); this.state = 2981; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2980; this.match(SparkSqlParser.MINUS); } this.state = 2983; this.match(SparkSqlParser.INTEGER_VALUE); break; case 5: localctx = new BigIntLiteralContext(this, localctx); this.enterOuterAlt(localctx, 5); this.state = 2985; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2984; this.match(SparkSqlParser.MINUS); } this.state = 2987; this.match(SparkSqlParser.BIGINT_LITERAL); break; case 6: localctx = new SmallIntLiteralContext(this, localctx); this.enterOuterAlt(localctx, 6); this.state = 2989; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2988; this.match(SparkSqlParser.MINUS); } this.state = 2991; this.match(SparkSqlParser.SMALLINT_LITERAL); break; case 7: localctx = new TinyIntLiteralContext(this, localctx); this.enterOuterAlt(localctx, 7); this.state = 2993; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2992; this.match(SparkSqlParser.MINUS); } this.state = 2995; this.match(SparkSqlParser.TINYINT_LITERAL); break; case 8: localctx = new DoubleLiteralContext(this, localctx); this.enterOuterAlt(localctx, 8); this.state = 2997; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 2996; this.match(SparkSqlParser.MINUS); } this.state = 2999; this.match(SparkSqlParser.DOUBLE_LITERAL); break; case 9: localctx = new FloatLiteralContext(this, localctx); this.enterOuterAlt(localctx, 9); this.state = 3001; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 3000; this.match(SparkSqlParser.MINUS); } this.state = 3003; this.match(SparkSqlParser.FLOAT_LITERAL); break; case 10: localctx = new BigDecimalLiteralContext(this, localctx); this.enterOuterAlt(localctx, 10); this.state = 3005; this._errHandler.sync(this); _la = this._input.LA(1); if(_la===SparkSqlParser.MINUS) { this.state = 3004; this.match(SparkSqlParser.MINUS); } this.state = 3007; this.match(SparkSqlParser.BIGDECIMAL_LITERAL); break; } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function AlterColumnActionContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_alterColumnAction; this.setOrDrop = null; // Token return this; } AlterColumnActionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); AlterColumnActionContext.prototype.constructor = AlterColumnActionContext; AlterColumnActionContext.prototype.TYPE = function() { return this.getToken(SparkSqlParser.TYPE, 0); }; AlterColumnActionContext.prototype.dataType = function() { return this.getTypedRuleContext(DataTypeContext,0); }; AlterColumnActionContext.prototype.commentSpec = function() { return this.getTypedRuleContext(CommentSpecContext,0); }; AlterColumnActionContext.prototype.colPosition = function() { return this.getTypedRuleContext(ColPositionContext,0); }; AlterColumnActionContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; AlterColumnActionContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; AlterColumnActionContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; AlterColumnActionContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; AlterColumnActionContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAlterColumnAction(this); } }; AlterColumnActionContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAlterColumnAction(this); } }; AlterColumnActionContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAlterColumnAction(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.AlterColumnActionContext = AlterColumnActionContext; SparkSqlParser.prototype.alterColumnAction = function() { var localctx = new AlterColumnActionContext(this, this._ctx, this.state); this.enterRule(localctx, 264, SparkSqlParser.RULE_alterColumnAction); var _la = 0; // Token type try { this.state = 3017; this._errHandler.sync(this); switch(this._input.LA(1)) { case SparkSqlParser.TYPE: this.enterOuterAlt(localctx, 1); this.state = 3010; this.match(SparkSqlParser.TYPE); this.state = 3011; this.dataType(); break; case SparkSqlParser.COMMENT: this.enterOuterAlt(localctx, 2); this.state = 3012; this.commentSpec(); break; case SparkSqlParser.AFTER: case SparkSqlParser.FIRST: this.enterOuterAlt(localctx, 3); this.state = 3013; this.colPosition(); break; case SparkSqlParser.DROP: case SparkSqlParser.SET: this.enterOuterAlt(localctx, 4); this.state = 3014; localctx.setOrDrop = this._input.LT(1); _la = this._input.LA(1); if(!(_la===SparkSqlParser.DROP || _la===SparkSqlParser.SET)) { localctx.setOrDrop = this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } this.state = 3015; this.match(SparkSqlParser.NOT); this.state = 3016; this.match(SparkSqlParser.NULL); break; default: throw new antlr4.error.NoViableAltException(this); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function AnsiNonReservedContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_ansiNonReserved; return this; } AnsiNonReservedContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); AnsiNonReservedContext.prototype.constructor = AnsiNonReservedContext; AnsiNonReservedContext.prototype.ADD = function() { return this.getToken(SparkSqlParser.ADD, 0); }; AnsiNonReservedContext.prototype.AFTER = function() { return this.getToken(SparkSqlParser.AFTER, 0); }; AnsiNonReservedContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; AnsiNonReservedContext.prototype.ANALYZE = function() { return this.getToken(SparkSqlParser.ANALYZE, 0); }; AnsiNonReservedContext.prototype.ANTI = function() { return this.getToken(SparkSqlParser.ANTI, 0); }; AnsiNonReservedContext.prototype.ARCHIVE = function() { return this.getToken(SparkSqlParser.ARCHIVE, 0); }; AnsiNonReservedContext.prototype.ARRAY = function() { return this.getToken(SparkSqlParser.ARRAY, 0); }; AnsiNonReservedContext.prototype.ASC = function() { return this.getToken(SparkSqlParser.ASC, 0); }; AnsiNonReservedContext.prototype.AT = function() { return this.getToken(SparkSqlParser.AT, 0); }; AnsiNonReservedContext.prototype.BETWEEN = function() { return this.getToken(SparkSqlParser.BETWEEN, 0); }; AnsiNonReservedContext.prototype.BUCKET = function() { return this.getToken(SparkSqlParser.BUCKET, 0); }; AnsiNonReservedContext.prototype.BUCKETS = function() { return this.getToken(SparkSqlParser.BUCKETS, 0); }; AnsiNonReservedContext.prototype.BY = function() { return this.getToken(SparkSqlParser.BY, 0); }; AnsiNonReservedContext.prototype.CACHE = function() { return this.getToken(SparkSqlParser.CACHE, 0); }; AnsiNonReservedContext.prototype.CASCADE = function() { return this.getToken(SparkSqlParser.CASCADE, 0); }; AnsiNonReservedContext.prototype.CHANGE = function() { return this.getToken(SparkSqlParser.CHANGE, 0); }; AnsiNonReservedContext.prototype.CLEAR = function() { return this.getToken(SparkSqlParser.CLEAR, 0); }; AnsiNonReservedContext.prototype.CLUSTER = function() { return this.getToken(SparkSqlParser.CLUSTER, 0); }; AnsiNonReservedContext.prototype.CLUSTERED = function() { return this.getToken(SparkSqlParser.CLUSTERED, 0); }; AnsiNonReservedContext.prototype.CODEGEN = function() { return this.getToken(SparkSqlParser.CODEGEN, 0); }; AnsiNonReservedContext.prototype.COLLECTION = function() { return this.getToken(SparkSqlParser.COLLECTION, 0); }; AnsiNonReservedContext.prototype.COLUMNS = function() { return this.getToken(SparkSqlParser.COLUMNS, 0); }; AnsiNonReservedContext.prototype.COMMENT = function() { return this.getToken(SparkSqlParser.COMMENT, 0); }; AnsiNonReservedContext.prototype.COMMIT = function() { return this.getToken(SparkSqlParser.COMMIT, 0); }; AnsiNonReservedContext.prototype.COMPACT = function() { return this.getToken(SparkSqlParser.COMPACT, 0); }; AnsiNonReservedContext.prototype.COMPACTIONS = function() { return this.getToken(SparkSqlParser.COMPACTIONS, 0); }; AnsiNonReservedContext.prototype.COMPUTE = function() { return this.getToken(SparkSqlParser.COMPUTE, 0); }; AnsiNonReservedContext.prototype.CONCATENATE = function() { return this.getToken(SparkSqlParser.CONCATENATE, 0); }; AnsiNonReservedContext.prototype.COST = function() { return this.getToken(SparkSqlParser.COST, 0); }; AnsiNonReservedContext.prototype.CUBE = function() { return this.getToken(SparkSqlParser.CUBE, 0); }; AnsiNonReservedContext.prototype.CURRENT = function() { return this.getToken(SparkSqlParser.CURRENT, 0); }; AnsiNonReservedContext.prototype.DATA = function() { return this.getToken(SparkSqlParser.DATA, 0); }; AnsiNonReservedContext.prototype.DATABASE = function() { return this.getToken(SparkSqlParser.DATABASE, 0); }; AnsiNonReservedContext.prototype.DATABASES = function() { return this.getToken(SparkSqlParser.DATABASES, 0); }; AnsiNonReservedContext.prototype.DBPROPERTIES = function() { return this.getToken(SparkSqlParser.DBPROPERTIES, 0); }; AnsiNonReservedContext.prototype.DEFINED = function() { return this.getToken(SparkSqlParser.DEFINED, 0); }; AnsiNonReservedContext.prototype.DELETE = function() { return this.getToken(SparkSqlParser.DELETE, 0); }; AnsiNonReservedContext.prototype.DELIMITED = function() { return this.getToken(SparkSqlParser.DELIMITED, 0); }; AnsiNonReservedContext.prototype.DESC = function() { return this.getToken(SparkSqlParser.DESC, 0); }; AnsiNonReservedContext.prototype.DESCRIBE = function() { return this.getToken(SparkSqlParser.DESCRIBE, 0); }; AnsiNonReservedContext.prototype.DFS = function() { return this.getToken(SparkSqlParser.DFS, 0); }; AnsiNonReservedContext.prototype.DIRECTORIES = function() { return this.getToken(SparkSqlParser.DIRECTORIES, 0); }; AnsiNonReservedContext.prototype.DIRECTORY = function() { return this.getToken(SparkSqlParser.DIRECTORY, 0); }; AnsiNonReservedContext.prototype.DISTRIBUTE = function() { return this.getToken(SparkSqlParser.DISTRIBUTE, 0); }; AnsiNonReservedContext.prototype.DIV = function() { return this.getToken(SparkSqlParser.DIV, 0); }; AnsiNonReservedContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; AnsiNonReservedContext.prototype.ESCAPED = function() { return this.getToken(SparkSqlParser.ESCAPED, 0); }; AnsiNonReservedContext.prototype.EXCHANGE = function() { return this.getToken(SparkSqlParser.EXCHANGE, 0); }; AnsiNonReservedContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; AnsiNonReservedContext.prototype.EXPLAIN = function() { return this.getToken(SparkSqlParser.EXPLAIN, 0); }; AnsiNonReservedContext.prototype.EXPORT = function() { return this.getToken(SparkSqlParser.EXPORT, 0); }; AnsiNonReservedContext.prototype.EXTENDED = function() { return this.getToken(SparkSqlParser.EXTENDED, 0); }; AnsiNonReservedContext.prototype.EXTERNAL = function() { return this.getToken(SparkSqlParser.EXTERNAL, 0); }; AnsiNonReservedContext.prototype.EXTRACT = function() { return this.getToken(SparkSqlParser.EXTRACT, 0); }; AnsiNonReservedContext.prototype.FIELDS = function() { return this.getToken(SparkSqlParser.FIELDS, 0); }; AnsiNonReservedContext.prototype.FILEFORMAT = function() { return this.getToken(SparkSqlParser.FILEFORMAT, 0); }; AnsiNonReservedContext.prototype.FIRST = function() { return this.getToken(SparkSqlParser.FIRST, 0); }; AnsiNonReservedContext.prototype.FOLLOWING = function() { return this.getToken(SparkSqlParser.FOLLOWING, 0); }; AnsiNonReservedContext.prototype.FORMAT = function() { return this.getToken(SparkSqlParser.FORMAT, 0); }; AnsiNonReservedContext.prototype.FORMATTED = function() { return this.getToken(SparkSqlParser.FORMATTED, 0); }; AnsiNonReservedContext.prototype.FUNCTION = function() { return this.getToken(SparkSqlParser.FUNCTION, 0); }; AnsiNonReservedContext.prototype.FUNCTIONS = function() { return this.getToken(SparkSqlParser.FUNCTIONS, 0); }; AnsiNonReservedContext.prototype.GLOBAL = function() { return this.getToken(SparkSqlParser.GLOBAL, 0); }; AnsiNonReservedContext.prototype.GROUPING = function() { return this.getToken(SparkSqlParser.GROUPING, 0); }; AnsiNonReservedContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; AnsiNonReservedContext.prototype.IGNORE = function() { return this.getToken(SparkSqlParser.IGNORE, 0); }; AnsiNonReservedContext.prototype.IMPORT = function() { return this.getToken(SparkSqlParser.IMPORT, 0); }; AnsiNonReservedContext.prototype.INDEX = function() { return this.getToken(SparkSqlParser.INDEX, 0); }; AnsiNonReservedContext.prototype.INDEXES = function() { return this.getToken(SparkSqlParser.INDEXES, 0); }; AnsiNonReservedContext.prototype.INPATH = function() { return this.getToken(SparkSqlParser.INPATH, 0); }; AnsiNonReservedContext.prototype.INPUTFORMAT = function() { return this.getToken(SparkSqlParser.INPUTFORMAT, 0); }; AnsiNonReservedContext.prototype.INSERT = function() { return this.getToken(SparkSqlParser.INSERT, 0); }; AnsiNonReservedContext.prototype.INTERVAL = function() { return this.getToken(SparkSqlParser.INTERVAL, 0); }; AnsiNonReservedContext.prototype.ITEMS = function() { return this.getToken(SparkSqlParser.ITEMS, 0); }; AnsiNonReservedContext.prototype.KEYS = function() { return this.getToken(SparkSqlParser.KEYS, 0); }; AnsiNonReservedContext.prototype.LAST = function() { return this.getToken(SparkSqlParser.LAST, 0); }; AnsiNonReservedContext.prototype.LATERAL = function() { return this.getToken(SparkSqlParser.LATERAL, 0); }; AnsiNonReservedContext.prototype.LAZY = function() { return this.getToken(SparkSqlParser.LAZY, 0); }; AnsiNonReservedContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; AnsiNonReservedContext.prototype.LIMIT = function() { return this.getToken(SparkSqlParser.LIMIT, 0); }; AnsiNonReservedContext.prototype.LINES = function() { return this.getToken(SparkSqlParser.LINES, 0); }; AnsiNonReservedContext.prototype.LIST = function() { return this.getToken(SparkSqlParser.LIST, 0); }; AnsiNonReservedContext.prototype.LOAD = function() { return this.getToken(SparkSqlParser.LOAD, 0); }; AnsiNonReservedContext.prototype.LOCAL = function() { return this.getToken(SparkSqlParser.LOCAL, 0); }; AnsiNonReservedContext.prototype.LOCATION = function() { return this.getToken(SparkSqlParser.LOCATION, 0); }; AnsiNonReservedContext.prototype.LOCK = function() { return this.getToken(SparkSqlParser.LOCK, 0); }; AnsiNonReservedContext.prototype.LOCKS = function() { return this.getToken(SparkSqlParser.LOCKS, 0); }; AnsiNonReservedContext.prototype.LOGICAL = function() { return this.getToken(SparkSqlParser.LOGICAL, 0); }; AnsiNonReservedContext.prototype.MACRO = function() { return this.getToken(SparkSqlParser.MACRO, 0); }; AnsiNonReservedContext.prototype.MAP = function() { return this.getToken(SparkSqlParser.MAP, 0); }; AnsiNonReservedContext.prototype.MATCHED = function() { return this.getToken(SparkSqlParser.MATCHED, 0); }; AnsiNonReservedContext.prototype.MERGE = function() { return this.getToken(SparkSqlParser.MERGE, 0); }; AnsiNonReservedContext.prototype.MSCK = function() { return this.getToken(SparkSqlParser.MSCK, 0); }; AnsiNonReservedContext.prototype.NAMESPACE = function() { return this.getToken(SparkSqlParser.NAMESPACE, 0); }; AnsiNonReservedContext.prototype.NAMESPACES = function() { return this.getToken(SparkSqlParser.NAMESPACES, 0); }; AnsiNonReservedContext.prototype.NO = function() { return this.getToken(SparkSqlParser.NO, 0); }; AnsiNonReservedContext.prototype.NULLS = function() { return this.getToken(SparkSqlParser.NULLS, 0); }; AnsiNonReservedContext.prototype.OF = function() { return this.getToken(SparkSqlParser.OF, 0); }; AnsiNonReservedContext.prototype.OPTION = function() { return this.getToken(SparkSqlParser.OPTION, 0); }; AnsiNonReservedContext.prototype.OPTIONS = function() { return this.getToken(SparkSqlParser.OPTIONS, 0); }; AnsiNonReservedContext.prototype.OUT = function() { return this.getToken(SparkSqlParser.OUT, 0); }; AnsiNonReservedContext.prototype.OUTPUTFORMAT = function() { return this.getToken(SparkSqlParser.OUTPUTFORMAT, 0); }; AnsiNonReservedContext.prototype.OVER = function() { return this.getToken(SparkSqlParser.OVER, 0); }; AnsiNonReservedContext.prototype.OVERLAY = function() { return this.getToken(SparkSqlParser.OVERLAY, 0); }; AnsiNonReservedContext.prototype.OVERWRITE = function() { return this.getToken(SparkSqlParser.OVERWRITE, 0); }; AnsiNonReservedContext.prototype.PARTITION = function() { return this.getToken(SparkSqlParser.PARTITION, 0); }; AnsiNonReservedContext.prototype.PARTITIONED = function() { return this.getToken(SparkSqlParser.PARTITIONED, 0); }; AnsiNonReservedContext.prototype.PARTITIONS = function() { return this.getToken(SparkSqlParser.PARTITIONS, 0); }; AnsiNonReservedContext.prototype.PERCENTLIT = function() { return this.getToken(SparkSqlParser.PERCENTLIT, 0); }; AnsiNonReservedContext.prototype.PIVOT = function() { return this.getToken(SparkSqlParser.PIVOT, 0); }; AnsiNonReservedContext.prototype.PLACING = function() { return this.getToken(SparkSqlParser.PLACING, 0); }; AnsiNonReservedContext.prototype.POSITION = function() { return this.getToken(SparkSqlParser.POSITION, 0); }; AnsiNonReservedContext.prototype.PRECEDING = function() { return this.getToken(SparkSqlParser.PRECEDING, 0); }; AnsiNonReservedContext.prototype.PRINCIPALS = function() { return this.getToken(SparkSqlParser.PRINCIPALS, 0); }; AnsiNonReservedContext.prototype.PROPERTIES = function() { return this.getToken(SparkSqlParser.PROPERTIES, 0); }; AnsiNonReservedContext.prototype.PURGE = function() { return this.getToken(SparkSqlParser.PURGE, 0); }; AnsiNonReservedContext.prototype.QUERY = function() { return this.getToken(SparkSqlParser.QUERY, 0); }; AnsiNonReservedContext.prototype.RANGE = function() { return this.getToken(SparkSqlParser.RANGE, 0); }; AnsiNonReservedContext.prototype.RECORDREADER = function() { return this.getToken(SparkSqlParser.RECORDREADER, 0); }; AnsiNonReservedContext.prototype.RECORDWRITER = function() { return this.getToken(SparkSqlParser.RECORDWRITER, 0); }; AnsiNonReservedContext.prototype.RECOVER = function() { return this.getToken(SparkSqlParser.RECOVER, 0); }; AnsiNonReservedContext.prototype.REDUCE = function() { return this.getToken(SparkSqlParser.REDUCE, 0); }; AnsiNonReservedContext.prototype.REFRESH = function() { return this.getToken(SparkSqlParser.REFRESH, 0); }; AnsiNonReservedContext.prototype.RENAME = function() { return this.getToken(SparkSqlParser.RENAME, 0); }; AnsiNonReservedContext.prototype.REPAIR = function() { return this.getToken(SparkSqlParser.REPAIR, 0); }; AnsiNonReservedContext.prototype.REPLACE = function() { return this.getToken(SparkSqlParser.REPLACE, 0); }; AnsiNonReservedContext.prototype.RESET = function() { return this.getToken(SparkSqlParser.RESET, 0); }; AnsiNonReservedContext.prototype.RESTRICT = function() { return this.getToken(SparkSqlParser.RESTRICT, 0); }; AnsiNonReservedContext.prototype.REVOKE = function() { return this.getToken(SparkSqlParser.REVOKE, 0); }; AnsiNonReservedContext.prototype.RLIKE = function() { return this.getToken(SparkSqlParser.RLIKE, 0); }; AnsiNonReservedContext.prototype.ROLE = function() { return this.getToken(SparkSqlParser.ROLE, 0); }; AnsiNonReservedContext.prototype.ROLES = function() { return this.getToken(SparkSqlParser.ROLES, 0); }; AnsiNonReservedContext.prototype.ROLLBACK = function() { return this.getToken(SparkSqlParser.ROLLBACK, 0); }; AnsiNonReservedContext.prototype.ROLLUP = function() { return this.getToken(SparkSqlParser.ROLLUP, 0); }; AnsiNonReservedContext.prototype.ROW = function() { return this.getToken(SparkSqlParser.ROW, 0); }; AnsiNonReservedContext.prototype.ROWS = function() { return this.getToken(SparkSqlParser.ROWS, 0); }; AnsiNonReservedContext.prototype.SCHEMA = function() { return this.getToken(SparkSqlParser.SCHEMA, 0); }; AnsiNonReservedContext.prototype.SEMI = function() { return this.getToken(SparkSqlParser.SEMI, 0); }; AnsiNonReservedContext.prototype.SEPARATED = function() { return this.getToken(SparkSqlParser.SEPARATED, 0); }; AnsiNonReservedContext.prototype.SERDE = function() { return this.getToken(SparkSqlParser.SERDE, 0); }; AnsiNonReservedContext.prototype.SERDEPROPERTIES = function() { return this.getToken(SparkSqlParser.SERDEPROPERTIES, 0); }; AnsiNonReservedContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; AnsiNonReservedContext.prototype.SETMINUS = function() { return this.getToken(SparkSqlParser.SETMINUS, 0); }; AnsiNonReservedContext.prototype.SETS = function() { return this.getToken(SparkSqlParser.SETS, 0); }; AnsiNonReservedContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; AnsiNonReservedContext.prototype.SKEWED = function() { return this.getToken(SparkSqlParser.SKEWED, 0); }; AnsiNonReservedContext.prototype.SORT = function() { return this.getToken(SparkSqlParser.SORT, 0); }; AnsiNonReservedContext.prototype.SORTED = function() { return this.getToken(SparkSqlParser.SORTED, 0); }; AnsiNonReservedContext.prototype.START = function() { return this.getToken(SparkSqlParser.START, 0); }; AnsiNonReservedContext.prototype.STATISTICS = function() { return this.getToken(SparkSqlParser.STATISTICS, 0); }; AnsiNonReservedContext.prototype.STORED = function() { return this.getToken(SparkSqlParser.STORED, 0); }; AnsiNonReservedContext.prototype.STRATIFY = function() { return this.getToken(SparkSqlParser.STRATIFY, 0); }; AnsiNonReservedContext.prototype.STRUCT = function() { return this.getToken(SparkSqlParser.STRUCT, 0); }; AnsiNonReservedContext.prototype.SUBSTR = function() { return this.getToken(SparkSqlParser.SUBSTR, 0); }; AnsiNonReservedContext.prototype.SUBSTRING = function() { return this.getToken(SparkSqlParser.SUBSTRING, 0); }; AnsiNonReservedContext.prototype.TABLES = function() { return this.getToken(SparkSqlParser.TABLES, 0); }; AnsiNonReservedContext.prototype.TABLESAMPLE = function() { return this.getToken(SparkSqlParser.TABLESAMPLE, 0); }; AnsiNonReservedContext.prototype.TBLPROPERTIES = function() { return this.getToken(SparkSqlParser.TBLPROPERTIES, 0); }; AnsiNonReservedContext.prototype.TEMPORARY = function() { return this.getToken(SparkSqlParser.TEMPORARY, 0); }; AnsiNonReservedContext.prototype.TERMINATED = function() { return this.getToken(SparkSqlParser.TERMINATED, 0); }; AnsiNonReservedContext.prototype.TOUCH = function() { return this.getToken(SparkSqlParser.TOUCH, 0); }; AnsiNonReservedContext.prototype.TRANSACTION = function() { return this.getToken(SparkSqlParser.TRANSACTION, 0); }; AnsiNonReservedContext.prototype.TRANSACTIONS = function() { return this.getToken(SparkSqlParser.TRANSACTIONS, 0); }; AnsiNonReservedContext.prototype.TRANSFORM = function() { return this.getToken(SparkSqlParser.TRANSFORM, 0); }; AnsiNonReservedContext.prototype.TRIM = function() { return this.getToken(SparkSqlParser.TRIM, 0); }; AnsiNonReservedContext.prototype.TRUE = function() { return this.getToken(SparkSqlParser.TRUE, 0); }; AnsiNonReservedContext.prototype.TRUNCATE = function() { return this.getToken(SparkSqlParser.TRUNCATE, 0); }; AnsiNonReservedContext.prototype.TYPE = function() { return this.getToken(SparkSqlParser.TYPE, 0); }; AnsiNonReservedContext.prototype.UNARCHIVE = function() { return this.getToken(SparkSqlParser.UNARCHIVE, 0); }; AnsiNonReservedContext.prototype.UNBOUNDED = function() { return this.getToken(SparkSqlParser.UNBOUNDED, 0); }; AnsiNonReservedContext.prototype.UNCACHE = function() { return this.getToken(SparkSqlParser.UNCACHE, 0); }; AnsiNonReservedContext.prototype.UNLOCK = function() { return this.getToken(SparkSqlParser.UNLOCK, 0); }; AnsiNonReservedContext.prototype.UNSET = function() { return this.getToken(SparkSqlParser.UNSET, 0); }; AnsiNonReservedContext.prototype.UPDATE = function() { return this.getToken(SparkSqlParser.UPDATE, 0); }; AnsiNonReservedContext.prototype.USE = function() { return this.getToken(SparkSqlParser.USE, 0); }; AnsiNonReservedContext.prototype.VALUES = function() { return this.getToken(SparkSqlParser.VALUES, 0); }; AnsiNonReservedContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; AnsiNonReservedContext.prototype.VIEWS = function() { return this.getToken(SparkSqlParser.VIEWS, 0); }; AnsiNonReservedContext.prototype.WINDOW = function() { return this.getToken(SparkSqlParser.WINDOW, 0); }; AnsiNonReservedContext.prototype.ZONE = function() { return this.getToken(SparkSqlParser.ZONE, 0); }; AnsiNonReservedContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterAnsiNonReserved(this); } }; AnsiNonReservedContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitAnsiNonReserved(this); } }; AnsiNonReservedContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitAnsiNonReserved(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.AnsiNonReservedContext = AnsiNonReservedContext; SparkSqlParser.prototype.ansiNonReserved = function() { var localctx = new AnsiNonReservedContext(this, this._ctx, this.state); this.enterRule(localctx, 266, SparkSqlParser.RULE_ansiNonReserved); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 3019; _la = this._input.LA(1); if(!(((((_la - 12)) & ~0x1f) == 0 && ((1 << (_la - 12)) & ((1 << (SparkSqlParser.ADD - 12)) | (1 << (SparkSqlParser.AFTER - 12)) | (1 << (SparkSqlParser.ALTER - 12)) | (1 << (SparkSqlParser.ANALYZE - 12)) | (1 << (SparkSqlParser.ANTI - 12)) | (1 << (SparkSqlParser.ARCHIVE - 12)) | (1 << (SparkSqlParser.ARRAY - 12)) | (1 << (SparkSqlParser.ASC - 12)) | (1 << (SparkSqlParser.AT - 12)) | (1 << (SparkSqlParser.BETWEEN - 12)) | (1 << (SparkSqlParser.BUCKET - 12)) | (1 << (SparkSqlParser.BUCKETS - 12)) | (1 << (SparkSqlParser.BY - 12)) | (1 << (SparkSqlParser.CACHE - 12)) | (1 << (SparkSqlParser.CASCADE - 12)) | (1 << (SparkSqlParser.CHANGE - 12)) | (1 << (SparkSqlParser.CLEAR - 12)) | (1 << (SparkSqlParser.CLUSTER - 12)) | (1 << (SparkSqlParser.CLUSTERED - 12)) | (1 << (SparkSqlParser.CODEGEN - 12)) | (1 << (SparkSqlParser.COLLECTION - 12)))) !== 0) || ((((_la - 44)) & ~0x1f) == 0 && ((1 << (_la - 44)) & ((1 << (SparkSqlParser.COLUMNS - 44)) | (1 << (SparkSqlParser.COMMENT - 44)) | (1 << (SparkSqlParser.COMMIT - 44)) | (1 << (SparkSqlParser.COMPACT - 44)) | (1 << (SparkSqlParser.COMPACTIONS - 44)) | (1 << (SparkSqlParser.COMPUTE - 44)) | (1 << (SparkSqlParser.CONCATENATE - 44)) | (1 << (SparkSqlParser.COST - 44)) | (1 << (SparkSqlParser.CUBE - 44)) | (1 << (SparkSqlParser.CURRENT - 44)) | (1 << (SparkSqlParser.DATA - 44)) | (1 << (SparkSqlParser.DATABASE - 44)) | (1 << (SparkSqlParser.DATABASES - 44)) | (1 << (SparkSqlParser.DBPROPERTIES - 44)) | (1 << (SparkSqlParser.DEFINED - 44)) | (1 << (SparkSqlParser.DELETE - 44)) | (1 << (SparkSqlParser.DELIMITED - 44)) | (1 << (SparkSqlParser.DESC - 44)) | (1 << (SparkSqlParser.DESCRIBE - 44)) | (1 << (SparkSqlParser.DFS - 44)) | (1 << (SparkSqlParser.DIRECTORIES - 44)) | (1 << (SparkSqlParser.DIRECTORY - 44)) | (1 << (SparkSqlParser.DISTRIBUTE - 44)) | (1 << (SparkSqlParser.DIV - 44)))) !== 0) || ((((_la - 76)) & ~0x1f) == 0 && ((1 << (_la - 76)) & ((1 << (SparkSqlParser.DROP - 76)) | (1 << (SparkSqlParser.ESCAPED - 76)) | (1 << (SparkSqlParser.EXCHANGE - 76)) | (1 << (SparkSqlParser.EXISTS - 76)) | (1 << (SparkSqlParser.EXPLAIN - 76)) | (1 << (SparkSqlParser.EXPORT - 76)) | (1 << (SparkSqlParser.EXTENDED - 76)) | (1 << (SparkSqlParser.EXTERNAL - 76)) | (1 << (SparkSqlParser.EXTRACT - 76)) | (1 << (SparkSqlParser.FIELDS - 76)) | (1 << (SparkSqlParser.FILEFORMAT - 76)) | (1 << (SparkSqlParser.FIRST - 76)) | (1 << (SparkSqlParser.FOLLOWING - 76)) | (1 << (SparkSqlParser.FORMAT - 76)) | (1 << (SparkSqlParser.FORMATTED - 76)) | (1 << (SparkSqlParser.FUNCTION - 76)) | (1 << (SparkSqlParser.FUNCTIONS - 76)) | (1 << (SparkSqlParser.GLOBAL - 76)) | (1 << (SparkSqlParser.GROUPING - 76)))) !== 0) || ((((_la - 109)) & ~0x1f) == 0 && ((1 << (_la - 109)) & ((1 << (SparkSqlParser.IF - 109)) | (1 << (SparkSqlParser.IGNORE - 109)) | (1 << (SparkSqlParser.IMPORT - 109)) | (1 << (SparkSqlParser.INDEX - 109)) | (1 << (SparkSqlParser.INDEXES - 109)) | (1 << (SparkSqlParser.INPATH - 109)) | (1 << (SparkSqlParser.INPUTFORMAT - 109)) | (1 << (SparkSqlParser.INSERT - 109)) | (1 << (SparkSqlParser.INTERVAL - 109)) | (1 << (SparkSqlParser.ITEMS - 109)) | (1 << (SparkSqlParser.KEYS - 109)) | (1 << (SparkSqlParser.LAST - 109)) | (1 << (SparkSqlParser.LATERAL - 109)) | (1 << (SparkSqlParser.LAZY - 109)) | (1 << (SparkSqlParser.LIKE - 109)) | (1 << (SparkSqlParser.LIMIT - 109)) | (1 << (SparkSqlParser.LINES - 109)) | (1 << (SparkSqlParser.LIST - 109)) | (1 << (SparkSqlParser.LOAD - 109)) | (1 << (SparkSqlParser.LOCAL - 109)) | (1 << (SparkSqlParser.LOCATION - 109)) | (1 << (SparkSqlParser.LOCK - 109)) | (1 << (SparkSqlParser.LOCKS - 109)) | (1 << (SparkSqlParser.LOGICAL - 109)))) !== 0) || ((((_la - 141)) & ~0x1f) == 0 && ((1 << (_la - 141)) & ((1 << (SparkSqlParser.MACRO - 141)) | (1 << (SparkSqlParser.MAP - 141)) | (1 << (SparkSqlParser.MATCHED - 141)) | (1 << (SparkSqlParser.MERGE - 141)) | (1 << (SparkSqlParser.MSCK - 141)) | (1 << (SparkSqlParser.NAMESPACE - 141)) | (1 << (SparkSqlParser.NAMESPACES - 141)) | (1 << (SparkSqlParser.NO - 141)) | (1 << (SparkSqlParser.NULLS - 141)) | (1 << (SparkSqlParser.OF - 141)) | (1 << (SparkSqlParser.OPTION - 141)) | (1 << (SparkSqlParser.OPTIONS - 141)) | (1 << (SparkSqlParser.OUT - 141)) | (1 << (SparkSqlParser.OUTPUTFORMAT - 141)) | (1 << (SparkSqlParser.OVER - 141)) | (1 << (SparkSqlParser.OVERLAY - 141)) | (1 << (SparkSqlParser.OVERWRITE - 141)) | (1 << (SparkSqlParser.PARTITION - 141)) | (1 << (SparkSqlParser.PARTITIONED - 141)) | (1 << (SparkSqlParser.PARTITIONS - 141)) | (1 << (SparkSqlParser.PERCENTLIT - 141)) | (1 << (SparkSqlParser.PIVOT - 141)) | (1 << (SparkSqlParser.PLACING - 141)))) !== 0) || ((((_la - 173)) & ~0x1f) == 0 && ((1 << (_la - 173)) & ((1 << (SparkSqlParser.POSITION - 173)) | (1 << (SparkSqlParser.PRECEDING - 173)) | (1 << (SparkSqlParser.PRINCIPALS - 173)) | (1 << (SparkSqlParser.PROPERTIES - 173)) | (1 << (SparkSqlParser.PURGE - 173)) | (1 << (SparkSqlParser.QUERY - 173)) | (1 << (SparkSqlParser.RANGE - 173)) | (1 << (SparkSqlParser.RECORDREADER - 173)) | (1 << (SparkSqlParser.RECORDWRITER - 173)) | (1 << (SparkSqlParser.RECOVER - 173)) | (1 << (SparkSqlParser.REDUCE - 173)) | (1 << (SparkSqlParser.REFRESH - 173)) | (1 << (SparkSqlParser.RENAME - 173)) | (1 << (SparkSqlParser.REPAIR - 173)) | (1 << (SparkSqlParser.REPLACE - 173)) | (1 << (SparkSqlParser.RESET - 173)) | (1 << (SparkSqlParser.RESTRICT - 173)) | (1 << (SparkSqlParser.REVOKE - 173)) | (1 << (SparkSqlParser.RLIKE - 173)) | (1 << (SparkSqlParser.ROLE - 173)) | (1 << (SparkSqlParser.ROLES - 173)) | (1 << (SparkSqlParser.ROLLBACK - 173)) | (1 << (SparkSqlParser.ROLLUP - 173)) | (1 << (SparkSqlParser.ROW - 173)) | (1 << (SparkSqlParser.ROWS - 173)) | (1 << (SparkSqlParser.SCHEMA - 173)) | (1 << (SparkSqlParser.SEMI - 173)) | (1 << (SparkSqlParser.SEPARATED - 173)))) !== 0) || ((((_la - 205)) & ~0x1f) == 0 && ((1 << (_la - 205)) & ((1 << (SparkSqlParser.SERDE - 205)) | (1 << (SparkSqlParser.SERDEPROPERTIES - 205)) | (1 << (SparkSqlParser.SET - 205)) | (1 << (SparkSqlParser.SETMINUS - 205)) | (1 << (SparkSqlParser.SETS - 205)) | (1 << (SparkSqlParser.SHOW - 205)) | (1 << (SparkSqlParser.SKEWED - 205)) | (1 << (SparkSqlParser.SORT - 205)) | (1 << (SparkSqlParser.SORTED - 205)) | (1 << (SparkSqlParser.START - 205)) | (1 << (SparkSqlParser.STATISTICS - 205)) | (1 << (SparkSqlParser.STORED - 205)) | (1 << (SparkSqlParser.STRATIFY - 205)) | (1 << (SparkSqlParser.STRUCT - 205)) | (1 << (SparkSqlParser.SUBSTR - 205)) | (1 << (SparkSqlParser.SUBSTRING - 205)) | (1 << (SparkSqlParser.TABLES - 205)) | (1 << (SparkSqlParser.TABLESAMPLE - 205)) | (1 << (SparkSqlParser.TBLPROPERTIES - 205)) | (1 << (SparkSqlParser.TEMPORARY - 205)) | (1 << (SparkSqlParser.TERMINATED - 205)) | (1 << (SparkSqlParser.TOUCH - 205)) | (1 << (SparkSqlParser.TRANSACTION - 205)) | (1 << (SparkSqlParser.TRANSACTIONS - 205)) | (1 << (SparkSqlParser.TRANSFORM - 205)))) !== 0) || ((((_la - 237)) & ~0x1f) == 0 && ((1 << (_la - 237)) & ((1 << (SparkSqlParser.TRIM - 237)) | (1 << (SparkSqlParser.TRUE - 237)) | (1 << (SparkSqlParser.TRUNCATE - 237)) | (1 << (SparkSqlParser.TYPE - 237)) | (1 << (SparkSqlParser.UNARCHIVE - 237)) | (1 << (SparkSqlParser.UNBOUNDED - 237)) | (1 << (SparkSqlParser.UNCACHE - 237)) | (1 << (SparkSqlParser.UNLOCK - 237)) | (1 << (SparkSqlParser.UNSET - 237)) | (1 << (SparkSqlParser.UPDATE - 237)) | (1 << (SparkSqlParser.USE - 237)) | (1 << (SparkSqlParser.VALUES - 237)) | (1 << (SparkSqlParser.VIEW - 237)) | (1 << (SparkSqlParser.VIEWS - 237)) | (1 << (SparkSqlParser.WINDOW - 237)) | (1 << (SparkSqlParser.ZONE - 237)))) !== 0))) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function StrictNonReservedContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_strictNonReserved; return this; } StrictNonReservedContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); StrictNonReservedContext.prototype.constructor = StrictNonReservedContext; StrictNonReservedContext.prototype.ANTI = function() { return this.getToken(SparkSqlParser.ANTI, 0); }; StrictNonReservedContext.prototype.CROSS = function() { return this.getToken(SparkSqlParser.CROSS, 0); }; StrictNonReservedContext.prototype.EXCEPT = function() { return this.getToken(SparkSqlParser.EXCEPT, 0); }; StrictNonReservedContext.prototype.FULL = function() { return this.getToken(SparkSqlParser.FULL, 0); }; StrictNonReservedContext.prototype.INNER = function() { return this.getToken(SparkSqlParser.INNER, 0); }; StrictNonReservedContext.prototype.INTERSECT = function() { return this.getToken(SparkSqlParser.INTERSECT, 0); }; StrictNonReservedContext.prototype.JOIN = function() { return this.getToken(SparkSqlParser.JOIN, 0); }; StrictNonReservedContext.prototype.LEFT = function() { return this.getToken(SparkSqlParser.LEFT, 0); }; StrictNonReservedContext.prototype.NATURAL = function() { return this.getToken(SparkSqlParser.NATURAL, 0); }; StrictNonReservedContext.prototype.ON = function() { return this.getToken(SparkSqlParser.ON, 0); }; StrictNonReservedContext.prototype.RIGHT = function() { return this.getToken(SparkSqlParser.RIGHT, 0); }; StrictNonReservedContext.prototype.SEMI = function() { return this.getToken(SparkSqlParser.SEMI, 0); }; StrictNonReservedContext.prototype.SETMINUS = function() { return this.getToken(SparkSqlParser.SETMINUS, 0); }; StrictNonReservedContext.prototype.UNION = function() { return this.getToken(SparkSqlParser.UNION, 0); }; StrictNonReservedContext.prototype.USING = function() { return this.getToken(SparkSqlParser.USING, 0); }; StrictNonReservedContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterStrictNonReserved(this); } }; StrictNonReservedContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitStrictNonReserved(this); } }; StrictNonReservedContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitStrictNonReserved(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.StrictNonReservedContext = StrictNonReservedContext; SparkSqlParser.prototype.strictNonReserved = function() { var localctx = new StrictNonReservedContext(this, this._ctx, this.state); this.enterRule(localctx, 268, SparkSqlParser.RULE_strictNonReserved); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 3021; _la = this._input.LA(1); if(!(_la===SparkSqlParser.ANTI || _la===SparkSqlParser.CROSS || _la===SparkSqlParser.EXCEPT || ((((_la - 101)) & ~0x1f) == 0 && ((1 << (_la - 101)) & ((1 << (SparkSqlParser.FULL - 101)) | (1 << (SparkSqlParser.INNER - 101)) | (1 << (SparkSqlParser.INTERSECT - 101)) | (1 << (SparkSqlParser.JOIN - 101)) | (1 << (SparkSqlParser.LEFT - 101)))) !== 0) || _la===SparkSqlParser.NATURAL || _la===SparkSqlParser.ON || ((((_la - 193)) & ~0x1f) == 0 && ((1 << (_la - 193)) & ((1 << (SparkSqlParser.RIGHT - 193)) | (1 << (SparkSqlParser.SEMI - 193)) | (1 << (SparkSqlParser.SETMINUS - 193)))) !== 0) || _la===SparkSqlParser.UNION || _la===SparkSqlParser.USING)) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; function NonReservedContext(parser, parent, invokingState) { if(parent===undefined) { parent = null; } if(invokingState===undefined || invokingState===null) { invokingState = -1; } antlr4.ParserRuleContext.call(this, parent, invokingState); this.parser = parser; this.ruleIndex = SparkSqlParser.RULE_nonReserved; return this; } NonReservedContext.prototype = Object.create(antlr4.ParserRuleContext.prototype); NonReservedContext.prototype.constructor = NonReservedContext; NonReservedContext.prototype.ADD = function() { return this.getToken(SparkSqlParser.ADD, 0); }; NonReservedContext.prototype.AFTER = function() { return this.getToken(SparkSqlParser.AFTER, 0); }; NonReservedContext.prototype.ALL = function() { return this.getToken(SparkSqlParser.ALL, 0); }; NonReservedContext.prototype.ALTER = function() { return this.getToken(SparkSqlParser.ALTER, 0); }; NonReservedContext.prototype.ANALYZE = function() { return this.getToken(SparkSqlParser.ANALYZE, 0); }; NonReservedContext.prototype.AND = function() { return this.getToken(SparkSqlParser.AND, 0); }; NonReservedContext.prototype.ANY = function() { return this.getToken(SparkSqlParser.ANY, 0); }; NonReservedContext.prototype.ARCHIVE = function() { return this.getToken(SparkSqlParser.ARCHIVE, 0); }; NonReservedContext.prototype.ARRAY = function() { return this.getToken(SparkSqlParser.ARRAY, 0); }; NonReservedContext.prototype.AS = function() { return this.getToken(SparkSqlParser.AS, 0); }; NonReservedContext.prototype.ASC = function() { return this.getToken(SparkSqlParser.ASC, 0); }; NonReservedContext.prototype.AT = function() { return this.getToken(SparkSqlParser.AT, 0); }; NonReservedContext.prototype.AUTHORIZATION = function() { return this.getToken(SparkSqlParser.AUTHORIZATION, 0); }; NonReservedContext.prototype.BETWEEN = function() { return this.getToken(SparkSqlParser.BETWEEN, 0); }; NonReservedContext.prototype.BOTH = function() { return this.getToken(SparkSqlParser.BOTH, 0); }; NonReservedContext.prototype.BUCKET = function() { return this.getToken(SparkSqlParser.BUCKET, 0); }; NonReservedContext.prototype.BUCKETS = function() { return this.getToken(SparkSqlParser.BUCKETS, 0); }; NonReservedContext.prototype.BY = function() { return this.getToken(SparkSqlParser.BY, 0); }; NonReservedContext.prototype.CACHE = function() { return this.getToken(SparkSqlParser.CACHE, 0); }; NonReservedContext.prototype.CASCADE = function() { return this.getToken(SparkSqlParser.CASCADE, 0); }; NonReservedContext.prototype.CASE = function() { return this.getToken(SparkSqlParser.CASE, 0); }; NonReservedContext.prototype.CAST = function() { return this.getToken(SparkSqlParser.CAST, 0); }; NonReservedContext.prototype.CHANGE = function() { return this.getToken(SparkSqlParser.CHANGE, 0); }; NonReservedContext.prototype.CHECK = function() { return this.getToken(SparkSqlParser.CHECK, 0); }; NonReservedContext.prototype.CLEAR = function() { return this.getToken(SparkSqlParser.CLEAR, 0); }; NonReservedContext.prototype.CLUSTER = function() { return this.getToken(SparkSqlParser.CLUSTER, 0); }; NonReservedContext.prototype.CLUSTERED = function() { return this.getToken(SparkSqlParser.CLUSTERED, 0); }; NonReservedContext.prototype.CODEGEN = function() { return this.getToken(SparkSqlParser.CODEGEN, 0); }; NonReservedContext.prototype.COLLATE = function() { return this.getToken(SparkSqlParser.COLLATE, 0); }; NonReservedContext.prototype.COLLECTION = function() { return this.getToken(SparkSqlParser.COLLECTION, 0); }; NonReservedContext.prototype.COLUMN = function() { return this.getToken(SparkSqlParser.COLUMN, 0); }; NonReservedContext.prototype.COLUMNS = function() { return this.getToken(SparkSqlParser.COLUMNS, 0); }; NonReservedContext.prototype.COMMENT = function() { return this.getToken(SparkSqlParser.COMMENT, 0); }; NonReservedContext.prototype.COMMIT = function() { return this.getToken(SparkSqlParser.COMMIT, 0); }; NonReservedContext.prototype.COMPACT = function() { return this.getToken(SparkSqlParser.COMPACT, 0); }; NonReservedContext.prototype.COMPACTIONS = function() { return this.getToken(SparkSqlParser.COMPACTIONS, 0); }; NonReservedContext.prototype.COMPUTE = function() { return this.getToken(SparkSqlParser.COMPUTE, 0); }; NonReservedContext.prototype.CONCATENATE = function() { return this.getToken(SparkSqlParser.CONCATENATE, 0); }; NonReservedContext.prototype.CONSTRAINT = function() { return this.getToken(SparkSqlParser.CONSTRAINT, 0); }; NonReservedContext.prototype.COST = function() { return this.getToken(SparkSqlParser.COST, 0); }; NonReservedContext.prototype.CREATE = function() { return this.getToken(SparkSqlParser.CREATE, 0); }; NonReservedContext.prototype.CUBE = function() { return this.getToken(SparkSqlParser.CUBE, 0); }; NonReservedContext.prototype.CURRENT = function() { return this.getToken(SparkSqlParser.CURRENT, 0); }; NonReservedContext.prototype.CURRENT_DATE = function() { return this.getToken(SparkSqlParser.CURRENT_DATE, 0); }; NonReservedContext.prototype.CURRENT_TIME = function() { return this.getToken(SparkSqlParser.CURRENT_TIME, 0); }; NonReservedContext.prototype.CURRENT_TIMESTAMP = function() { return this.getToken(SparkSqlParser.CURRENT_TIMESTAMP, 0); }; NonReservedContext.prototype.CURRENT_USER = function() { return this.getToken(SparkSqlParser.CURRENT_USER, 0); }; NonReservedContext.prototype.DATA = function() { return this.getToken(SparkSqlParser.DATA, 0); }; NonReservedContext.prototype.DATABASE = function() { return this.getToken(SparkSqlParser.DATABASE, 0); }; NonReservedContext.prototype.DATABASES = function() { return this.getToken(SparkSqlParser.DATABASES, 0); }; NonReservedContext.prototype.DBPROPERTIES = function() { return this.getToken(SparkSqlParser.DBPROPERTIES, 0); }; NonReservedContext.prototype.DEFINED = function() { return this.getToken(SparkSqlParser.DEFINED, 0); }; NonReservedContext.prototype.DELETE = function() { return this.getToken(SparkSqlParser.DELETE, 0); }; NonReservedContext.prototype.DELIMITED = function() { return this.getToken(SparkSqlParser.DELIMITED, 0); }; NonReservedContext.prototype.DESC = function() { return this.getToken(SparkSqlParser.DESC, 0); }; NonReservedContext.prototype.DESCRIBE = function() { return this.getToken(SparkSqlParser.DESCRIBE, 0); }; NonReservedContext.prototype.DFS = function() { return this.getToken(SparkSqlParser.DFS, 0); }; NonReservedContext.prototype.DIRECTORIES = function() { return this.getToken(SparkSqlParser.DIRECTORIES, 0); }; NonReservedContext.prototype.DIRECTORY = function() { return this.getToken(SparkSqlParser.DIRECTORY, 0); }; NonReservedContext.prototype.DISTINCT = function() { return this.getToken(SparkSqlParser.DISTINCT, 0); }; NonReservedContext.prototype.DISTRIBUTE = function() { return this.getToken(SparkSqlParser.DISTRIBUTE, 0); }; NonReservedContext.prototype.DIV = function() { return this.getToken(SparkSqlParser.DIV, 0); }; NonReservedContext.prototype.DROP = function() { return this.getToken(SparkSqlParser.DROP, 0); }; NonReservedContext.prototype.ELSE = function() { return this.getToken(SparkSqlParser.ELSE, 0); }; NonReservedContext.prototype.END = function() { return this.getToken(SparkSqlParser.END, 0); }; NonReservedContext.prototype.ESCAPE = function() { return this.getToken(SparkSqlParser.ESCAPE, 0); }; NonReservedContext.prototype.ESCAPED = function() { return this.getToken(SparkSqlParser.ESCAPED, 0); }; NonReservedContext.prototype.EXCHANGE = function() { return this.getToken(SparkSqlParser.EXCHANGE, 0); }; NonReservedContext.prototype.EXISTS = function() { return this.getToken(SparkSqlParser.EXISTS, 0); }; NonReservedContext.prototype.EXPLAIN = function() { return this.getToken(SparkSqlParser.EXPLAIN, 0); }; NonReservedContext.prototype.EXPORT = function() { return this.getToken(SparkSqlParser.EXPORT, 0); }; NonReservedContext.prototype.EXTENDED = function() { return this.getToken(SparkSqlParser.EXTENDED, 0); }; NonReservedContext.prototype.EXTERNAL = function() { return this.getToken(SparkSqlParser.EXTERNAL, 0); }; NonReservedContext.prototype.EXTRACT = function() { return this.getToken(SparkSqlParser.EXTRACT, 0); }; NonReservedContext.prototype.FALSE = function() { return this.getToken(SparkSqlParser.FALSE, 0); }; NonReservedContext.prototype.FETCH = function() { return this.getToken(SparkSqlParser.FETCH, 0); }; NonReservedContext.prototype.FILTER = function() { return this.getToken(SparkSqlParser.FILTER, 0); }; NonReservedContext.prototype.FIELDS = function() { return this.getToken(SparkSqlParser.FIELDS, 0); }; NonReservedContext.prototype.FILEFORMAT = function() { return this.getToken(SparkSqlParser.FILEFORMAT, 0); }; NonReservedContext.prototype.FIRST = function() { return this.getToken(SparkSqlParser.FIRST, 0); }; NonReservedContext.prototype.FOLLOWING = function() { return this.getToken(SparkSqlParser.FOLLOWING, 0); }; NonReservedContext.prototype.FOR = function() { return this.getToken(SparkSqlParser.FOR, 0); }; NonReservedContext.prototype.FOREIGN = function() { return this.getToken(SparkSqlParser.FOREIGN, 0); }; NonReservedContext.prototype.FORMAT = function() { return this.getToken(SparkSqlParser.FORMAT, 0); }; NonReservedContext.prototype.FORMATTED = function() { return this.getToken(SparkSqlParser.FORMATTED, 0); }; NonReservedContext.prototype.FROM = function() { return this.getToken(SparkSqlParser.FROM, 0); }; NonReservedContext.prototype.FUNCTION = function() { return this.getToken(SparkSqlParser.FUNCTION, 0); }; NonReservedContext.prototype.FUNCTIONS = function() { return this.getToken(SparkSqlParser.FUNCTIONS, 0); }; NonReservedContext.prototype.GLOBAL = function() { return this.getToken(SparkSqlParser.GLOBAL, 0); }; NonReservedContext.prototype.GRANT = function() { return this.getToken(SparkSqlParser.GRANT, 0); }; NonReservedContext.prototype.GROUP = function() { return this.getToken(SparkSqlParser.GROUP, 0); }; NonReservedContext.prototype.GROUPING = function() { return this.getToken(SparkSqlParser.GROUPING, 0); }; NonReservedContext.prototype.HAVING = function() { return this.getToken(SparkSqlParser.HAVING, 0); }; NonReservedContext.prototype.IF = function() { return this.getToken(SparkSqlParser.IF, 0); }; NonReservedContext.prototype.IGNORE = function() { return this.getToken(SparkSqlParser.IGNORE, 0); }; NonReservedContext.prototype.IMPORT = function() { return this.getToken(SparkSqlParser.IMPORT, 0); }; NonReservedContext.prototype.IN = function() { return this.getToken(SparkSqlParser.IN, 0); }; NonReservedContext.prototype.INDEX = function() { return this.getToken(SparkSqlParser.INDEX, 0); }; NonReservedContext.prototype.INDEXES = function() { return this.getToken(SparkSqlParser.INDEXES, 0); }; NonReservedContext.prototype.INPATH = function() { return this.getToken(SparkSqlParser.INPATH, 0); }; NonReservedContext.prototype.INPUTFORMAT = function() { return this.getToken(SparkSqlParser.INPUTFORMAT, 0); }; NonReservedContext.prototype.INSERT = function() { return this.getToken(SparkSqlParser.INSERT, 0); }; NonReservedContext.prototype.INTERVAL = function() { return this.getToken(SparkSqlParser.INTERVAL, 0); }; NonReservedContext.prototype.INTO = function() { return this.getToken(SparkSqlParser.INTO, 0); }; NonReservedContext.prototype.IS = function() { return this.getToken(SparkSqlParser.IS, 0); }; NonReservedContext.prototype.ITEMS = function() { return this.getToken(SparkSqlParser.ITEMS, 0); }; NonReservedContext.prototype.KEYS = function() { return this.getToken(SparkSqlParser.KEYS, 0); }; NonReservedContext.prototype.LAST = function() { return this.getToken(SparkSqlParser.LAST, 0); }; NonReservedContext.prototype.LATERAL = function() { return this.getToken(SparkSqlParser.LATERAL, 0); }; NonReservedContext.prototype.LAZY = function() { return this.getToken(SparkSqlParser.LAZY, 0); }; NonReservedContext.prototype.LEADING = function() { return this.getToken(SparkSqlParser.LEADING, 0); }; NonReservedContext.prototype.LIKE = function() { return this.getToken(SparkSqlParser.LIKE, 0); }; NonReservedContext.prototype.LIMIT = function() { return this.getToken(SparkSqlParser.LIMIT, 0); }; NonReservedContext.prototype.LINES = function() { return this.getToken(SparkSqlParser.LINES, 0); }; NonReservedContext.prototype.LIST = function() { return this.getToken(SparkSqlParser.LIST, 0); }; NonReservedContext.prototype.LOAD = function() { return this.getToken(SparkSqlParser.LOAD, 0); }; NonReservedContext.prototype.LOCAL = function() { return this.getToken(SparkSqlParser.LOCAL, 0); }; NonReservedContext.prototype.LOCATION = function() { return this.getToken(SparkSqlParser.LOCATION, 0); }; NonReservedContext.prototype.LOCK = function() { return this.getToken(SparkSqlParser.LOCK, 0); }; NonReservedContext.prototype.LOCKS = function() { return this.getToken(SparkSqlParser.LOCKS, 0); }; NonReservedContext.prototype.LOGICAL = function() { return this.getToken(SparkSqlParser.LOGICAL, 0); }; NonReservedContext.prototype.MACRO = function() { return this.getToken(SparkSqlParser.MACRO, 0); }; NonReservedContext.prototype.MAP = function() { return this.getToken(SparkSqlParser.MAP, 0); }; NonReservedContext.prototype.MATCHED = function() { return this.getToken(SparkSqlParser.MATCHED, 0); }; NonReservedContext.prototype.MERGE = function() { return this.getToken(SparkSqlParser.MERGE, 0); }; NonReservedContext.prototype.MSCK = function() { return this.getToken(SparkSqlParser.MSCK, 0); }; NonReservedContext.prototype.NAMESPACE = function() { return this.getToken(SparkSqlParser.NAMESPACE, 0); }; NonReservedContext.prototype.NAMESPACES = function() { return this.getToken(SparkSqlParser.NAMESPACES, 0); }; NonReservedContext.prototype.NO = function() { return this.getToken(SparkSqlParser.NO, 0); }; NonReservedContext.prototype.NOT = function() { return this.getToken(SparkSqlParser.NOT, 0); }; NonReservedContext.prototype.NULL = function() { return this.getToken(SparkSqlParser.NULL, 0); }; NonReservedContext.prototype.NULLS = function() { return this.getToken(SparkSqlParser.NULLS, 0); }; NonReservedContext.prototype.OF = function() { return this.getToken(SparkSqlParser.OF, 0); }; NonReservedContext.prototype.ONLY = function() { return this.getToken(SparkSqlParser.ONLY, 0); }; NonReservedContext.prototype.OPTION = function() { return this.getToken(SparkSqlParser.OPTION, 0); }; NonReservedContext.prototype.OPTIONS = function() { return this.getToken(SparkSqlParser.OPTIONS, 0); }; NonReservedContext.prototype.OR = function() { return this.getToken(SparkSqlParser.OR, 0); }; NonReservedContext.prototype.ORDER = function() { return this.getToken(SparkSqlParser.ORDER, 0); }; NonReservedContext.prototype.OUT = function() { return this.getToken(SparkSqlParser.OUT, 0); }; NonReservedContext.prototype.OUTER = function() { return this.getToken(SparkSqlParser.OUTER, 0); }; NonReservedContext.prototype.OUTPUTFORMAT = function() { return this.getToken(SparkSqlParser.OUTPUTFORMAT, 0); }; NonReservedContext.prototype.OVER = function() { return this.getToken(SparkSqlParser.OVER, 0); }; NonReservedContext.prototype.OVERLAPS = function() { return this.getToken(SparkSqlParser.OVERLAPS, 0); }; NonReservedContext.prototype.OVERLAY = function() { return this.getToken(SparkSqlParser.OVERLAY, 0); }; NonReservedContext.prototype.OVERWRITE = function() { return this.getToken(SparkSqlParser.OVERWRITE, 0); }; NonReservedContext.prototype.PARTITION = function() { return this.getToken(SparkSqlParser.PARTITION, 0); }; NonReservedContext.prototype.PARTITIONED = function() { return this.getToken(SparkSqlParser.PARTITIONED, 0); }; NonReservedContext.prototype.PARTITIONS = function() { return this.getToken(SparkSqlParser.PARTITIONS, 0); }; NonReservedContext.prototype.PERCENTLIT = function() { return this.getToken(SparkSqlParser.PERCENTLIT, 0); }; NonReservedContext.prototype.PIVOT = function() { return this.getToken(SparkSqlParser.PIVOT, 0); }; NonReservedContext.prototype.PLACING = function() { return this.getToken(SparkSqlParser.PLACING, 0); }; NonReservedContext.prototype.POSITION = function() { return this.getToken(SparkSqlParser.POSITION, 0); }; NonReservedContext.prototype.PRECEDING = function() { return this.getToken(SparkSqlParser.PRECEDING, 0); }; NonReservedContext.prototype.PRIMARY = function() { return this.getToken(SparkSqlParser.PRIMARY, 0); }; NonReservedContext.prototype.PRINCIPALS = function() { return this.getToken(SparkSqlParser.PRINCIPALS, 0); }; NonReservedContext.prototype.PROPERTIES = function() { return this.getToken(SparkSqlParser.PROPERTIES, 0); }; NonReservedContext.prototype.PURGE = function() { return this.getToken(SparkSqlParser.PURGE, 0); }; NonReservedContext.prototype.QUERY = function() { return this.getToken(SparkSqlParser.QUERY, 0); }; NonReservedContext.prototype.RANGE = function() { return this.getToken(SparkSqlParser.RANGE, 0); }; NonReservedContext.prototype.RECORDREADER = function() { return this.getToken(SparkSqlParser.RECORDREADER, 0); }; NonReservedContext.prototype.RECORDWRITER = function() { return this.getToken(SparkSqlParser.RECORDWRITER, 0); }; NonReservedContext.prototype.RECOVER = function() { return this.getToken(SparkSqlParser.RECOVER, 0); }; NonReservedContext.prototype.REDUCE = function() { return this.getToken(SparkSqlParser.REDUCE, 0); }; NonReservedContext.prototype.REFERENCES = function() { return this.getToken(SparkSqlParser.REFERENCES, 0); }; NonReservedContext.prototype.REFRESH = function() { return this.getToken(SparkSqlParser.REFRESH, 0); }; NonReservedContext.prototype.RENAME = function() { return this.getToken(SparkSqlParser.RENAME, 0); }; NonReservedContext.prototype.REPAIR = function() { return this.getToken(SparkSqlParser.REPAIR, 0); }; NonReservedContext.prototype.REPLACE = function() { return this.getToken(SparkSqlParser.REPLACE, 0); }; NonReservedContext.prototype.RESET = function() { return this.getToken(SparkSqlParser.RESET, 0); }; NonReservedContext.prototype.RESTRICT = function() { return this.getToken(SparkSqlParser.RESTRICT, 0); }; NonReservedContext.prototype.REVOKE = function() { return this.getToken(SparkSqlParser.REVOKE, 0); }; NonReservedContext.prototype.RLIKE = function() { return this.getToken(SparkSqlParser.RLIKE, 0); }; NonReservedContext.prototype.ROLE = function() { return this.getToken(SparkSqlParser.ROLE, 0); }; NonReservedContext.prototype.ROLES = function() { return this.getToken(SparkSqlParser.ROLES, 0); }; NonReservedContext.prototype.ROLLBACK = function() { return this.getToken(SparkSqlParser.ROLLBACK, 0); }; NonReservedContext.prototype.ROLLUP = function() { return this.getToken(SparkSqlParser.ROLLUP, 0); }; NonReservedContext.prototype.ROW = function() { return this.getToken(SparkSqlParser.ROW, 0); }; NonReservedContext.prototype.ROWS = function() { return this.getToken(SparkSqlParser.ROWS, 0); }; NonReservedContext.prototype.SCHEMA = function() { return this.getToken(SparkSqlParser.SCHEMA, 0); }; NonReservedContext.prototype.SELECT = function() { return this.getToken(SparkSqlParser.SELECT, 0); }; NonReservedContext.prototype.SEPARATED = function() { return this.getToken(SparkSqlParser.SEPARATED, 0); }; NonReservedContext.prototype.SERDE = function() { return this.getToken(SparkSqlParser.SERDE, 0); }; NonReservedContext.prototype.SERDEPROPERTIES = function() { return this.getToken(SparkSqlParser.SERDEPROPERTIES, 0); }; NonReservedContext.prototype.SESSION_USER = function() { return this.getToken(SparkSqlParser.SESSION_USER, 0); }; NonReservedContext.prototype.SET = function() { return this.getToken(SparkSqlParser.SET, 0); }; NonReservedContext.prototype.SETS = function() { return this.getToken(SparkSqlParser.SETS, 0); }; NonReservedContext.prototype.SHOW = function() { return this.getToken(SparkSqlParser.SHOW, 0); }; NonReservedContext.prototype.SKEWED = function() { return this.getToken(SparkSqlParser.SKEWED, 0); }; NonReservedContext.prototype.SOME = function() { return this.getToken(SparkSqlParser.SOME, 0); }; NonReservedContext.prototype.SORT = function() { return this.getToken(SparkSqlParser.SORT, 0); }; NonReservedContext.prototype.SORTED = function() { return this.getToken(SparkSqlParser.SORTED, 0); }; NonReservedContext.prototype.START = function() { return this.getToken(SparkSqlParser.START, 0); }; NonReservedContext.prototype.STATISTICS = function() { return this.getToken(SparkSqlParser.STATISTICS, 0); }; NonReservedContext.prototype.STORED = function() { return this.getToken(SparkSqlParser.STORED, 0); }; NonReservedContext.prototype.STRATIFY = function() { return this.getToken(SparkSqlParser.STRATIFY, 0); }; NonReservedContext.prototype.STRUCT = function() { return this.getToken(SparkSqlParser.STRUCT, 0); }; NonReservedContext.prototype.SUBSTR = function() { return this.getToken(SparkSqlParser.SUBSTR, 0); }; NonReservedContext.prototype.SUBSTRING = function() { return this.getToken(SparkSqlParser.SUBSTRING, 0); }; NonReservedContext.prototype.TABLE = function() { return this.getToken(SparkSqlParser.TABLE, 0); }; NonReservedContext.prototype.TABLES = function() { return this.getToken(SparkSqlParser.TABLES, 0); }; NonReservedContext.prototype.TABLESAMPLE = function() { return this.getToken(SparkSqlParser.TABLESAMPLE, 0); }; NonReservedContext.prototype.TBLPROPERTIES = function() { return this.getToken(SparkSqlParser.TBLPROPERTIES, 0); }; NonReservedContext.prototype.TEMPORARY = function() { return this.getToken(SparkSqlParser.TEMPORARY, 0); }; NonReservedContext.prototype.TERMINATED = function() { return this.getToken(SparkSqlParser.TERMINATED, 0); }; NonReservedContext.prototype.THEN = function() { return this.getToken(SparkSqlParser.THEN, 0); }; NonReservedContext.prototype.TIME = function() { return this.getToken(SparkSqlParser.TIME, 0); }; NonReservedContext.prototype.TO = function() { return this.getToken(SparkSqlParser.TO, 0); }; NonReservedContext.prototype.TOUCH = function() { return this.getToken(SparkSqlParser.TOUCH, 0); }; NonReservedContext.prototype.TRAILING = function() { return this.getToken(SparkSqlParser.TRAILING, 0); }; NonReservedContext.prototype.TRANSACTION = function() { return this.getToken(SparkSqlParser.TRANSACTION, 0); }; NonReservedContext.prototype.TRANSACTIONS = function() { return this.getToken(SparkSqlParser.TRANSACTIONS, 0); }; NonReservedContext.prototype.TRANSFORM = function() { return this.getToken(SparkSqlParser.TRANSFORM, 0); }; NonReservedContext.prototype.TRIM = function() { return this.getToken(SparkSqlParser.TRIM, 0); }; NonReservedContext.prototype.TRUE = function() { return this.getToken(SparkSqlParser.TRUE, 0); }; NonReservedContext.prototype.TRUNCATE = function() { return this.getToken(SparkSqlParser.TRUNCATE, 0); }; NonReservedContext.prototype.TYPE = function() { return this.getToken(SparkSqlParser.TYPE, 0); }; NonReservedContext.prototype.UNARCHIVE = function() { return this.getToken(SparkSqlParser.UNARCHIVE, 0); }; NonReservedContext.prototype.UNBOUNDED = function() { return this.getToken(SparkSqlParser.UNBOUNDED, 0); }; NonReservedContext.prototype.UNCACHE = function() { return this.getToken(SparkSqlParser.UNCACHE, 0); }; NonReservedContext.prototype.UNIQUE = function() { return this.getToken(SparkSqlParser.UNIQUE, 0); }; NonReservedContext.prototype.UNKNOWN = function() { return this.getToken(SparkSqlParser.UNKNOWN, 0); }; NonReservedContext.prototype.UNLOCK = function() { return this.getToken(SparkSqlParser.UNLOCK, 0); }; NonReservedContext.prototype.UNSET = function() { return this.getToken(SparkSqlParser.UNSET, 0); }; NonReservedContext.prototype.UPDATE = function() { return this.getToken(SparkSqlParser.UPDATE, 0); }; NonReservedContext.prototype.USE = function() { return this.getToken(SparkSqlParser.USE, 0); }; NonReservedContext.prototype.USER = function() { return this.getToken(SparkSqlParser.USER, 0); }; NonReservedContext.prototype.VALUES = function() { return this.getToken(SparkSqlParser.VALUES, 0); }; NonReservedContext.prototype.VIEW = function() { return this.getToken(SparkSqlParser.VIEW, 0); }; NonReservedContext.prototype.VIEWS = function() { return this.getToken(SparkSqlParser.VIEWS, 0); }; NonReservedContext.prototype.WHEN = function() { return this.getToken(SparkSqlParser.WHEN, 0); }; NonReservedContext.prototype.WHERE = function() { return this.getToken(SparkSqlParser.WHERE, 0); }; NonReservedContext.prototype.WINDOW = function() { return this.getToken(SparkSqlParser.WINDOW, 0); }; NonReservedContext.prototype.WITH = function() { return this.getToken(SparkSqlParser.WITH, 0); }; NonReservedContext.prototype.ZONE = function() { return this.getToken(SparkSqlParser.ZONE, 0); }; NonReservedContext.prototype.enterRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.enterNonReserved(this); } }; NonReservedContext.prototype.exitRule = function(listener) { if(listener instanceof SparkSqlListener ) { listener.exitNonReserved(this); } }; NonReservedContext.prototype.accept = function(visitor) { if ( visitor instanceof SparkSqlVisitor ) { return visitor.visitNonReserved(this); } else { return visitor.visitChildren(this); } }; SparkSqlParser.NonReservedContext = NonReservedContext; SparkSqlParser.prototype.nonReserved = function() { var localctx = new NonReservedContext(this, this._ctx, this.state); this.enterRule(localctx, 270, SparkSqlParser.RULE_nonReserved); var _la = 0; // Token type try { this.enterOuterAlt(localctx, 1); this.state = 3023; _la = this._input.LA(1); if(!(((((_la - 12)) & ~0x1f) == 0 && ((1 << (_la - 12)) & ((1 << (SparkSqlParser.ADD - 12)) | (1 << (SparkSqlParser.AFTER - 12)) | (1 << (SparkSqlParser.ALL - 12)) | (1 << (SparkSqlParser.ALTER - 12)) | (1 << (SparkSqlParser.ANALYZE - 12)) | (1 << (SparkSqlParser.AND - 12)) | (1 << (SparkSqlParser.ANY - 12)) | (1 << (SparkSqlParser.ARCHIVE - 12)) | (1 << (SparkSqlParser.ARRAY - 12)) | (1 << (SparkSqlParser.AS - 12)) | (1 << (SparkSqlParser.ASC - 12)) | (1 << (SparkSqlParser.AT - 12)) | (1 << (SparkSqlParser.AUTHORIZATION - 12)) | (1 << (SparkSqlParser.BETWEEN - 12)) | (1 << (SparkSqlParser.BOTH - 12)) | (1 << (SparkSqlParser.BUCKET - 12)) | (1 << (SparkSqlParser.BUCKETS - 12)) | (1 << (SparkSqlParser.BY - 12)) | (1 << (SparkSqlParser.CACHE - 12)) | (1 << (SparkSqlParser.CASCADE - 12)) | (1 << (SparkSqlParser.CASE - 12)) | (1 << (SparkSqlParser.CAST - 12)) | (1 << (SparkSqlParser.CHANGE - 12)) | (1 << (SparkSqlParser.CHECK - 12)) | (1 << (SparkSqlParser.CLEAR - 12)) | (1 << (SparkSqlParser.CLUSTER - 12)) | (1 << (SparkSqlParser.CLUSTERED - 12)) | (1 << (SparkSqlParser.CODEGEN - 12)) | (1 << (SparkSqlParser.COLLATE - 12)) | (1 << (SparkSqlParser.COLLECTION - 12)) | (1 << (SparkSqlParser.COLUMN - 12)))) !== 0) || ((((_la - 44)) & ~0x1f) == 0 && ((1 << (_la - 44)) & ((1 << (SparkSqlParser.COLUMNS - 44)) | (1 << (SparkSqlParser.COMMENT - 44)) | (1 << (SparkSqlParser.COMMIT - 44)) | (1 << (SparkSqlParser.COMPACT - 44)) | (1 << (SparkSqlParser.COMPACTIONS - 44)) | (1 << (SparkSqlParser.COMPUTE - 44)) | (1 << (SparkSqlParser.CONCATENATE - 44)) | (1 << (SparkSqlParser.CONSTRAINT - 44)) | (1 << (SparkSqlParser.COST - 44)) | (1 << (SparkSqlParser.CREATE - 44)) | (1 << (SparkSqlParser.CUBE - 44)) | (1 << (SparkSqlParser.CURRENT - 44)) | (1 << (SparkSqlParser.CURRENT_DATE - 44)) | (1 << (SparkSqlParser.CURRENT_TIME - 44)) | (1 << (SparkSqlParser.CURRENT_TIMESTAMP - 44)) | (1 << (SparkSqlParser.CURRENT_USER - 44)) | (1 << (SparkSqlParser.DATA - 44)) | (1 << (SparkSqlParser.DATABASE - 44)) | (1 << (SparkSqlParser.DATABASES - 44)) | (1 << (SparkSqlParser.DBPROPERTIES - 44)) | (1 << (SparkSqlParser.DEFINED - 44)) | (1 << (SparkSqlParser.DELETE - 44)) | (1 << (SparkSqlParser.DELIMITED - 44)) | (1 << (SparkSqlParser.DESC - 44)) | (1 << (SparkSqlParser.DESCRIBE - 44)) | (1 << (SparkSqlParser.DFS - 44)) | (1 << (SparkSqlParser.DIRECTORIES - 44)) | (1 << (SparkSqlParser.DIRECTORY - 44)) | (1 << (SparkSqlParser.DISTINCT - 44)) | (1 << (SparkSqlParser.DISTRIBUTE - 44)) | (1 << (SparkSqlParser.DIV - 44)))) !== 0) || ((((_la - 76)) & ~0x1f) == 0 && ((1 << (_la - 76)) & ((1 << (SparkSqlParser.DROP - 76)) | (1 << (SparkSqlParser.ELSE - 76)) | (1 << (SparkSqlParser.END - 76)) | (1 << (SparkSqlParser.ESCAPE - 76)) | (1 << (SparkSqlParser.ESCAPED - 76)) | (1 << (SparkSqlParser.EXCHANGE - 76)) | (1 << (SparkSqlParser.EXISTS - 76)) | (1 << (SparkSqlParser.EXPLAIN - 76)) | (1 << (SparkSqlParser.EXPORT - 76)) | (1 << (SparkSqlParser.EXTENDED - 76)) | (1 << (SparkSqlParser.EXTERNAL - 76)) | (1 << (SparkSqlParser.EXTRACT - 76)) | (1 << (SparkSqlParser.FALSE - 76)) | (1 << (SparkSqlParser.FETCH - 76)) | (1 << (SparkSqlParser.FIELDS - 76)) | (1 << (SparkSqlParser.FILTER - 76)) | (1 << (SparkSqlParser.FILEFORMAT - 76)) | (1 << (SparkSqlParser.FIRST - 76)) | (1 << (SparkSqlParser.FOLLOWING - 76)) | (1 << (SparkSqlParser.FOR - 76)) | (1 << (SparkSqlParser.FOREIGN - 76)) | (1 << (SparkSqlParser.FORMAT - 76)) | (1 << (SparkSqlParser.FORMATTED - 76)) | (1 << (SparkSqlParser.FROM - 76)) | (1 << (SparkSqlParser.FUNCTION - 76)) | (1 << (SparkSqlParser.FUNCTIONS - 76)) | (1 << (SparkSqlParser.GLOBAL - 76)) | (1 << (SparkSqlParser.GRANT - 76)) | (1 << (SparkSqlParser.GROUP - 76)) | (1 << (SparkSqlParser.GROUPING - 76)))) !== 0) || ((((_la - 108)) & ~0x1f) == 0 && ((1 << (_la - 108)) & ((1 << (SparkSqlParser.HAVING - 108)) | (1 << (SparkSqlParser.IF - 108)) | (1 << (SparkSqlParser.IGNORE - 108)) | (1 << (SparkSqlParser.IMPORT - 108)) | (1 << (SparkSqlParser.IN - 108)) | (1 << (SparkSqlParser.INDEX - 108)) | (1 << (SparkSqlParser.INDEXES - 108)) | (1 << (SparkSqlParser.INPATH - 108)) | (1 << (SparkSqlParser.INPUTFORMAT - 108)) | (1 << (SparkSqlParser.INSERT - 108)) | (1 << (SparkSqlParser.INTERVAL - 108)) | (1 << (SparkSqlParser.INTO - 108)) | (1 << (SparkSqlParser.IS - 108)) | (1 << (SparkSqlParser.ITEMS - 108)) | (1 << (SparkSqlParser.KEYS - 108)) | (1 << (SparkSqlParser.LAST - 108)) | (1 << (SparkSqlParser.LATERAL - 108)) | (1 << (SparkSqlParser.LAZY - 108)) | (1 << (SparkSqlParser.LEADING - 108)) | (1 << (SparkSqlParser.LIKE - 108)) | (1 << (SparkSqlParser.LIMIT - 108)) | (1 << (SparkSqlParser.LINES - 108)) | (1 << (SparkSqlParser.LIST - 108)) | (1 << (SparkSqlParser.LOAD - 108)) | (1 << (SparkSqlParser.LOCAL - 108)) | (1 << (SparkSqlParser.LOCATION - 108)) | (1 << (SparkSqlParser.LOCK - 108)) | (1 << (SparkSqlParser.LOCKS - 108)))) !== 0) || ((((_la - 140)) & ~0x1f) == 0 && ((1 << (_la - 140)) & ((1 << (SparkSqlParser.LOGICAL - 140)) | (1 << (SparkSqlParser.MACRO - 140)) | (1 << (SparkSqlParser.MAP - 140)) | (1 << (SparkSqlParser.MATCHED - 140)) | (1 << (SparkSqlParser.MERGE - 140)) | (1 << (SparkSqlParser.MSCK - 140)) | (1 << (SparkSqlParser.NAMESPACE - 140)) | (1 << (SparkSqlParser.NAMESPACES - 140)) | (1 << (SparkSqlParser.NO - 140)) | (1 << (SparkSqlParser.NOT - 140)) | (1 << (SparkSqlParser.NULL - 140)) | (1 << (SparkSqlParser.NULLS - 140)) | (1 << (SparkSqlParser.OF - 140)) | (1 << (SparkSqlParser.ONLY - 140)) | (1 << (SparkSqlParser.OPTION - 140)) | (1 << (SparkSqlParser.OPTIONS - 140)) | (1 << (SparkSqlParser.OR - 140)) | (1 << (SparkSqlParser.ORDER - 140)) | (1 << (SparkSqlParser.OUT - 140)) | (1 << (SparkSqlParser.OUTER - 140)) | (1 << (SparkSqlParser.OUTPUTFORMAT - 140)) | (1 << (SparkSqlParser.OVER - 140)) | (1 << (SparkSqlParser.OVERLAPS - 140)) | (1 << (SparkSqlParser.OVERLAY - 140)) | (1 << (SparkSqlParser.OVERWRITE - 140)) | (1 << (SparkSqlParser.PARTITION - 140)) | (1 << (SparkSqlParser.PARTITIONED - 140)) | (1 << (SparkSqlParser.PARTITIONS - 140)) | (1 << (SparkSqlParser.PERCENTLIT - 140)) | (1 << (SparkSqlParser.PIVOT - 140)))) !== 0) || ((((_la - 172)) & ~0x1f) == 0 && ((1 << (_la - 172)) & ((1 << (SparkSqlParser.PLACING - 172)) | (1 << (SparkSqlParser.POSITION - 172)) | (1 << (SparkSqlParser.PRECEDING - 172)) | (1 << (SparkSqlParser.PRIMARY - 172)) | (1 << (SparkSqlParser.PRINCIPALS - 172)) | (1 << (SparkSqlParser.PROPERTIES - 172)) | (1 << (SparkSqlParser.PURGE - 172)) | (1 << (SparkSqlParser.QUERY - 172)) | (1 << (SparkSqlParser.RANGE - 172)) | (1 << (SparkSqlParser.RECORDREADER - 172)) | (1 << (SparkSqlParser.RECORDWRITER - 172)) | (1 << (SparkSqlParser.RECOVER - 172)) | (1 << (SparkSqlParser.REDUCE - 172)) | (1 << (SparkSqlParser.REFERENCES - 172)) | (1 << (SparkSqlParser.REFRESH - 172)) | (1 << (SparkSqlParser.RENAME - 172)) | (1 << (SparkSqlParser.REPAIR - 172)) | (1 << (SparkSqlParser.REPLACE - 172)) | (1 << (SparkSqlParser.RESET - 172)) | (1 << (SparkSqlParser.RESTRICT - 172)) | (1 << (SparkSqlParser.REVOKE - 172)) | (1 << (SparkSqlParser.RLIKE - 172)) | (1 << (SparkSqlParser.ROLE - 172)) | (1 << (SparkSqlParser.ROLES - 172)) | (1 << (SparkSqlParser.ROLLBACK - 172)) | (1 << (SparkSqlParser.ROLLUP - 172)) | (1 << (SparkSqlParser.ROW - 172)) | (1 << (SparkSqlParser.ROWS - 172)) | (1 << (SparkSqlParser.SCHEMA - 172)) | (1 << (SparkSqlParser.SELECT - 172)))) !== 0) || ((((_la - 204)) & ~0x1f) == 0 && ((1 << (_la - 204)) & ((1 << (SparkSqlParser.SEPARATED - 204)) | (1 << (SparkSqlParser.SERDE - 204)) | (1 << (SparkSqlParser.SERDEPROPERTIES - 204)) | (1 << (SparkSqlParser.SESSION_USER - 204)) | (1 << (SparkSqlParser.SET - 204)) | (1 << (SparkSqlParser.SETS - 204)) | (1 << (SparkSqlParser.SHOW - 204)) | (1 << (SparkSqlParser.SKEWED - 204)) | (1 << (SparkSqlParser.SOME - 204)) | (1 << (SparkSqlParser.SORT - 204)) | (1 << (SparkSqlParser.SORTED - 204)) | (1 << (SparkSqlParser.START - 204)) | (1 << (SparkSqlParser.STATISTICS - 204)) | (1 << (SparkSqlParser.STORED - 204)) | (1 << (SparkSqlParser.STRATIFY - 204)) | (1 << (SparkSqlParser.STRUCT - 204)) | (1 << (SparkSqlParser.SUBSTR - 204)) | (1 << (SparkSqlParser.SUBSTRING - 204)) | (1 << (SparkSqlParser.TABLE - 204)) | (1 << (SparkSqlParser.TABLES - 204)) | (1 << (SparkSqlParser.TABLESAMPLE - 204)) | (1 << (SparkSqlParser.TBLPROPERTIES - 204)) | (1 << (SparkSqlParser.TEMPORARY - 204)) | (1 << (SparkSqlParser.TERMINATED - 204)) | (1 << (SparkSqlParser.THEN - 204)) | (1 << (SparkSqlParser.TIME - 204)) | (1 << (SparkSqlParser.TO - 204)) | (1 << (SparkSqlParser.TOUCH - 204)) | (1 << (SparkSqlParser.TRAILING - 204)) | (1 << (SparkSqlParser.TRANSACTION - 204)) | (1 << (SparkSqlParser.TRANSACTIONS - 204)))) !== 0) || ((((_la - 236)) & ~0x1f) == 0 && ((1 << (_la - 236)) & ((1 << (SparkSqlParser.TRANSFORM - 236)) | (1 << (SparkSqlParser.TRIM - 236)) | (1 << (SparkSqlParser.TRUE - 236)) | (1 << (SparkSqlParser.TRUNCATE - 236)) | (1 << (SparkSqlParser.TYPE - 236)) | (1 << (SparkSqlParser.UNARCHIVE - 236)) | (1 << (SparkSqlParser.UNBOUNDED - 236)) | (1 << (SparkSqlParser.UNCACHE - 236)) | (1 << (SparkSqlParser.UNIQUE - 236)) | (1 << (SparkSqlParser.UNKNOWN - 236)) | (1 << (SparkSqlParser.UNLOCK - 236)) | (1 << (SparkSqlParser.UNSET - 236)) | (1 << (SparkSqlParser.UPDATE - 236)) | (1 << (SparkSqlParser.USE - 236)) | (1 << (SparkSqlParser.USER - 236)) | (1 << (SparkSqlParser.VALUES - 236)) | (1 << (SparkSqlParser.VIEW - 236)) | (1 << (SparkSqlParser.VIEWS - 236)) | (1 << (SparkSqlParser.WHEN - 236)) | (1 << (SparkSqlParser.WHERE - 236)) | (1 << (SparkSqlParser.WINDOW - 236)) | (1 << (SparkSqlParser.WITH - 236)) | (1 << (SparkSqlParser.ZONE - 236)))) !== 0))) { this._errHandler.recoverInline(this); } else { this._errHandler.reportMatch(this); this.consume(); } } catch (re) { if(re instanceof antlr4.error.RecognitionException) { localctx.exception = re; this._errHandler.reportError(this, re); this._errHandler.recover(this, re); } else { throw re; } } finally { this.exitRule(); } return localctx; }; SparkSqlParser.prototype.sempred = function(localctx, ruleIndex, predIndex) { switch(ruleIndex) { case 41: return this.queryTerm_sempred(localctx, predIndex); case 94: return this.booleanExpression_sempred(localctx, predIndex); case 96: return this.valueExpression_sempred(localctx, predIndex); case 97: return this.primaryExpression_sempred(localctx, predIndex); case 128: return this.identifier_sempred(localctx, predIndex); case 129: return this.strictIdentifier_sempred(localctx, predIndex); case 131: return this.number_sempred(localctx, predIndex); default: throw "No predicate with index:" + ruleIndex; } }; SparkSqlParser.prototype.queryTerm_sempred = function(localctx, predIndex) { switch(predIndex) { case 0: return this.precpred(this._ctx, 3); case 1: return legacy_setops_precedence_enbled; case 2: return this.precpred(this._ctx, 2); case 3: return !legacy_setops_precedence_enbled; case 4: return this.precpred(this._ctx, 1); case 5: return !legacy_setops_precedence_enbled; default: throw "No predicate with index:" + predIndex; } }; SparkSqlParser.prototype.booleanExpression_sempred = function(localctx, predIndex) { switch(predIndex) { case 6: return this.precpred(this._ctx, 2); case 7: return this.precpred(this._ctx, 1); default: throw "No predicate with index:" + predIndex; } }; SparkSqlParser.prototype.valueExpression_sempred = function(localctx, predIndex) { switch(predIndex) { case 8: return this.precpred(this._ctx, 6); case 9: return this.precpred(this._ctx, 5); case 10: return this.precpred(this._ctx, 4); case 11: return this.precpred(this._ctx, 3); case 12: return this.precpred(this._ctx, 2); case 13: return this.precpred(this._ctx, 1); default: throw "No predicate with index:" + predIndex; } }; SparkSqlParser.prototype.primaryExpression_sempred = function(localctx, predIndex) { switch(predIndex) { case 14: return this.precpred(this._ctx, 8); case 15: return this.precpred(this._ctx, 6); default: throw "No predicate with index:" + predIndex; } }; SparkSqlParser.prototype.identifier_sempred = function(localctx, predIndex) { switch(predIndex) { case 16: return !SQL_standard_keyword_behavior; default: throw "No predicate with index:" + predIndex; } }; SparkSqlParser.prototype.strictIdentifier_sempred = function(localctx, predIndex) { switch(predIndex) { case 17: return SQL_standard_keyword_behavior; case 18: return !SQL_standard_keyword_behavior; default: throw "No predicate with index:" + predIndex; } }; SparkSqlParser.prototype.number_sempred = function(localctx, predIndex) { switch(predIndex) { case 19: return !legacy_exponent_literal_as_decimal_enabled; case 20: return !legacy_exponent_literal_as_decimal_enabled; case 21: return legacy_exponent_literal_as_decimal_enabled; default: throw "No predicate with index:" + predIndex; } }; exports.SparkSqlParser = SparkSqlParser;