Fossil SCM

Update to the latest SQLite

drh 2009-11-04 13:32 UTC trunk
Commit 355e34ba9d175082edfb43b1b4ec0ddfd4fc1fae
2 files changed +756 -740 +2 -2
+756 -740
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -14,12 +14,10 @@
1414
** the text of this file. Search for "Begin file sqlite3.h" to find the start
1515
** of the embedded sqlite3.h header file.) Additional code files may be needed
1616
** if you want a wrapper to interface SQLite with your choice of programming
1717
** language. The code for the "sqlite3" command-line shell is also in a
1818
** separate file. This file contains only code for the core SQLite library.
19
-**
20
-** This amalgamation was generated on 2009-11-01 19:22:03 UTC.
2119
*/
2220
#define SQLITE_CORE 1
2321
#define SQLITE_AMALGAMATION 1
2422
#ifndef SQLITE_PRIVATE
2523
# define SQLITE_PRIVATE static
@@ -651,11 +649,11 @@
651649
**
652650
** Requirements: [H10011] [H10014]
653651
*/
654652
#define SQLITE_VERSION "3.6.20"
655653
#define SQLITE_VERSION_NUMBER 3006020
656
-#define SQLITE_SOURCE_ID "2009-10-30 14:27:15 612952743da28e651512547fc0d3925f4c698eb4"
654
+#define SQLITE_SOURCE_ID "2009-11-04 13:30:02 eb7a544fe49d1626bacecfe53ddc03fe082e3243"
657655
658656
/*
659657
** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
660658
** KEYWORDS: sqlite3_version
661659
**
@@ -2819,11 +2817,11 @@
28192817
*/
28202818
SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
28212819
28222820
/*
28232821
** CAPI3REF: Run-Time Limit Categories {H12790} <H12760>
2824
-** KEYWORDS: {limit category} {limit categories}
2822
+** KEYWORDS: {limit category} {*limit categories}
28252823
**
28262824
** These constants define various performance limits
28272825
** that can be lowered at run-time using [sqlite3_limit()].
28282826
** The synopsis of the meanings of the various limits is shown below.
28292827
** Additional information is available at [limits | Limits in SQLite].
@@ -7320,149 +7318,149 @@
73207318
*/
73217319
/************** Include opcodes.h in the middle of vdbe.h ********************/
73227320
/************** Begin file opcodes.h *****************************************/
73237321
/* Automatically generated. Do not edit */
73247322
/* See the mkopcodeh.awk script for details */
7325
-#define OP_ReadCookie 1
7326
-#define OP_AutoCommit 2
7327
-#define OP_Found 3
7328
-#define OP_NullRow 4
7329
-#define OP_Lt 79 /* same as TK_LT */
7330
-#define OP_RowSetTest 5
7331
-#define OP_Variable 6
7332
-#define OP_RealAffinity 7
7333
-#define OP_Sort 8
7334
-#define OP_Affinity 9
7335
-#define OP_IfNot 10
7336
-#define OP_Gosub 11
7323
+#define OP_Goto 1
7324
+#define OP_Gosub 2
7325
+#define OP_Return 3
7326
+#define OP_Yield 4
7327
+#define OP_HaltIfNull 5
7328
+#define OP_Halt 6
7329
+#define OP_Integer 7
7330
+#define OP_Int64 8
7331
+#define OP_Real 130 /* same as TK_FLOAT */
7332
+#define OP_String8 94 /* same as TK_STRING */
7333
+#define OP_String 9
7334
+#define OP_Null 10
7335
+#define OP_Blob 11
7336
+#define OP_Variable 12
7337
+#define OP_Move 13
7338
+#define OP_Copy 14
7339
+#define OP_SCopy 15
7340
+#define OP_ResultRow 16
7341
+#define OP_Concat 91 /* same as TK_CONCAT */
73377342
#define OP_Add 86 /* same as TK_PLUS */
7338
-#define OP_NotFound 12
7339
-#define OP_ResultRow 13
7340
-#define OP_IsNull 73 /* same as TK_ISNULL */
7341
-#define OP_SeekLe 14
7342
-#define OP_Rowid 15
7343
-#define OP_CreateIndex 16
7344
-#define OP_Explain 17
7345
-#define OP_DropIndex 18
7346
-#define OP_Null 20
7347
-#define OP_Program 21
7348
-#define OP_ToInt 144 /* same as TK_TO_INT */
7349
-#define OP_Int64 22
7350
-#define OP_LoadAnalysis 23
7351
-#define OP_IdxInsert 24
7352
-#define OP_VUpdate 25
7353
-#define OP_Next 26
7343
+#define OP_Subtract 87 /* same as TK_MINUS */
7344
+#define OP_Multiply 88 /* same as TK_STAR */
7345
+#define OP_Divide 89 /* same as TK_SLASH */
7346
+#define OP_Remainder 90 /* same as TK_REM */
7347
+#define OP_CollSeq 17
7348
+#define OP_Function 18
7349
+#define OP_BitAnd 82 /* same as TK_BITAND */
7350
+#define OP_BitOr 83 /* same as TK_BITOR */
7351
+#define OP_ShiftLeft 84 /* same as TK_LSHIFT */
7352
+#define OP_ShiftRight 85 /* same as TK_RSHIFT */
7353
+#define OP_AddImm 20
7354
+#define OP_MustBeInt 21
7355
+#define OP_RealAffinity 22
7356
+#define OP_ToText 141 /* same as TK_TO_TEXT */
7357
+#define OP_ToBlob 142 /* same as TK_TO_BLOB */
73547358
#define OP_ToNumeric 143 /* same as TK_TO_NUMERIC*/
7355
-#define OP_Ge 80 /* same as TK_GE */
7356
-#define OP_BitNot 93 /* same as TK_BITNOT */
7357
-#define OP_SeekLt 27
7358
-#define OP_Rewind 28
7359
-#define OP_Multiply 88 /* same as TK_STAR */
7359
+#define OP_ToInt 144 /* same as TK_TO_INT */
73607360
#define OP_ToReal 145 /* same as TK_TO_REAL */
7361
+#define OP_Eq 76 /* same as TK_EQ */
7362
+#define OP_Ne 75 /* same as TK_NE */
7363
+#define OP_Lt 79 /* same as TK_LT */
7364
+#define OP_Le 78 /* same as TK_LE */
73617365
#define OP_Gt 77 /* same as TK_GT */
7362
-#define OP_RowSetRead 29
7363
-#define OP_Last 30
7364
-#define OP_MustBeInt 31
7365
-#define OP_Ne 75 /* same as TK_NE */
7366
-#define OP_IncrVacuum 32
7367
-#define OP_String 33
7368
-#define OP_VFilter 34
7369
-#define OP_Count 35
7370
-#define OP_Close 36
7371
-#define OP_AggFinal 37
7372
-#define OP_RowData 38
7373
-#define OP_IdxRowid 39
7374
-#define OP_Param 40
7375
-#define OP_Pagecount 41
7376
-#define OP_BitOr 83 /* same as TK_BITOR */
7366
+#define OP_Ge 80 /* same as TK_GE */
7367
+#define OP_Permutation 23
7368
+#define OP_Compare 24
7369
+#define OP_Jump 25
7370
+#define OP_And 69 /* same as TK_AND */
7371
+#define OP_Or 68 /* same as TK_OR */
7372
+#define OP_Not 19 /* same as TK_NOT */
7373
+#define OP_BitNot 93 /* same as TK_BITNOT */
7374
+#define OP_If 26
7375
+#define OP_IfNot 27
7376
+#define OP_IsNull 73 /* same as TK_ISNULL */
73777377
#define OP_NotNull 74 /* same as TK_NOTNULL */
7378
-#define OP_SeekGe 42
7379
-#define OP_Not 19 /* same as TK_NOT */
7380
-#define OP_OpenPseudo 43
7381
-#define OP_Halt 44
7382
-#define OP_Compare 45
7383
-#define OP_NewRowid 46
7384
-#define OP_Real 130 /* same as TK_FLOAT */
7385
-#define OP_IdxLT 47
7386
-#define OP_SeekGt 48
7387
-#define OP_MemMax 49
7388
-#define OP_Function 50
7389
-#define OP_IntegrityCk 51
7390
-#define OP_Remainder 90 /* same as TK_REM */
7391
-#define OP_FkCounter 52
7392
-#define OP_SCopy 53
7393
-#define OP_ShiftLeft 84 /* same as TK_LSHIFT */
7394
-#define OP_IfNeg 54
7395
-#define OP_BitAnd 82 /* same as TK_BITAND */
7396
-#define OP_Or 68 /* same as TK_OR */
7397
-#define OP_NotExists 55
7398
-#define OP_VDestroy 56
7399
-#define OP_IdxDelete 57
7400
-#define OP_Vacuum 58
7401
-#define OP_Copy 59
7402
-#define OP_If 60
7403
-#define OP_Jump 61
7404
-#define OP_Destroy 62
7405
-#define OP_AggStep 63
7406
-#define OP_Clear 64
7407
-#define OP_Insert 65
7408
-#define OP_Permutation 66
7409
-#define OP_VBegin 67
7410
-#define OP_OpenEphemeral 70
7411
-#define OP_IdxGE 71
7412
-#define OP_Trace 72
7413
-#define OP_Divide 89 /* same as TK_SLASH */
7414
-#define OP_String8 94 /* same as TK_STRING */
7415
-#define OP_Concat 91 /* same as TK_CONCAT */
7416
-#define OP_MakeRecord 81
7417
-#define OP_Yield 92
7418
-#define OP_SetCookie 95
7419
-#define OP_Prev 96
7420
-#define OP_DropTrigger 97
7421
-#define OP_FkIfZero 98
7422
-#define OP_And 69 /* same as TK_AND */
7423
-#define OP_VColumn 99
7424
-#define OP_Return 100
7425
-#define OP_OpenWrite 101
7426
-#define OP_Integer 102
7427
-#define OP_Transaction 103
7428
-#define OP_IfPos 104
7429
-#define OP_RowSetAdd 105
7430
-#define OP_CollSeq 106
7431
-#define OP_Savepoint 107
7432
-#define OP_VRename 108
7433
-#define OP_ToBlob 142 /* same as TK_TO_BLOB */
7434
-#define OP_Sequence 109
7435
-#define OP_ShiftRight 85 /* same as TK_RSHIFT */
7436
-#define OP_HaltIfNull 110
7437
-#define OP_VCreate 111
7438
-#define OP_CreateTable 112
7439
-#define OP_AddImm 113
7440
-#define OP_ToText 141 /* same as TK_TO_TEXT */
7441
-#define OP_DropTable 114
7442
-#define OP_IsUnique 115
7443
-#define OP_VOpen 116
7444
-#define OP_IfZero 117
7445
-#define OP_Noop 118
7446
-#define OP_InsertInt 119
7447
-#define OP_RowKey 120
7448
-#define OP_Expire 121
7449
-#define OP_Delete 122
7450
-#define OP_Subtract 87 /* same as TK_MINUS */
7451
-#define OP_Blob 123
7452
-#define OP_Move 124
7453
-#define OP_Goto 125
7454
-#define OP_ParseSchema 126
7455
-#define OP_Eq 76 /* same as TK_EQ */
7378
+#define OP_Column 28
7379
+#define OP_Affinity 29
7380
+#define OP_MakeRecord 30
7381
+#define OP_Count 31
7382
+#define OP_Savepoint 32
7383
+#define OP_AutoCommit 33
7384
+#define OP_Transaction 34
7385
+#define OP_ReadCookie 35
7386
+#define OP_SetCookie 36
7387
+#define OP_VerifyCookie 37
7388
+#define OP_OpenRead 38
7389
+#define OP_OpenWrite 39
7390
+#define OP_OpenEphemeral 40
7391
+#define OP_OpenPseudo 41
7392
+#define OP_Close 42
7393
+#define OP_SeekLt 43
7394
+#define OP_SeekLe 44
7395
+#define OP_SeekGe 45
7396
+#define OP_SeekGt 46
7397
+#define OP_Seek 47
7398
+#define OP_NotFound 48
7399
+#define OP_Found 49
7400
+#define OP_IsUnique 50
7401
+#define OP_NotExists 51
7402
+#define OP_Sequence 52
7403
+#define OP_NewRowid 53
7404
+#define OP_Insert 54
7405
+#define OP_InsertInt 55
7406
+#define OP_Delete 56
7407
+#define OP_ResetCount 57
7408
+#define OP_RowKey 58
7409
+#define OP_RowData 59
7410
+#define OP_Rowid 60
7411
+#define OP_NullRow 61
7412
+#define OP_Last 62
7413
+#define OP_Sort 63
7414
+#define OP_Rewind 64
7415
+#define OP_Prev 65
7416
+#define OP_Next 66
7417
+#define OP_IdxInsert 67
7418
+#define OP_IdxDelete 70
7419
+#define OP_IdxRowid 71
7420
+#define OP_IdxLT 72
7421
+#define OP_IdxGE 81
7422
+#define OP_Destroy 92
7423
+#define OP_Clear 95
7424
+#define OP_CreateIndex 96
7425
+#define OP_CreateTable 97
7426
+#define OP_ParseSchema 98
7427
+#define OP_LoadAnalysis 99
7428
+#define OP_DropTable 100
7429
+#define OP_DropIndex 101
7430
+#define OP_DropTrigger 102
7431
+#define OP_IntegrityCk 103
7432
+#define OP_RowSetAdd 104
7433
+#define OP_RowSetRead 105
7434
+#define OP_RowSetTest 106
7435
+#define OP_Program 107
7436
+#define OP_Param 108
7437
+#define OP_FkCounter 109
7438
+#define OP_FkIfZero 110
7439
+#define OP_MemMax 111
7440
+#define OP_IfPos 112
7441
+#define OP_IfNeg 113
7442
+#define OP_IfZero 114
7443
+#define OP_AggStep 115
7444
+#define OP_AggFinal 116
7445
+#define OP_Vacuum 117
7446
+#define OP_IncrVacuum 118
7447
+#define OP_Expire 119
7448
+#define OP_TableLock 120
7449
+#define OP_VBegin 121
7450
+#define OP_VCreate 122
7451
+#define OP_VDestroy 123
7452
+#define OP_VOpen 124
7453
+#define OP_VFilter 125
7454
+#define OP_VColumn 126
74567455
#define OP_VNext 127
7457
-#define OP_Seek 128
7458
-#define OP_Le 78 /* same as TK_LE */
7459
-#define OP_TableLock 129
7460
-#define OP_VerifyCookie 131
7461
-#define OP_Column 132
7462
-#define OP_OpenRead 133
7463
-#define OP_ResetCount 134
7456
+#define OP_VRename 128
7457
+#define OP_VUpdate 129
7458
+#define OP_Pagecount 131
7459
+#define OP_Trace 132
7460
+#define OP_Noop 133
7461
+#define OP_Explain 134
74647462
74657463
/* The following opcode values are never used */
74667464
#define OP_NotUsed_135 135
74677465
#define OP_NotUsed_136 136
74687466
#define OP_NotUsed_137 137
@@ -7480,27 +7478,27 @@
74807478
#define OPFLG_IN1 0x0004 /* in1: P1 is an input */
74817479
#define OPFLG_IN2 0x0008 /* in2: P2 is an input */
74827480
#define OPFLG_IN3 0x0010 /* in3: P3 is an input */
74837481
#define OPFLG_OUT3 0x0020 /* out3: P3 is an output */
74847482
#define OPFLG_INITIALIZER {\
7485
-/* 0 */ 0x00, 0x02, 0x00, 0x11, 0x00, 0x15, 0x00, 0x04,\
7486
-/* 8 */ 0x01, 0x00, 0x05, 0x01, 0x11, 0x00, 0x11, 0x02,\
7487
-/* 16 */ 0x02, 0x00, 0x00, 0x04, 0x02, 0x01, 0x02, 0x00,\
7488
-/* 24 */ 0x08, 0x00, 0x01, 0x11, 0x01, 0x21, 0x01, 0x05,\
7489
-/* 32 */ 0x01, 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x02,\
7490
-/* 40 */ 0x02, 0x02, 0x11, 0x00, 0x00, 0x00, 0x02, 0x11,\
7491
-/* 48 */ 0x11, 0x08, 0x00, 0x00, 0x00, 0x04, 0x05, 0x11,\
7492
-/* 56 */ 0x00, 0x00, 0x00, 0x04, 0x05, 0x01, 0x02, 0x00,\
7493
-/* 64 */ 0x00, 0x00, 0x00, 0x00, 0x2c, 0x2c, 0x00, 0x11,\
7494
-/* 72 */ 0x00, 0x05, 0x05, 0x15, 0x15, 0x15, 0x15, 0x15,\
7495
-/* 80 */ 0x15, 0x00, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c,\
7496
-/* 88 */ 0x2c, 0x2c, 0x2c, 0x2c, 0x04, 0x04, 0x02, 0x10,\
7497
-/* 96 */ 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x02, 0x00,\
7498
-/* 104 */ 0x05, 0x08, 0x00, 0x00, 0x00, 0x02, 0x10, 0x00,\
7499
-/* 112 */ 0x02, 0x04, 0x00, 0x11, 0x00, 0x05, 0x00, 0x00,\
7500
-/* 120 */ 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01,\
7501
-/* 128 */ 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\
7483
+/* 0 */ 0x00, 0x01, 0x01, 0x04, 0x04, 0x10, 0x00, 0x02,\
7484
+/* 8 */ 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x04, 0x04,\
7485
+/* 16 */ 0x00, 0x00, 0x00, 0x04, 0x04, 0x05, 0x04, 0x00,\
7486
+/* 24 */ 0x00, 0x01, 0x05, 0x05, 0x00, 0x00, 0x00, 0x02,\
7487
+/* 32 */ 0x00, 0x00, 0x00, 0x02, 0x10, 0x00, 0x00, 0x00,\
7488
+/* 40 */ 0x00, 0x00, 0x00, 0x11, 0x11, 0x11, 0x11, 0x08,\
7489
+/* 48 */ 0x11, 0x11, 0x11, 0x11, 0x02, 0x02, 0x00, 0x00,\
7490
+/* 56 */ 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x01,\
7491
+/* 64 */ 0x01, 0x01, 0x01, 0x08, 0x2c, 0x2c, 0x00, 0x02,\
7492
+/* 72 */ 0x11, 0x05, 0x05, 0x15, 0x15, 0x15, 0x15, 0x15,\
7493
+/* 80 */ 0x15, 0x11, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c,\
7494
+/* 88 */ 0x2c, 0x2c, 0x2c, 0x2c, 0x02, 0x04, 0x02, 0x00,\
7495
+/* 96 */ 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
7496
+/* 104 */ 0x08, 0x21, 0x15, 0x01, 0x02, 0x00, 0x01, 0x08,\
7497
+/* 112 */ 0x05, 0x05, 0x05, 0x00, 0x00, 0x00, 0x01, 0x00,\
7498
+/* 120 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,\
7499
+/* 128 */ 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00,\
75027500
/* 136 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04,\
75037501
/* 144 */ 0x04, 0x04,}
75047502
75057503
/************** End of opcodes.h *********************************************/
75067504
/************** Continuing where we left off in vdbe.h ***********************/
@@ -9116,10 +9114,26 @@
91169114
} *aFunc;
91179115
int nFunc; /* Number of entries in aFunc[] */
91189116
int nFuncAlloc; /* Number of slots allocated for aFunc[] */
91199117
};
91209118
9119
+/*
9120
+** The datatype ynVar is a signed integer, either 16-bit or 32-bit.
9121
+** Usually it is 16-bits. But if SQLITE_MAX_VARIABLE_NUMBER is greater
9122
+** than 32767 we have to make it 32-bit. 16-bit is preferred because
9123
+** it uses less memory in the Expr object, which is a big memory user
9124
+** in systems with lots of prepared statements. And few applications
9125
+** need more than about 10 or 20 variables. But some extreme users want
9126
+** to have prepared statements with over 32767 variables, and for them
9127
+** the option is available (at compile-time).
9128
+*/
9129
+#if SQLITE_MAX_VARIABLE_NUMBER<=32767
9130
+typedef i64 ynVar;
9131
+#else
9132
+typedef int ynVar;
9133
+#endif
9134
+
91219135
/*
91229136
** Each node of an expression in the parse tree is an instance
91239137
** of this structure.
91249138
**
91259139
** Expr.op is the opcode. The integer parser token codes are reused
@@ -9209,11 +9223,11 @@
92099223
*********************************************************************/
92109224
92119225
int iTable; /* TK_COLUMN: cursor number of table holding column
92129226
** TK_REGISTER: register number
92139227
** TK_TRIGGER: 1 -> new, 0 -> old */
9214
- i16 iColumn; /* TK_COLUMN: column index. -1 for rowid.
9228
+ ynVar iColumn; /* TK_COLUMN: column index. -1 for rowid.
92159229
** TK_VARIABLE: variable number (always >= 1). */
92169230
i16 iAgg; /* Which entry in pAggInfo->aCol[] or ->aFunc[] */
92179231
i16 iRightJoinTable; /* If EP_FromJoin, the right table of the join */
92189232
u8 flags2; /* Second set of flags. EP2_... */
92199233
u8 op2; /* If a TK_REGISTER, the original value of Expr.op */
@@ -10364,11 +10378,11 @@
1036410378
# define sqlite3AuthContextPush(a,b,c)
1036510379
# define sqlite3AuthContextPop(a) ((void)(a))
1036610380
#endif
1036710381
SQLITE_PRIVATE void sqlite3Attach(Parse*, Expr*, Expr*, Expr*);
1036810382
SQLITE_PRIVATE void sqlite3Detach(Parse*, Expr*);
10369
-SQLITE_PRIVATE int sqlite3BtreeFactory(const sqlite3 *db, const char *zFilename,
10383
+SQLITE_PRIVATE int sqlite3BtreeFactory(sqlite3 *db, const char *zFilename,
1037010384
int omitJournal, int nCache, int flags, Btree **ppBtree);
1037110385
SQLITE_PRIVATE int sqlite3FixInit(DbFixer*, Parse*, int, const char*, const Token*);
1037210386
SQLITE_PRIVATE int sqlite3FixSrcList(DbFixer*, SrcList*);
1037310387
SQLITE_PRIVATE int sqlite3FixSelect(DbFixer*, Select*);
1037410388
SQLITE_PRIVATE int sqlite3FixExpr(DbFixer*, Expr*);
@@ -17802,11 +17816,11 @@
1780217816
u16 nResColumn; /* Number of columns in one row of the result set */
1780317817
u16 nCursor; /* Number of slots in apCsr[] */
1780417818
VdbeCursor **apCsr; /* One element of this array for each open cursor */
1780517819
u8 errorAction; /* Recovery action to do in case of an error */
1780617820
u8 okVar; /* True if azVar[] has been initialized */
17807
- u16 nVar; /* Number of entries in aVar[] */
17821
+ ynVar nVar; /* Number of entries in aVar[] */
1780817822
Mem *aVar; /* Values for the OP_Variable opcode. */
1780917823
char **azVar; /* Name of variables */
1781017824
u32 magic; /* Magic number for sanity checking */
1781117825
int nMem; /* Number of memory locations currently allocated */
1781217826
Mem *aMem; /* The memory locations */
@@ -19832,91 +19846,91 @@
1983219846
/* Automatically generated. Do not edit */
1983319847
/* See the mkopcodec.awk script for details. */
1983419848
#if !defined(SQLITE_OMIT_EXPLAIN) || !defined(NDEBUG) || defined(VDBE_PROFILE) || defined(SQLITE_DEBUG)
1983519849
SQLITE_PRIVATE const char *sqlite3OpcodeName(int i){
1983619850
static const char *const azName[] = { "?",
19837
- /* 1 */ "ReadCookie",
19838
- /* 2 */ "AutoCommit",
19839
- /* 3 */ "Found",
19840
- /* 4 */ "NullRow",
19841
- /* 5 */ "RowSetTest",
19842
- /* 6 */ "Variable",
19843
- /* 7 */ "RealAffinity",
19844
- /* 8 */ "Sort",
19845
- /* 9 */ "Affinity",
19846
- /* 10 */ "IfNot",
19847
- /* 11 */ "Gosub",
19848
- /* 12 */ "NotFound",
19849
- /* 13 */ "ResultRow",
19850
- /* 14 */ "SeekLe",
19851
- /* 15 */ "Rowid",
19852
- /* 16 */ "CreateIndex",
19853
- /* 17 */ "Explain",
19854
- /* 18 */ "DropIndex",
19851
+ /* 1 */ "Goto",
19852
+ /* 2 */ "Gosub",
19853
+ /* 3 */ "Return",
19854
+ /* 4 */ "Yield",
19855
+ /* 5 */ "HaltIfNull",
19856
+ /* 6 */ "Halt",
19857
+ /* 7 */ "Integer",
19858
+ /* 8 */ "Int64",
19859
+ /* 9 */ "String",
19860
+ /* 10 */ "Null",
19861
+ /* 11 */ "Blob",
19862
+ /* 12 */ "Variable",
19863
+ /* 13 */ "Move",
19864
+ /* 14 */ "Copy",
19865
+ /* 15 */ "SCopy",
19866
+ /* 16 */ "ResultRow",
19867
+ /* 17 */ "CollSeq",
19868
+ /* 18 */ "Function",
1985519869
/* 19 */ "Not",
19856
- /* 20 */ "Null",
19857
- /* 21 */ "Program",
19858
- /* 22 */ "Int64",
19859
- /* 23 */ "LoadAnalysis",
19860
- /* 24 */ "IdxInsert",
19861
- /* 25 */ "VUpdate",
19862
- /* 26 */ "Next",
19863
- /* 27 */ "SeekLt",
19864
- /* 28 */ "Rewind",
19865
- /* 29 */ "RowSetRead",
19866
- /* 30 */ "Last",
19867
- /* 31 */ "MustBeInt",
19868
- /* 32 */ "IncrVacuum",
19869
- /* 33 */ "String",
19870
- /* 34 */ "VFilter",
19871
- /* 35 */ "Count",
19872
- /* 36 */ "Close",
19873
- /* 37 */ "AggFinal",
19874
- /* 38 */ "RowData",
19875
- /* 39 */ "IdxRowid",
19876
- /* 40 */ "Param",
19877
- /* 41 */ "Pagecount",
19878
- /* 42 */ "SeekGe",
19879
- /* 43 */ "OpenPseudo",
19880
- /* 44 */ "Halt",
19881
- /* 45 */ "Compare",
19882
- /* 46 */ "NewRowid",
19883
- /* 47 */ "IdxLT",
19884
- /* 48 */ "SeekGt",
19885
- /* 49 */ "MemMax",
19886
- /* 50 */ "Function",
19887
- /* 51 */ "IntegrityCk",
19888
- /* 52 */ "FkCounter",
19889
- /* 53 */ "SCopy",
19890
- /* 54 */ "IfNeg",
19891
- /* 55 */ "NotExists",
19892
- /* 56 */ "VDestroy",
19893
- /* 57 */ "IdxDelete",
19894
- /* 58 */ "Vacuum",
19895
- /* 59 */ "Copy",
19896
- /* 60 */ "If",
19897
- /* 61 */ "Jump",
19898
- /* 62 */ "Destroy",
19899
- /* 63 */ "AggStep",
19900
- /* 64 */ "Clear",
19901
- /* 65 */ "Insert",
19902
- /* 66 */ "Permutation",
19903
- /* 67 */ "VBegin",
19870
+ /* 20 */ "AddImm",
19871
+ /* 21 */ "MustBeInt",
19872
+ /* 22 */ "RealAffinity",
19873
+ /* 23 */ "Permutation",
19874
+ /* 24 */ "Compare",
19875
+ /* 25 */ "Jump",
19876
+ /* 26 */ "If",
19877
+ /* 27 */ "IfNot",
19878
+ /* 28 */ "Column",
19879
+ /* 29 */ "Affinity",
19880
+ /* 30 */ "MakeRecord",
19881
+ /* 31 */ "Count",
19882
+ /* 32 */ "Savepoint",
19883
+ /* 33 */ "AutoCommit",
19884
+ /* 34 */ "Transaction",
19885
+ /* 35 */ "ReadCookie",
19886
+ /* 36 */ "SetCookie",
19887
+ /* 37 */ "VerifyCookie",
19888
+ /* 38 */ "OpenRead",
19889
+ /* 39 */ "OpenWrite",
19890
+ /* 40 */ "OpenEphemeral",
19891
+ /* 41 */ "OpenPseudo",
19892
+ /* 42 */ "Close",
19893
+ /* 43 */ "SeekLt",
19894
+ /* 44 */ "SeekLe",
19895
+ /* 45 */ "SeekGe",
19896
+ /* 46 */ "SeekGt",
19897
+ /* 47 */ "Seek",
19898
+ /* 48 */ "NotFound",
19899
+ /* 49 */ "Found",
19900
+ /* 50 */ "IsUnique",
19901
+ /* 51 */ "NotExists",
19902
+ /* 52 */ "Sequence",
19903
+ /* 53 */ "NewRowid",
19904
+ /* 54 */ "Insert",
19905
+ /* 55 */ "InsertInt",
19906
+ /* 56 */ "Delete",
19907
+ /* 57 */ "ResetCount",
19908
+ /* 58 */ "RowKey",
19909
+ /* 59 */ "RowData",
19910
+ /* 60 */ "Rowid",
19911
+ /* 61 */ "NullRow",
19912
+ /* 62 */ "Last",
19913
+ /* 63 */ "Sort",
19914
+ /* 64 */ "Rewind",
19915
+ /* 65 */ "Prev",
19916
+ /* 66 */ "Next",
19917
+ /* 67 */ "IdxInsert",
1990419918
/* 68 */ "Or",
1990519919
/* 69 */ "And",
19906
- /* 70 */ "OpenEphemeral",
19907
- /* 71 */ "IdxGE",
19908
- /* 72 */ "Trace",
19920
+ /* 70 */ "IdxDelete",
19921
+ /* 71 */ "IdxRowid",
19922
+ /* 72 */ "IdxLT",
1990919923
/* 73 */ "IsNull",
1991019924
/* 74 */ "NotNull",
1991119925
/* 75 */ "Ne",
1991219926
/* 76 */ "Eq",
1991319927
/* 77 */ "Gt",
1991419928
/* 78 */ "Le",
1991519929
/* 79 */ "Lt",
1991619930
/* 80 */ "Ge",
19917
- /* 81 */ "MakeRecord",
19931
+ /* 81 */ "IdxGE",
1991819932
/* 82 */ "BitAnd",
1991919933
/* 83 */ "BitOr",
1992019934
/* 84 */ "ShiftLeft",
1992119935
/* 85 */ "ShiftRight",
1992219936
/* 86 */ "Add",
@@ -19923,53 +19937,53 @@
1992319937
/* 87 */ "Subtract",
1992419938
/* 88 */ "Multiply",
1992519939
/* 89 */ "Divide",
1992619940
/* 90 */ "Remainder",
1992719941
/* 91 */ "Concat",
19928
- /* 92 */ "Yield",
19942
+ /* 92 */ "Destroy",
1992919943
/* 93 */ "BitNot",
1993019944
/* 94 */ "String8",
19931
- /* 95 */ "SetCookie",
19932
- /* 96 */ "Prev",
19933
- /* 97 */ "DropTrigger",
19934
- /* 98 */ "FkIfZero",
19935
- /* 99 */ "VColumn",
19936
- /* 100 */ "Return",
19937
- /* 101 */ "OpenWrite",
19938
- /* 102 */ "Integer",
19939
- /* 103 */ "Transaction",
19940
- /* 104 */ "IfPos",
19941
- /* 105 */ "RowSetAdd",
19942
- /* 106 */ "CollSeq",
19943
- /* 107 */ "Savepoint",
19944
- /* 108 */ "VRename",
19945
- /* 109 */ "Sequence",
19946
- /* 110 */ "HaltIfNull",
19947
- /* 111 */ "VCreate",
19948
- /* 112 */ "CreateTable",
19949
- /* 113 */ "AddImm",
19950
- /* 114 */ "DropTable",
19951
- /* 115 */ "IsUnique",
19952
- /* 116 */ "VOpen",
19953
- /* 117 */ "IfZero",
19954
- /* 118 */ "Noop",
19955
- /* 119 */ "InsertInt",
19956
- /* 120 */ "RowKey",
19957
- /* 121 */ "Expire",
19958
- /* 122 */ "Delete",
19959
- /* 123 */ "Blob",
19960
- /* 124 */ "Move",
19961
- /* 125 */ "Goto",
19962
- /* 126 */ "ParseSchema",
19945
+ /* 95 */ "Clear",
19946
+ /* 96 */ "CreateIndex",
19947
+ /* 97 */ "CreateTable",
19948
+ /* 98 */ "ParseSchema",
19949
+ /* 99 */ "LoadAnalysis",
19950
+ /* 100 */ "DropTable",
19951
+ /* 101 */ "DropIndex",
19952
+ /* 102 */ "DropTrigger",
19953
+ /* 103 */ "IntegrityCk",
19954
+ /* 104 */ "RowSetAdd",
19955
+ /* 105 */ "RowSetRead",
19956
+ /* 106 */ "RowSetTest",
19957
+ /* 107 */ "Program",
19958
+ /* 108 */ "Param",
19959
+ /* 109 */ "FkCounter",
19960
+ /* 110 */ "FkIfZero",
19961
+ /* 111 */ "MemMax",
19962
+ /* 112 */ "IfPos",
19963
+ /* 113 */ "IfNeg",
19964
+ /* 114 */ "IfZero",
19965
+ /* 115 */ "AggStep",
19966
+ /* 116 */ "AggFinal",
19967
+ /* 117 */ "Vacuum",
19968
+ /* 118 */ "IncrVacuum",
19969
+ /* 119 */ "Expire",
19970
+ /* 120 */ "TableLock",
19971
+ /* 121 */ "VBegin",
19972
+ /* 122 */ "VCreate",
19973
+ /* 123 */ "VDestroy",
19974
+ /* 124 */ "VOpen",
19975
+ /* 125 */ "VFilter",
19976
+ /* 126 */ "VColumn",
1996319977
/* 127 */ "VNext",
19964
- /* 128 */ "Seek",
19965
- /* 129 */ "TableLock",
19978
+ /* 128 */ "VRename",
19979
+ /* 129 */ "VUpdate",
1996619980
/* 130 */ "Real",
19967
- /* 131 */ "VerifyCookie",
19968
- /* 132 */ "Column",
19969
- /* 133 */ "OpenRead",
19970
- /* 134 */ "ResetCount",
19981
+ /* 131 */ "Pagecount",
19982
+ /* 132 */ "Trace",
19983
+ /* 133 */ "Noop",
19984
+ /* 134 */ "Explain",
1997119985
/* 135 */ "NotUsed_135",
1997219986
/* 136 */ "NotUsed_136",
1997319987
/* 137 */ "NotUsed_137",
1997419988
/* 138 */ "NotUsed_138",
1997519989
/* 139 */ "NotUsed_139",
@@ -28426,11 +28440,11 @@
2842628440
** returns the number of TCHARs written to the output
2842728441
** buffer, excluding the terminating null char.
2842828442
*/
2842928443
DWORD error = GetLastError();
2843028444
DWORD dwLen = 0;
28431
- char *zOut;
28445
+ char *zOut = 0;
2843228446
2843328447
if( isNT() ){
2843428448
WCHAR *zTempWide = NULL;
2843528449
dwLen = FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
2843628450
NULL,
@@ -33126,25 +33140,19 @@
3312633140
** sanity checksum.
3312733141
** (4) 4 byte integer which is the number of pages to truncate the
3312833142
** database to during a rollback.
3312933143
** (5) 4 byte big-endian integer which is the sector size. The header
3313033144
** is this many bytes in size.
33131
-** (6) 4 byte big-endian integer which is the page case.
33132
-** (7) 4 byte integer which is the number of bytes in the master journal
33133
-** name. The value may be zero (indicate that there is no master
33134
-** journal.)
33135
-** (8) N bytes of the master journal name. The name will be nul-terminated
33136
-** and might be shorter than the value read from (5). If the first byte
33137
-** of the name is \000 then there is no master journal. The master
33138
-** journal name is stored in UTF-8.
33139
-** (9) Zero or more pages instances, each as follows:
33145
+** (6) 4 byte big-endian integer which is the page size.
33146
+** (7) zero padding out to the next sector size.
33147
+** (8) Zero or more pages instances, each as follows:
3314033148
** + 4 byte page number.
3314133149
** + pPager->pageSize bytes of data.
3314233150
** + 4 byte checksum
3314333151
**
33144
-** When we speak of the journal header, we mean the first 8 items above.
33145
-** Each entry in the journal is an instance of the 9th item.
33152
+** When we speak of the journal header, we mean the first 7 items above.
33153
+** Each entry in the journal is an instance of the 8th item.
3314633154
**
3314733155
** Call the value from the second bullet "nRec". nRec is the number of
3314833156
** valid page entries in the journal. In most cases, you can compute the
3314933157
** value of nRec from the size of the journal file. But if a power
3315033158
** failure occurred while the journal was being written, it could be the
@@ -47266,11 +47274,11 @@
4726647274
#ifdef SQLITE_OMIT_TRACE
4726747275
if( !isPrepareV2 ) return;
4726847276
#endif
4726947277
assert( p->zSql==0 );
4727047278
p->zSql = sqlite3DbStrNDup(p->db, z, n);
47271
- p->isPrepareV2 = isPrepareV2;
47279
+ p->isPrepareV2 = (u8)isPrepareV2;
4727247280
}
4727347281
4727447282
/*
4727547283
** Return the SQL associated with a prepared statement
4727647284
*/
@@ -48565,11 +48573,11 @@
4856548573
zEnd = &zCsr[nByte];
4856648574
}while( nByte && !db->mallocFailed );
4856748575
4856848576
p->nCursor = (u16)nCursor;
4856948577
if( p->aVar ){
48570
- p->nVar = (u16)nVar;
48578
+ p->nVar = (ynVar)nVar;
4857148579
for(n=0; n<nVar; n++){
4857248580
p->aVar[n].flags = MEM_Null;
4857348581
p->aVar[n].db = db;
4857448582
}
4857548583
}
@@ -59293,11 +59301,11 @@
5929359301
p->pTab = pItem->pTab;
5929459302
p->iTable = pItem->iCursor;
5929559303
if( p->pTab->iPKey==iCol ){
5929659304
p->iColumn = -1;
5929759305
}else{
59298
- p->iColumn = iCol;
59306
+ p->iColumn = (ynVar)iCol;
5929959307
pItem->colUsed |= ((Bitmask)1)<<(iCol>=BMS ? BMS-1 : iCol);
5930059308
}
5930159309
ExprSetProperty(p, EP_Resolved);
5930259310
}
5930359311
return p;
@@ -60648,16 +60656,16 @@
6064860656
assert( z!=0 );
6064960657
assert( z[0]!=0 );
6065060658
if( z[1]==0 ){
6065160659
/* Wildcard of the form "?". Assign the next variable number */
6065260660
assert( z[0]=='?' );
60653
- pExpr->iColumn = ++pParse->nVar;
60661
+ pExpr->iColumn = (ynVar)(++pParse->nVar);
6065460662
}else if( z[0]=='?' ){
6065560663
/* Wildcard of the form "?nnn". Convert "nnn" to an integer and
6065660664
** use it as the variable number */
60657
- int i;
60658
- pExpr->iColumn = i = atoi((char*)&z[1]);
60665
+ int i = atoi((char*)&z[1]);
60666
+ pExpr->iColumn = (ynVar)i;
6065960667
testcase( i==0 );
6066060668
testcase( i==1 );
6066160669
testcase( i==db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER]-1 );
6066260670
testcase( i==db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER] );
6066360671
if( i<1 || i>db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER] ){
@@ -60682,11 +60690,11 @@
6068260690
pExpr->iColumn = pE->iColumn;
6068360691
break;
6068460692
}
6068560693
}
6068660694
if( i>=pParse->nVarExpr ){
60687
- pExpr->iColumn = ++pParse->nVar;
60695
+ pExpr->iColumn = (ynVar)(++pParse->nVar);
6068860696
if( pParse->nVarExpr>=pParse->nVarExprAlloc-1 ){
6068960697
pParse->nVarExprAlloc += pParse->nVarExprAlloc + 10;
6069060698
pParse->apVarExpr =
6069160699
sqlite3DbReallocOrFree(
6069260700
db,
@@ -65275,11 +65283,11 @@
6527565283
}
6527665284
aNew->zName = sqlite3DbStrDup(db, zName);
6527765285
aNew->safety_level = 3;
6527865286
6527965287
#if SQLITE_HAS_CODEC
65280
- {
65288
+ if( rc==SQLITE_OK ){
6528165289
extern int sqlite3CodecAttach(sqlite3*, int, const void*, int);
6528265290
extern void sqlite3CodecGetKey(sqlite3*, int, void**, int*);
6528365291
int nKey;
6528465292
char *zKey;
6528565293
int t = sqlite3_value_type(argv[2]);
@@ -65292,17 +65300,17 @@
6529265300
6529365301
case SQLITE_TEXT:
6529465302
case SQLITE_BLOB:
6529565303
nKey = sqlite3_value_bytes(argv[2]);
6529665304
zKey = (char *)sqlite3_value_blob(argv[2]);
65297
- sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
65305
+ rc = sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
6529865306
break;
6529965307
6530065308
case SQLITE_NULL:
6530165309
/* No key specified. Use the key from the main database */
6530265310
sqlite3CodecGetKey(db, 0, (void**)&zKey, &nKey);
65303
- sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
65311
+ rc = sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
6530465312
break;
6530565313
}
6530665314
}
6530765315
#endif
6530865316
@@ -90394,472 +90402,476 @@
9039490402
** shifting terminals.
9039590403
** yy_reduce_ofst[] For each state, the offset into yy_action for
9039690404
** shifting non-terminals after a reduce.
9039790405
** yy_default[] Default action for each state.
9039890406
*/
90407
+#define YY_ACTTAB_COUNT (1543)
9039990408
static const YYACTIONTYPE yy_action[] = {
90400
- /* 0 */ 312, 53, 494, 56, 143, 177, 181, 561, 44, 44,
90401
- /* 10 */ 44, 44, 224, 46, 46, 46, 46, 47, 47, 48,
90402
- /* 20 */ 48, 48, 49, 226, 511, 345, 209, 513, 501, 226,
90403
- /* 30 */ 550, 541, 54, 46, 46, 46, 46, 47, 47, 48,
90404
- /* 40 */ 48, 48, 49, 226, 48, 48, 48, 49, 226, 43,
90405
- /* 50 */ 41, 55, 539, 537, 540, 540, 45, 45, 44, 44,
90406
- /* 60 */ 44, 44, 252, 46, 46, 46, 46, 47, 47, 48,
90407
- /* 70 */ 48, 48, 49, 226, 312, 561, 321, 493, 429, 246,
90408
- /* 80 */ 60, 46, 46, 46, 46, 47, 47, 48, 48, 48,
90409
- /* 90 */ 49, 226, 613, 321, 493, 480, 477, 155, 426, 326,
90410
- /* 100 */ 369, 372, 373, 581, 550, 541, 311, 555, 155, 40,
90411
- /* 110 */ 374, 369, 372, 373, 47, 47, 48, 48, 48, 49,
90412
- /* 120 */ 226, 374, 536, 43, 41, 55, 539, 537, 540, 540,
90413
- /* 130 */ 45, 45, 44, 44, 44, 44, 301, 46, 46, 46,
90414
- /* 140 */ 46, 47, 47, 48, 48, 48, 49, 226, 312, 222,
90415
- /* 150 */ 210, 445, 431, 156, 139, 250, 366, 267, 367, 154,
90416
- /* 160 */ 509, 350, 513, 501, 561, 248, 222, 484, 513, 501,
90417
- /* 170 */ 340, 139, 250, 366, 267, 367, 154, 316, 550, 541,
90418
- /* 180 */ 609, 281, 248, 197, 565, 337, 309, 471, 428, 511,
90419
- /* 190 */ 582, 209, 556, 599, 566, 81, 493, 43, 41, 55,
90420
- /* 200 */ 539, 537, 540, 540, 45, 45, 44, 44, 44, 44,
90421
- /* 210 */ 471, 46, 46, 46, 46, 47, 47, 48, 48, 48,
90422
- /* 220 */ 49, 226, 312, 553, 553, 553, 287, 133, 517, 231,
90423
- /* 230 */ 480, 477, 561, 580, 355, 235, 480, 477, 483, 573,
90424
- /* 240 */ 340, 513, 501, 183, 591, 66, 571, 572, 493, 238,
90425
- /* 250 */ 205, 387, 550, 541, 155, 337, 390, 369, 372, 373,
90426
- /* 260 */ 959, 186, 490, 2, 566, 94, 466, 374, 195, 614,
90427
- /* 270 */ 198, 43, 41, 55, 539, 537, 540, 540, 45, 45,
90428
- /* 280 */ 44, 44, 44, 44, 565, 46, 46, 46, 46, 47,
90429
- /* 290 */ 47, 48, 48, 48, 49, 226, 312, 340, 570, 53,
90430
- /* 300 */ 618, 56, 143, 449, 565, 340, 353, 201, 141, 480,
90431
- /* 310 */ 477, 352, 337, 493, 400, 273, 200, 146, 569, 568,
90432
- /* 320 */ 337, 566, 71, 570, 224, 292, 550, 541, 361, 566,
90433
- /* 330 */ 94, 342, 483, 534, 534, 68, 360, 280, 493, 513,
90434
- /* 340 */ 501, 565, 381, 569, 410, 43, 41, 55, 539, 537,
90435
- /* 350 */ 540, 540, 45, 45, 44, 44, 44, 44, 462, 46,
90436
- /* 360 */ 46, 46, 46, 47, 47, 48, 48, 48, 49, 226,
90437
- /* 370 */ 312, 353, 468, 493, 246, 208, 363, 1, 340, 567,
90438
- /* 380 */ 230, 513, 501, 149, 333, 546, 4, 612, 617, 493,
90439
- /* 390 */ 240, 340, 112, 337, 611, 513, 501, 224, 212, 580,
90440
- /* 400 */ 550, 541, 566, 95, 409, 230, 337, 480, 477, 399,
90441
- /* 410 */ 482, 66, 471, 516, 493, 566, 94, 412, 466, 43,
90442
- /* 420 */ 41, 55, 539, 537, 540, 540, 45, 45, 44, 44,
90443
- /* 430 */ 44, 44, 565, 46, 46, 46, 46, 47, 47, 48,
90444
- /* 440 */ 48, 48, 49, 226, 312, 502, 585, 580, 329, 480,
90445
- /* 450 */ 477, 451, 513, 501, 592, 247, 332, 357, 615, 66,
90446
- /* 460 */ 150, 500, 493, 480, 477, 151, 400, 273, 53, 414,
90447
- /* 470 */ 56, 143, 215, 146, 550, 541, 224, 499, 617, 421,
90448
- /* 480 */ 317, 528, 524, 42, 282, 415, 594, 34, 476, 280,
90449
- /* 490 */ 420, 397, 203, 43, 41, 55, 539, 537, 540, 540,
90450
- /* 500 */ 45, 45, 44, 44, 44, 44, 493, 46, 46, 46,
90451
- /* 510 */ 46, 47, 47, 48, 48, 48, 49, 226, 312, 324,
90452
- /* 520 */ 480, 477, 435, 447, 439, 384, 565, 340, 284, 340,
90453
- /* 530 */ 241, 344, 528, 524, 53, 340, 56, 143, 620, 185,
90454
- /* 540 */ 461, 483, 337, 230, 337, 478, 217, 439, 550, 541,
90455
- /* 550 */ 337, 566, 95, 566, 89, 493, 596, 425, 227, 566,
90456
- /* 560 */ 81, 52, 459, 448, 440, 402, 584, 43, 41, 55,
90457
- /* 570 */ 539, 537, 540, 540, 45, 45, 44, 44, 44, 44,
90458
- /* 580 */ 565, 46, 46, 46, 46, 47, 47, 48, 48, 48,
90459
- /* 590 */ 49, 226, 312, 362, 230, 340, 259, 323, 491, 377,
90460
- /* 600 */ 234, 257, 458, 385, 398, 278, 283, 488, 337, 340,
90461
- /* 610 */ 337, 141, 340, 461, 340, 597, 493, 566, 9, 566,
90462
- /* 620 */ 96, 62, 550, 541, 337, 593, 401, 337, 493, 337,
90463
- /* 630 */ 151, 328, 157, 566, 85, 483, 566, 77, 566, 86,
90464
- /* 640 */ 874, 43, 41, 55, 539, 537, 540, 540, 45, 45,
90465
- /* 650 */ 44, 44, 44, 44, 340, 46, 46, 46, 46, 47,
90466
- /* 660 */ 47, 48, 48, 48, 49, 226, 312, 340, 444, 337,
90467
- /* 670 */ 364, 30, 443, 457, 502, 150, 327, 65, 566, 99,
90468
- /* 680 */ 340, 561, 337, 408, 324, 340, 386, 340, 248, 589,
90469
- /* 690 */ 500, 566, 137, 256, 574, 337, 550, 541, 579, 246,
90470
- /* 700 */ 337, 224, 337, 258, 566, 136, 499, 371, 349, 566,
90471
- /* 710 */ 138, 566, 101, 407, 493, 43, 41, 55, 539, 537,
90472
- /* 720 */ 540, 540, 45, 45, 44, 44, 44, 44, 340, 46,
90473
- /* 730 */ 46, 46, 46, 47, 47, 48, 48, 48, 49, 226,
90474
- /* 740 */ 312, 340, 229, 337, 340, 342, 252, 534, 534, 561,
90475
- /* 750 */ 522, 522, 566, 91, 574, 177, 337, 561, 579, 337,
90476
- /* 760 */ 340, 493, 58, 340, 38, 566, 88, 441, 566, 17,
90477
- /* 770 */ 550, 541, 508, 29, 306, 337, 452, 948, 337, 948,
90478
- /* 780 */ 629, 575, 416, 318, 566, 92, 192, 566, 73, 43,
90479
- /* 790 */ 41, 55, 539, 537, 540, 540, 45, 45, 44, 44,
90480
- /* 800 */ 44, 44, 340, 46, 46, 46, 46, 47, 47, 48,
90481
- /* 810 */ 48, 48, 49, 226, 312, 340, 246, 337, 340, 246,
90482
- /* 820 */ 270, 526, 340, 469, 299, 561, 566, 70, 202, 204,
90483
- /* 830 */ 337, 493, 507, 337, 493, 493, 340, 337, 493, 566,
90484
- /* 840 */ 90, 532, 566, 82, 550, 541, 566, 72, 557, 452,
90485
- /* 850 */ 949, 337, 949, 266, 598, 342, 150, 534, 534, 228,
90486
- /* 860 */ 566, 79, 533, 43, 41, 55, 539, 537, 540, 540,
90487
- /* 870 */ 45, 45, 44, 44, 44, 44, 340, 46, 46, 46,
90488
- /* 880 */ 46, 47, 47, 48, 48, 48, 49, 226, 312, 340,
90489
- /* 890 */ 246, 337, 340, 252, 526, 49, 226, 254, 549, 260,
90490
- /* 900 */ 566, 83, 588, 586, 337, 493, 606, 337, 493, 485,
90491
- /* 910 */ 340, 592, 392, 566, 69, 406, 566, 80, 550, 541,
90492
- /* 920 */ 342, 368, 534, 534, 253, 337, 150, 493, 604, 342,
90493
- /* 930 */ 223, 534, 534, 525, 566, 100, 285, 43, 57, 55,
90494
- /* 940 */ 539, 537, 540, 540, 45, 45, 44, 44, 44, 44,
90495
- /* 950 */ 340, 46, 46, 46, 46, 47, 47, 48, 48, 48,
90496
- /* 960 */ 49, 226, 312, 392, 246, 337, 340, 252, 575, 416,
90497
- /* 970 */ 351, 472, 276, 347, 566, 87, 279, 330, 493, 493,
90498
- /* 980 */ 496, 337, 493, 461, 340, 493, 493, 493, 548, 547,
90499
- /* 990 */ 566, 98, 550, 541, 498, 493, 172, 523, 493, 337,
90500
- /* 1000 */ 311, 577, 191, 243, 319, 423, 422, 530, 566, 105,
90501
- /* 1010 */ 544, 543, 41, 55, 539, 537, 540, 540, 45, 45,
90502
- /* 1020 */ 44, 44, 44, 44, 340, 46, 46, 46, 46, 47,
90503
- /* 1030 */ 47, 48, 48, 48, 49, 226, 312, 545, 340, 337,
90504
- /* 1040 */ 340, 246, 392, 207, 252, 445, 320, 489, 566, 103,
90505
- /* 1050 */ 627, 622, 519, 337, 232, 337, 493, 493, 340, 493,
90506
- /* 1060 */ 479, 340, 566, 108, 566, 109, 550, 541, 6, 607,
90507
- /* 1070 */ 608, 454, 2, 337, 492, 493, 337, 565, 517, 231,
90508
- /* 1080 */ 471, 322, 566, 134, 289, 566, 135, 55, 539, 537,
90509
- /* 1090 */ 540, 540, 45, 45, 44, 44, 44, 44, 487, 46,
90510
- /* 1100 */ 46, 46, 46, 47, 47, 48, 48, 48, 49, 226,
90511
- /* 1110 */ 23, 346, 340, 3, 397, 464, 422, 336, 501, 290,
90512
- /* 1120 */ 147, 214, 7, 23, 346, 340, 3, 337, 343, 493,
90513
- /* 1130 */ 336, 501, 463, 237, 172, 493, 566, 84, 475, 340,
90514
- /* 1140 */ 337, 343, 211, 340, 246, 225, 244, 348, 394, 566,
90515
- /* 1150 */ 75, 341, 18, 493, 337, 565, 393, 509, 337, 493,
90516
- /* 1160 */ 348, 493, 395, 566, 97, 245, 493, 566, 61, 274,
90517
- /* 1170 */ 509, 217, 16, 358, 189, 264, 565, 26, 25, 340,
90518
- /* 1180 */ 493, 236, 518, 310, 24, 338, 339, 304, 493, 556,
90519
- /* 1190 */ 26, 25, 450, 602, 337, 404, 120, 24, 338, 339,
90520
- /* 1200 */ 419, 169, 556, 566, 106, 565, 224, 117, 495, 27,
90521
- /* 1210 */ 346, 562, 3, 396, 187, 340, 336, 501, 179, 184,
90522
- /* 1220 */ 553, 553, 553, 552, 551, 11, 493, 343, 493, 398,
90523
- /* 1230 */ 337, 430, 8, 553, 553, 553, 552, 551, 11, 566,
90524
- /* 1240 */ 104, 335, 340, 255, 340, 616, 348, 340, 251, 331,
90525
- /* 1250 */ 340, 391, 558, 587, 50, 340, 509, 337, 493, 337,
90526
- /* 1260 */ 493, 365, 337, 493, 590, 337, 566, 78, 566, 102,
90527
- /* 1270 */ 337, 566, 76, 213, 566, 74, 26, 25, 610, 566,
90528
- /* 1280 */ 93, 378, 424, 24, 338, 339, 263, 583, 556, 220,
90529
- /* 1290 */ 140, 624, 294, 493, 300, 389, 23, 346, 376, 3,
90530
- /* 1300 */ 150, 493, 493, 336, 501, 493, 493, 493, 221, 493,
90531
- /* 1310 */ 493, 554, 268, 219, 343, 261, 515, 460, 418, 553,
90532
- /* 1320 */ 553, 553, 552, 551, 11, 595, 493, 493, 152, 206,
90533
- /* 1330 */ 493, 493, 493, 348, 272, 271, 269, 158, 302, 625,
90534
- /* 1340 */ 531, 521, 67, 509, 506, 520, 50, 628, 380, 600,
90535
- /* 1350 */ 173, 605, 123, 623, 493, 178, 37, 305, 308, 265,
90536
- /* 1360 */ 493, 620, 621, 26, 25, 165, 262, 307, 619, 166,
90537
- /* 1370 */ 24, 338, 339, 334, 436, 556, 427, 437, 33, 160,
90538
- /* 1380 */ 145, 466, 513, 501, 20, 148, 275, 122, 174, 359,
90539
- /* 1390 */ 442, 467, 486, 63, 36, 233, 42, 465, 512, 403,
90540
- /* 1400 */ 542, 182, 119, 113, 128, 132, 553, 553, 553, 552,
90541
- /* 1410 */ 551, 11, 39, 288, 538, 455, 291, 563, 388, 354,
90542
- /* 1420 */ 293, 295, 509, 31, 453, 356, 296, 325, 159, 405,
90543
- /* 1430 */ 286, 297, 564, 153, 313, 382, 35, 129, 303, 224,
90544
- /* 1440 */ 218, 121, 194, 196, 433, 107, 559, 242, 601, 216,
90545
- /* 1450 */ 428, 670, 280, 671, 556, 672, 162, 163, 32, 535,
90546
- /* 1460 */ 59, 505, 529, 411, 510, 190, 199, 176, 167, 504,
90547
- /* 1470 */ 503, 497, 5, 315, 314, 13, 19, 12, 474, 131,
90548
- /* 1480 */ 456, 144, 434, 432, 168, 553, 553, 553, 239, 51,
90549
- /* 1490 */ 603, 118, 111, 142, 249, 21, 124, 164, 379, 258,
90550
- /* 1500 */ 626, 188, 126, 172, 298, 383, 161, 370, 375, 114,
90551
- /* 1510 */ 15, 470, 481, 180, 125, 115, 127, 438, 446, 10,
90552
- /* 1520 */ 514, 110, 171, 527, 170, 116, 130, 560, 64, 14,
90553
- /* 1530 */ 175, 576, 578, 413, 277, 193, 417, 960, 473, 960,
90554
- /* 1540 */ 28, 960, 22,
90409
+ /* 0 */ 312, 49, 554, 46, 147, 172, 626, 596, 55, 55,
90410
+ /* 10 */ 55, 55, 301, 53, 53, 53, 53, 52, 52, 51,
90411
+ /* 20 */ 51, 51, 50, 237, 617, 616, 615, 622, 621, 607,
90412
+ /* 30 */ 589, 583, 48, 53, 53, 53, 53, 52, 52, 51,
90413
+ /* 40 */ 51, 51, 50, 237, 51, 51, 51, 50, 237, 56,
90414
+ /* 50 */ 57, 47, 581, 580, 582, 582, 54, 54, 55, 55,
90415
+ /* 60 */ 55, 55, 216, 53, 53, 53, 53, 52, 52, 51,
90416
+ /* 70 */ 51, 51, 50, 237, 312, 596, 49, 329, 46, 147,
90417
+ /* 80 */ 32, 53, 53, 53, 53, 52, 52, 51, 51, 51,
90418
+ /* 90 */ 50, 237, 329, 622, 621, 619, 618, 166, 433, 547,
90419
+ /* 100 */ 381, 378, 377, 549, 589, 583, 389, 490, 166, 58,
90420
+ /* 110 */ 376, 381, 378, 377, 390, 299, 622, 621, 480, 67,
90421
+ /* 120 */ 670, 376, 620, 56, 57, 47, 581, 580, 582, 582,
90422
+ /* 130 */ 54, 54, 55, 55, 55, 55, 253, 53, 53, 53,
90423
+ /* 140 */ 53, 52, 52, 51, 51, 51, 50, 237, 312, 408,
90424
+ /* 150 */ 225, 578, 578, 133, 177, 139, 283, 384, 278, 383,
90425
+ /* 160 */ 169, 619, 618, 601, 197, 225, 274, 602, 439, 146,
90426
+ /* 170 */ 139, 283, 384, 278, 383, 169, 569, 235, 589, 583,
90427
+ /* 180 */ 250, 274, 252, 620, 619, 618, 546, 436, 440, 441,
90428
+ /* 190 */ 168, 622, 621, 547, 438, 437, 192, 56, 57, 47,
90429
+ /* 200 */ 581, 580, 582, 582, 54, 54, 55, 55, 55, 55,
90430
+ /* 210 */ 6, 53, 53, 53, 53, 52, 52, 51, 51, 51,
90431
+ /* 220 */ 50, 237, 312, 282, 52, 52, 51, 51, 51, 50,
90432
+ /* 230 */ 237, 490, 183, 281, 547, 166, 439, 565, 381, 378,
90433
+ /* 240 */ 377, 596, 606, 67, 327, 172, 620, 596, 376, 442,
90434
+ /* 250 */ 236, 620, 589, 583, 306, 423, 440, 339, 251, 619,
90435
+ /* 260 */ 618, 331, 574, 573, 7, 524, 194, 481, 16, 594,
90436
+ /* 270 */ 189, 56, 57, 47, 581, 580, 582, 582, 54, 54,
90437
+ /* 280 */ 55, 55, 55, 55, 545, 53, 53, 53, 53, 52,
90438
+ /* 290 */ 52, 51, 51, 51, 50, 237, 312, 410, 464, 421,
90439
+ /* 300 */ 592, 592, 592, 671, 146, 410, 1, 205, 410, 596,
90440
+ /* 310 */ 622, 621, 413, 420, 949, 596, 949, 340, 236, 530,
90441
+ /* 320 */ 413, 600, 74, 413, 236, 552, 589, 583, 547, 600,
90442
+ /* 330 */ 95, 68, 600, 88, 551, 622, 621, 465, 542, 38,
90443
+ /* 340 */ 49, 599, 46, 147, 465, 56, 57, 47, 581, 580,
90444
+ /* 350 */ 582, 582, 54, 54, 55, 55, 55, 55, 424, 53,
90445
+ /* 360 */ 53, 53, 53, 52, 52, 51, 51, 51, 50, 237,
90446
+ /* 370 */ 312, 397, 395, 232, 529, 577, 387, 533, 619, 618,
90447
+ /* 380 */ 605, 492, 560, 588, 587, 350, 257, 622, 621, 495,
90448
+ /* 390 */ 564, 356, 350, 257, 49, 239, 46, 147, 559, 357,
90449
+ /* 400 */ 589, 583, 239, 619, 618, 585, 584, 408, 258, 578,
90450
+ /* 410 */ 578, 672, 209, 35, 558, 258, 401, 622, 621, 56,
90451
+ /* 420 */ 57, 47, 581, 580, 582, 582, 54, 54, 55, 55,
90452
+ /* 430 */ 55, 55, 586, 53, 53, 53, 53, 52, 52, 51,
90453
+ /* 440 */ 51, 51, 50, 237, 312, 560, 599, 410, 526, 531,
90454
+ /* 450 */ 184, 514, 513, 474, 366, 619, 618, 576, 410, 65,
90455
+ /* 460 */ 176, 559, 413, 408, 311, 578, 578, 567, 491, 215,
90456
+ /* 470 */ 352, 600, 94, 413, 589, 583, 474, 558, 408, 518,
90457
+ /* 480 */ 578, 578, 600, 95, 470, 619, 618, 62, 420, 948,
90458
+ /* 490 */ 517, 948, 349, 56, 57, 47, 581, 580, 582, 582,
90459
+ /* 500 */ 54, 54, 55, 55, 55, 55, 175, 53, 53, 53,
90460
+ /* 510 */ 53, 52, 52, 51, 51, 51, 50, 237, 312, 490,
90461
+ /* 520 */ 157, 410, 509, 292, 393, 373, 348, 410, 623, 410,
90462
+ /* 530 */ 428, 67, 611, 424, 620, 410, 413, 540, 408, 171,
90463
+ /* 540 */ 578, 578, 413, 620, 413, 600, 73, 620, 589, 583,
90464
+ /* 550 */ 413, 600, 80, 600, 88, 238, 168, 306, 422, 600,
90465
+ /* 560 */ 80, 201, 18, 468, 406, 574, 573, 56, 57, 47,
90466
+ /* 570 */ 581, 580, 582, 582, 54, 54, 55, 55, 55, 55,
90467
+ /* 580 */ 579, 53, 53, 53, 53, 52, 52, 51, 51, 51,
90468
+ /* 590 */ 50, 237, 312, 44, 233, 599, 271, 320, 341, 472,
90469
+ /* 600 */ 410, 874, 421, 473, 503, 319, 410, 200, 144, 66,
90470
+ /* 610 */ 327, 483, 508, 596, 274, 413, 239, 364, 484, 382,
90471
+ /* 620 */ 30, 413, 589, 583, 600, 69, 502, 236, 342, 575,
90472
+ /* 630 */ 600, 97, 199, 198, 209, 959, 186, 418, 2, 566,
90473
+ /* 640 */ 269, 56, 57, 47, 581, 580, 582, 582, 54, 54,
90474
+ /* 650 */ 55, 55, 55, 55, 410, 53, 53, 53, 53, 52,
90475
+ /* 660 */ 52, 51, 51, 51, 50, 237, 312, 263, 599, 413,
90476
+ /* 670 */ 410, 21, 190, 358, 410, 326, 410, 202, 600, 100,
90477
+ /* 680 */ 386, 596, 620, 562, 265, 413, 267, 410, 620, 413,
90478
+ /* 690 */ 563, 413, 352, 4, 600, 98, 589, 583, 600, 106,
90479
+ /* 700 */ 600, 104, 413, 174, 601, 629, 627, 333, 602, 34,
90480
+ /* 710 */ 337, 600, 108, 561, 359, 56, 57, 47, 581, 580,
90481
+ /* 720 */ 582, 582, 54, 54, 55, 55, 55, 55, 410, 53,
90482
+ /* 730 */ 53, 53, 53, 52, 52, 51, 51, 51, 50, 237,
90483
+ /* 740 */ 312, 410, 499, 413, 167, 567, 405, 215, 504, 505,
90484
+ /* 750 */ 316, 557, 600, 109, 353, 13, 413, 410, 12, 410,
90485
+ /* 760 */ 538, 410, 335, 358, 223, 600, 134, 571, 571, 620,
90486
+ /* 770 */ 589, 583, 413, 20, 413, 620, 413, 272, 620, 167,
90487
+ /* 780 */ 167, 600, 135, 600, 61, 600, 105, 317, 148, 56,
90488
+ /* 790 */ 57, 47, 581, 580, 582, 582, 54, 54, 55, 55,
90489
+ /* 800 */ 55, 55, 410, 53, 53, 53, 53, 52, 52, 51,
90490
+ /* 810 */ 51, 51, 50, 237, 312, 410, 275, 413, 410, 275,
90491
+ /* 820 */ 275, 222, 410, 330, 363, 544, 600, 103, 132, 360,
90492
+ /* 830 */ 413, 620, 522, 413, 620, 620, 410, 413, 170, 600,
90493
+ /* 840 */ 96, 603, 600, 102, 589, 583, 600, 77, 374, 536,
90494
+ /* 850 */ 167, 413, 143, 325, 256, 28, 224, 324, 511, 528,
90495
+ /* 860 */ 600, 99, 527, 56, 57, 47, 581, 580, 582, 582,
90496
+ /* 870 */ 54, 54, 55, 55, 55, 55, 410, 53, 53, 53,
90497
+ /* 880 */ 53, 52, 52, 51, 51, 51, 50, 237, 312, 410,
90498
+ /* 890 */ 275, 413, 410, 469, 275, 167, 458, 39, 171, 37,
90499
+ /* 900 */ 600, 138, 214, 144, 413, 620, 142, 413, 410, 620,
90500
+ /* 910 */ 410, 358, 239, 600, 137, 230, 600, 136, 589, 583,
90501
+ /* 920 */ 457, 263, 23, 413, 351, 413, 620, 323, 445, 501,
90502
+ /* 930 */ 23, 322, 600, 76, 600, 93, 620, 56, 45, 47,
90503
+ /* 940 */ 581, 580, 582, 582, 54, 54, 55, 55, 55, 55,
90504
+ /* 950 */ 410, 53, 53, 53, 53, 52, 52, 51, 51, 51,
90505
+ /* 960 */ 50, 237, 312, 410, 262, 413, 410, 426, 263, 308,
90506
+ /* 970 */ 203, 213, 212, 380, 600, 92, 520, 519, 413, 130,
90507
+ /* 980 */ 538, 413, 538, 620, 410, 628, 2, 600, 75, 273,
90508
+ /* 990 */ 600, 91, 589, 583, 375, 620, 129, 620, 27, 413,
90509
+ /* 1000 */ 425, 307, 221, 128, 599, 599, 599, 281, 600, 90,
90510
+ /* 1010 */ 371, 452, 57, 47, 581, 580, 582, 582, 54, 54,
90511
+ /* 1020 */ 55, 55, 55, 55, 410, 53, 53, 53, 53, 52,
90512
+ /* 1030 */ 52, 51, 51, 51, 50, 237, 312, 410, 263, 413,
90513
+ /* 1040 */ 410, 263, 263, 365, 208, 321, 206, 542, 600, 101,
90514
+ /* 1050 */ 50, 237, 413, 620, 610, 413, 620, 620, 410, 542,
90515
+ /* 1060 */ 165, 600, 89, 188, 600, 87, 589, 583, 478, 620,
90516
+ /* 1070 */ 467, 519, 125, 413, 569, 235, 542, 367, 599, 475,
90517
+ /* 1080 */ 599, 450, 600, 86, 449, 448, 231, 47, 581, 580,
90518
+ /* 1090 */ 582, 582, 54, 54, 55, 55, 55, 55, 287, 53,
90519
+ /* 1100 */ 53, 53, 53, 52, 52, 51, 51, 51, 50, 237,
90520
+ /* 1110 */ 43, 404, 410, 3, 410, 285, 260, 414, 621, 263,
90521
+ /* 1120 */ 609, 627, 333, 43, 404, 410, 3, 413, 407, 413,
90522
+ /* 1130 */ 414, 621, 171, 263, 620, 620, 600, 85, 600, 72,
90523
+ /* 1140 */ 413, 407, 124, 140, 353, 604, 409, 402, 620, 600,
90524
+ /* 1150 */ 71, 291, 471, 495, 160, 123, 593, 565, 620, 620,
90525
+ /* 1160 */ 402, 620, 220, 15, 463, 460, 620, 417, 625, 159,
90526
+ /* 1170 */ 565, 620, 399, 240, 158, 126, 219, 40, 41, 532,
90527
+ /* 1180 */ 410, 207, 121, 120, 42, 412, 411, 620, 263, 594,
90528
+ /* 1190 */ 40, 41, 556, 543, 25, 413, 11, 42, 412, 411,
90529
+ /* 1200 */ 24, 118, 594, 620, 600, 84, 455, 620, 620, 43,
90530
+ /* 1210 */ 404, 218, 3, 539, 156, 599, 414, 621, 113, 239,
90531
+ /* 1220 */ 592, 592, 592, 591, 590, 14, 155, 407, 620, 537,
90532
+ /* 1230 */ 451, 247, 444, 592, 592, 592, 591, 590, 14, 343,
90533
+ /* 1240 */ 410, 111, 410, 277, 620, 410, 402, 410, 507, 110,
90534
+ /* 1250 */ 10, 64, 204, 336, 435, 413, 565, 413, 620, 276,
90535
+ /* 1260 */ 413, 434, 413, 620, 600, 83, 600, 95, 334, 600,
90536
+ /* 1270 */ 82, 600, 81, 150, 620, 488, 40, 41, 270, 268,
90537
+ /* 1280 */ 266, 191, 332, 42, 412, 411, 599, 410, 594, 241,
90538
+ /* 1290 */ 620, 410, 264, 620, 620, 620, 33, 404, 419, 3,
90539
+ /* 1300 */ 107, 229, 413, 414, 621, 149, 413, 620, 397, 181,
90540
+ /* 1310 */ 259, 600, 70, 398, 407, 600, 17, 315, 314, 592,
90541
+ /* 1320 */ 592, 592, 591, 590, 14, 620, 127, 361, 624, 217,
90542
+ /* 1330 */ 462, 461, 354, 402, 304, 303, 302, 179, 300, 254,
90543
+ /* 1340 */ 614, 453, 620, 565, 454, 620, 620, 620, 613, 612,
90544
+ /* 1350 */ 443, 416, 180, 246, 620, 151, 415, 245, 243, 620,
90545
+ /* 1360 */ 178, 598, 242, 40, 41, 620, 244, 8, 620, 239,
90546
+ /* 1370 */ 42, 412, 411, 620, 410, 594, 410, 620, 60, 153,
90547
+ /* 1380 */ 429, 465, 622, 621, 296, 154, 30, 145, 152, 413,
90548
+ /* 1390 */ 388, 413, 295, 394, 294, 620, 31, 392, 600, 79,
90549
+ /* 1400 */ 600, 78, 620, 290, 396, 413, 592, 592, 592, 591,
90550
+ /* 1410 */ 590, 14, 620, 293, 600, 9, 597, 59, 620, 36,
90551
+ /* 1420 */ 555, 173, 565, 234, 185, 288, 29, 541, 391, 345,
90552
+ /* 1430 */ 248, 286, 521, 535, 313, 284, 385, 328, 534, 239,
90553
+ /* 1440 */ 516, 515, 196, 195, 279, 310, 511, 512, 510, 131,
90554
+ /* 1450 */ 524, 227, 258, 228, 594, 309, 487, 486, 493, 226,
90555
+ /* 1460 */ 372, 485, 164, 338, 479, 163, 368, 370, 162, 26,
90556
+ /* 1470 */ 211, 477, 261, 161, 141, 476, 362, 466, 122, 187,
90557
+ /* 1480 */ 119, 456, 347, 117, 346, 592, 592, 592, 116, 115,
90558
+ /* 1490 */ 114, 447, 112, 182, 318, 22, 432, 19, 431, 430,
90559
+ /* 1500 */ 63, 427, 608, 193, 297, 595, 572, 570, 403, 553,
90560
+ /* 1510 */ 550, 289, 280, 508, 498, 497, 496, 494, 379, 355,
90561
+ /* 1520 */ 459, 255, 249, 344, 446, 305, 5, 568, 548, 298,
90562
+ /* 1530 */ 298, 210, 369, 298, 400, 506, 500, 489, 525, 523,
90563
+ /* 1540 */ 482, 239, 237,
9055590564
};
9055690565
static const YYCODETYPE yy_lookahead[] = {
90557
- /* 0 */ 19, 222, 223, 224, 225, 24, 35, 26, 77, 78,
90558
- /* 10 */ 79, 80, 115, 82, 83, 84, 85, 86, 87, 88,
90559
- /* 20 */ 89, 90, 91, 92, 166, 167, 168, 26, 27, 92,
90566
+ /* 0 */ 19, 222, 223, 224, 225, 24, 1, 26, 77, 78,
90567
+ /* 10 */ 79, 80, 15, 82, 83, 84, 85, 86, 87, 88,
90568
+ /* 20 */ 89, 90, 91, 92, 7, 8, 9, 26, 27, 23,
9056090569
/* 30 */ 49, 50, 81, 82, 83, 84, 85, 86, 87, 88,
9056190570
/* 40 */ 89, 90, 91, 92, 88, 89, 90, 91, 92, 68,
9056290571
/* 50 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
90563
- /* 60 */ 79, 80, 150, 82, 83, 84, 85, 86, 87, 88,
90564
- /* 70 */ 89, 90, 91, 92, 19, 94, 19, 165, 174, 150,
90572
+ /* 60 */ 79, 80, 22, 82, 83, 84, 85, 86, 87, 88,
90573
+ /* 70 */ 89, 90, 91, 92, 19, 94, 222, 19, 224, 225,
9056590574
/* 80 */ 25, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90566
- /* 90 */ 91, 92, 186, 19, 165, 94, 95, 96, 174, 187,
90567
- /* 100 */ 99, 100, 101, 186, 49, 50, 22, 23, 96, 54,
90568
- /* 110 */ 109, 99, 100, 101, 86, 87, 88, 89, 90, 91,
90569
- /* 120 */ 92, 109, 193, 68, 69, 70, 71, 72, 73, 74,
90570
- /* 130 */ 75, 76, 77, 78, 79, 80, 195, 82, 83, 84,
90571
- /* 140 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 92,
90572
- /* 150 */ 160, 67, 23, 96, 97, 98, 99, 100, 101, 102,
90573
- /* 160 */ 66, 191, 26, 27, 26, 108, 92, 208, 26, 27,
90574
- /* 170 */ 150, 97, 98, 99, 100, 101, 102, 155, 49, 50,
90575
- /* 180 */ 183, 150, 108, 25, 194, 165, 163, 166, 94, 166,
90576
- /* 190 */ 167, 168, 98, 183, 174, 175, 165, 68, 69, 70,
90575
+ /* 90 */ 91, 92, 19, 26, 27, 94, 95, 96, 244, 25,
90576
+ /* 100 */ 99, 100, 101, 25, 49, 50, 19, 150, 96, 54,
90577
+ /* 110 */ 109, 99, 100, 101, 27, 158, 26, 27, 161, 162,
90578
+ /* 120 */ 117, 109, 165, 68, 69, 70, 71, 72, 73, 74,
90579
+ /* 130 */ 75, 76, 77, 78, 79, 80, 16, 82, 83, 84,
90580
+ /* 140 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 111,
90581
+ /* 150 */ 92, 113, 114, 24, 96, 97, 98, 99, 100, 101,
90582
+ /* 160 */ 102, 94, 95, 112, 25, 92, 108, 116, 150, 95,
90583
+ /* 170 */ 97, 98, 99, 100, 101, 102, 86, 87, 49, 50,
90584
+ /* 180 */ 60, 108, 62, 165, 94, 95, 119, 97, 170, 171,
90585
+ /* 190 */ 50, 26, 27, 119, 104, 105, 118, 68, 69, 70,
9057790586
/* 200 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
90578
- /* 210 */ 166, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90579
- /* 220 */ 91, 92, 19, 129, 130, 131, 205, 24, 86, 87,
90580
- /* 230 */ 94, 95, 94, 150, 214, 215, 94, 95, 25, 97,
90581
- /* 240 */ 150, 26, 27, 23, 161, 162, 104, 105, 165, 205,
90582
- /* 250 */ 160, 229, 49, 50, 96, 165, 234, 99, 100, 101,
90583
- /* 260 */ 142, 143, 144, 145, 174, 175, 57, 109, 185, 186,
90584
- /* 270 */ 160, 68, 69, 70, 71, 72, 73, 74, 75, 76,
90585
- /* 280 */ 77, 78, 79, 80, 194, 82, 83, 84, 85, 86,
90586
- /* 290 */ 87, 88, 89, 90, 91, 92, 19, 150, 150, 222,
90587
- /* 300 */ 23, 224, 225, 88, 194, 150, 216, 160, 95, 94,
90588
- /* 310 */ 95, 221, 165, 165, 105, 106, 206, 207, 170, 171,
90589
- /* 320 */ 165, 174, 175, 150, 115, 148, 49, 50, 19, 174,
90590
- /* 330 */ 175, 111, 119, 113, 114, 22, 27, 128, 165, 26,
90591
- /* 340 */ 27, 194, 237, 170, 171, 68, 69, 70, 71, 72,
90592
- /* 350 */ 73, 74, 75, 76, 77, 78, 79, 80, 150, 82,
90587
+ /* 210 */ 22, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90588
+ /* 220 */ 91, 92, 19, 98, 86, 87, 88, 89, 90, 91,
90589
+ /* 230 */ 92, 150, 23, 108, 25, 96, 150, 66, 99, 100,
90590
+ /* 240 */ 101, 26, 161, 162, 104, 24, 165, 26, 109, 231,
90591
+ /* 250 */ 232, 165, 49, 50, 22, 23, 170, 171, 138, 94,
90592
+ /* 260 */ 95, 169, 170, 171, 76, 94, 185, 186, 22, 98,
90593
+ /* 270 */ 24, 68, 69, 70, 71, 72, 73, 74, 75, 76,
90594
+ /* 280 */ 77, 78, 79, 80, 119, 82, 83, 84, 85, 86,
90595
+ /* 290 */ 87, 88, 89, 90, 91, 92, 19, 150, 11, 67,
90596
+ /* 300 */ 129, 130, 131, 117, 95, 150, 22, 160, 150, 94,
90597
+ /* 310 */ 26, 27, 165, 22, 23, 94, 25, 231, 232, 23,
90598
+ /* 320 */ 165, 174, 175, 165, 232, 32, 49, 50, 119, 174,
90599
+ /* 330 */ 175, 22, 174, 175, 41, 26, 27, 57, 166, 136,
90600
+ /* 340 */ 222, 194, 224, 225, 57, 68, 69, 70, 71, 72,
90601
+ /* 350 */ 73, 74, 75, 76, 77, 78, 79, 80, 67, 82,
9059390602
/* 360 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90594
- /* 370 */ 19, 216, 11, 165, 150, 236, 221, 22, 150, 231,
90595
- /* 380 */ 232, 26, 27, 25, 146, 147, 196, 181, 182, 165,
90596
- /* 390 */ 152, 150, 154, 165, 188, 26, 27, 115, 160, 150,
90597
- /* 400 */ 49, 50, 174, 175, 231, 232, 165, 94, 95, 127,
90598
- /* 410 */ 161, 162, 166, 166, 165, 174, 175, 193, 57, 68,
90603
+ /* 370 */ 19, 216, 214, 215, 23, 23, 221, 205, 94, 95,
90604
+ /* 380 */ 172, 173, 12, 49, 50, 105, 106, 26, 27, 181,
90605
+ /* 390 */ 23, 19, 105, 106, 222, 115, 224, 225, 28, 27,
90606
+ /* 400 */ 49, 50, 115, 94, 95, 71, 72, 111, 128, 113,
90607
+ /* 410 */ 114, 117, 160, 136, 44, 128, 46, 26, 27, 68,
9059990608
/* 420 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
90600
- /* 430 */ 79, 80, 194, 82, 83, 84, 85, 86, 87, 88,
90601
- /* 440 */ 89, 90, 91, 92, 19, 12, 173, 150, 220, 94,
90602
- /* 450 */ 95, 205, 26, 27, 181, 158, 218, 216, 161, 162,
90603
- /* 460 */ 25, 28, 165, 94, 95, 50, 105, 106, 222, 245,
90604
- /* 470 */ 224, 225, 206, 207, 49, 50, 115, 44, 182, 46,
90605
- /* 480 */ 169, 170, 171, 125, 16, 247, 166, 136, 119, 128,
90606
- /* 490 */ 57, 150, 160, 68, 69, 70, 71, 72, 73, 74,
90607
- /* 500 */ 75, 76, 77, 78, 79, 80, 165, 82, 83, 84,
90608
- /* 510 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 104,
90609
- /* 520 */ 94, 95, 23, 21, 105, 106, 194, 150, 60, 150,
90610
- /* 530 */ 62, 169, 170, 171, 222, 150, 224, 225, 103, 23,
90611
- /* 540 */ 150, 25, 165, 232, 165, 119, 160, 128, 49, 50,
90612
- /* 550 */ 165, 174, 175, 174, 175, 165, 244, 165, 217, 174,
90613
- /* 560 */ 175, 136, 7, 8, 9, 63, 174, 68, 69, 70,
90609
+ /* 430 */ 79, 80, 98, 82, 83, 84, 85, 86, 87, 88,
90610
+ /* 440 */ 89, 90, 91, 92, 19, 12, 194, 150, 23, 88,
90611
+ /* 450 */ 23, 7, 8, 105, 106, 94, 95, 23, 150, 25,
90612
+ /* 460 */ 117, 28, 165, 111, 163, 113, 114, 166, 167, 168,
90613
+ /* 470 */ 218, 174, 175, 165, 49, 50, 128, 44, 111, 46,
90614
+ /* 480 */ 113, 114, 174, 175, 21, 94, 95, 235, 22, 23,
90615
+ /* 490 */ 57, 25, 240, 68, 69, 70, 71, 72, 73, 74,
90616
+ /* 500 */ 75, 76, 77, 78, 79, 80, 117, 82, 83, 84,
90617
+ /* 510 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 150,
90618
+ /* 520 */ 25, 150, 23, 226, 216, 19, 63, 150, 150, 150,
90619
+ /* 530 */ 161, 162, 150, 67, 165, 150, 165, 23, 111, 25,
90620
+ /* 540 */ 113, 114, 165, 165, 165, 174, 175, 165, 49, 50,
90621
+ /* 550 */ 165, 174, 175, 174, 175, 197, 50, 22, 23, 174,
90622
+ /* 560 */ 175, 160, 204, 100, 169, 170, 171, 68, 69, 70,
9061490623
/* 570 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
90615
- /* 580 */ 194, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90616
- /* 590 */ 91, 92, 19, 150, 232, 150, 23, 220, 32, 19,
90617
- /* 600 */ 215, 150, 100, 213, 218, 226, 138, 41, 165, 150,
90618
- /* 610 */ 165, 95, 150, 150, 150, 177, 165, 174, 175, 174,
90619
- /* 620 */ 175, 235, 49, 50, 165, 177, 240, 165, 165, 165,
90620
- /* 630 */ 50, 248, 249, 174, 175, 119, 174, 175, 174, 175,
90621
- /* 640 */ 138, 68, 69, 70, 71, 72, 73, 74, 75, 76,
90624
+ /* 580 */ 112, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90625
+ /* 590 */ 91, 92, 19, 22, 215, 194, 23, 220, 97, 30,
90626
+ /* 600 */ 150, 138, 67, 34, 36, 220, 150, 206, 207, 22,
90627
+ /* 610 */ 104, 181, 182, 26, 108, 165, 115, 48, 188, 51,
90628
+ /* 620 */ 125, 165, 49, 50, 174, 175, 58, 232, 127, 23,
90629
+ /* 630 */ 174, 175, 105, 106, 160, 142, 143, 144, 145, 23,
90630
+ /* 640 */ 16, 68, 69, 70, 71, 72, 73, 74, 75, 76,
9062290631
/* 650 */ 77, 78, 79, 80, 150, 82, 83, 84, 85, 86,
90623
- /* 660 */ 87, 88, 89, 90, 91, 92, 19, 150, 30, 165,
90624
- /* 670 */ 88, 24, 34, 23, 12, 25, 213, 22, 174, 175,
90625
- /* 680 */ 150, 26, 165, 97, 104, 150, 48, 150, 108, 166,
90626
- /* 690 */ 28, 174, 175, 98, 112, 165, 49, 50, 116, 150,
90627
- /* 700 */ 165, 115, 165, 108, 174, 175, 44, 178, 46, 174,
90628
- /* 710 */ 175, 174, 175, 127, 165, 68, 69, 70, 71, 72,
90632
+ /* 660 */ 87, 88, 89, 90, 91, 92, 19, 150, 194, 165,
90633
+ /* 670 */ 150, 24, 22, 150, 150, 107, 150, 22, 174, 175,
90634
+ /* 680 */ 88, 94, 165, 23, 60, 165, 62, 150, 165, 165,
90635
+ /* 690 */ 11, 165, 218, 35, 174, 175, 49, 50, 174, 175,
90636
+ /* 700 */ 174, 175, 165, 25, 112, 0, 1, 2, 116, 25,
90637
+ /* 710 */ 193, 174, 175, 23, 240, 68, 69, 70, 71, 72,
9062990638
/* 720 */ 73, 74, 75, 76, 77, 78, 79, 80, 150, 82,
9063090639
/* 730 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90631
- /* 740 */ 19, 150, 193, 165, 150, 111, 150, 113, 114, 94,
90632
- /* 750 */ 129, 130, 174, 175, 112, 24, 165, 26, 116, 165,
90633
- /* 760 */ 150, 165, 135, 150, 137, 174, 175, 23, 174, 175,
90634
- /* 770 */ 49, 50, 23, 52, 25, 165, 22, 23, 165, 25,
90635
- /* 780 */ 0, 1, 2, 187, 174, 175, 196, 174, 175, 68,
90640
+ /* 740 */ 19, 150, 23, 165, 25, 166, 167, 168, 97, 98,
90641
+ /* 750 */ 155, 23, 174, 175, 150, 25, 165, 150, 35, 150,
90642
+ /* 760 */ 150, 150, 245, 150, 241, 174, 175, 129, 130, 165,
90643
+ /* 770 */ 49, 50, 165, 52, 165, 165, 165, 23, 165, 25,
90644
+ /* 780 */ 25, 174, 175, 174, 175, 174, 175, 248, 249, 68,
9063690645
/* 790 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
9063790646
/* 800 */ 79, 80, 150, 82, 83, 84, 85, 86, 87, 88,
9063890647
/* 810 */ 89, 90, 91, 92, 19, 150, 150, 165, 150, 150,
90639
- /* 820 */ 150, 67, 150, 150, 198, 94, 174, 175, 105, 106,
90640
- /* 830 */ 165, 165, 23, 165, 165, 165, 150, 165, 165, 174,
90641
- /* 840 */ 175, 23, 174, 175, 49, 50, 174, 175, 166, 22,
90642
- /* 850 */ 23, 165, 25, 16, 23, 111, 25, 113, 114, 193,
90643
- /* 860 */ 174, 175, 193, 68, 69, 70, 71, 72, 73, 74,
90648
+ /* 820 */ 150, 217, 150, 213, 229, 119, 174, 175, 22, 234,
90649
+ /* 830 */ 165, 165, 165, 165, 165, 165, 150, 165, 35, 174,
90650
+ /* 840 */ 175, 174, 174, 175, 49, 50, 174, 175, 23, 27,
90651
+ /* 850 */ 25, 165, 117, 187, 241, 22, 187, 187, 103, 23,
90652
+ /* 860 */ 174, 175, 23, 68, 69, 70, 71, 72, 73, 74,
9064490653
/* 870 */ 75, 76, 77, 78, 79, 80, 150, 82, 83, 84,
9064590654
/* 880 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 150,
90646
- /* 890 */ 150, 165, 150, 150, 67, 91, 92, 60, 199, 62,
90647
- /* 900 */ 174, 175, 172, 173, 165, 165, 36, 165, 165, 25,
90648
- /* 910 */ 150, 181, 150, 174, 175, 209, 174, 175, 49, 50,
90649
- /* 920 */ 111, 51, 113, 114, 23, 165, 25, 165, 58, 111,
90650
- /* 930 */ 187, 113, 114, 193, 174, 175, 209, 68, 69, 70,
90655
+ /* 890 */ 150, 165, 150, 23, 150, 25, 23, 135, 25, 137,
90656
+ /* 900 */ 174, 175, 206, 207, 165, 165, 39, 165, 150, 165,
90657
+ /* 910 */ 150, 150, 115, 174, 175, 52, 174, 175, 49, 50,
90658
+ /* 920 */ 23, 150, 25, 165, 127, 165, 165, 187, 23, 29,
90659
+ /* 930 */ 25, 187, 174, 175, 174, 175, 165, 68, 69, 70,
9065190660
/* 940 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
9065290661
/* 950 */ 150, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90653
- /* 960 */ 91, 92, 19, 150, 150, 165, 150, 150, 1, 2,
90654
- /* 970 */ 150, 150, 150, 228, 174, 175, 242, 107, 165, 165,
90655
- /* 980 */ 150, 165, 165, 150, 150, 165, 165, 165, 49, 50,
90656
- /* 990 */ 174, 175, 49, 50, 23, 165, 25, 233, 165, 165,
90657
- /* 1000 */ 22, 23, 118, 241, 187, 190, 191, 193, 174, 175,
90658
- /* 1010 */ 71, 72, 69, 70, 71, 72, 73, 74, 75, 76,
90662
+ /* 960 */ 91, 92, 19, 150, 193, 165, 150, 23, 150, 25,
90663
+ /* 970 */ 160, 160, 160, 52, 174, 175, 190, 191, 165, 22,
90664
+ /* 980 */ 150, 165, 150, 165, 150, 144, 145, 174, 175, 23,
90665
+ /* 990 */ 174, 175, 49, 50, 52, 165, 22, 165, 22, 165,
90666
+ /* 1000 */ 250, 251, 241, 22, 194, 194, 194, 108, 174, 175,
90667
+ /* 1010 */ 19, 193, 69, 70, 71, 72, 73, 74, 75, 76,
9065990668
/* 1020 */ 77, 78, 79, 80, 150, 82, 83, 84, 85, 86,
90660
- /* 1030 */ 87, 88, 89, 90, 91, 92, 19, 98, 150, 165,
90661
- /* 1040 */ 150, 150, 150, 160, 150, 67, 213, 199, 174, 175,
90662
- /* 1050 */ 7, 8, 233, 165, 241, 165, 165, 165, 150, 165,
90663
- /* 1060 */ 150, 150, 174, 175, 174, 175, 49, 50, 22, 97,
90664
- /* 1070 */ 98, 144, 145, 165, 177, 165, 165, 194, 86, 87,
90665
- /* 1080 */ 166, 187, 174, 175, 193, 174, 175, 70, 71, 72,
90666
- /* 1090 */ 73, 74, 75, 76, 77, 78, 79, 80, 177, 82,
90669
+ /* 1030 */ 87, 88, 89, 90, 91, 92, 19, 150, 150, 165,
90670
+ /* 1040 */ 150, 150, 150, 213, 160, 213, 160, 166, 174, 175,
90671
+ /* 1050 */ 91, 92, 165, 165, 150, 165, 165, 165, 150, 166,
90672
+ /* 1060 */ 102, 174, 175, 24, 174, 175, 49, 50, 20, 165,
90673
+ /* 1070 */ 190, 191, 104, 165, 86, 87, 166, 43, 194, 59,
90674
+ /* 1080 */ 194, 193, 174, 175, 193, 193, 205, 70, 71, 72,
90675
+ /* 1090 */ 73, 74, 75, 76, 77, 78, 79, 80, 205, 82,
9066790676
/* 1100 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90668
- /* 1110 */ 19, 20, 150, 22, 150, 190, 191, 26, 27, 205,
90669
- /* 1120 */ 150, 160, 76, 19, 20, 150, 22, 165, 37, 165,
90670
- /* 1130 */ 26, 27, 23, 241, 25, 165, 174, 175, 150, 150,
90671
- /* 1140 */ 165, 37, 160, 150, 150, 197, 150, 56, 19, 174,
90672
- /* 1150 */ 175, 150, 204, 165, 165, 194, 27, 66, 165, 165,
90673
- /* 1160 */ 56, 165, 242, 174, 175, 150, 165, 174, 175, 209,
90674
- /* 1170 */ 66, 160, 22, 150, 24, 177, 194, 86, 87, 150,
90675
- /* 1180 */ 165, 217, 250, 251, 93, 94, 95, 193, 165, 98,
90676
- /* 1190 */ 86, 87, 88, 153, 165, 18, 192, 93, 94, 95,
90677
- /* 1200 */ 13, 151, 98, 174, 175, 194, 115, 22, 157, 19,
90678
- /* 1210 */ 20, 150, 22, 150, 219, 150, 26, 27, 117, 157,
90679
- /* 1220 */ 129, 130, 131, 132, 133, 134, 165, 37, 165, 218,
90680
- /* 1230 */ 165, 157, 25, 129, 130, 131, 132, 133, 134, 174,
90681
- /* 1240 */ 175, 159, 150, 150, 150, 150, 56, 150, 150, 47,
90682
- /* 1250 */ 150, 240, 23, 184, 25, 150, 66, 165, 165, 165,
90683
- /* 1260 */ 165, 104, 165, 165, 176, 165, 174, 175, 174, 175,
90684
- /* 1270 */ 165, 174, 175, 157, 174, 175, 86, 87, 150, 174,
90685
- /* 1280 */ 175, 18, 176, 93, 94, 95, 150, 150, 98, 92,
90686
- /* 1290 */ 150, 150, 150, 165, 150, 150, 19, 20, 23, 22,
90687
- /* 1300 */ 25, 165, 165, 26, 27, 165, 165, 165, 230, 165,
90688
- /* 1310 */ 165, 150, 150, 230, 37, 150, 150, 150, 184, 129,
90689
- /* 1320 */ 130, 131, 132, 133, 134, 176, 165, 165, 156, 5,
90690
- /* 1330 */ 165, 165, 165, 56, 10, 11, 12, 13, 14, 150,
90691
- /* 1340 */ 23, 17, 25, 66, 23, 150, 25, 176, 157, 176,
90692
- /* 1350 */ 156, 40, 22, 157, 165, 31, 243, 33, 179, 176,
90693
- /* 1360 */ 165, 103, 178, 86, 87, 156, 42, 179, 176, 6,
90694
- /* 1370 */ 93, 94, 95, 149, 157, 98, 149, 149, 22, 55,
90695
- /* 1380 */ 68, 57, 26, 27, 104, 61, 210, 189, 64, 120,
90696
- /* 1390 */ 157, 211, 38, 246, 135, 227, 125, 189, 199, 157,
90697
- /* 1400 */ 199, 219, 192, 192, 192, 189, 129, 130, 131, 132,
90698
- /* 1410 */ 133, 134, 124, 210, 149, 211, 210, 203, 157, 121,
90699
- /* 1420 */ 202, 201, 66, 123, 211, 122, 200, 157, 156, 105,
90700
- /* 1430 */ 106, 199, 194, 151, 110, 45, 135, 180, 238, 115,
90701
- /* 1440 */ 180, 126, 86, 87, 239, 164, 1, 15, 23, 22,
90702
- /* 1450 */ 94, 117, 128, 117, 98, 117, 117, 117, 243, 112,
90703
- /* 1460 */ 22, 11, 23, 139, 23, 22, 22, 25, 249, 23,
90704
- /* 1470 */ 23, 23, 35, 252, 252, 35, 25, 25, 119, 22,
90705
- /* 1480 */ 27, 117, 23, 23, 35, 129, 130, 131, 52, 22,
90706
- /* 1490 */ 29, 22, 22, 39, 23, 22, 22, 102, 19, 108,
90707
- /* 1500 */ 20, 24, 104, 25, 138, 43, 104, 52, 52, 22,
90708
- /* 1510 */ 5, 1, 27, 117, 107, 126, 53, 59, 53, 22,
90709
- /* 1520 */ 1, 118, 16, 20, 120, 107, 118, 127, 16, 22,
90710
- /* 1530 */ 15, 23, 23, 65, 140, 22, 3, 253, 4, 253,
90711
- /* 1540 */ 76, 253, 76,
90677
+ /* 1110 */ 19, 20, 150, 22, 150, 205, 138, 26, 27, 150,
90678
+ /* 1120 */ 150, 1, 2, 19, 20, 150, 22, 165, 37, 165,
90679
+ /* 1130 */ 26, 27, 25, 150, 165, 165, 174, 175, 174, 175,
90680
+ /* 1140 */ 165, 37, 53, 150, 150, 173, 150, 56, 165, 174,
90681
+ /* 1150 */ 175, 150, 53, 181, 104, 22, 150, 66, 165, 165,
90682
+ /* 1160 */ 56, 165, 193, 5, 1, 27, 165, 146, 147, 117,
90683
+ /* 1170 */ 66, 165, 150, 152, 35, 154, 193, 86, 87, 88,
90684
+ /* 1180 */ 150, 160, 107, 126, 93, 94, 95, 165, 150, 98,
90685
+ /* 1190 */ 86, 87, 150, 150, 76, 165, 22, 93, 94, 95,
90686
+ /* 1200 */ 76, 118, 98, 165, 174, 175, 1, 165, 165, 19,
90687
+ /* 1210 */ 20, 217, 22, 150, 16, 194, 26, 27, 118, 115,
90688
+ /* 1220 */ 129, 130, 131, 132, 133, 134, 120, 37, 165, 150,
90689
+ /* 1230 */ 20, 193, 127, 129, 130, 131, 132, 133, 134, 218,
90690
+ /* 1240 */ 150, 107, 150, 150, 165, 150, 56, 150, 150, 126,
90691
+ /* 1250 */ 22, 16, 160, 65, 23, 165, 66, 165, 165, 150,
90692
+ /* 1260 */ 165, 23, 165, 165, 174, 175, 174, 175, 247, 174,
90693
+ /* 1270 */ 175, 174, 175, 15, 165, 150, 86, 87, 150, 150,
90694
+ /* 1280 */ 150, 22, 3, 93, 94, 95, 194, 150, 98, 140,
90695
+ /* 1290 */ 165, 150, 150, 165, 165, 165, 19, 20, 4, 22,
90696
+ /* 1300 */ 164, 180, 165, 26, 27, 249, 165, 165, 216, 6,
90697
+ /* 1310 */ 150, 174, 175, 221, 37, 174, 175, 252, 252, 129,
90698
+ /* 1320 */ 130, 131, 132, 133, 134, 165, 180, 150, 149, 5,
90699
+ /* 1330 */ 150, 150, 150, 56, 10, 11, 12, 13, 14, 150,
90700
+ /* 1340 */ 149, 17, 165, 66, 150, 165, 165, 165, 149, 13,
90701
+ /* 1350 */ 150, 149, 151, 150, 165, 31, 159, 33, 150, 165,
90702
+ /* 1360 */ 151, 194, 150, 86, 87, 165, 42, 25, 165, 115,
90703
+ /* 1370 */ 93, 94, 95, 165, 150, 98, 150, 165, 22, 55,
90704
+ /* 1380 */ 150, 57, 26, 27, 199, 61, 125, 150, 64, 165,
90705
+ /* 1390 */ 150, 165, 200, 122, 201, 165, 123, 150, 174, 175,
90706
+ /* 1400 */ 174, 175, 165, 150, 121, 165, 129, 130, 131, 132,
90707
+ /* 1410 */ 133, 134, 165, 202, 174, 175, 203, 124, 165, 135,
90708
+ /* 1420 */ 157, 117, 66, 227, 157, 210, 104, 211, 120, 105,
90709
+ /* 1430 */ 106, 210, 176, 211, 110, 210, 104, 47, 211, 115,
90710
+ /* 1440 */ 176, 184, 86, 87, 176, 179, 103, 178, 176, 22,
90711
+ /* 1450 */ 94, 92, 128, 230, 98, 179, 176, 176, 184, 230,
90712
+ /* 1460 */ 18, 176, 156, 139, 157, 156, 45, 157, 156, 135,
90713
+ /* 1470 */ 157, 157, 238, 156, 68, 239, 157, 189, 189, 219,
90714
+ /* 1480 */ 22, 199, 157, 192, 18, 129, 130, 131, 192, 192,
90715
+ /* 1490 */ 192, 199, 189, 219, 157, 243, 40, 243, 157, 157,
90716
+ /* 1500 */ 246, 38, 153, 196, 198, 166, 233, 233, 228, 177,
90717
+ /* 1510 */ 177, 209, 177, 182, 177, 166, 177, 166, 178, 242,
90718
+ /* 1520 */ 199, 242, 209, 209, 199, 148, 196, 166, 208, 195,
90719
+ /* 1530 */ 195, 236, 237, 195, 191, 183, 183, 186, 174, 174,
90720
+ /* 1540 */ 186, 115, 92,
9071290721
};
90713
-#define YY_SHIFT_USE_DFLT (-104)
90714
-#define YY_SHIFT_MAX 417
90722
+#define YY_SHIFT_USE_DFLT (-70)
90723
+#define YY_SHIFT_COUNT (417)
90724
+#define YY_SHIFT_MIN (-69)
90725
+#define YY_SHIFT_MAX (1466)
9071590726
static const short yy_shift_ofst[] = {
90716
- /* 0 */ 967, 1091, 1324, 1091, 1277, 1277, 142, 142, 1, -19,
90717
- /* 10 */ 1277, 1277, 1277, 1277, 1277, 209, 136, 721, 1104, 1277,
90718
- /* 20 */ 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277,
90719
- /* 30 */ 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277,
90720
- /* 40 */ 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277,
90721
- /* 50 */ 1277, 1277, 1277, 1277, 1277, 1190, 1277, 1277, 1277, 1277,
90722
- /* 60 */ 1277, -49, 361, 136, 136, 992, 138, 992, -103, 55,
90723
- /* 70 */ 129, 499, 351, 647, 203, 277, 425, 573, 869, 795,
90727
+ /* 0 */ 1120, 1104, 1324, 1104, 1190, 1190, 90, 90, 1, -19,
90728
+ /* 10 */ 1190, 1190, 1190, 1190, 1190, 280, 391, 721, 1091, 1190,
90729
+ /* 20 */ 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
90730
+ /* 30 */ 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
90731
+ /* 40 */ 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1277, 1190, 1190,
90732
+ /* 50 */ 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
90733
+ /* 60 */ 1190, -49, 287, 391, 391, 988, 988, 215, 1426, 55,
90734
+ /* 70 */ 647, 573, 499, 425, 351, 277, 203, 129, 795, 795,
9072490735
/* 80 */ 795, 795, 795, 795, 795, 795, 795, 795, 795, 795,
90725
- /* 90 */ 795, 795, 795, 795, 795, 795, 795, 795, 943, 1017,
90726
- /* 100 */ 1017, -69, -69, -69, -69, -1, -1, 57, 28, -44,
90727
- /* 110 */ 136, 136, 502, 136, 136, 136, 136, 136, 136, 136,
90728
- /* 120 */ 136, 136, 136, 136, 136, 136, 136, 136, 136, 580,
90729
- /* 130 */ 136, 136, 136, 138, 804, -63, -104, -104, -104, 1356,
90730
- /* 140 */ 74, 426, 433, 355, 215, 433, 313, 369, 136, 136,
90731
- /* 150 */ 136, 136, 136, 136, 136, 136, 136, 754, 136, 136,
90732
- /* 160 */ 136, 136, 136, 136, 136, 136, 136, 827, 136, 136,
90733
- /* 170 */ 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
90734
- /* 180 */ 136, 136, 586, 731, 731, 731, 780, 282, -103, -103,
90735
- /* 190 */ -103, -104, -104, -104, 94, 158, 94, 12, 220, 662,
90736
- /* 200 */ 516, 744, 870, 809, 870, 818, 555, 634, 419, 655,
90737
- /* 210 */ 634, 634, 634, 638, 634, 213, 582, 634, 415, 566,
90738
- /* 220 */ 138, 566, 138, 435, 642, 884, 138, 358, 309, 309,
90739
- /* 230 */ 621, 621, 1129, 627, 566, 566, 358, 1129, 309, 566,
90740
- /* 240 */ 1150, 1177, 1187, 1185, 1101, 1101, 1101, 1207, 1202, 1157,
90741
- /* 250 */ 1157, 1101, 1197, 1157, 1263, 1197, 1157, 1101, 1202, 1157,
90742
- /* 260 */ 1263, 1101, 1311, 1330, 1157, 1258, 1263, 1157, 1330, 1363,
90743
- /* 270 */ 1101, 1363, 1363, 1312, 1280, 1269, 1101, 1354, 1259, 1271,
90744
- /* 280 */ 1312, 1101, 1177, 1177, 1177, 1271, 1312, 1280, 1269, 1185,
90745
- /* 290 */ 1280, 1269, 1363, 1288, 1101, 1298, 1300, 1303, 1263, 1271,
90746
- /* 300 */ 1101, -103, 1187, 1301, 1390, 1311, -104, -104, -104, -104,
90747
- /* 310 */ -104, -104, 939, 468, 978, 84, 837, 1317, 650, 831,
90748
- /* 320 */ 971, 595, 1275, 1321, 723, 1046, 901, 1109, 749, 1229,
90749
- /* 330 */ 972, 1043, 1315, 1445, 1432, 1425, 1427, 1334, 1336, 1338,
90750
- /* 340 */ 1339, 1340, 1347, 1438, 1439, 1441, 1443, 1450, 1444, 1446,
90751
- /* 350 */ 1442, 1447, 1448, 1451, 1437, 1452, 1440, 1451, 1359, 1457,
90752
- /* 360 */ 1449, 1453, 1364, 1459, 1460, 1454, 1436, 1467, 1461, 1455,
90753
- /* 370 */ 1469, 1471, 1470, 1473, 1456, 1474, 1395, 1391, 1479, 1480,
90754
- /* 380 */ 1477, 1398, 1462, 1458, 1463, 1478, 1465, 1366, 1402, 1487,
90755
- /* 390 */ 1505, 1510, 1396, -29, 1485, 1407, 1464, 1466, 1389, 1497,
90756
- /* 400 */ 1403, 1519, 1506, 1404, 1503, 1408, 1418, 1507, 1400, 1508,
90757
- /* 410 */ 1509, 1512, 1468, 1515, 1394, 1513, 1533, 1534,
90736
+ /* 90 */ 795, 795, 795, 795, 795, 795, 869, 795, 943, 1017,
90737
+ /* 100 */ 1017, -69, -69, -69, -69, -1, -1, 58, 138, -44,
90738
+ /* 110 */ 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
90739
+ /* 120 */ 391, 391, 391, 391, 391, 391, 463, 506, 391, 391,
90740
+ /* 130 */ 391, 391, 391, 215, 959, 1450, -70, -70, -70, 1356,
90741
+ /* 140 */ 73, 433, 433, 361, 309, 165, 67, 284, 466, 291,
90742
+ /* 150 */ 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
90743
+ /* 160 */ 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
90744
+ /* 170 */ 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
90745
+ /* 180 */ 391, 391, 501, 221, 221, 221, 705, 797, 1426, 1426,
90746
+ /* 190 */ 1426, -70, -70, -70, 139, 171, 171, 12, 568, 568,
90747
+ /* 200 */ 209, 427, 370, 367, 352, 296, 38, 38, 38, 38,
90748
+ /* 210 */ 348, 569, 38, 38, 74, 587, 592, 17, 495, 87,
90749
+ /* 220 */ 87, 372, 495, 372, 755, 215, 293, 215, 293, 140,
90750
+ /* 230 */ 293, 87, 293, 293, 762, 638, 638, 215, 78, 51,
90751
+ /* 240 */ 246, 1463, 1304, 1304, 1456, 1456, 1304, 1458, 1406, 1261,
90752
+ /* 250 */ 1466, 1466, 1466, 1466, 1304, 1261, 1458, 1406, 1406, 1304,
90753
+ /* 260 */ 1442, 1334, 1421, 1304, 1304, 1442, 1304, 1442, 1304, 1442,
90754
+ /* 270 */ 1427, 1332, 1332, 1332, 1390, 1359, 1359, 1427, 1332, 1343,
90755
+ /* 280 */ 1332, 1390, 1332, 1332, 1308, 1322, 1308, 1322, 1308, 1322,
90756
+ /* 290 */ 1304, 1304, 1284, 1293, 1283, 1273, 1271, 1261, 1254, 1342,
90757
+ /* 300 */ 1336, 1336, 1303, 1303, 1303, 1303, -70, -70, -70, -70,
90758
+ /* 310 */ -70, -70, 334, 120, 535, 232, 624, 944, 188, 905,
90759
+ /* 320 */ 897, 873, 870, 825, 754, 719, 651, 527, 444, 125,
90760
+ /* 330 */ 514, 434, 1294, 1279, 1259, 1149, 1258, 1188, 1235, 1238,
90761
+ /* 340 */ 1231, 1105, 1228, 1123, 1134, 1100, 1210, 1106, 1198, 1205,
90762
+ /* 350 */ 1083, 1174, 1057, 1124, 1118, 1075, 1138, 1139, 1052, 1163,
90763
+ /* 360 */ 1158, 1133, 1050, 978, 1099, 1107, 1089, 1020, 1034, 968,
90764
+ /* 370 */ 1039, 1048, 991, 899, 958, 981, 942, 976, 974, 966,
90765
+ /* 380 */ 957, 921, 900, 833, 863, 867, 839, 836, 735, 822,
90766
+ /* 390 */ 803, 806, 706, 684, 723, 730, 658, 684, 728, 690,
90767
+ /* 400 */ 678, 660, 655, 679, 650, 616, 606, 571, 468, 389,
90768
+ /* 410 */ 343, 294, 186, 3, 40, 6, -3, 5,
9075890769
};
9075990770
#define YY_REDUCE_USE_DFLT (-222)
90760
-#define YY_REDUCE_MAX 311
90771
+#define YY_REDUCE_COUNT (311)
90772
+#define YY_REDUCE_MIN (-221)
90773
+#define YY_REDUCE_MAX (1377)
9076190774
static const short yy_reduce_ofst[] = {
90762
- /* 0 */ 118, 90, 238, 147, 155, 20, 173, 148, 83, 246,
90763
- /* 10 */ 377, 379, 385, 241, 228, 386, 297, 312, 443, 445,
90764
- /* 20 */ 459, 462, 464, 504, 517, 530, 535, 537, 578, 591,
90765
- /* 30 */ 594, 610, 613, 652, 665, 668, 672, 686, 726, 739,
90766
- /* 40 */ 742, 760, 800, 816, 834, 874, 888, 890, 908, 911,
90767
- /* 50 */ 962, 975, 989, 993, 1029, 1065, 1092, 1094, 1097, 1100,
90768
- /* 60 */ 1105, -221, 1011, 249, 224, 311, 23, 362, 110, 77,
90769
- /* 70 */ 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
90770
- /* 80 */ 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
90771
- /* 90 */ 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
90772
- /* 100 */ 77, 77, 77, 77, 77, 77, 77, 730, 77, 77,
90773
- /* 110 */ 813, -88, 22, 669, 596, 762, 341, 833, 743, 740,
90774
- /* 120 */ 814, 891, 892, 817, 894, 964, 994, 390, -71, 206,
90775
- /* 130 */ 549, 463, 666, -142, 77, 77, 77, 77, 77, 392,
90776
- /* 140 */ 273, 970, 815, 996, 1001, 925, 1015, 1023, 1061, 1063,
90777
- /* 150 */ 1093, 1095, 1098, 1128, 1136, 1137, 1140, 932, 1141, 1142,
90778
- /* 160 */ 1144, 1145, 1001, 1161, 1162, 1165, 1166, 932, 1167, 1189,
90779
- /* 170 */ 1195, 31, 208, 451, 670, 673, 820, 821, 822, 830,
90780
- /* 180 */ 988, 910, -10, 21, 44, 914, 927, 883, 961, 982,
90781
- /* 190 */ 332, 266, 948, 383, -96, -94, -76, -83, -59, -30,
90782
- /* 200 */ -41, -59, -3, -59, 10, -59, 177, -59, 105, 247,
90783
- /* 210 */ -59, -59, -59, 139, -59, -41, 190, -59, 296, 438,
90784
- /* 220 */ 320, 448, 523, 529, 590, 626, 682, 699, 706, 727,
90785
- /* 230 */ 764, 819, 734, 745, 897, 921, 848, 920, 960, 998,
90786
- /* 240 */ 1040, 1004, 1050, 995, 1051, 1062, 1074, 1082, 1069, 1088,
90787
- /* 250 */ 1106, 1116, 1078, 1149, 1172, 1083, 1171, 1191, 1134, 1173,
90788
- /* 260 */ 1194, 1196, 1113, 1179, 1183, 1184, 1209, 1192, 1188, 1224,
90789
- /* 270 */ 1217, 1227, 1228, 1198, 1176, 1180, 1233, 1147, 1168, 1199,
90790
- /* 280 */ 1208, 1242, 1210, 1211, 1212, 1201, 1216, 1203, 1204, 1182,
90791
- /* 290 */ 1206, 1213, 1265, 1214, 1261, 1218, 1220, 1226, 1272, 1232,
90792
- /* 300 */ 1270, 1238, 1282, 1205, 1200, 1215, 1219, 1257, 1260, 1281,
90793
- /* 310 */ 1221, 1222,
90775
+ /* 0 */ 493, 1092, 1021, 147, 158, 155, 86, 18, 81, 172,
90776
+ /* 10 */ 385, 377, 308, 379, 297, 252, -43, -146, 1240, 1226,
90777
+ /* 20 */ 1224, 1141, 1137, 1097, 1095, 1090, 1030, 975, 964, 962,
90778
+ /* 30 */ 908, 890, 887, 874, 834, 816, 813, 800, 760, 758,
90779
+ /* 40 */ 742, 739, 726, 686, 672, 668, 665, 652, 611, 609,
90780
+ /* 50 */ 607, 591, 578, 537, 526, 524, 520, 504, 456, 450,
90781
+ /* 60 */ 371, -221, 474, 369, 517, 395, 92, 301, 401, 118,
90782
+ /* 70 */ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
90783
+ /* 80 */ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
90784
+ /* 90 */ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
90785
+ /* 100 */ 118, 118, 118, 118, 118, 118, 118, 208, 118, 118,
90786
+ /* 110 */ 1038, 994, 983, 969, 892, 891, 888, 818, 761, 832,
90787
+ /* 120 */ 613, 604, 523, 744, 830, 771, 595, 430, 740, 670,
90788
+ /* 130 */ 669, 666, 610, 579, 118, 118, 118, 118, 118, 667,
90789
+ /* 140 */ 972, 880, 786, 996, 1253, 1247, 1237, 1001, 750, 750,
90790
+ /* 150 */ 1230, 1212, 1208, 1203, 1200, 1194, 1189, 1182, 1181, 1180,
90791
+ /* 160 */ 1177, 1160, 1142, 1130, 1129, 1128, 1125, 1109, 1098, 1093,
90792
+ /* 170 */ 1079, 1063, 1043, 1042, 1022, 1006, 996, 993, 970, 904,
90793
+ /* 180 */ 382, 378, 886, 910, 893, 881, 841, 884, 812, 811,
90794
+ /* 190 */ 810, 539, 696, 358, 1354, 1365, 1364, 1351, 1353, 1352,
90795
+ /* 200 */ 1320, 1338, 1343, 1338, 1338, 1338, 1338, 1338, 1338, 1338,
90796
+ /* 210 */ 1295, 1295, 1335, 1334, 1320, 1361, 1330, 1377, 1325, 1314,
90797
+ /* 220 */ 1313, 1279, 1321, 1277, 1340, 1351, 1339, 1349, 1337, 1331,
90798
+ /* 230 */ 1335, 1302, 1333, 1332, 1280, 1274, 1273, 1339, 1306, 1307,
90799
+ /* 240 */ 1349, 1254, 1342, 1341, 1254, 1252, 1337, 1274, 1303, 1292,
90800
+ /* 250 */ 1298, 1297, 1296, 1291, 1325, 1282, 1260, 1289, 1288, 1319,
90801
+ /* 260 */ 1317, 1236, 1234, 1314, 1313, 1312, 1310, 1309, 1307, 1306,
90802
+ /* 270 */ 1276, 1285, 1281, 1280, 1274, 1229, 1223, 1266, 1272, 1269,
90803
+ /* 280 */ 1268, 1257, 1264, 1256, 1227, 1225, 1222, 1221, 1216, 1215,
90804
+ /* 290 */ 1267, 1263, 1196, 1213, 1211, 1193, 1192, 1185, 1167, 1197,
90805
+ /* 300 */ 1209, 1201, 1202, 1199, 1191, 1179, 1066, 1065, 1056, 1146,
90806
+ /* 310 */ 1121, 1136,
9079490807
};
9079590808
static const YYACTIONTYPE yy_default[] = {
90796
- /* 0 */ 634, 869, 958, 958, 869, 958, 898, 898, 958, 757,
90797
- /* 10 */ 958, 867, 958, 958, 958, 958, 958, 932, 958, 958,
90809
+ /* 0 */ 634, 869, 958, 958, 958, 869, 898, 898, 958, 757,
90810
+ /* 10 */ 958, 958, 958, 958, 867, 958, 958, 932, 958, 958,
9079890811
/* 20 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
9079990812
/* 30 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
9080090813
/* 40 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
9080190814
/* 50 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90802
- /* 60 */ 958, 841, 958, 958, 958, 898, 673, 898, 761, 792,
90803
- /* 70 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 931,
90804
- /* 80 */ 793, 783, 911, 864, 806, 772, 800, 797, 933, 866,
90805
- /* 90 */ 863, 799, 790, 794, 871, 807, 870, 862, 829, 847,
90806
- /* 100 */ 828, 846, 853, 831, 845, 830, 840, 665, 832, 833,
90807
- /* 110 */ 958, 958, 660, 958, 958, 958, 958, 958, 958, 958,
90808
- /* 120 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 726,
90809
- /* 130 */ 958, 958, 958, 958, 834, 835, 849, 848, 850, 958,
90810
- /* 140 */ 958, 958, 958, 958, 958, 958, 958, 958, 882, 958,
90811
- /* 150 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90812
- /* 160 */ 958, 958, 958, 958, 958, 958, 640, 958, 958, 958,
90813
- /* 170 */ 958, 958, 958, 958, 936, 958, 958, 958, 938, 958,
90814
- /* 180 */ 958, 958, 958, 757, 757, 757, 634, 958, 958, 958,
90815
- /* 190 */ 958, 761, 751, 950, 958, 717, 958, 958, 958, 958,
90816
- /* 200 */ 958, 958, 958, 958, 958, 958, 642, 921, 958, 675,
90817
- /* 210 */ 802, 662, 740, 904, 738, 759, 749, 923, 696, 786,
90818
- /* 220 */ 958, 786, 958, 699, 749, 758, 958, 796, 774, 774,
90819
- /* 230 */ 958, 958, 916, 865, 786, 786, 796, 916, 774, 786,
90820
- /* 240 */ 958, 737, 650, 808, 765, 765, 765, 716, 713, 728,
90821
- /* 250 */ 728, 765, 879, 728, 657, 879, 728, 765, 713, 728,
90822
- /* 260 */ 657, 765, 935, 875, 728, 699, 657, 728, 875, 639,
90823
- /* 270 */ 765, 639, 639, 730, 773, 778, 765, 943, 958, 796,
90824
- /* 280 */ 730, 765, 737, 737, 737, 796, 730, 773, 778, 808,
90825
- /* 290 */ 773, 778, 639, 791, 765, 779, 789, 787, 657, 796,
90826
- /* 300 */ 765, 958, 650, 910, 908, 935, 950, 701, 701, 683,
90827
- /* 310 */ 955, 955, 958, 958, 958, 958, 958, 958, 958, 958,
90828
- /* 320 */ 958, 958, 958, 958, 958, 884, 958, 958, 958, 958,
90829
- /* 330 */ 958, 958, 958, 958, 648, 958, 667, 815, 820, 816,
90830
- /* 340 */ 958, 817, 743, 958, 958, 958, 958, 958, 958, 958,
90831
- /* 350 */ 958, 958, 958, 868, 958, 780, 958, 788, 958, 958,
90832
- /* 360 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90815
+ /* 60 */ 958, 841, 958, 958, 958, 898, 898, 673, 761, 792,
90816
+ /* 70 */ 958, 958, 958, 958, 958, 958, 958, 958, 931, 933,
90817
+ /* 80 */ 807, 806, 800, 799, 911, 772, 797, 790, 783, 794,
90818
+ /* 90 */ 870, 863, 864, 862, 866, 871, 958, 793, 829, 847,
90819
+ /* 100 */ 828, 846, 853, 845, 831, 840, 830, 665, 832, 833,
90820
+ /* 110 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90821
+ /* 120 */ 958, 958, 958, 958, 958, 958, 660, 726, 958, 958,
90822
+ /* 130 */ 958, 958, 958, 958, 834, 835, 850, 849, 848, 958,
90823
+ /* 140 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90824
+ /* 150 */ 958, 938, 936, 958, 882, 958, 958, 958, 958, 958,
90825
+ /* 160 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90826
+ /* 170 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90827
+ /* 180 */ 958, 640, 958, 757, 757, 757, 634, 958, 958, 958,
90828
+ /* 190 */ 958, 950, 761, 751, 717, 958, 958, 958, 958, 958,
90829
+ /* 200 */ 958, 958, 958, 958, 958, 958, 802, 740, 921, 923,
90830
+ /* 210 */ 958, 904, 738, 662, 759, 675, 749, 642, 796, 774,
90831
+ /* 220 */ 774, 916, 796, 916, 699, 958, 786, 958, 786, 696,
90832
+ /* 230 */ 786, 774, 786, 786, 865, 958, 958, 958, 758, 749,
90833
+ /* 240 */ 958, 943, 765, 765, 935, 935, 765, 808, 730, 796,
90834
+ /* 250 */ 737, 737, 737, 737, 765, 796, 808, 730, 730, 765,
90835
+ /* 260 */ 657, 910, 908, 765, 765, 657, 765, 657, 765, 657,
90836
+ /* 270 */ 875, 728, 728, 728, 713, 879, 879, 875, 728, 699,
90837
+ /* 280 */ 728, 713, 728, 728, 778, 773, 778, 773, 778, 773,
90838
+ /* 290 */ 765, 765, 958, 791, 779, 789, 787, 796, 958, 716,
90839
+ /* 300 */ 650, 650, 639, 639, 639, 639, 955, 955, 950, 701,
90840
+ /* 310 */ 701, 683, 958, 958, 958, 958, 958, 958, 884, 958,
90841
+ /* 320 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90842
+ /* 330 */ 958, 958, 958, 635, 945, 958, 958, 942, 958, 958,
90843
+ /* 340 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90844
+ /* 350 */ 958, 958, 958, 958, 958, 958, 958, 958, 914, 958,
90845
+ /* 360 */ 958, 958, 958, 958, 958, 907, 906, 958, 958, 958,
9083390846
/* 370 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90834
- /* 380 */ 958, 958, 958, 958, 906, 907, 958, 958, 958, 958,
90835
- /* 390 */ 958, 958, 914, 958, 958, 958, 958, 958, 958, 958,
90836
- /* 400 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90837
- /* 410 */ 958, 958, 942, 958, 958, 945, 635, 958, 711, 649,
90838
- /* 420 */ 734, 733, 732, 729, 691, 690, 689, 647, 820, 688,
90839
- /* 430 */ 767, 687, 826, 900, 825, 813, 937, 646, 909, 905,
90840
- /* 440 */ 645, 857, 939, 901, 902, 957, 903, 659, 644, 754,
90841
- /* 450 */ 753, 752, 954, 764, 630, 763, 776, 872, 873, 643,
90842
- /* 460 */ 775, 811, 810, 777, 731, 804, 805, 762, 899, 940,
90843
- /* 470 */ 912, 756, 755, 636, 771, 915, 770, 672, 769, 917,
90844
- /* 480 */ 671, 918, 941, 768, 760, 750, 944, 782, 785, 919,
90845
- /* 490 */ 631, 784, 781, 670, 842, 859, 766, 856, 809, 928,
90846
- /* 500 */ 927, 668, 926, 925, 924, 861, 920, 860, 946, 827,
90847
- /* 510 */ 824, 678, 922, 667, 913, 641, 679, 897, 951, 895,
90848
- /* 520 */ 947, 656, 896, 894, 681, 735, 952, 736, 680, 677,
90849
- /* 530 */ 739, 676, 858, 881, 745, 744, 929, 854, 638, 851,
90850
- /* 540 */ 843, 838, 795, 855, 852, 844, 637, 839, 837, 798,
90851
- /* 550 */ 836, 822, 821, 819, 818, 953, 814, 823, 801, 633,
90852
- /* 560 */ 803, 669, 883, 746, 742, 741, 812, 885, 887, 889,
90853
- /* 570 */ 890, 891, 892, 893, 748, 632, 886, 956, 888, 747,
90854
- /* 580 */ 666, 718, 674, 721, 686, 684, 685, 712, 682, 698,
90855
- /* 590 */ 722, 663, 697, 878, 880, 723, 930, 877, 876, 705,
90856
- /* 600 */ 724, 661, 654, 710, 709, 934, 708, 707, 706, 704,
90857
- /* 610 */ 652, 725, 727, 719, 720, 664, 703, 702, 695, 694,
90858
- /* 620 */ 700, 693, 715, 655, 651, 653, 658, 714, 692,
90847
+ /* 380 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90848
+ /* 390 */ 958, 958, 958, 788, 958, 780, 958, 868, 958, 958,
90849
+ /* 400 */ 958, 958, 958, 958, 958, 958, 958, 958, 743, 817,
90850
+ /* 410 */ 958, 816, 820, 815, 667, 958, 648, 958, 631, 636,
90851
+ /* 420 */ 954, 957, 956, 953, 952, 951, 946, 944, 941, 940,
90852
+ /* 430 */ 939, 937, 934, 930, 888, 886, 893, 892, 891, 890,
90853
+ /* 440 */ 889, 887, 885, 883, 803, 801, 798, 795, 929, 881,
90854
+ /* 450 */ 739, 736, 735, 656, 947, 913, 922, 920, 809, 919,
90855
+ /* 460 */ 918, 917, 915, 912, 899, 805, 804, 731, 873, 872,
90856
+ /* 470 */ 659, 903, 902, 901, 905, 909, 900, 767, 658, 655,
90857
+ /* 480 */ 664, 720, 719, 727, 725, 724, 723, 722, 721, 718,
90858
+ /* 490 */ 666, 674, 685, 712, 698, 697, 878, 880, 877, 876,
90859
+ /* 500 */ 705, 710, 709, 708, 707, 706, 704, 703, 702, 695,
90860
+ /* 510 */ 694, 700, 693, 715, 714, 711, 692, 734, 733, 732,
90861
+ /* 520 */ 729, 691, 690, 689, 820, 688, 687, 826, 825, 813,
90862
+ /* 530 */ 857, 754, 753, 752, 764, 763, 776, 775, 811, 810,
90863
+ /* 540 */ 777, 762, 756, 755, 771, 770, 769, 768, 760, 750,
90864
+ /* 550 */ 782, 785, 784, 781, 842, 859, 766, 856, 928, 927,
90865
+ /* 560 */ 926, 925, 924, 861, 860, 827, 824, 678, 679, 897,
90866
+ /* 570 */ 895, 896, 894, 681, 680, 677, 676, 858, 745, 744,
90867
+ /* 580 */ 854, 851, 843, 838, 855, 852, 844, 839, 837, 836,
90868
+ /* 590 */ 822, 821, 819, 818, 814, 823, 669, 746, 742, 741,
90869
+ /* 600 */ 812, 748, 747, 686, 684, 682, 663, 661, 654, 652,
90870
+ /* 610 */ 651, 653, 649, 647, 646, 645, 644, 643, 672, 671,
90871
+ /* 620 */ 670, 668, 667, 641, 638, 637, 633, 632, 630,
9085990872
};
90860
-#define YY_SZ_ACTTAB (int)(sizeof(yy_action)/sizeof(yy_action[0]))
9086190873
9086290874
/* The next table maps tokens into fallback tokens. If a construct
9086390875
** like the following:
9086490876
**
9086590877
** %fallback ID X Y Z.
@@ -91642,18 +91654,17 @@
9164291654
YYCODETYPE iLookAhead /* The look-ahead token */
9164391655
){
9164491656
int i;
9164591657
int stateno = pParser->yystack[pParser->yyidx].stateno;
9164691658
91647
- if( stateno>YY_SHIFT_MAX || (i = yy_shift_ofst[stateno])==YY_SHIFT_USE_DFLT ){
91659
+ if( stateno>YY_SHIFT_COUNT
91660
+ || (i = yy_shift_ofst[stateno])==YY_SHIFT_USE_DFLT ){
9164891661
return yy_default[stateno];
9164991662
}
9165091663
assert( iLookAhead!=YYNOCODE );
9165191664
i += iLookAhead;
91652
- if( i<0 || i>=YY_SZ_ACTTAB || yy_lookahead[i]!=iLookAhead ){
91653
- /* The user of ";" instead of "\000" as a statement terminator in SQLite
91654
- ** means that we always have a look-ahead token. */
91665
+ if( i<0 || i>=YY_ACTTAB_COUNT || yy_lookahead[i]!=iLookAhead ){
9165591666
if( iLookAhead>0 ){
9165691667
#ifdef YYFALLBACK
9165791668
YYCODETYPE iFallback; /* Fallback token */
9165891669
if( iLookAhead<sizeof(yyFallback)/sizeof(yyFallback[0])
9165991670
&& (iFallback = yyFallback[iLookAhead])!=0 ){
@@ -91667,11 +91678,19 @@
9166791678
}
9166891679
#endif
9166991680
#ifdef YYWILDCARD
9167091681
{
9167191682
int j = i - iLookAhead + YYWILDCARD;
91672
- if( j>=0 && j<YY_SZ_ACTTAB && yy_lookahead[j]==YYWILDCARD ){
91683
+ if(
91684
+#if YY_SHIFT_MIN+YYWILDCARD<0
91685
+ j>=0 &&
91686
+#endif
91687
+#if YY_SHIFT_MAX+YYWILDCARD>=YY_ACTTAB_COUNT
91688
+ j<YY_ACTTAB_COUNT &&
91689
+#endif
91690
+ yy_lookahead[j]==YYWILDCARD
91691
+ ){
9167391692
#ifndef NDEBUG
9167491693
if( yyTraceFILE ){
9167591694
fprintf(yyTraceFILE, "%sWILDCARD %s => %s\n",
9167691695
yyTracePrompt, yyTokenName[iLookAhead], yyTokenName[YYWILDCARD]);
9167791696
}
@@ -91699,26 +91718,26 @@
9169991718
int stateno, /* Current state number */
9170091719
YYCODETYPE iLookAhead /* The look-ahead token */
9170191720
){
9170291721
int i;
9170391722
#ifdef YYERRORSYMBOL
91704
- if( stateno>YY_REDUCE_MAX ){
91723
+ if( stateno>YY_REDUCE_COUNT ){
9170591724
return yy_default[stateno];
9170691725
}
9170791726
#else
91708
- assert( stateno<=YY_REDUCE_MAX );
91727
+ assert( stateno<=YY_REDUCE_COUNT );
9170991728
#endif
9171091729
i = yy_reduce_ofst[stateno];
9171191730
assert( i!=YY_REDUCE_USE_DFLT );
9171291731
assert( iLookAhead!=YYNOCODE );
9171391732
i += iLookAhead;
9171491733
#ifdef YYERRORSYMBOL
91715
- if( i<0 || i>=YY_SZ_ACTTAB || yy_lookahead[i]!=iLookAhead ){
91734
+ if( i<0 || i>=YY_ACTTAB_COUNT || yy_lookahead[i]!=iLookAhead ){
9171691735
return yy_default[stateno];
9171791736
}
9171891737
#else
91719
- assert( i>=0 && i<YY_SZ_ACTTAB );
91738
+ assert( i>=0 && i<YY_ACTTAB_COUNT );
9172091739
assert( yy_lookahead[i]==iLookAhead );
9172191740
#endif
9172291741
return yy_action[i];
9172391742
}
9172491743
@@ -93586,11 +93605,11 @@
9358693605
/************** Begin file keywordhash.h *************************************/
9358793606
/***** This file contains automatically generated code ******
9358893607
**
9358993608
** The code in this file has been automatically generated by
9359093609
**
93591
-** $Header: /home/drh/sqlite/trans/cvs/sqlite/sqlite/tool/mkkeywordhash.c,v 1.38 2009/06/09 14:27:41 drh Exp $
93610
+** sqlite/tool/mkkeywordhash.c
9359293611
**
9359393612
** The code in this file implements a function that determines whether
9359493613
** or not a given identifier is really an SQL keyword. The same thing
9359593614
** might be implemented more directly using a hand-written hash table.
9359693615
** But by using this automatically generated code, the size of the code
@@ -93641,27 +93660,27 @@
9364193660
'T','R','I','C','T','O','U','T','E','R','I','G','H','T','R','O','L','L',
9364293661
'B','A','C','K','R','O','W','U','N','I','O','N','U','S','I','N','G','V',
9364393662
'A','C','U','U','M','V','I','E','W','I','N','I','T','I','A','L','L','Y',
9364493663
};
9364593664
static const unsigned char aHash[127] = {
93646
- 72, 101, 114, 70, 0, 44, 0, 0, 78, 0, 73, 0, 0,
93665
+ 72, 101, 114, 70, 0, 45, 0, 0, 78, 0, 73, 0, 0,
9364793666
42, 12, 74, 15, 0, 113, 81, 50, 108, 0, 19, 0, 0,
9364893667
118, 0, 116, 111, 0, 22, 89, 0, 9, 0, 0, 66, 67,
93649
- 0, 65, 6, 0, 48, 86, 98, 0, 115, 97, 0, 0, 45,
93668
+ 0, 65, 6, 0, 48, 86, 98, 0, 115, 97, 0, 0, 44,
9365093669
0, 99, 24, 0, 17, 0, 119, 49, 23, 0, 5, 106, 25,
9365193670
92, 0, 0, 121, 102, 56, 120, 53, 28, 51, 0, 87, 0,
9365293671
96, 26, 0, 95, 0, 0, 0, 91, 88, 93, 84, 105, 14,
9365393672
39, 104, 0, 77, 0, 18, 85, 107, 32, 0, 117, 76, 109,
93654
- 57, 46, 80, 0, 0, 90, 40, 0, 112, 0, 36, 0, 0,
93655
- 29, 0, 82, 59, 60, 0, 20, 58, 0, 52,
93673
+ 58, 46, 80, 0, 0, 90, 40, 0, 112, 0, 36, 0, 0,
93674
+ 29, 0, 82, 59, 60, 0, 20, 57, 0, 52,
9365693675
};
9365793676
static const unsigned char aNext[121] = {
9365893677
0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0,
9365993678
0, 2, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
9366093679
0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
93661
- 0, 0, 0, 0, 0, 33, 21, 0, 0, 0, 43, 3, 47,
93662
- 0, 0, 0, 0, 0, 30, 54, 0, 38, 0, 0, 0, 1,
93680
+ 0, 0, 0, 0, 33, 0, 21, 0, 0, 0, 43, 3, 47,
93681
+ 0, 0, 0, 0, 30, 0, 54, 0, 38, 0, 0, 0, 1,
9366393682
62, 0, 0, 63, 0, 41, 0, 0, 0, 0, 0, 0, 0,
9366493683
61, 0, 0, 0, 0, 31, 55, 16, 34, 10, 0, 0, 0,
9366593684
0, 0, 0, 0, 11, 68, 75, 0, 8, 0, 100, 94, 0,
9366693685
103, 0, 83, 0, 71, 0, 0, 110, 27, 37, 69, 79, 0,
9366793686
35, 64, 0, 0,
@@ -93668,12 +93687,12 @@
9366893687
};
9366993688
static const unsigned char aLen[121] = {
9367093689
7, 7, 5, 4, 6, 4, 5, 3, 6, 7, 3, 6, 6,
9367193690
7, 7, 3, 8, 2, 6, 5, 4, 4, 3, 10, 4, 6,
9367293691
11, 6, 2, 7, 5, 5, 9, 6, 9, 9, 7, 10, 10,
93673
- 4, 6, 2, 3, 4, 9, 2, 6, 5, 6, 6, 5, 6,
93674
- 5, 5, 7, 7, 3, 7, 2, 4, 4, 7, 3, 6, 4,
93692
+ 4, 6, 2, 3, 9, 4, 2, 6, 5, 6, 6, 5, 6,
93693
+ 5, 5, 7, 7, 7, 3, 2, 4, 4, 7, 3, 6, 4,
9367593694
7, 6, 12, 6, 9, 4, 6, 5, 4, 7, 6, 5, 6,
9367693695
7, 5, 4, 5, 6, 5, 7, 3, 7, 13, 2, 2, 4,
9367793696
6, 6, 8, 5, 17, 12, 7, 8, 8, 2, 4, 4, 4,
9367893697
4, 4, 2, 2, 6, 5, 8, 5, 5, 8, 3, 5, 5,
9367993698
6, 4, 9, 3,
@@ -93700,11 +93719,11 @@
9370093719
TK_ALTER, TK_RAISE, TK_EXCLUSIVE, TK_EXISTS, TK_SAVEPOINT,
9370193720
TK_INTERSECT, TK_TRIGGER, TK_REFERENCES, TK_CONSTRAINT, TK_INTO,
9370293721
TK_OFFSET, TK_OF, TK_SET, TK_TEMP, TK_TEMP,
9370393722
TK_OR, TK_UNIQUE, TK_QUERY, TK_ATTACH, TK_HAVING,
9370493723
TK_GROUP, TK_UPDATE, TK_BEGIN, TK_JOIN_KW, TK_RELEASE,
93705
- TK_BETWEEN, TK_NOT, TK_NOTNULL, TK_NO, TK_NULL,
93724
+ TK_BETWEEN, TK_NOTNULL, TK_NOT, TK_NO, TK_NULL,
9370693725
TK_LIKE_KW, TK_CASCADE, TK_ASC, TK_DELETE, TK_CASE,
9370793726
TK_COLLATE, TK_CREATE, TK_CTIME_KW, TK_DETACH, TK_IMMEDIATE,
9370893727
TK_JOIN, TK_INSERT, TK_MATCH, TK_PLAN, TK_ANALYZE,
9370993728
TK_PRAGMA, TK_ABORT, TK_VALUES, TK_VIRTUAL, TK_LIMIT,
9371093729
TK_WHEN, TK_WHERE, TK_RENAME, TK_AFTER, TK_REPLACE,
@@ -93765,12 +93784,12 @@
9376593784
testcase( i==38 ); /* CONSTRAINT */
9376693785
testcase( i==39 ); /* INTO */
9376793786
testcase( i==40 ); /* OFFSET */
9376893787
testcase( i==41 ); /* OF */
9376993788
testcase( i==42 ); /* SET */
93770
- testcase( i==43 ); /* TEMP */
93771
- testcase( i==44 ); /* TEMPORARY */
93789
+ testcase( i==43 ); /* TEMPORARY */
93790
+ testcase( i==44 ); /* TEMP */
9377293791
testcase( i==45 ); /* OR */
9377393792
testcase( i==46 ); /* UNIQUE */
9377493793
testcase( i==47 ); /* QUERY */
9377593794
testcase( i==48 ); /* ATTACH */
9377693795
testcase( i==49 ); /* HAVING */
@@ -93778,12 +93797,12 @@
9377893797
testcase( i==51 ); /* UPDATE */
9377993798
testcase( i==52 ); /* BEGIN */
9378093799
testcase( i==53 ); /* INNER */
9378193800
testcase( i==54 ); /* RELEASE */
9378293801
testcase( i==55 ); /* BETWEEN */
93783
- testcase( i==56 ); /* NOT */
93784
- testcase( i==57 ); /* NOTNULL */
93802
+ testcase( i==56 ); /* NOTNULL */
93803
+ testcase( i==57 ); /* NOT */
9378593804
testcase( i==58 ); /* NO */
9378693805
testcase( i==59 ); /* NULL */
9378793806
testcase( i==60 ); /* LIKE */
9378893807
testcase( i==61 ); /* CASCADE */
9378993808
testcase( i==62 ); /* ASC */
@@ -95912,11 +95931,11 @@
9591295931
** A virtual database can be either a disk file (that is automatically
9591395932
** deleted when the file is closed) or it an be held entirely in memory.
9591495933
** The sqlite3TempInMemory() function is used to determine which.
9591595934
*/
9591695935
SQLITE_PRIVATE int sqlite3BtreeFactory(
95917
- const sqlite3 *db, /* Main database when opening aux otherwise 0 */
95936
+ sqlite3 *db, /* Main database when opening aux otherwise 0 */
9591895937
const char *zFilename, /* Name of the file containing the BTree database */
9591995938
int omitJournal, /* if TRUE then do not journal this file */
9592095939
int nCache, /* How many pages in the page cache */
9592195940
int vfsFlags, /* Flags passed through to vfsOpen */
9592295941
Btree **ppBtree /* Pointer to new Btree object written here */
@@ -96174,13 +96193,10 @@
9617496193
# error SQLITE_MAX_ATTACHED must be between 0 and 30
9617596194
#endif
9617696195
#if SQLITE_MAX_LIKE_PATTERN_LENGTH<1
9617796196
# error SQLITE_MAX_LIKE_PATTERN_LENGTH must be at least 1
9617896197
#endif
96179
-#if SQLITE_MAX_VARIABLE_NUMBER<1 || SQLITE_MAX_VARIABLE_NUMBER>32767
96180
-# error SQLITE_MAX_VARIABLE_NUMBER must be between 1 and 32767
96181
-#endif
9618296198
#if SQLITE_MAX_COLUMN>32767
9618396199
# error SQLITE_MAX_COLUMN must not exceed 32767
9618496200
#endif
9618596201
#if SQLITE_MAX_TRIGGER_DEPTH<1
9618696202
# error SQLITE_MAX_TRIGGER_DEPTH must be at least 1
9618796203
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -14,12 +14,10 @@
14 ** the text of this file. Search for "Begin file sqlite3.h" to find the start
15 ** of the embedded sqlite3.h header file.) Additional code files may be needed
16 ** if you want a wrapper to interface SQLite with your choice of programming
17 ** language. The code for the "sqlite3" command-line shell is also in a
18 ** separate file. This file contains only code for the core SQLite library.
19 **
20 ** This amalgamation was generated on 2009-11-01 19:22:03 UTC.
21 */
22 #define SQLITE_CORE 1
23 #define SQLITE_AMALGAMATION 1
24 #ifndef SQLITE_PRIVATE
25 # define SQLITE_PRIVATE static
@@ -651,11 +649,11 @@
651 **
652 ** Requirements: [H10011] [H10014]
653 */
654 #define SQLITE_VERSION "3.6.20"
655 #define SQLITE_VERSION_NUMBER 3006020
656 #define SQLITE_SOURCE_ID "2009-10-30 14:27:15 612952743da28e651512547fc0d3925f4c698eb4"
657
658 /*
659 ** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
660 ** KEYWORDS: sqlite3_version
661 **
@@ -2819,11 +2817,11 @@
2819 */
2820 SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
2821
2822 /*
2823 ** CAPI3REF: Run-Time Limit Categories {H12790} <H12760>
2824 ** KEYWORDS: {limit category} {limit categories}
2825 **
2826 ** These constants define various performance limits
2827 ** that can be lowered at run-time using [sqlite3_limit()].
2828 ** The synopsis of the meanings of the various limits is shown below.
2829 ** Additional information is available at [limits | Limits in SQLite].
@@ -7320,149 +7318,149 @@
7320 */
7321 /************** Include opcodes.h in the middle of vdbe.h ********************/
7322 /************** Begin file opcodes.h *****************************************/
7323 /* Automatically generated. Do not edit */
7324 /* See the mkopcodeh.awk script for details */
7325 #define OP_ReadCookie 1
7326 #define OP_AutoCommit 2
7327 #define OP_Found 3
7328 #define OP_NullRow 4
7329 #define OP_Lt 79 /* same as TK_LT */
7330 #define OP_RowSetTest 5
7331 #define OP_Variable 6
7332 #define OP_RealAffinity 7
7333 #define OP_Sort 8
7334 #define OP_Affinity 9
7335 #define OP_IfNot 10
7336 #define OP_Gosub 11
 
 
 
 
 
 
 
7337 #define OP_Add 86 /* same as TK_PLUS */
7338 #define OP_NotFound 12
7339 #define OP_ResultRow 13
7340 #define OP_IsNull 73 /* same as TK_ISNULL */
7341 #define OP_SeekLe 14
7342 #define OP_Rowid 15
7343 #define OP_CreateIndex 16
7344 #define OP_Explain 17
7345 #define OP_DropIndex 18
7346 #define OP_Null 20
7347 #define OP_Program 21
7348 #define OP_ToInt 144 /* same as TK_TO_INT */
7349 #define OP_Int64 22
7350 #define OP_LoadAnalysis 23
7351 #define OP_IdxInsert 24
7352 #define OP_VUpdate 25
7353 #define OP_Next 26
7354 #define OP_ToNumeric 143 /* same as TK_TO_NUMERIC*/
7355 #define OP_Ge 80 /* same as TK_GE */
7356 #define OP_BitNot 93 /* same as TK_BITNOT */
7357 #define OP_SeekLt 27
7358 #define OP_Rewind 28
7359 #define OP_Multiply 88 /* same as TK_STAR */
7360 #define OP_ToReal 145 /* same as TK_TO_REAL */
 
 
 
 
7361 #define OP_Gt 77 /* same as TK_GT */
7362 #define OP_RowSetRead 29
7363 #define OP_Last 30
7364 #define OP_MustBeInt 31
7365 #define OP_Ne 75 /* same as TK_NE */
7366 #define OP_IncrVacuum 32
7367 #define OP_String 33
7368 #define OP_VFilter 34
7369 #define OP_Count 35
7370 #define OP_Close 36
7371 #define OP_AggFinal 37
7372 #define OP_RowData 38
7373 #define OP_IdxRowid 39
7374 #define OP_Param 40
7375 #define OP_Pagecount 41
7376 #define OP_BitOr 83 /* same as TK_BITOR */
7377 #define OP_NotNull 74 /* same as TK_NOTNULL */
7378 #define OP_SeekGe 42
7379 #define OP_Not 19 /* same as TK_NOT */
7380 #define OP_OpenPseudo 43
7381 #define OP_Halt 44
7382 #define OP_Compare 45
7383 #define OP_NewRowid 46
7384 #define OP_Real 130 /* same as TK_FLOAT */
7385 #define OP_IdxLT 47
7386 #define OP_SeekGt 48
7387 #define OP_MemMax 49
7388 #define OP_Function 50
7389 #define OP_IntegrityCk 51
7390 #define OP_Remainder 90 /* same as TK_REM */
7391 #define OP_FkCounter 52
7392 #define OP_SCopy 53
7393 #define OP_ShiftLeft 84 /* same as TK_LSHIFT */
7394 #define OP_IfNeg 54
7395 #define OP_BitAnd 82 /* same as TK_BITAND */
7396 #define OP_Or 68 /* same as TK_OR */
7397 #define OP_NotExists 55
7398 #define OP_VDestroy 56
7399 #define OP_IdxDelete 57
7400 #define OP_Vacuum 58
7401 #define OP_Copy 59
7402 #define OP_If 60
7403 #define OP_Jump 61
7404 #define OP_Destroy 62
7405 #define OP_AggStep 63
7406 #define OP_Clear 64
7407 #define OP_Insert 65
7408 #define OP_Permutation 66
7409 #define OP_VBegin 67
7410 #define OP_OpenEphemeral 70
7411 #define OP_IdxGE 71
7412 #define OP_Trace 72
7413 #define OP_Divide 89 /* same as TK_SLASH */
7414 #define OP_String8 94 /* same as TK_STRING */
7415 #define OP_Concat 91 /* same as TK_CONCAT */
7416 #define OP_MakeRecord 81
7417 #define OP_Yield 92
7418 #define OP_SetCookie 95
7419 #define OP_Prev 96
7420 #define OP_DropTrigger 97
7421 #define OP_FkIfZero 98
7422 #define OP_And 69 /* same as TK_AND */
7423 #define OP_VColumn 99
7424 #define OP_Return 100
7425 #define OP_OpenWrite 101
7426 #define OP_Integer 102
7427 #define OP_Transaction 103
7428 #define OP_IfPos 104
7429 #define OP_RowSetAdd 105
7430 #define OP_CollSeq 106
7431 #define OP_Savepoint 107
7432 #define OP_VRename 108
7433 #define OP_ToBlob 142 /* same as TK_TO_BLOB */
7434 #define OP_Sequence 109
7435 #define OP_ShiftRight 85 /* same as TK_RSHIFT */
7436 #define OP_HaltIfNull 110
7437 #define OP_VCreate 111
7438 #define OP_CreateTable 112
7439 #define OP_AddImm 113
7440 #define OP_ToText 141 /* same as TK_TO_TEXT */
7441 #define OP_DropTable 114
7442 #define OP_IsUnique 115
7443 #define OP_VOpen 116
7444 #define OP_IfZero 117
7445 #define OP_Noop 118
7446 #define OP_InsertInt 119
7447 #define OP_RowKey 120
7448 #define OP_Expire 121
7449 #define OP_Delete 122
7450 #define OP_Subtract 87 /* same as TK_MINUS */
7451 #define OP_Blob 123
7452 #define OP_Move 124
7453 #define OP_Goto 125
7454 #define OP_ParseSchema 126
7455 #define OP_Eq 76 /* same as TK_EQ */
7456 #define OP_VNext 127
7457 #define OP_Seek 128
7458 #define OP_Le 78 /* same as TK_LE */
7459 #define OP_TableLock 129
7460 #define OP_VerifyCookie 131
7461 #define OP_Column 132
7462 #define OP_OpenRead 133
7463 #define OP_ResetCount 134
7464
7465 /* The following opcode values are never used */
7466 #define OP_NotUsed_135 135
7467 #define OP_NotUsed_136 136
7468 #define OP_NotUsed_137 137
@@ -7480,27 +7478,27 @@
7480 #define OPFLG_IN1 0x0004 /* in1: P1 is an input */
7481 #define OPFLG_IN2 0x0008 /* in2: P2 is an input */
7482 #define OPFLG_IN3 0x0010 /* in3: P3 is an input */
7483 #define OPFLG_OUT3 0x0020 /* out3: P3 is an output */
7484 #define OPFLG_INITIALIZER {\
7485 /* 0 */ 0x00, 0x02, 0x00, 0x11, 0x00, 0x15, 0x00, 0x04,\
7486 /* 8 */ 0x01, 0x00, 0x05, 0x01, 0x11, 0x00, 0x11, 0x02,\
7487 /* 16 */ 0x02, 0x00, 0x00, 0x04, 0x02, 0x01, 0x02, 0x00,\
7488 /* 24 */ 0x08, 0x00, 0x01, 0x11, 0x01, 0x21, 0x01, 0x05,\
7489 /* 32 */ 0x01, 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x02,\
7490 /* 40 */ 0x02, 0x02, 0x11, 0x00, 0x00, 0x00, 0x02, 0x11,\
7491 /* 48 */ 0x11, 0x08, 0x00, 0x00, 0x00, 0x04, 0x05, 0x11,\
7492 /* 56 */ 0x00, 0x00, 0x00, 0x04, 0x05, 0x01, 0x02, 0x00,\
7493 /* 64 */ 0x00, 0x00, 0x00, 0x00, 0x2c, 0x2c, 0x00, 0x11,\
7494 /* 72 */ 0x00, 0x05, 0x05, 0x15, 0x15, 0x15, 0x15, 0x15,\
7495 /* 80 */ 0x15, 0x00, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c,\
7496 /* 88 */ 0x2c, 0x2c, 0x2c, 0x2c, 0x04, 0x04, 0x02, 0x10,\
7497 /* 96 */ 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x02, 0x00,\
7498 /* 104 */ 0x05, 0x08, 0x00, 0x00, 0x00, 0x02, 0x10, 0x00,\
7499 /* 112 */ 0x02, 0x04, 0x00, 0x11, 0x00, 0x05, 0x00, 0x00,\
7500 /* 120 */ 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01,\
7501 /* 128 */ 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\
7502 /* 136 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04,\
7503 /* 144 */ 0x04, 0x04,}
7504
7505 /************** End of opcodes.h *********************************************/
7506 /************** Continuing where we left off in vdbe.h ***********************/
@@ -9116,10 +9114,26 @@
9116 } *aFunc;
9117 int nFunc; /* Number of entries in aFunc[] */
9118 int nFuncAlloc; /* Number of slots allocated for aFunc[] */
9119 };
9120
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9121 /*
9122 ** Each node of an expression in the parse tree is an instance
9123 ** of this structure.
9124 **
9125 ** Expr.op is the opcode. The integer parser token codes are reused
@@ -9209,11 +9223,11 @@
9209 *********************************************************************/
9210
9211 int iTable; /* TK_COLUMN: cursor number of table holding column
9212 ** TK_REGISTER: register number
9213 ** TK_TRIGGER: 1 -> new, 0 -> old */
9214 i16 iColumn; /* TK_COLUMN: column index. -1 for rowid.
9215 ** TK_VARIABLE: variable number (always >= 1). */
9216 i16 iAgg; /* Which entry in pAggInfo->aCol[] or ->aFunc[] */
9217 i16 iRightJoinTable; /* If EP_FromJoin, the right table of the join */
9218 u8 flags2; /* Second set of flags. EP2_... */
9219 u8 op2; /* If a TK_REGISTER, the original value of Expr.op */
@@ -10364,11 +10378,11 @@
10364 # define sqlite3AuthContextPush(a,b,c)
10365 # define sqlite3AuthContextPop(a) ((void)(a))
10366 #endif
10367 SQLITE_PRIVATE void sqlite3Attach(Parse*, Expr*, Expr*, Expr*);
10368 SQLITE_PRIVATE void sqlite3Detach(Parse*, Expr*);
10369 SQLITE_PRIVATE int sqlite3BtreeFactory(const sqlite3 *db, const char *zFilename,
10370 int omitJournal, int nCache, int flags, Btree **ppBtree);
10371 SQLITE_PRIVATE int sqlite3FixInit(DbFixer*, Parse*, int, const char*, const Token*);
10372 SQLITE_PRIVATE int sqlite3FixSrcList(DbFixer*, SrcList*);
10373 SQLITE_PRIVATE int sqlite3FixSelect(DbFixer*, Select*);
10374 SQLITE_PRIVATE int sqlite3FixExpr(DbFixer*, Expr*);
@@ -17802,11 +17816,11 @@
17802 u16 nResColumn; /* Number of columns in one row of the result set */
17803 u16 nCursor; /* Number of slots in apCsr[] */
17804 VdbeCursor **apCsr; /* One element of this array for each open cursor */
17805 u8 errorAction; /* Recovery action to do in case of an error */
17806 u8 okVar; /* True if azVar[] has been initialized */
17807 u16 nVar; /* Number of entries in aVar[] */
17808 Mem *aVar; /* Values for the OP_Variable opcode. */
17809 char **azVar; /* Name of variables */
17810 u32 magic; /* Magic number for sanity checking */
17811 int nMem; /* Number of memory locations currently allocated */
17812 Mem *aMem; /* The memory locations */
@@ -19832,91 +19846,91 @@
19832 /* Automatically generated. Do not edit */
19833 /* See the mkopcodec.awk script for details. */
19834 #if !defined(SQLITE_OMIT_EXPLAIN) || !defined(NDEBUG) || defined(VDBE_PROFILE) || defined(SQLITE_DEBUG)
19835 SQLITE_PRIVATE const char *sqlite3OpcodeName(int i){
19836 static const char *const azName[] = { "?",
19837 /* 1 */ "ReadCookie",
19838 /* 2 */ "AutoCommit",
19839 /* 3 */ "Found",
19840 /* 4 */ "NullRow",
19841 /* 5 */ "RowSetTest",
19842 /* 6 */ "Variable",
19843 /* 7 */ "RealAffinity",
19844 /* 8 */ "Sort",
19845 /* 9 */ "Affinity",
19846 /* 10 */ "IfNot",
19847 /* 11 */ "Gosub",
19848 /* 12 */ "NotFound",
19849 /* 13 */ "ResultRow",
19850 /* 14 */ "SeekLe",
19851 /* 15 */ "Rowid",
19852 /* 16 */ "CreateIndex",
19853 /* 17 */ "Explain",
19854 /* 18 */ "DropIndex",
19855 /* 19 */ "Not",
19856 /* 20 */ "Null",
19857 /* 21 */ "Program",
19858 /* 22 */ "Int64",
19859 /* 23 */ "LoadAnalysis",
19860 /* 24 */ "IdxInsert",
19861 /* 25 */ "VUpdate",
19862 /* 26 */ "Next",
19863 /* 27 */ "SeekLt",
19864 /* 28 */ "Rewind",
19865 /* 29 */ "RowSetRead",
19866 /* 30 */ "Last",
19867 /* 31 */ "MustBeInt",
19868 /* 32 */ "IncrVacuum",
19869 /* 33 */ "String",
19870 /* 34 */ "VFilter",
19871 /* 35 */ "Count",
19872 /* 36 */ "Close",
19873 /* 37 */ "AggFinal",
19874 /* 38 */ "RowData",
19875 /* 39 */ "IdxRowid",
19876 /* 40 */ "Param",
19877 /* 41 */ "Pagecount",
19878 /* 42 */ "SeekGe",
19879 /* 43 */ "OpenPseudo",
19880 /* 44 */ "Halt",
19881 /* 45 */ "Compare",
19882 /* 46 */ "NewRowid",
19883 /* 47 */ "IdxLT",
19884 /* 48 */ "SeekGt",
19885 /* 49 */ "MemMax",
19886 /* 50 */ "Function",
19887 /* 51 */ "IntegrityCk",
19888 /* 52 */ "FkCounter",
19889 /* 53 */ "SCopy",
19890 /* 54 */ "IfNeg",
19891 /* 55 */ "NotExists",
19892 /* 56 */ "VDestroy",
19893 /* 57 */ "IdxDelete",
19894 /* 58 */ "Vacuum",
19895 /* 59 */ "Copy",
19896 /* 60 */ "If",
19897 /* 61 */ "Jump",
19898 /* 62 */ "Destroy",
19899 /* 63 */ "AggStep",
19900 /* 64 */ "Clear",
19901 /* 65 */ "Insert",
19902 /* 66 */ "Permutation",
19903 /* 67 */ "VBegin",
19904 /* 68 */ "Or",
19905 /* 69 */ "And",
19906 /* 70 */ "OpenEphemeral",
19907 /* 71 */ "IdxGE",
19908 /* 72 */ "Trace",
19909 /* 73 */ "IsNull",
19910 /* 74 */ "NotNull",
19911 /* 75 */ "Ne",
19912 /* 76 */ "Eq",
19913 /* 77 */ "Gt",
19914 /* 78 */ "Le",
19915 /* 79 */ "Lt",
19916 /* 80 */ "Ge",
19917 /* 81 */ "MakeRecord",
19918 /* 82 */ "BitAnd",
19919 /* 83 */ "BitOr",
19920 /* 84 */ "ShiftLeft",
19921 /* 85 */ "ShiftRight",
19922 /* 86 */ "Add",
@@ -19923,53 +19937,53 @@
19923 /* 87 */ "Subtract",
19924 /* 88 */ "Multiply",
19925 /* 89 */ "Divide",
19926 /* 90 */ "Remainder",
19927 /* 91 */ "Concat",
19928 /* 92 */ "Yield",
19929 /* 93 */ "BitNot",
19930 /* 94 */ "String8",
19931 /* 95 */ "SetCookie",
19932 /* 96 */ "Prev",
19933 /* 97 */ "DropTrigger",
19934 /* 98 */ "FkIfZero",
19935 /* 99 */ "VColumn",
19936 /* 100 */ "Return",
19937 /* 101 */ "OpenWrite",
19938 /* 102 */ "Integer",
19939 /* 103 */ "Transaction",
19940 /* 104 */ "IfPos",
19941 /* 105 */ "RowSetAdd",
19942 /* 106 */ "CollSeq",
19943 /* 107 */ "Savepoint",
19944 /* 108 */ "VRename",
19945 /* 109 */ "Sequence",
19946 /* 110 */ "HaltIfNull",
19947 /* 111 */ "VCreate",
19948 /* 112 */ "CreateTable",
19949 /* 113 */ "AddImm",
19950 /* 114 */ "DropTable",
19951 /* 115 */ "IsUnique",
19952 /* 116 */ "VOpen",
19953 /* 117 */ "IfZero",
19954 /* 118 */ "Noop",
19955 /* 119 */ "InsertInt",
19956 /* 120 */ "RowKey",
19957 /* 121 */ "Expire",
19958 /* 122 */ "Delete",
19959 /* 123 */ "Blob",
19960 /* 124 */ "Move",
19961 /* 125 */ "Goto",
19962 /* 126 */ "ParseSchema",
19963 /* 127 */ "VNext",
19964 /* 128 */ "Seek",
19965 /* 129 */ "TableLock",
19966 /* 130 */ "Real",
19967 /* 131 */ "VerifyCookie",
19968 /* 132 */ "Column",
19969 /* 133 */ "OpenRead",
19970 /* 134 */ "ResetCount",
19971 /* 135 */ "NotUsed_135",
19972 /* 136 */ "NotUsed_136",
19973 /* 137 */ "NotUsed_137",
19974 /* 138 */ "NotUsed_138",
19975 /* 139 */ "NotUsed_139",
@@ -28426,11 +28440,11 @@
28426 ** returns the number of TCHARs written to the output
28427 ** buffer, excluding the terminating null char.
28428 */
28429 DWORD error = GetLastError();
28430 DWORD dwLen = 0;
28431 char *zOut;
28432
28433 if( isNT() ){
28434 WCHAR *zTempWide = NULL;
28435 dwLen = FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
28436 NULL,
@@ -33126,25 +33140,19 @@
33126 ** sanity checksum.
33127 ** (4) 4 byte integer which is the number of pages to truncate the
33128 ** database to during a rollback.
33129 ** (5) 4 byte big-endian integer which is the sector size. The header
33130 ** is this many bytes in size.
33131 ** (6) 4 byte big-endian integer which is the page case.
33132 ** (7) 4 byte integer which is the number of bytes in the master journal
33133 ** name. The value may be zero (indicate that there is no master
33134 ** journal.)
33135 ** (8) N bytes of the master journal name. The name will be nul-terminated
33136 ** and might be shorter than the value read from (5). If the first byte
33137 ** of the name is \000 then there is no master journal. The master
33138 ** journal name is stored in UTF-8.
33139 ** (9) Zero or more pages instances, each as follows:
33140 ** + 4 byte page number.
33141 ** + pPager->pageSize bytes of data.
33142 ** + 4 byte checksum
33143 **
33144 ** When we speak of the journal header, we mean the first 8 items above.
33145 ** Each entry in the journal is an instance of the 9th item.
33146 **
33147 ** Call the value from the second bullet "nRec". nRec is the number of
33148 ** valid page entries in the journal. In most cases, you can compute the
33149 ** value of nRec from the size of the journal file. But if a power
33150 ** failure occurred while the journal was being written, it could be the
@@ -47266,11 +47274,11 @@
47266 #ifdef SQLITE_OMIT_TRACE
47267 if( !isPrepareV2 ) return;
47268 #endif
47269 assert( p->zSql==0 );
47270 p->zSql = sqlite3DbStrNDup(p->db, z, n);
47271 p->isPrepareV2 = isPrepareV2;
47272 }
47273
47274 /*
47275 ** Return the SQL associated with a prepared statement
47276 */
@@ -48565,11 +48573,11 @@
48565 zEnd = &zCsr[nByte];
48566 }while( nByte && !db->mallocFailed );
48567
48568 p->nCursor = (u16)nCursor;
48569 if( p->aVar ){
48570 p->nVar = (u16)nVar;
48571 for(n=0; n<nVar; n++){
48572 p->aVar[n].flags = MEM_Null;
48573 p->aVar[n].db = db;
48574 }
48575 }
@@ -59293,11 +59301,11 @@
59293 p->pTab = pItem->pTab;
59294 p->iTable = pItem->iCursor;
59295 if( p->pTab->iPKey==iCol ){
59296 p->iColumn = -1;
59297 }else{
59298 p->iColumn = iCol;
59299 pItem->colUsed |= ((Bitmask)1)<<(iCol>=BMS ? BMS-1 : iCol);
59300 }
59301 ExprSetProperty(p, EP_Resolved);
59302 }
59303 return p;
@@ -60648,16 +60656,16 @@
60648 assert( z!=0 );
60649 assert( z[0]!=0 );
60650 if( z[1]==0 ){
60651 /* Wildcard of the form "?". Assign the next variable number */
60652 assert( z[0]=='?' );
60653 pExpr->iColumn = ++pParse->nVar;
60654 }else if( z[0]=='?' ){
60655 /* Wildcard of the form "?nnn". Convert "nnn" to an integer and
60656 ** use it as the variable number */
60657 int i;
60658 pExpr->iColumn = i = atoi((char*)&z[1]);
60659 testcase( i==0 );
60660 testcase( i==1 );
60661 testcase( i==db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER]-1 );
60662 testcase( i==db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER] );
60663 if( i<1 || i>db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER] ){
@@ -60682,11 +60690,11 @@
60682 pExpr->iColumn = pE->iColumn;
60683 break;
60684 }
60685 }
60686 if( i>=pParse->nVarExpr ){
60687 pExpr->iColumn = ++pParse->nVar;
60688 if( pParse->nVarExpr>=pParse->nVarExprAlloc-1 ){
60689 pParse->nVarExprAlloc += pParse->nVarExprAlloc + 10;
60690 pParse->apVarExpr =
60691 sqlite3DbReallocOrFree(
60692 db,
@@ -65275,11 +65283,11 @@
65275 }
65276 aNew->zName = sqlite3DbStrDup(db, zName);
65277 aNew->safety_level = 3;
65278
65279 #if SQLITE_HAS_CODEC
65280 {
65281 extern int sqlite3CodecAttach(sqlite3*, int, const void*, int);
65282 extern void sqlite3CodecGetKey(sqlite3*, int, void**, int*);
65283 int nKey;
65284 char *zKey;
65285 int t = sqlite3_value_type(argv[2]);
@@ -65292,17 +65300,17 @@
65292
65293 case SQLITE_TEXT:
65294 case SQLITE_BLOB:
65295 nKey = sqlite3_value_bytes(argv[2]);
65296 zKey = (char *)sqlite3_value_blob(argv[2]);
65297 sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
65298 break;
65299
65300 case SQLITE_NULL:
65301 /* No key specified. Use the key from the main database */
65302 sqlite3CodecGetKey(db, 0, (void**)&zKey, &nKey);
65303 sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
65304 break;
65305 }
65306 }
65307 #endif
65308
@@ -90394,472 +90402,476 @@
90394 ** shifting terminals.
90395 ** yy_reduce_ofst[] For each state, the offset into yy_action for
90396 ** shifting non-terminals after a reduce.
90397 ** yy_default[] Default action for each state.
90398 */
 
90399 static const YYACTIONTYPE yy_action[] = {
90400 /* 0 */ 312, 53, 494, 56, 143, 177, 181, 561, 44, 44,
90401 /* 10 */ 44, 44, 224, 46, 46, 46, 46, 47, 47, 48,
90402 /* 20 */ 48, 48, 49, 226, 511, 345, 209, 513, 501, 226,
90403 /* 30 */ 550, 541, 54, 46, 46, 46, 46, 47, 47, 48,
90404 /* 40 */ 48, 48, 49, 226, 48, 48, 48, 49, 226, 43,
90405 /* 50 */ 41, 55, 539, 537, 540, 540, 45, 45, 44, 44,
90406 /* 60 */ 44, 44, 252, 46, 46, 46, 46, 47, 47, 48,
90407 /* 70 */ 48, 48, 49, 226, 312, 561, 321, 493, 429, 246,
90408 /* 80 */ 60, 46, 46, 46, 46, 47, 47, 48, 48, 48,
90409 /* 90 */ 49, 226, 613, 321, 493, 480, 477, 155, 426, 326,
90410 /* 100 */ 369, 372, 373, 581, 550, 541, 311, 555, 155, 40,
90411 /* 110 */ 374, 369, 372, 373, 47, 47, 48, 48, 48, 49,
90412 /* 120 */ 226, 374, 536, 43, 41, 55, 539, 537, 540, 540,
90413 /* 130 */ 45, 45, 44, 44, 44, 44, 301, 46, 46, 46,
90414 /* 140 */ 46, 47, 47, 48, 48, 48, 49, 226, 312, 222,
90415 /* 150 */ 210, 445, 431, 156, 139, 250, 366, 267, 367, 154,
90416 /* 160 */ 509, 350, 513, 501, 561, 248, 222, 484, 513, 501,
90417 /* 170 */ 340, 139, 250, 366, 267, 367, 154, 316, 550, 541,
90418 /* 180 */ 609, 281, 248, 197, 565, 337, 309, 471, 428, 511,
90419 /* 190 */ 582, 209, 556, 599, 566, 81, 493, 43, 41, 55,
90420 /* 200 */ 539, 537, 540, 540, 45, 45, 44, 44, 44, 44,
90421 /* 210 */ 471, 46, 46, 46, 46, 47, 47, 48, 48, 48,
90422 /* 220 */ 49, 226, 312, 553, 553, 553, 287, 133, 517, 231,
90423 /* 230 */ 480, 477, 561, 580, 355, 235, 480, 477, 483, 573,
90424 /* 240 */ 340, 513, 501, 183, 591, 66, 571, 572, 493, 238,
90425 /* 250 */ 205, 387, 550, 541, 155, 337, 390, 369, 372, 373,
90426 /* 260 */ 959, 186, 490, 2, 566, 94, 466, 374, 195, 614,
90427 /* 270 */ 198, 43, 41, 55, 539, 537, 540, 540, 45, 45,
90428 /* 280 */ 44, 44, 44, 44, 565, 46, 46, 46, 46, 47,
90429 /* 290 */ 47, 48, 48, 48, 49, 226, 312, 340, 570, 53,
90430 /* 300 */ 618, 56, 143, 449, 565, 340, 353, 201, 141, 480,
90431 /* 310 */ 477, 352, 337, 493, 400, 273, 200, 146, 569, 568,
90432 /* 320 */ 337, 566, 71, 570, 224, 292, 550, 541, 361, 566,
90433 /* 330 */ 94, 342, 483, 534, 534, 68, 360, 280, 493, 513,
90434 /* 340 */ 501, 565, 381, 569, 410, 43, 41, 55, 539, 537,
90435 /* 350 */ 540, 540, 45, 45, 44, 44, 44, 44, 462, 46,
90436 /* 360 */ 46, 46, 46, 47, 47, 48, 48, 48, 49, 226,
90437 /* 370 */ 312, 353, 468, 493, 246, 208, 363, 1, 340, 567,
90438 /* 380 */ 230, 513, 501, 149, 333, 546, 4, 612, 617, 493,
90439 /* 390 */ 240, 340, 112, 337, 611, 513, 501, 224, 212, 580,
90440 /* 400 */ 550, 541, 566, 95, 409, 230, 337, 480, 477, 399,
90441 /* 410 */ 482, 66, 471, 516, 493, 566, 94, 412, 466, 43,
90442 /* 420 */ 41, 55, 539, 537, 540, 540, 45, 45, 44, 44,
90443 /* 430 */ 44, 44, 565, 46, 46, 46, 46, 47, 47, 48,
90444 /* 440 */ 48, 48, 49, 226, 312, 502, 585, 580, 329, 480,
90445 /* 450 */ 477, 451, 513, 501, 592, 247, 332, 357, 615, 66,
90446 /* 460 */ 150, 500, 493, 480, 477, 151, 400, 273, 53, 414,
90447 /* 470 */ 56, 143, 215, 146, 550, 541, 224, 499, 617, 421,
90448 /* 480 */ 317, 528, 524, 42, 282, 415, 594, 34, 476, 280,
90449 /* 490 */ 420, 397, 203, 43, 41, 55, 539, 537, 540, 540,
90450 /* 500 */ 45, 45, 44, 44, 44, 44, 493, 46, 46, 46,
90451 /* 510 */ 46, 47, 47, 48, 48, 48, 49, 226, 312, 324,
90452 /* 520 */ 480, 477, 435, 447, 439, 384, 565, 340, 284, 340,
90453 /* 530 */ 241, 344, 528, 524, 53, 340, 56, 143, 620, 185,
90454 /* 540 */ 461, 483, 337, 230, 337, 478, 217, 439, 550, 541,
90455 /* 550 */ 337, 566, 95, 566, 89, 493, 596, 425, 227, 566,
90456 /* 560 */ 81, 52, 459, 448, 440, 402, 584, 43, 41, 55,
90457 /* 570 */ 539, 537, 540, 540, 45, 45, 44, 44, 44, 44,
90458 /* 580 */ 565, 46, 46, 46, 46, 47, 47, 48, 48, 48,
90459 /* 590 */ 49, 226, 312, 362, 230, 340, 259, 323, 491, 377,
90460 /* 600 */ 234, 257, 458, 385, 398, 278, 283, 488, 337, 340,
90461 /* 610 */ 337, 141, 340, 461, 340, 597, 493, 566, 9, 566,
90462 /* 620 */ 96, 62, 550, 541, 337, 593, 401, 337, 493, 337,
90463 /* 630 */ 151, 328, 157, 566, 85, 483, 566, 77, 566, 86,
90464 /* 640 */ 874, 43, 41, 55, 539, 537, 540, 540, 45, 45,
90465 /* 650 */ 44, 44, 44, 44, 340, 46, 46, 46, 46, 47,
90466 /* 660 */ 47, 48, 48, 48, 49, 226, 312, 340, 444, 337,
90467 /* 670 */ 364, 30, 443, 457, 502, 150, 327, 65, 566, 99,
90468 /* 680 */ 340, 561, 337, 408, 324, 340, 386, 340, 248, 589,
90469 /* 690 */ 500, 566, 137, 256, 574, 337, 550, 541, 579, 246,
90470 /* 700 */ 337, 224, 337, 258, 566, 136, 499, 371, 349, 566,
90471 /* 710 */ 138, 566, 101, 407, 493, 43, 41, 55, 539, 537,
90472 /* 720 */ 540, 540, 45, 45, 44, 44, 44, 44, 340, 46,
90473 /* 730 */ 46, 46, 46, 47, 47, 48, 48, 48, 49, 226,
90474 /* 740 */ 312, 340, 229, 337, 340, 342, 252, 534, 534, 561,
90475 /* 750 */ 522, 522, 566, 91, 574, 177, 337, 561, 579, 337,
90476 /* 760 */ 340, 493, 58, 340, 38, 566, 88, 441, 566, 17,
90477 /* 770 */ 550, 541, 508, 29, 306, 337, 452, 948, 337, 948,
90478 /* 780 */ 629, 575, 416, 318, 566, 92, 192, 566, 73, 43,
90479 /* 790 */ 41, 55, 539, 537, 540, 540, 45, 45, 44, 44,
90480 /* 800 */ 44, 44, 340, 46, 46, 46, 46, 47, 47, 48,
90481 /* 810 */ 48, 48, 49, 226, 312, 340, 246, 337, 340, 246,
90482 /* 820 */ 270, 526, 340, 469, 299, 561, 566, 70, 202, 204,
90483 /* 830 */ 337, 493, 507, 337, 493, 493, 340, 337, 493, 566,
90484 /* 840 */ 90, 532, 566, 82, 550, 541, 566, 72, 557, 452,
90485 /* 850 */ 949, 337, 949, 266, 598, 342, 150, 534, 534, 228,
90486 /* 860 */ 566, 79, 533, 43, 41, 55, 539, 537, 540, 540,
90487 /* 870 */ 45, 45, 44, 44, 44, 44, 340, 46, 46, 46,
90488 /* 880 */ 46, 47, 47, 48, 48, 48, 49, 226, 312, 340,
90489 /* 890 */ 246, 337, 340, 252, 526, 49, 226, 254, 549, 260,
90490 /* 900 */ 566, 83, 588, 586, 337, 493, 606, 337, 493, 485,
90491 /* 910 */ 340, 592, 392, 566, 69, 406, 566, 80, 550, 541,
90492 /* 920 */ 342, 368, 534, 534, 253, 337, 150, 493, 604, 342,
90493 /* 930 */ 223, 534, 534, 525, 566, 100, 285, 43, 57, 55,
90494 /* 940 */ 539, 537, 540, 540, 45, 45, 44, 44, 44, 44,
90495 /* 950 */ 340, 46, 46, 46, 46, 47, 47, 48, 48, 48,
90496 /* 960 */ 49, 226, 312, 392, 246, 337, 340, 252, 575, 416,
90497 /* 970 */ 351, 472, 276, 347, 566, 87, 279, 330, 493, 493,
90498 /* 980 */ 496, 337, 493, 461, 340, 493, 493, 493, 548, 547,
90499 /* 990 */ 566, 98, 550, 541, 498, 493, 172, 523, 493, 337,
90500 /* 1000 */ 311, 577, 191, 243, 319, 423, 422, 530, 566, 105,
90501 /* 1010 */ 544, 543, 41, 55, 539, 537, 540, 540, 45, 45,
90502 /* 1020 */ 44, 44, 44, 44, 340, 46, 46, 46, 46, 47,
90503 /* 1030 */ 47, 48, 48, 48, 49, 226, 312, 545, 340, 337,
90504 /* 1040 */ 340, 246, 392, 207, 252, 445, 320, 489, 566, 103,
90505 /* 1050 */ 627, 622, 519, 337, 232, 337, 493, 493, 340, 493,
90506 /* 1060 */ 479, 340, 566, 108, 566, 109, 550, 541, 6, 607,
90507 /* 1070 */ 608, 454, 2, 337, 492, 493, 337, 565, 517, 231,
90508 /* 1080 */ 471, 322, 566, 134, 289, 566, 135, 55, 539, 537,
90509 /* 1090 */ 540, 540, 45, 45, 44, 44, 44, 44, 487, 46,
90510 /* 1100 */ 46, 46, 46, 47, 47, 48, 48, 48, 49, 226,
90511 /* 1110 */ 23, 346, 340, 3, 397, 464, 422, 336, 501, 290,
90512 /* 1120 */ 147, 214, 7, 23, 346, 340, 3, 337, 343, 493,
90513 /* 1130 */ 336, 501, 463, 237, 172, 493, 566, 84, 475, 340,
90514 /* 1140 */ 337, 343, 211, 340, 246, 225, 244, 348, 394, 566,
90515 /* 1150 */ 75, 341, 18, 493, 337, 565, 393, 509, 337, 493,
90516 /* 1160 */ 348, 493, 395, 566, 97, 245, 493, 566, 61, 274,
90517 /* 1170 */ 509, 217, 16, 358, 189, 264, 565, 26, 25, 340,
90518 /* 1180 */ 493, 236, 518, 310, 24, 338, 339, 304, 493, 556,
90519 /* 1190 */ 26, 25, 450, 602, 337, 404, 120, 24, 338, 339,
90520 /* 1200 */ 419, 169, 556, 566, 106, 565, 224, 117, 495, 27,
90521 /* 1210 */ 346, 562, 3, 396, 187, 340, 336, 501, 179, 184,
90522 /* 1220 */ 553, 553, 553, 552, 551, 11, 493, 343, 493, 398,
90523 /* 1230 */ 337, 430, 8, 553, 553, 553, 552, 551, 11, 566,
90524 /* 1240 */ 104, 335, 340, 255, 340, 616, 348, 340, 251, 331,
90525 /* 1250 */ 340, 391, 558, 587, 50, 340, 509, 337, 493, 337,
90526 /* 1260 */ 493, 365, 337, 493, 590, 337, 566, 78, 566, 102,
90527 /* 1270 */ 337, 566, 76, 213, 566, 74, 26, 25, 610, 566,
90528 /* 1280 */ 93, 378, 424, 24, 338, 339, 263, 583, 556, 220,
90529 /* 1290 */ 140, 624, 294, 493, 300, 389, 23, 346, 376, 3,
90530 /* 1300 */ 150, 493, 493, 336, 501, 493, 493, 493, 221, 493,
90531 /* 1310 */ 493, 554, 268, 219, 343, 261, 515, 460, 418, 553,
90532 /* 1320 */ 553, 553, 552, 551, 11, 595, 493, 493, 152, 206,
90533 /* 1330 */ 493, 493, 493, 348, 272, 271, 269, 158, 302, 625,
90534 /* 1340 */ 531, 521, 67, 509, 506, 520, 50, 628, 380, 600,
90535 /* 1350 */ 173, 605, 123, 623, 493, 178, 37, 305, 308, 265,
90536 /* 1360 */ 493, 620, 621, 26, 25, 165, 262, 307, 619, 166,
90537 /* 1370 */ 24, 338, 339, 334, 436, 556, 427, 437, 33, 160,
90538 /* 1380 */ 145, 466, 513, 501, 20, 148, 275, 122, 174, 359,
90539 /* 1390 */ 442, 467, 486, 63, 36, 233, 42, 465, 512, 403,
90540 /* 1400 */ 542, 182, 119, 113, 128, 132, 553, 553, 553, 552,
90541 /* 1410 */ 551, 11, 39, 288, 538, 455, 291, 563, 388, 354,
90542 /* 1420 */ 293, 295, 509, 31, 453, 356, 296, 325, 159, 405,
90543 /* 1430 */ 286, 297, 564, 153, 313, 382, 35, 129, 303, 224,
90544 /* 1440 */ 218, 121, 194, 196, 433, 107, 559, 242, 601, 216,
90545 /* 1450 */ 428, 670, 280, 671, 556, 672, 162, 163, 32, 535,
90546 /* 1460 */ 59, 505, 529, 411, 510, 190, 199, 176, 167, 504,
90547 /* 1470 */ 503, 497, 5, 315, 314, 13, 19, 12, 474, 131,
90548 /* 1480 */ 456, 144, 434, 432, 168, 553, 553, 553, 239, 51,
90549 /* 1490 */ 603, 118, 111, 142, 249, 21, 124, 164, 379, 258,
90550 /* 1500 */ 626, 188, 126, 172, 298, 383, 161, 370, 375, 114,
90551 /* 1510 */ 15, 470, 481, 180, 125, 115, 127, 438, 446, 10,
90552 /* 1520 */ 514, 110, 171, 527, 170, 116, 130, 560, 64, 14,
90553 /* 1530 */ 175, 576, 578, 413, 277, 193, 417, 960, 473, 960,
90554 /* 1540 */ 28, 960, 22,
90555 };
90556 static const YYCODETYPE yy_lookahead[] = {
90557 /* 0 */ 19, 222, 223, 224, 225, 24, 35, 26, 77, 78,
90558 /* 10 */ 79, 80, 115, 82, 83, 84, 85, 86, 87, 88,
90559 /* 20 */ 89, 90, 91, 92, 166, 167, 168, 26, 27, 92,
90560 /* 30 */ 49, 50, 81, 82, 83, 84, 85, 86, 87, 88,
90561 /* 40 */ 89, 90, 91, 92, 88, 89, 90, 91, 92, 68,
90562 /* 50 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
90563 /* 60 */ 79, 80, 150, 82, 83, 84, 85, 86, 87, 88,
90564 /* 70 */ 89, 90, 91, 92, 19, 94, 19, 165, 174, 150,
90565 /* 80 */ 25, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90566 /* 90 */ 91, 92, 186, 19, 165, 94, 95, 96, 174, 187,
90567 /* 100 */ 99, 100, 101, 186, 49, 50, 22, 23, 96, 54,
90568 /* 110 */ 109, 99, 100, 101, 86, 87, 88, 89, 90, 91,
90569 /* 120 */ 92, 109, 193, 68, 69, 70, 71, 72, 73, 74,
90570 /* 130 */ 75, 76, 77, 78, 79, 80, 195, 82, 83, 84,
90571 /* 140 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 92,
90572 /* 150 */ 160, 67, 23, 96, 97, 98, 99, 100, 101, 102,
90573 /* 160 */ 66, 191, 26, 27, 26, 108, 92, 208, 26, 27,
90574 /* 170 */ 150, 97, 98, 99, 100, 101, 102, 155, 49, 50,
90575 /* 180 */ 183, 150, 108, 25, 194, 165, 163, 166, 94, 166,
90576 /* 190 */ 167, 168, 98, 183, 174, 175, 165, 68, 69, 70,
90577 /* 200 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
90578 /* 210 */ 166, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90579 /* 220 */ 91, 92, 19, 129, 130, 131, 205, 24, 86, 87,
90580 /* 230 */ 94, 95, 94, 150, 214, 215, 94, 95, 25, 97,
90581 /* 240 */ 150, 26, 27, 23, 161, 162, 104, 105, 165, 205,
90582 /* 250 */ 160, 229, 49, 50, 96, 165, 234, 99, 100, 101,
90583 /* 260 */ 142, 143, 144, 145, 174, 175, 57, 109, 185, 186,
90584 /* 270 */ 160, 68, 69, 70, 71, 72, 73, 74, 75, 76,
90585 /* 280 */ 77, 78, 79, 80, 194, 82, 83, 84, 85, 86,
90586 /* 290 */ 87, 88, 89, 90, 91, 92, 19, 150, 150, 222,
90587 /* 300 */ 23, 224, 225, 88, 194, 150, 216, 160, 95, 94,
90588 /* 310 */ 95, 221, 165, 165, 105, 106, 206, 207, 170, 171,
90589 /* 320 */ 165, 174, 175, 150, 115, 148, 49, 50, 19, 174,
90590 /* 330 */ 175, 111, 119, 113, 114, 22, 27, 128, 165, 26,
90591 /* 340 */ 27, 194, 237, 170, 171, 68, 69, 70, 71, 72,
90592 /* 350 */ 73, 74, 75, 76, 77, 78, 79, 80, 150, 82,
90593 /* 360 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90594 /* 370 */ 19, 216, 11, 165, 150, 236, 221, 22, 150, 231,
90595 /* 380 */ 232, 26, 27, 25, 146, 147, 196, 181, 182, 165,
90596 /* 390 */ 152, 150, 154, 165, 188, 26, 27, 115, 160, 150,
90597 /* 400 */ 49, 50, 174, 175, 231, 232, 165, 94, 95, 127,
90598 /* 410 */ 161, 162, 166, 166, 165, 174, 175, 193, 57, 68,
90599 /* 420 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
90600 /* 430 */ 79, 80, 194, 82, 83, 84, 85, 86, 87, 88,
90601 /* 440 */ 89, 90, 91, 92, 19, 12, 173, 150, 220, 94,
90602 /* 450 */ 95, 205, 26, 27, 181, 158, 218, 216, 161, 162,
90603 /* 460 */ 25, 28, 165, 94, 95, 50, 105, 106, 222, 245,
90604 /* 470 */ 224, 225, 206, 207, 49, 50, 115, 44, 182, 46,
90605 /* 480 */ 169, 170, 171, 125, 16, 247, 166, 136, 119, 128,
90606 /* 490 */ 57, 150, 160, 68, 69, 70, 71, 72, 73, 74,
90607 /* 500 */ 75, 76, 77, 78, 79, 80, 165, 82, 83, 84,
90608 /* 510 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 104,
90609 /* 520 */ 94, 95, 23, 21, 105, 106, 194, 150, 60, 150,
90610 /* 530 */ 62, 169, 170, 171, 222, 150, 224, 225, 103, 23,
90611 /* 540 */ 150, 25, 165, 232, 165, 119, 160, 128, 49, 50,
90612 /* 550 */ 165, 174, 175, 174, 175, 165, 244, 165, 217, 174,
90613 /* 560 */ 175, 136, 7, 8, 9, 63, 174, 68, 69, 70,
90614 /* 570 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
90615 /* 580 */ 194, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90616 /* 590 */ 91, 92, 19, 150, 232, 150, 23, 220, 32, 19,
90617 /* 600 */ 215, 150, 100, 213, 218, 226, 138, 41, 165, 150,
90618 /* 610 */ 165, 95, 150, 150, 150, 177, 165, 174, 175, 174,
90619 /* 620 */ 175, 235, 49, 50, 165, 177, 240, 165, 165, 165,
90620 /* 630 */ 50, 248, 249, 174, 175, 119, 174, 175, 174, 175,
90621 /* 640 */ 138, 68, 69, 70, 71, 72, 73, 74, 75, 76,
90622 /* 650 */ 77, 78, 79, 80, 150, 82, 83, 84, 85, 86,
90623 /* 660 */ 87, 88, 89, 90, 91, 92, 19, 150, 30, 165,
90624 /* 670 */ 88, 24, 34, 23, 12, 25, 213, 22, 174, 175,
90625 /* 680 */ 150, 26, 165, 97, 104, 150, 48, 150, 108, 166,
90626 /* 690 */ 28, 174, 175, 98, 112, 165, 49, 50, 116, 150,
90627 /* 700 */ 165, 115, 165, 108, 174, 175, 44, 178, 46, 174,
90628 /* 710 */ 175, 174, 175, 127, 165, 68, 69, 70, 71, 72,
90629 /* 720 */ 73, 74, 75, 76, 77, 78, 79, 80, 150, 82,
90630 /* 730 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90631 /* 740 */ 19, 150, 193, 165, 150, 111, 150, 113, 114, 94,
90632 /* 750 */ 129, 130, 174, 175, 112, 24, 165, 26, 116, 165,
90633 /* 760 */ 150, 165, 135, 150, 137, 174, 175, 23, 174, 175,
90634 /* 770 */ 49, 50, 23, 52, 25, 165, 22, 23, 165, 25,
90635 /* 780 */ 0, 1, 2, 187, 174, 175, 196, 174, 175, 68,
90636 /* 790 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
90637 /* 800 */ 79, 80, 150, 82, 83, 84, 85, 86, 87, 88,
90638 /* 810 */ 89, 90, 91, 92, 19, 150, 150, 165, 150, 150,
90639 /* 820 */ 150, 67, 150, 150, 198, 94, 174, 175, 105, 106,
90640 /* 830 */ 165, 165, 23, 165, 165, 165, 150, 165, 165, 174,
90641 /* 840 */ 175, 23, 174, 175, 49, 50, 174, 175, 166, 22,
90642 /* 850 */ 23, 165, 25, 16, 23, 111, 25, 113, 114, 193,
90643 /* 860 */ 174, 175, 193, 68, 69, 70, 71, 72, 73, 74,
90644 /* 870 */ 75, 76, 77, 78, 79, 80, 150, 82, 83, 84,
90645 /* 880 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 150,
90646 /* 890 */ 150, 165, 150, 150, 67, 91, 92, 60, 199, 62,
90647 /* 900 */ 174, 175, 172, 173, 165, 165, 36, 165, 165, 25,
90648 /* 910 */ 150, 181, 150, 174, 175, 209, 174, 175, 49, 50,
90649 /* 920 */ 111, 51, 113, 114, 23, 165, 25, 165, 58, 111,
90650 /* 930 */ 187, 113, 114, 193, 174, 175, 209, 68, 69, 70,
90651 /* 940 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
90652 /* 950 */ 150, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90653 /* 960 */ 91, 92, 19, 150, 150, 165, 150, 150, 1, 2,
90654 /* 970 */ 150, 150, 150, 228, 174, 175, 242, 107, 165, 165,
90655 /* 980 */ 150, 165, 165, 150, 150, 165, 165, 165, 49, 50,
90656 /* 990 */ 174, 175, 49, 50, 23, 165, 25, 233, 165, 165,
90657 /* 1000 */ 22, 23, 118, 241, 187, 190, 191, 193, 174, 175,
90658 /* 1010 */ 71, 72, 69, 70, 71, 72, 73, 74, 75, 76,
90659 /* 1020 */ 77, 78, 79, 80, 150, 82, 83, 84, 85, 86,
90660 /* 1030 */ 87, 88, 89, 90, 91, 92, 19, 98, 150, 165,
90661 /* 1040 */ 150, 150, 150, 160, 150, 67, 213, 199, 174, 175,
90662 /* 1050 */ 7, 8, 233, 165, 241, 165, 165, 165, 150, 165,
90663 /* 1060 */ 150, 150, 174, 175, 174, 175, 49, 50, 22, 97,
90664 /* 1070 */ 98, 144, 145, 165, 177, 165, 165, 194, 86, 87,
90665 /* 1080 */ 166, 187, 174, 175, 193, 174, 175, 70, 71, 72,
90666 /* 1090 */ 73, 74, 75, 76, 77, 78, 79, 80, 177, 82,
90667 /* 1100 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90668 /* 1110 */ 19, 20, 150, 22, 150, 190, 191, 26, 27, 205,
90669 /* 1120 */ 150, 160, 76, 19, 20, 150, 22, 165, 37, 165,
90670 /* 1130 */ 26, 27, 23, 241, 25, 165, 174, 175, 150, 150,
90671 /* 1140 */ 165, 37, 160, 150, 150, 197, 150, 56, 19, 174,
90672 /* 1150 */ 175, 150, 204, 165, 165, 194, 27, 66, 165, 165,
90673 /* 1160 */ 56, 165, 242, 174, 175, 150, 165, 174, 175, 209,
90674 /* 1170 */ 66, 160, 22, 150, 24, 177, 194, 86, 87, 150,
90675 /* 1180 */ 165, 217, 250, 251, 93, 94, 95, 193, 165, 98,
90676 /* 1190 */ 86, 87, 88, 153, 165, 18, 192, 93, 94, 95,
90677 /* 1200 */ 13, 151, 98, 174, 175, 194, 115, 22, 157, 19,
90678 /* 1210 */ 20, 150, 22, 150, 219, 150, 26, 27, 117, 157,
90679 /* 1220 */ 129, 130, 131, 132, 133, 134, 165, 37, 165, 218,
90680 /* 1230 */ 165, 157, 25, 129, 130, 131, 132, 133, 134, 174,
90681 /* 1240 */ 175, 159, 150, 150, 150, 150, 56, 150, 150, 47,
90682 /* 1250 */ 150, 240, 23, 184, 25, 150, 66, 165, 165, 165,
90683 /* 1260 */ 165, 104, 165, 165, 176, 165, 174, 175, 174, 175,
90684 /* 1270 */ 165, 174, 175, 157, 174, 175, 86, 87, 150, 174,
90685 /* 1280 */ 175, 18, 176, 93, 94, 95, 150, 150, 98, 92,
90686 /* 1290 */ 150, 150, 150, 165, 150, 150, 19, 20, 23, 22,
90687 /* 1300 */ 25, 165, 165, 26, 27, 165, 165, 165, 230, 165,
90688 /* 1310 */ 165, 150, 150, 230, 37, 150, 150, 150, 184, 129,
90689 /* 1320 */ 130, 131, 132, 133, 134, 176, 165, 165, 156, 5,
90690 /* 1330 */ 165, 165, 165, 56, 10, 11, 12, 13, 14, 150,
90691 /* 1340 */ 23, 17, 25, 66, 23, 150, 25, 176, 157, 176,
90692 /* 1350 */ 156, 40, 22, 157, 165, 31, 243, 33, 179, 176,
90693 /* 1360 */ 165, 103, 178, 86, 87, 156, 42, 179, 176, 6,
90694 /* 1370 */ 93, 94, 95, 149, 157, 98, 149, 149, 22, 55,
90695 /* 1380 */ 68, 57, 26, 27, 104, 61, 210, 189, 64, 120,
90696 /* 1390 */ 157, 211, 38, 246, 135, 227, 125, 189, 199, 157,
90697 /* 1400 */ 199, 219, 192, 192, 192, 189, 129, 130, 131, 132,
90698 /* 1410 */ 133, 134, 124, 210, 149, 211, 210, 203, 157, 121,
90699 /* 1420 */ 202, 201, 66, 123, 211, 122, 200, 157, 156, 105,
90700 /* 1430 */ 106, 199, 194, 151, 110, 45, 135, 180, 238, 115,
90701 /* 1440 */ 180, 126, 86, 87, 239, 164, 1, 15, 23, 22,
90702 /* 1450 */ 94, 117, 128, 117, 98, 117, 117, 117, 243, 112,
90703 /* 1460 */ 22, 11, 23, 139, 23, 22, 22, 25, 249, 23,
90704 /* 1470 */ 23, 23, 35, 252, 252, 35, 25, 25, 119, 22,
90705 /* 1480 */ 27, 117, 23, 23, 35, 129, 130, 131, 52, 22,
90706 /* 1490 */ 29, 22, 22, 39, 23, 22, 22, 102, 19, 108,
90707 /* 1500 */ 20, 24, 104, 25, 138, 43, 104, 52, 52, 22,
90708 /* 1510 */ 5, 1, 27, 117, 107, 126, 53, 59, 53, 22,
90709 /* 1520 */ 1, 118, 16, 20, 120, 107, 118, 127, 16, 22,
90710 /* 1530 */ 15, 23, 23, 65, 140, 22, 3, 253, 4, 253,
90711 /* 1540 */ 76, 253, 76,
90712 };
90713 #define YY_SHIFT_USE_DFLT (-104)
90714 #define YY_SHIFT_MAX 417
 
 
90715 static const short yy_shift_ofst[] = {
90716 /* 0 */ 967, 1091, 1324, 1091, 1277, 1277, 142, 142, 1, -19,
90717 /* 10 */ 1277, 1277, 1277, 1277, 1277, 209, 136, 721, 1104, 1277,
90718 /* 20 */ 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277,
90719 /* 30 */ 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277,
90720 /* 40 */ 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277,
90721 /* 50 */ 1277, 1277, 1277, 1277, 1277, 1190, 1277, 1277, 1277, 1277,
90722 /* 60 */ 1277, -49, 361, 136, 136, 992, 138, 992, -103, 55,
90723 /* 70 */ 129, 499, 351, 647, 203, 277, 425, 573, 869, 795,
90724 /* 80 */ 795, 795, 795, 795, 795, 795, 795, 795, 795, 795,
90725 /* 90 */ 795, 795, 795, 795, 795, 795, 795, 795, 943, 1017,
90726 /* 100 */ 1017, -69, -69, -69, -69, -1, -1, 57, 28, -44,
90727 /* 110 */ 136, 136, 502, 136, 136, 136, 136, 136, 136, 136,
90728 /* 120 */ 136, 136, 136, 136, 136, 136, 136, 136, 136, 580,
90729 /* 130 */ 136, 136, 136, 138, 804, -63, -104, -104, -104, 1356,
90730 /* 140 */ 74, 426, 433, 355, 215, 433, 313, 369, 136, 136,
90731 /* 150 */ 136, 136, 136, 136, 136, 136, 136, 754, 136, 136,
90732 /* 160 */ 136, 136, 136, 136, 136, 136, 136, 827, 136, 136,
90733 /* 170 */ 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
90734 /* 180 */ 136, 136, 586, 731, 731, 731, 780, 282, -103, -103,
90735 /* 190 */ -103, -104, -104, -104, 94, 158, 94, 12, 220, 662,
90736 /* 200 */ 516, 744, 870, 809, 870, 818, 555, 634, 419, 655,
90737 /* 210 */ 634, 634, 634, 638, 634, 213, 582, 634, 415, 566,
90738 /* 220 */ 138, 566, 138, 435, 642, 884, 138, 358, 309, 309,
90739 /* 230 */ 621, 621, 1129, 627, 566, 566, 358, 1129, 309, 566,
90740 /* 240 */ 1150, 1177, 1187, 1185, 1101, 1101, 1101, 1207, 1202, 1157,
90741 /* 250 */ 1157, 1101, 1197, 1157, 1263, 1197, 1157, 1101, 1202, 1157,
90742 /* 260 */ 1263, 1101, 1311, 1330, 1157, 1258, 1263, 1157, 1330, 1363,
90743 /* 270 */ 1101, 1363, 1363, 1312, 1280, 1269, 1101, 1354, 1259, 1271,
90744 /* 280 */ 1312, 1101, 1177, 1177, 1177, 1271, 1312, 1280, 1269, 1185,
90745 /* 290 */ 1280, 1269, 1363, 1288, 1101, 1298, 1300, 1303, 1263, 1271,
90746 /* 300 */ 1101, -103, 1187, 1301, 1390, 1311, -104, -104, -104, -104,
90747 /* 310 */ -104, -104, 939, 468, 978, 84, 837, 1317, 650, 831,
90748 /* 320 */ 971, 595, 1275, 1321, 723, 1046, 901, 1109, 749, 1229,
90749 /* 330 */ 972, 1043, 1315, 1445, 1432, 1425, 1427, 1334, 1336, 1338,
90750 /* 340 */ 1339, 1340, 1347, 1438, 1439, 1441, 1443, 1450, 1444, 1446,
90751 /* 350 */ 1442, 1447, 1448, 1451, 1437, 1452, 1440, 1451, 1359, 1457,
90752 /* 360 */ 1449, 1453, 1364, 1459, 1460, 1454, 1436, 1467, 1461, 1455,
90753 /* 370 */ 1469, 1471, 1470, 1473, 1456, 1474, 1395, 1391, 1479, 1480,
90754 /* 380 */ 1477, 1398, 1462, 1458, 1463, 1478, 1465, 1366, 1402, 1487,
90755 /* 390 */ 1505, 1510, 1396, -29, 1485, 1407, 1464, 1466, 1389, 1497,
90756 /* 400 */ 1403, 1519, 1506, 1404, 1503, 1408, 1418, 1507, 1400, 1508,
90757 /* 410 */ 1509, 1512, 1468, 1515, 1394, 1513, 1533, 1534,
90758 };
90759 #define YY_REDUCE_USE_DFLT (-222)
90760 #define YY_REDUCE_MAX 311
 
 
90761 static const short yy_reduce_ofst[] = {
90762 /* 0 */ 118, 90, 238, 147, 155, 20, 173, 148, 83, 246,
90763 /* 10 */ 377, 379, 385, 241, 228, 386, 297, 312, 443, 445,
90764 /* 20 */ 459, 462, 464, 504, 517, 530, 535, 537, 578, 591,
90765 /* 30 */ 594, 610, 613, 652, 665, 668, 672, 686, 726, 739,
90766 /* 40 */ 742, 760, 800, 816, 834, 874, 888, 890, 908, 911,
90767 /* 50 */ 962, 975, 989, 993, 1029, 1065, 1092, 1094, 1097, 1100,
90768 /* 60 */ 1105, -221, 1011, 249, 224, 311, 23, 362, 110, 77,
90769 /* 70 */ 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
90770 /* 80 */ 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
90771 /* 90 */ 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
90772 /* 100 */ 77, 77, 77, 77, 77, 77, 77, 730, 77, 77,
90773 /* 110 */ 813, -88, 22, 669, 596, 762, 341, 833, 743, 740,
90774 /* 120 */ 814, 891, 892, 817, 894, 964, 994, 390, -71, 206,
90775 /* 130 */ 549, 463, 666, -142, 77, 77, 77, 77, 77, 392,
90776 /* 140 */ 273, 970, 815, 996, 1001, 925, 1015, 1023, 1061, 1063,
90777 /* 150 */ 1093, 1095, 1098, 1128, 1136, 1137, 1140, 932, 1141, 1142,
90778 /* 160 */ 1144, 1145, 1001, 1161, 1162, 1165, 1166, 932, 1167, 1189,
90779 /* 170 */ 1195, 31, 208, 451, 670, 673, 820, 821, 822, 830,
90780 /* 180 */ 988, 910, -10, 21, 44, 914, 927, 883, 961, 982,
90781 /* 190 */ 332, 266, 948, 383, -96, -94, -76, -83, -59, -30,
90782 /* 200 */ -41, -59, -3, -59, 10, -59, 177, -59, 105, 247,
90783 /* 210 */ -59, -59, -59, 139, -59, -41, 190, -59, 296, 438,
90784 /* 220 */ 320, 448, 523, 529, 590, 626, 682, 699, 706, 727,
90785 /* 230 */ 764, 819, 734, 745, 897, 921, 848, 920, 960, 998,
90786 /* 240 */ 1040, 1004, 1050, 995, 1051, 1062, 1074, 1082, 1069, 1088,
90787 /* 250 */ 1106, 1116, 1078, 1149, 1172, 1083, 1171, 1191, 1134, 1173,
90788 /* 260 */ 1194, 1196, 1113, 1179, 1183, 1184, 1209, 1192, 1188, 1224,
90789 /* 270 */ 1217, 1227, 1228, 1198, 1176, 1180, 1233, 1147, 1168, 1199,
90790 /* 280 */ 1208, 1242, 1210, 1211, 1212, 1201, 1216, 1203, 1204, 1182,
90791 /* 290 */ 1206, 1213, 1265, 1214, 1261, 1218, 1220, 1226, 1272, 1232,
90792 /* 300 */ 1270, 1238, 1282, 1205, 1200, 1215, 1219, 1257, 1260, 1281,
90793 /* 310 */ 1221, 1222,
90794 };
90795 static const YYACTIONTYPE yy_default[] = {
90796 /* 0 */ 634, 869, 958, 958, 869, 958, 898, 898, 958, 757,
90797 /* 10 */ 958, 867, 958, 958, 958, 958, 958, 932, 958, 958,
90798 /* 20 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90799 /* 30 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90800 /* 40 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90801 /* 50 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90802 /* 60 */ 958, 841, 958, 958, 958, 898, 673, 898, 761, 792,
90803 /* 70 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 931,
90804 /* 80 */ 793, 783, 911, 864, 806, 772, 800, 797, 933, 866,
90805 /* 90 */ 863, 799, 790, 794, 871, 807, 870, 862, 829, 847,
90806 /* 100 */ 828, 846, 853, 831, 845, 830, 840, 665, 832, 833,
90807 /* 110 */ 958, 958, 660, 958, 958, 958, 958, 958, 958, 958,
90808 /* 120 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 726,
90809 /* 130 */ 958, 958, 958, 958, 834, 835, 849, 848, 850, 958,
90810 /* 140 */ 958, 958, 958, 958, 958, 958, 958, 958, 882, 958,
90811 /* 150 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90812 /* 160 */ 958, 958, 958, 958, 958, 958, 640, 958, 958, 958,
90813 /* 170 */ 958, 958, 958, 958, 936, 958, 958, 958, 938, 958,
90814 /* 180 */ 958, 958, 958, 757, 757, 757, 634, 958, 958, 958,
90815 /* 190 */ 958, 761, 751, 950, 958, 717, 958, 958, 958, 958,
90816 /* 200 */ 958, 958, 958, 958, 958, 958, 642, 921, 958, 675,
90817 /* 210 */ 802, 662, 740, 904, 738, 759, 749, 923, 696, 786,
90818 /* 220 */ 958, 786, 958, 699, 749, 758, 958, 796, 774, 774,
90819 /* 230 */ 958, 958, 916, 865, 786, 786, 796, 916, 774, 786,
90820 /* 240 */ 958, 737, 650, 808, 765, 765, 765, 716, 713, 728,
90821 /* 250 */ 728, 765, 879, 728, 657, 879, 728, 765, 713, 728,
90822 /* 260 */ 657, 765, 935, 875, 728, 699, 657, 728, 875, 639,
90823 /* 270 */ 765, 639, 639, 730, 773, 778, 765, 943, 958, 796,
90824 /* 280 */ 730, 765, 737, 737, 737, 796, 730, 773, 778, 808,
90825 /* 290 */ 773, 778, 639, 791, 765, 779, 789, 787, 657, 796,
90826 /* 300 */ 765, 958, 650, 910, 908, 935, 950, 701, 701, 683,
90827 /* 310 */ 955, 955, 958, 958, 958, 958, 958, 958, 958, 958,
90828 /* 320 */ 958, 958, 958, 958, 958, 884, 958, 958, 958, 958,
90829 /* 330 */ 958, 958, 958, 958, 648, 958, 667, 815, 820, 816,
90830 /* 340 */ 958, 817, 743, 958, 958, 958, 958, 958, 958, 958,
90831 /* 350 */ 958, 958, 958, 868, 958, 780, 958, 788, 958, 958,
90832 /* 360 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90833 /* 370 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90834 /* 380 */ 958, 958, 958, 958, 906, 907, 958, 958, 958, 958,
90835 /* 390 */ 958, 958, 914, 958, 958, 958, 958, 958, 958, 958,
90836 /* 400 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90837 /* 410 */ 958, 958, 942, 958, 958, 945, 635, 958, 711, 649,
90838 /* 420 */ 734, 733, 732, 729, 691, 690, 689, 647, 820, 688,
90839 /* 430 */ 767, 687, 826, 900, 825, 813, 937, 646, 909, 905,
90840 /* 440 */ 645, 857, 939, 901, 902, 957, 903, 659, 644, 754,
90841 /* 450 */ 753, 752, 954, 764, 630, 763, 776, 872, 873, 643,
90842 /* 460 */ 775, 811, 810, 777, 731, 804, 805, 762, 899, 940,
90843 /* 470 */ 912, 756, 755, 636, 771, 915, 770, 672, 769, 917,
90844 /* 480 */ 671, 918, 941, 768, 760, 750, 944, 782, 785, 919,
90845 /* 490 */ 631, 784, 781, 670, 842, 859, 766, 856, 809, 928,
90846 /* 500 */ 927, 668, 926, 925, 924, 861, 920, 860, 946, 827,
90847 /* 510 */ 824, 678, 922, 667, 913, 641, 679, 897, 951, 895,
90848 /* 520 */ 947, 656, 896, 894, 681, 735, 952, 736, 680, 677,
90849 /* 530 */ 739, 676, 858, 881, 745, 744, 929, 854, 638, 851,
90850 /* 540 */ 843, 838, 795, 855, 852, 844, 637, 839, 837, 798,
90851 /* 550 */ 836, 822, 821, 819, 818, 953, 814, 823, 801, 633,
90852 /* 560 */ 803, 669, 883, 746, 742, 741, 812, 885, 887, 889,
90853 /* 570 */ 890, 891, 892, 893, 748, 632, 886, 956, 888, 747,
90854 /* 580 */ 666, 718, 674, 721, 686, 684, 685, 712, 682, 698,
90855 /* 590 */ 722, 663, 697, 878, 880, 723, 930, 877, 876, 705,
90856 /* 600 */ 724, 661, 654, 710, 709, 934, 708, 707, 706, 704,
90857 /* 610 */ 652, 725, 727, 719, 720, 664, 703, 702, 695, 694,
90858 /* 620 */ 700, 693, 715, 655, 651, 653, 658, 714, 692,
90859 };
90860 #define YY_SZ_ACTTAB (int)(sizeof(yy_action)/sizeof(yy_action[0]))
90861
90862 /* The next table maps tokens into fallback tokens. If a construct
90863 ** like the following:
90864 **
90865 ** %fallback ID X Y Z.
@@ -91642,18 +91654,17 @@
91642 YYCODETYPE iLookAhead /* The look-ahead token */
91643 ){
91644 int i;
91645 int stateno = pParser->yystack[pParser->yyidx].stateno;
91646
91647 if( stateno>YY_SHIFT_MAX || (i = yy_shift_ofst[stateno])==YY_SHIFT_USE_DFLT ){
 
91648 return yy_default[stateno];
91649 }
91650 assert( iLookAhead!=YYNOCODE );
91651 i += iLookAhead;
91652 if( i<0 || i>=YY_SZ_ACTTAB || yy_lookahead[i]!=iLookAhead ){
91653 /* The user of ";" instead of "\000" as a statement terminator in SQLite
91654 ** means that we always have a look-ahead token. */
91655 if( iLookAhead>0 ){
91656 #ifdef YYFALLBACK
91657 YYCODETYPE iFallback; /* Fallback token */
91658 if( iLookAhead<sizeof(yyFallback)/sizeof(yyFallback[0])
91659 && (iFallback = yyFallback[iLookAhead])!=0 ){
@@ -91667,11 +91678,19 @@
91667 }
91668 #endif
91669 #ifdef YYWILDCARD
91670 {
91671 int j = i - iLookAhead + YYWILDCARD;
91672 if( j>=0 && j<YY_SZ_ACTTAB && yy_lookahead[j]==YYWILDCARD ){
 
 
 
 
 
 
 
 
91673 #ifndef NDEBUG
91674 if( yyTraceFILE ){
91675 fprintf(yyTraceFILE, "%sWILDCARD %s => %s\n",
91676 yyTracePrompt, yyTokenName[iLookAhead], yyTokenName[YYWILDCARD]);
91677 }
@@ -91699,26 +91718,26 @@
91699 int stateno, /* Current state number */
91700 YYCODETYPE iLookAhead /* The look-ahead token */
91701 ){
91702 int i;
91703 #ifdef YYERRORSYMBOL
91704 if( stateno>YY_REDUCE_MAX ){
91705 return yy_default[stateno];
91706 }
91707 #else
91708 assert( stateno<=YY_REDUCE_MAX );
91709 #endif
91710 i = yy_reduce_ofst[stateno];
91711 assert( i!=YY_REDUCE_USE_DFLT );
91712 assert( iLookAhead!=YYNOCODE );
91713 i += iLookAhead;
91714 #ifdef YYERRORSYMBOL
91715 if( i<0 || i>=YY_SZ_ACTTAB || yy_lookahead[i]!=iLookAhead ){
91716 return yy_default[stateno];
91717 }
91718 #else
91719 assert( i>=0 && i<YY_SZ_ACTTAB );
91720 assert( yy_lookahead[i]==iLookAhead );
91721 #endif
91722 return yy_action[i];
91723 }
91724
@@ -93586,11 +93605,11 @@
93586 /************** Begin file keywordhash.h *************************************/
93587 /***** This file contains automatically generated code ******
93588 **
93589 ** The code in this file has been automatically generated by
93590 **
93591 ** $Header: /home/drh/sqlite/trans/cvs/sqlite/sqlite/tool/mkkeywordhash.c,v 1.38 2009/06/09 14:27:41 drh Exp $
93592 **
93593 ** The code in this file implements a function that determines whether
93594 ** or not a given identifier is really an SQL keyword. The same thing
93595 ** might be implemented more directly using a hand-written hash table.
93596 ** But by using this automatically generated code, the size of the code
@@ -93641,27 +93660,27 @@
93641 'T','R','I','C','T','O','U','T','E','R','I','G','H','T','R','O','L','L',
93642 'B','A','C','K','R','O','W','U','N','I','O','N','U','S','I','N','G','V',
93643 'A','C','U','U','M','V','I','E','W','I','N','I','T','I','A','L','L','Y',
93644 };
93645 static const unsigned char aHash[127] = {
93646 72, 101, 114, 70, 0, 44, 0, 0, 78, 0, 73, 0, 0,
93647 42, 12, 74, 15, 0, 113, 81, 50, 108, 0, 19, 0, 0,
93648 118, 0, 116, 111, 0, 22, 89, 0, 9, 0, 0, 66, 67,
93649 0, 65, 6, 0, 48, 86, 98, 0, 115, 97, 0, 0, 45,
93650 0, 99, 24, 0, 17, 0, 119, 49, 23, 0, 5, 106, 25,
93651 92, 0, 0, 121, 102, 56, 120, 53, 28, 51, 0, 87, 0,
93652 96, 26, 0, 95, 0, 0, 0, 91, 88, 93, 84, 105, 14,
93653 39, 104, 0, 77, 0, 18, 85, 107, 32, 0, 117, 76, 109,
93654 57, 46, 80, 0, 0, 90, 40, 0, 112, 0, 36, 0, 0,
93655 29, 0, 82, 59, 60, 0, 20, 58, 0, 52,
93656 };
93657 static const unsigned char aNext[121] = {
93658 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0,
93659 0, 2, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
93660 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
93661 0, 0, 0, 0, 0, 33, 21, 0, 0, 0, 43, 3, 47,
93662 0, 0, 0, 0, 0, 30, 54, 0, 38, 0, 0, 0, 1,
93663 62, 0, 0, 63, 0, 41, 0, 0, 0, 0, 0, 0, 0,
93664 61, 0, 0, 0, 0, 31, 55, 16, 34, 10, 0, 0, 0,
93665 0, 0, 0, 0, 11, 68, 75, 0, 8, 0, 100, 94, 0,
93666 103, 0, 83, 0, 71, 0, 0, 110, 27, 37, 69, 79, 0,
93667 35, 64, 0, 0,
@@ -93668,12 +93687,12 @@
93668 };
93669 static const unsigned char aLen[121] = {
93670 7, 7, 5, 4, 6, 4, 5, 3, 6, 7, 3, 6, 6,
93671 7, 7, 3, 8, 2, 6, 5, 4, 4, 3, 10, 4, 6,
93672 11, 6, 2, 7, 5, 5, 9, 6, 9, 9, 7, 10, 10,
93673 4, 6, 2, 3, 4, 9, 2, 6, 5, 6, 6, 5, 6,
93674 5, 5, 7, 7, 3, 7, 2, 4, 4, 7, 3, 6, 4,
93675 7, 6, 12, 6, 9, 4, 6, 5, 4, 7, 6, 5, 6,
93676 7, 5, 4, 5, 6, 5, 7, 3, 7, 13, 2, 2, 4,
93677 6, 6, 8, 5, 17, 12, 7, 8, 8, 2, 4, 4, 4,
93678 4, 4, 2, 2, 6, 5, 8, 5, 5, 8, 3, 5, 5,
93679 6, 4, 9, 3,
@@ -93700,11 +93719,11 @@
93700 TK_ALTER, TK_RAISE, TK_EXCLUSIVE, TK_EXISTS, TK_SAVEPOINT,
93701 TK_INTERSECT, TK_TRIGGER, TK_REFERENCES, TK_CONSTRAINT, TK_INTO,
93702 TK_OFFSET, TK_OF, TK_SET, TK_TEMP, TK_TEMP,
93703 TK_OR, TK_UNIQUE, TK_QUERY, TK_ATTACH, TK_HAVING,
93704 TK_GROUP, TK_UPDATE, TK_BEGIN, TK_JOIN_KW, TK_RELEASE,
93705 TK_BETWEEN, TK_NOT, TK_NOTNULL, TK_NO, TK_NULL,
93706 TK_LIKE_KW, TK_CASCADE, TK_ASC, TK_DELETE, TK_CASE,
93707 TK_COLLATE, TK_CREATE, TK_CTIME_KW, TK_DETACH, TK_IMMEDIATE,
93708 TK_JOIN, TK_INSERT, TK_MATCH, TK_PLAN, TK_ANALYZE,
93709 TK_PRAGMA, TK_ABORT, TK_VALUES, TK_VIRTUAL, TK_LIMIT,
93710 TK_WHEN, TK_WHERE, TK_RENAME, TK_AFTER, TK_REPLACE,
@@ -93765,12 +93784,12 @@
93765 testcase( i==38 ); /* CONSTRAINT */
93766 testcase( i==39 ); /* INTO */
93767 testcase( i==40 ); /* OFFSET */
93768 testcase( i==41 ); /* OF */
93769 testcase( i==42 ); /* SET */
93770 testcase( i==43 ); /* TEMP */
93771 testcase( i==44 ); /* TEMPORARY */
93772 testcase( i==45 ); /* OR */
93773 testcase( i==46 ); /* UNIQUE */
93774 testcase( i==47 ); /* QUERY */
93775 testcase( i==48 ); /* ATTACH */
93776 testcase( i==49 ); /* HAVING */
@@ -93778,12 +93797,12 @@
93778 testcase( i==51 ); /* UPDATE */
93779 testcase( i==52 ); /* BEGIN */
93780 testcase( i==53 ); /* INNER */
93781 testcase( i==54 ); /* RELEASE */
93782 testcase( i==55 ); /* BETWEEN */
93783 testcase( i==56 ); /* NOT */
93784 testcase( i==57 ); /* NOTNULL */
93785 testcase( i==58 ); /* NO */
93786 testcase( i==59 ); /* NULL */
93787 testcase( i==60 ); /* LIKE */
93788 testcase( i==61 ); /* CASCADE */
93789 testcase( i==62 ); /* ASC */
@@ -95912,11 +95931,11 @@
95912 ** A virtual database can be either a disk file (that is automatically
95913 ** deleted when the file is closed) or it an be held entirely in memory.
95914 ** The sqlite3TempInMemory() function is used to determine which.
95915 */
95916 SQLITE_PRIVATE int sqlite3BtreeFactory(
95917 const sqlite3 *db, /* Main database when opening aux otherwise 0 */
95918 const char *zFilename, /* Name of the file containing the BTree database */
95919 int omitJournal, /* if TRUE then do not journal this file */
95920 int nCache, /* How many pages in the page cache */
95921 int vfsFlags, /* Flags passed through to vfsOpen */
95922 Btree **ppBtree /* Pointer to new Btree object written here */
@@ -96174,13 +96193,10 @@
96174 # error SQLITE_MAX_ATTACHED must be between 0 and 30
96175 #endif
96176 #if SQLITE_MAX_LIKE_PATTERN_LENGTH<1
96177 # error SQLITE_MAX_LIKE_PATTERN_LENGTH must be at least 1
96178 #endif
96179 #if SQLITE_MAX_VARIABLE_NUMBER<1 || SQLITE_MAX_VARIABLE_NUMBER>32767
96180 # error SQLITE_MAX_VARIABLE_NUMBER must be between 1 and 32767
96181 #endif
96182 #if SQLITE_MAX_COLUMN>32767
96183 # error SQLITE_MAX_COLUMN must not exceed 32767
96184 #endif
96185 #if SQLITE_MAX_TRIGGER_DEPTH<1
96186 # error SQLITE_MAX_TRIGGER_DEPTH must be at least 1
96187
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -14,12 +14,10 @@
14 ** the text of this file. Search for "Begin file sqlite3.h" to find the start
15 ** of the embedded sqlite3.h header file.) Additional code files may be needed
16 ** if you want a wrapper to interface SQLite with your choice of programming
17 ** language. The code for the "sqlite3" command-line shell is also in a
18 ** separate file. This file contains only code for the core SQLite library.
 
 
19 */
20 #define SQLITE_CORE 1
21 #define SQLITE_AMALGAMATION 1
22 #ifndef SQLITE_PRIVATE
23 # define SQLITE_PRIVATE static
@@ -651,11 +649,11 @@
649 **
650 ** Requirements: [H10011] [H10014]
651 */
652 #define SQLITE_VERSION "3.6.20"
653 #define SQLITE_VERSION_NUMBER 3006020
654 #define SQLITE_SOURCE_ID "2009-11-04 13:30:02 eb7a544fe49d1626bacecfe53ddc03fe082e3243"
655
656 /*
657 ** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
658 ** KEYWORDS: sqlite3_version
659 **
@@ -2819,11 +2817,11 @@
2817 */
2818 SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
2819
2820 /*
2821 ** CAPI3REF: Run-Time Limit Categories {H12790} <H12760>
2822 ** KEYWORDS: {limit category} {*limit categories}
2823 **
2824 ** These constants define various performance limits
2825 ** that can be lowered at run-time using [sqlite3_limit()].
2826 ** The synopsis of the meanings of the various limits is shown below.
2827 ** Additional information is available at [limits | Limits in SQLite].
@@ -7320,149 +7318,149 @@
7318 */
7319 /************** Include opcodes.h in the middle of vdbe.h ********************/
7320 /************** Begin file opcodes.h *****************************************/
7321 /* Automatically generated. Do not edit */
7322 /* See the mkopcodeh.awk script for details */
7323 #define OP_Goto 1
7324 #define OP_Gosub 2
7325 #define OP_Return 3
7326 #define OP_Yield 4
7327 #define OP_HaltIfNull 5
7328 #define OP_Halt 6
7329 #define OP_Integer 7
7330 #define OP_Int64 8
7331 #define OP_Real 130 /* same as TK_FLOAT */
7332 #define OP_String8 94 /* same as TK_STRING */
7333 #define OP_String 9
7334 #define OP_Null 10
7335 #define OP_Blob 11
7336 #define OP_Variable 12
7337 #define OP_Move 13
7338 #define OP_Copy 14
7339 #define OP_SCopy 15
7340 #define OP_ResultRow 16
7341 #define OP_Concat 91 /* same as TK_CONCAT */
7342 #define OP_Add 86 /* same as TK_PLUS */
7343 #define OP_Subtract 87 /* same as TK_MINUS */
7344 #define OP_Multiply 88 /* same as TK_STAR */
7345 #define OP_Divide 89 /* same as TK_SLASH */
7346 #define OP_Remainder 90 /* same as TK_REM */
7347 #define OP_CollSeq 17
7348 #define OP_Function 18
7349 #define OP_BitAnd 82 /* same as TK_BITAND */
7350 #define OP_BitOr 83 /* same as TK_BITOR */
7351 #define OP_ShiftLeft 84 /* same as TK_LSHIFT */
7352 #define OP_ShiftRight 85 /* same as TK_RSHIFT */
7353 #define OP_AddImm 20
7354 #define OP_MustBeInt 21
7355 #define OP_RealAffinity 22
7356 #define OP_ToText 141 /* same as TK_TO_TEXT */
7357 #define OP_ToBlob 142 /* same as TK_TO_BLOB */
 
7358 #define OP_ToNumeric 143 /* same as TK_TO_NUMERIC*/
7359 #define OP_ToInt 144 /* same as TK_TO_INT */
 
 
 
 
7360 #define OP_ToReal 145 /* same as TK_TO_REAL */
7361 #define OP_Eq 76 /* same as TK_EQ */
7362 #define OP_Ne 75 /* same as TK_NE */
7363 #define OP_Lt 79 /* same as TK_LT */
7364 #define OP_Le 78 /* same as TK_LE */
7365 #define OP_Gt 77 /* same as TK_GT */
7366 #define OP_Ge 80 /* same as TK_GE */
7367 #define OP_Permutation 23
7368 #define OP_Compare 24
7369 #define OP_Jump 25
7370 #define OP_And 69 /* same as TK_AND */
7371 #define OP_Or 68 /* same as TK_OR */
7372 #define OP_Not 19 /* same as TK_NOT */
7373 #define OP_BitNot 93 /* same as TK_BITNOT */
7374 #define OP_If 26
7375 #define OP_IfNot 27
7376 #define OP_IsNull 73 /* same as TK_ISNULL */
 
 
 
 
7377 #define OP_NotNull 74 /* same as TK_NOTNULL */
7378 #define OP_Column 28
7379 #define OP_Affinity 29
7380 #define OP_MakeRecord 30
7381 #define OP_Count 31
7382 #define OP_Savepoint 32
7383 #define OP_AutoCommit 33
7384 #define OP_Transaction 34
7385 #define OP_ReadCookie 35
7386 #define OP_SetCookie 36
7387 #define OP_VerifyCookie 37
7388 #define OP_OpenRead 38
7389 #define OP_OpenWrite 39
7390 #define OP_OpenEphemeral 40
7391 #define OP_OpenPseudo 41
7392 #define OP_Close 42
7393 #define OP_SeekLt 43
7394 #define OP_SeekLe 44
7395 #define OP_SeekGe 45
7396 #define OP_SeekGt 46
7397 #define OP_Seek 47
7398 #define OP_NotFound 48
7399 #define OP_Found 49
7400 #define OP_IsUnique 50
7401 #define OP_NotExists 51
7402 #define OP_Sequence 52
7403 #define OP_NewRowid 53
7404 #define OP_Insert 54
7405 #define OP_InsertInt 55
7406 #define OP_Delete 56
7407 #define OP_ResetCount 57
7408 #define OP_RowKey 58
7409 #define OP_RowData 59
7410 #define OP_Rowid 60
7411 #define OP_NullRow 61
7412 #define OP_Last 62
7413 #define OP_Sort 63
7414 #define OP_Rewind 64
7415 #define OP_Prev 65
7416 #define OP_Next 66
7417 #define OP_IdxInsert 67
7418 #define OP_IdxDelete 70
7419 #define OP_IdxRowid 71
7420 #define OP_IdxLT 72
7421 #define OP_IdxGE 81
7422 #define OP_Destroy 92
7423 #define OP_Clear 95
7424 #define OP_CreateIndex 96
7425 #define OP_CreateTable 97
7426 #define OP_ParseSchema 98
7427 #define OP_LoadAnalysis 99
7428 #define OP_DropTable 100
7429 #define OP_DropIndex 101
7430 #define OP_DropTrigger 102
7431 #define OP_IntegrityCk 103
7432 #define OP_RowSetAdd 104
7433 #define OP_RowSetRead 105
7434 #define OP_RowSetTest 106
7435 #define OP_Program 107
7436 #define OP_Param 108
7437 #define OP_FkCounter 109
7438 #define OP_FkIfZero 110
7439 #define OP_MemMax 111
7440 #define OP_IfPos 112
7441 #define OP_IfNeg 113
7442 #define OP_IfZero 114
7443 #define OP_AggStep 115
7444 #define OP_AggFinal 116
7445 #define OP_Vacuum 117
7446 #define OP_IncrVacuum 118
7447 #define OP_Expire 119
7448 #define OP_TableLock 120
7449 #define OP_VBegin 121
7450 #define OP_VCreate 122
7451 #define OP_VDestroy 123
7452 #define OP_VOpen 124
7453 #define OP_VFilter 125
7454 #define OP_VColumn 126
 
7455 #define OP_VNext 127
7456 #define OP_VRename 128
7457 #define OP_VUpdate 129
7458 #define OP_Pagecount 131
7459 #define OP_Trace 132
7460 #define OP_Noop 133
7461 #define OP_Explain 134
 
7462
7463 /* The following opcode values are never used */
7464 #define OP_NotUsed_135 135
7465 #define OP_NotUsed_136 136
7466 #define OP_NotUsed_137 137
@@ -7480,27 +7478,27 @@
7478 #define OPFLG_IN1 0x0004 /* in1: P1 is an input */
7479 #define OPFLG_IN2 0x0008 /* in2: P2 is an input */
7480 #define OPFLG_IN3 0x0010 /* in3: P3 is an input */
7481 #define OPFLG_OUT3 0x0020 /* out3: P3 is an output */
7482 #define OPFLG_INITIALIZER {\
7483 /* 0 */ 0x00, 0x01, 0x01, 0x04, 0x04, 0x10, 0x00, 0x02,\
7484 /* 8 */ 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x04, 0x04,\
7485 /* 16 */ 0x00, 0x00, 0x00, 0x04, 0x04, 0x05, 0x04, 0x00,\
7486 /* 24 */ 0x00, 0x01, 0x05, 0x05, 0x00, 0x00, 0x00, 0x02,\
7487 /* 32 */ 0x00, 0x00, 0x00, 0x02, 0x10, 0x00, 0x00, 0x00,\
7488 /* 40 */ 0x00, 0x00, 0x00, 0x11, 0x11, 0x11, 0x11, 0x08,\
7489 /* 48 */ 0x11, 0x11, 0x11, 0x11, 0x02, 0x02, 0x00, 0x00,\
7490 /* 56 */ 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x01,\
7491 /* 64 */ 0x01, 0x01, 0x01, 0x08, 0x2c, 0x2c, 0x00, 0x02,\
7492 /* 72 */ 0x11, 0x05, 0x05, 0x15, 0x15, 0x15, 0x15, 0x15,\
7493 /* 80 */ 0x15, 0x11, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c, 0x2c,\
7494 /* 88 */ 0x2c, 0x2c, 0x2c, 0x2c, 0x02, 0x04, 0x02, 0x00,\
7495 /* 96 */ 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
7496 /* 104 */ 0x08, 0x21, 0x15, 0x01, 0x02, 0x00, 0x01, 0x08,\
7497 /* 112 */ 0x05, 0x05, 0x05, 0x00, 0x00, 0x00, 0x01, 0x00,\
7498 /* 120 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,\
7499 /* 128 */ 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00,\
7500 /* 136 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04,\
7501 /* 144 */ 0x04, 0x04,}
7502
7503 /************** End of opcodes.h *********************************************/
7504 /************** Continuing where we left off in vdbe.h ***********************/
@@ -9116,10 +9114,26 @@
9114 } *aFunc;
9115 int nFunc; /* Number of entries in aFunc[] */
9116 int nFuncAlloc; /* Number of slots allocated for aFunc[] */
9117 };
9118
9119 /*
9120 ** The datatype ynVar is a signed integer, either 16-bit or 32-bit.
9121 ** Usually it is 16-bits. But if SQLITE_MAX_VARIABLE_NUMBER is greater
9122 ** than 32767 we have to make it 32-bit. 16-bit is preferred because
9123 ** it uses less memory in the Expr object, which is a big memory user
9124 ** in systems with lots of prepared statements. And few applications
9125 ** need more than about 10 or 20 variables. But some extreme users want
9126 ** to have prepared statements with over 32767 variables, and for them
9127 ** the option is available (at compile-time).
9128 */
9129 #if SQLITE_MAX_VARIABLE_NUMBER<=32767
9130 typedef i64 ynVar;
9131 #else
9132 typedef int ynVar;
9133 #endif
9134
9135 /*
9136 ** Each node of an expression in the parse tree is an instance
9137 ** of this structure.
9138 **
9139 ** Expr.op is the opcode. The integer parser token codes are reused
@@ -9209,11 +9223,11 @@
9223 *********************************************************************/
9224
9225 int iTable; /* TK_COLUMN: cursor number of table holding column
9226 ** TK_REGISTER: register number
9227 ** TK_TRIGGER: 1 -> new, 0 -> old */
9228 ynVar iColumn; /* TK_COLUMN: column index. -1 for rowid.
9229 ** TK_VARIABLE: variable number (always >= 1). */
9230 i16 iAgg; /* Which entry in pAggInfo->aCol[] or ->aFunc[] */
9231 i16 iRightJoinTable; /* If EP_FromJoin, the right table of the join */
9232 u8 flags2; /* Second set of flags. EP2_... */
9233 u8 op2; /* If a TK_REGISTER, the original value of Expr.op */
@@ -10364,11 +10378,11 @@
10378 # define sqlite3AuthContextPush(a,b,c)
10379 # define sqlite3AuthContextPop(a) ((void)(a))
10380 #endif
10381 SQLITE_PRIVATE void sqlite3Attach(Parse*, Expr*, Expr*, Expr*);
10382 SQLITE_PRIVATE void sqlite3Detach(Parse*, Expr*);
10383 SQLITE_PRIVATE int sqlite3BtreeFactory(sqlite3 *db, const char *zFilename,
10384 int omitJournal, int nCache, int flags, Btree **ppBtree);
10385 SQLITE_PRIVATE int sqlite3FixInit(DbFixer*, Parse*, int, const char*, const Token*);
10386 SQLITE_PRIVATE int sqlite3FixSrcList(DbFixer*, SrcList*);
10387 SQLITE_PRIVATE int sqlite3FixSelect(DbFixer*, Select*);
10388 SQLITE_PRIVATE int sqlite3FixExpr(DbFixer*, Expr*);
@@ -17802,11 +17816,11 @@
17816 u16 nResColumn; /* Number of columns in one row of the result set */
17817 u16 nCursor; /* Number of slots in apCsr[] */
17818 VdbeCursor **apCsr; /* One element of this array for each open cursor */
17819 u8 errorAction; /* Recovery action to do in case of an error */
17820 u8 okVar; /* True if azVar[] has been initialized */
17821 ynVar nVar; /* Number of entries in aVar[] */
17822 Mem *aVar; /* Values for the OP_Variable opcode. */
17823 char **azVar; /* Name of variables */
17824 u32 magic; /* Magic number for sanity checking */
17825 int nMem; /* Number of memory locations currently allocated */
17826 Mem *aMem; /* The memory locations */
@@ -19832,91 +19846,91 @@
19846 /* Automatically generated. Do not edit */
19847 /* See the mkopcodec.awk script for details. */
19848 #if !defined(SQLITE_OMIT_EXPLAIN) || !defined(NDEBUG) || defined(VDBE_PROFILE) || defined(SQLITE_DEBUG)
19849 SQLITE_PRIVATE const char *sqlite3OpcodeName(int i){
19850 static const char *const azName[] = { "?",
19851 /* 1 */ "Goto",
19852 /* 2 */ "Gosub",
19853 /* 3 */ "Return",
19854 /* 4 */ "Yield",
19855 /* 5 */ "HaltIfNull",
19856 /* 6 */ "Halt",
19857 /* 7 */ "Integer",
19858 /* 8 */ "Int64",
19859 /* 9 */ "String",
19860 /* 10 */ "Null",
19861 /* 11 */ "Blob",
19862 /* 12 */ "Variable",
19863 /* 13 */ "Move",
19864 /* 14 */ "Copy",
19865 /* 15 */ "SCopy",
19866 /* 16 */ "ResultRow",
19867 /* 17 */ "CollSeq",
19868 /* 18 */ "Function",
19869 /* 19 */ "Not",
19870 /* 20 */ "AddImm",
19871 /* 21 */ "MustBeInt",
19872 /* 22 */ "RealAffinity",
19873 /* 23 */ "Permutation",
19874 /* 24 */ "Compare",
19875 /* 25 */ "Jump",
19876 /* 26 */ "If",
19877 /* 27 */ "IfNot",
19878 /* 28 */ "Column",
19879 /* 29 */ "Affinity",
19880 /* 30 */ "MakeRecord",
19881 /* 31 */ "Count",
19882 /* 32 */ "Savepoint",
19883 /* 33 */ "AutoCommit",
19884 /* 34 */ "Transaction",
19885 /* 35 */ "ReadCookie",
19886 /* 36 */ "SetCookie",
19887 /* 37 */ "VerifyCookie",
19888 /* 38 */ "OpenRead",
19889 /* 39 */ "OpenWrite",
19890 /* 40 */ "OpenEphemeral",
19891 /* 41 */ "OpenPseudo",
19892 /* 42 */ "Close",
19893 /* 43 */ "SeekLt",
19894 /* 44 */ "SeekLe",
19895 /* 45 */ "SeekGe",
19896 /* 46 */ "SeekGt",
19897 /* 47 */ "Seek",
19898 /* 48 */ "NotFound",
19899 /* 49 */ "Found",
19900 /* 50 */ "IsUnique",
19901 /* 51 */ "NotExists",
19902 /* 52 */ "Sequence",
19903 /* 53 */ "NewRowid",
19904 /* 54 */ "Insert",
19905 /* 55 */ "InsertInt",
19906 /* 56 */ "Delete",
19907 /* 57 */ "ResetCount",
19908 /* 58 */ "RowKey",
19909 /* 59 */ "RowData",
19910 /* 60 */ "Rowid",
19911 /* 61 */ "NullRow",
19912 /* 62 */ "Last",
19913 /* 63 */ "Sort",
19914 /* 64 */ "Rewind",
19915 /* 65 */ "Prev",
19916 /* 66 */ "Next",
19917 /* 67 */ "IdxInsert",
19918 /* 68 */ "Or",
19919 /* 69 */ "And",
19920 /* 70 */ "IdxDelete",
19921 /* 71 */ "IdxRowid",
19922 /* 72 */ "IdxLT",
19923 /* 73 */ "IsNull",
19924 /* 74 */ "NotNull",
19925 /* 75 */ "Ne",
19926 /* 76 */ "Eq",
19927 /* 77 */ "Gt",
19928 /* 78 */ "Le",
19929 /* 79 */ "Lt",
19930 /* 80 */ "Ge",
19931 /* 81 */ "IdxGE",
19932 /* 82 */ "BitAnd",
19933 /* 83 */ "BitOr",
19934 /* 84 */ "ShiftLeft",
19935 /* 85 */ "ShiftRight",
19936 /* 86 */ "Add",
@@ -19923,53 +19937,53 @@
19937 /* 87 */ "Subtract",
19938 /* 88 */ "Multiply",
19939 /* 89 */ "Divide",
19940 /* 90 */ "Remainder",
19941 /* 91 */ "Concat",
19942 /* 92 */ "Destroy",
19943 /* 93 */ "BitNot",
19944 /* 94 */ "String8",
19945 /* 95 */ "Clear",
19946 /* 96 */ "CreateIndex",
19947 /* 97 */ "CreateTable",
19948 /* 98 */ "ParseSchema",
19949 /* 99 */ "LoadAnalysis",
19950 /* 100 */ "DropTable",
19951 /* 101 */ "DropIndex",
19952 /* 102 */ "DropTrigger",
19953 /* 103 */ "IntegrityCk",
19954 /* 104 */ "RowSetAdd",
19955 /* 105 */ "RowSetRead",
19956 /* 106 */ "RowSetTest",
19957 /* 107 */ "Program",
19958 /* 108 */ "Param",
19959 /* 109 */ "FkCounter",
19960 /* 110 */ "FkIfZero",
19961 /* 111 */ "MemMax",
19962 /* 112 */ "IfPos",
19963 /* 113 */ "IfNeg",
19964 /* 114 */ "IfZero",
19965 /* 115 */ "AggStep",
19966 /* 116 */ "AggFinal",
19967 /* 117 */ "Vacuum",
19968 /* 118 */ "IncrVacuum",
19969 /* 119 */ "Expire",
19970 /* 120 */ "TableLock",
19971 /* 121 */ "VBegin",
19972 /* 122 */ "VCreate",
19973 /* 123 */ "VDestroy",
19974 /* 124 */ "VOpen",
19975 /* 125 */ "VFilter",
19976 /* 126 */ "VColumn",
19977 /* 127 */ "VNext",
19978 /* 128 */ "VRename",
19979 /* 129 */ "VUpdate",
19980 /* 130 */ "Real",
19981 /* 131 */ "Pagecount",
19982 /* 132 */ "Trace",
19983 /* 133 */ "Noop",
19984 /* 134 */ "Explain",
19985 /* 135 */ "NotUsed_135",
19986 /* 136 */ "NotUsed_136",
19987 /* 137 */ "NotUsed_137",
19988 /* 138 */ "NotUsed_138",
19989 /* 139 */ "NotUsed_139",
@@ -28426,11 +28440,11 @@
28440 ** returns the number of TCHARs written to the output
28441 ** buffer, excluding the terminating null char.
28442 */
28443 DWORD error = GetLastError();
28444 DWORD dwLen = 0;
28445 char *zOut = 0;
28446
28447 if( isNT() ){
28448 WCHAR *zTempWide = NULL;
28449 dwLen = FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
28450 NULL,
@@ -33126,25 +33140,19 @@
33140 ** sanity checksum.
33141 ** (4) 4 byte integer which is the number of pages to truncate the
33142 ** database to during a rollback.
33143 ** (5) 4 byte big-endian integer which is the sector size. The header
33144 ** is this many bytes in size.
33145 ** (6) 4 byte big-endian integer which is the page size.
33146 ** (7) zero padding out to the next sector size.
33147 ** (8) Zero or more pages instances, each as follows:
 
 
 
 
 
 
33148 ** + 4 byte page number.
33149 ** + pPager->pageSize bytes of data.
33150 ** + 4 byte checksum
33151 **
33152 ** When we speak of the journal header, we mean the first 7 items above.
33153 ** Each entry in the journal is an instance of the 8th item.
33154 **
33155 ** Call the value from the second bullet "nRec". nRec is the number of
33156 ** valid page entries in the journal. In most cases, you can compute the
33157 ** value of nRec from the size of the journal file. But if a power
33158 ** failure occurred while the journal was being written, it could be the
@@ -47266,11 +47274,11 @@
47274 #ifdef SQLITE_OMIT_TRACE
47275 if( !isPrepareV2 ) return;
47276 #endif
47277 assert( p->zSql==0 );
47278 p->zSql = sqlite3DbStrNDup(p->db, z, n);
47279 p->isPrepareV2 = (u8)isPrepareV2;
47280 }
47281
47282 /*
47283 ** Return the SQL associated with a prepared statement
47284 */
@@ -48565,11 +48573,11 @@
48573 zEnd = &zCsr[nByte];
48574 }while( nByte && !db->mallocFailed );
48575
48576 p->nCursor = (u16)nCursor;
48577 if( p->aVar ){
48578 p->nVar = (ynVar)nVar;
48579 for(n=0; n<nVar; n++){
48580 p->aVar[n].flags = MEM_Null;
48581 p->aVar[n].db = db;
48582 }
48583 }
@@ -59293,11 +59301,11 @@
59301 p->pTab = pItem->pTab;
59302 p->iTable = pItem->iCursor;
59303 if( p->pTab->iPKey==iCol ){
59304 p->iColumn = -1;
59305 }else{
59306 p->iColumn = (ynVar)iCol;
59307 pItem->colUsed |= ((Bitmask)1)<<(iCol>=BMS ? BMS-1 : iCol);
59308 }
59309 ExprSetProperty(p, EP_Resolved);
59310 }
59311 return p;
@@ -60648,16 +60656,16 @@
60656 assert( z!=0 );
60657 assert( z[0]!=0 );
60658 if( z[1]==0 ){
60659 /* Wildcard of the form "?". Assign the next variable number */
60660 assert( z[0]=='?' );
60661 pExpr->iColumn = (ynVar)(++pParse->nVar);
60662 }else if( z[0]=='?' ){
60663 /* Wildcard of the form "?nnn". Convert "nnn" to an integer and
60664 ** use it as the variable number */
60665 int i = atoi((char*)&z[1]);
60666 pExpr->iColumn = (ynVar)i;
60667 testcase( i==0 );
60668 testcase( i==1 );
60669 testcase( i==db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER]-1 );
60670 testcase( i==db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER] );
60671 if( i<1 || i>db->aLimit[SQLITE_LIMIT_VARIABLE_NUMBER] ){
@@ -60682,11 +60690,11 @@
60690 pExpr->iColumn = pE->iColumn;
60691 break;
60692 }
60693 }
60694 if( i>=pParse->nVarExpr ){
60695 pExpr->iColumn = (ynVar)(++pParse->nVar);
60696 if( pParse->nVarExpr>=pParse->nVarExprAlloc-1 ){
60697 pParse->nVarExprAlloc += pParse->nVarExprAlloc + 10;
60698 pParse->apVarExpr =
60699 sqlite3DbReallocOrFree(
60700 db,
@@ -65275,11 +65283,11 @@
65283 }
65284 aNew->zName = sqlite3DbStrDup(db, zName);
65285 aNew->safety_level = 3;
65286
65287 #if SQLITE_HAS_CODEC
65288 if( rc==SQLITE_OK ){
65289 extern int sqlite3CodecAttach(sqlite3*, int, const void*, int);
65290 extern void sqlite3CodecGetKey(sqlite3*, int, void**, int*);
65291 int nKey;
65292 char *zKey;
65293 int t = sqlite3_value_type(argv[2]);
@@ -65292,17 +65300,17 @@
65300
65301 case SQLITE_TEXT:
65302 case SQLITE_BLOB:
65303 nKey = sqlite3_value_bytes(argv[2]);
65304 zKey = (char *)sqlite3_value_blob(argv[2]);
65305 rc = sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
65306 break;
65307
65308 case SQLITE_NULL:
65309 /* No key specified. Use the key from the main database */
65310 sqlite3CodecGetKey(db, 0, (void**)&zKey, &nKey);
65311 rc = sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
65312 break;
65313 }
65314 }
65315 #endif
65316
@@ -90394,472 +90402,476 @@
90402 ** shifting terminals.
90403 ** yy_reduce_ofst[] For each state, the offset into yy_action for
90404 ** shifting non-terminals after a reduce.
90405 ** yy_default[] Default action for each state.
90406 */
90407 #define YY_ACTTAB_COUNT (1543)
90408 static const YYACTIONTYPE yy_action[] = {
90409 /* 0 */ 312, 49, 554, 46, 147, 172, 626, 596, 55, 55,
90410 /* 10 */ 55, 55, 301, 53, 53, 53, 53, 52, 52, 51,
90411 /* 20 */ 51, 51, 50, 237, 617, 616, 615, 622, 621, 607,
90412 /* 30 */ 589, 583, 48, 53, 53, 53, 53, 52, 52, 51,
90413 /* 40 */ 51, 51, 50, 237, 51, 51, 51, 50, 237, 56,
90414 /* 50 */ 57, 47, 581, 580, 582, 582, 54, 54, 55, 55,
90415 /* 60 */ 55, 55, 216, 53, 53, 53, 53, 52, 52, 51,
90416 /* 70 */ 51, 51, 50, 237, 312, 596, 49, 329, 46, 147,
90417 /* 80 */ 32, 53, 53, 53, 53, 52, 52, 51, 51, 51,
90418 /* 90 */ 50, 237, 329, 622, 621, 619, 618, 166, 433, 547,
90419 /* 100 */ 381, 378, 377, 549, 589, 583, 389, 490, 166, 58,
90420 /* 110 */ 376, 381, 378, 377, 390, 299, 622, 621, 480, 67,
90421 /* 120 */ 670, 376, 620, 56, 57, 47, 581, 580, 582, 582,
90422 /* 130 */ 54, 54, 55, 55, 55, 55, 253, 53, 53, 53,
90423 /* 140 */ 53, 52, 52, 51, 51, 51, 50, 237, 312, 408,
90424 /* 150 */ 225, 578, 578, 133, 177, 139, 283, 384, 278, 383,
90425 /* 160 */ 169, 619, 618, 601, 197, 225, 274, 602, 439, 146,
90426 /* 170 */ 139, 283, 384, 278, 383, 169, 569, 235, 589, 583,
90427 /* 180 */ 250, 274, 252, 620, 619, 618, 546, 436, 440, 441,
90428 /* 190 */ 168, 622, 621, 547, 438, 437, 192, 56, 57, 47,
90429 /* 200 */ 581, 580, 582, 582, 54, 54, 55, 55, 55, 55,
90430 /* 210 */ 6, 53, 53, 53, 53, 52, 52, 51, 51, 51,
90431 /* 220 */ 50, 237, 312, 282, 52, 52, 51, 51, 51, 50,
90432 /* 230 */ 237, 490, 183, 281, 547, 166, 439, 565, 381, 378,
90433 /* 240 */ 377, 596, 606, 67, 327, 172, 620, 596, 376, 442,
90434 /* 250 */ 236, 620, 589, 583, 306, 423, 440, 339, 251, 619,
90435 /* 260 */ 618, 331, 574, 573, 7, 524, 194, 481, 16, 594,
90436 /* 270 */ 189, 56, 57, 47, 581, 580, 582, 582, 54, 54,
90437 /* 280 */ 55, 55, 55, 55, 545, 53, 53, 53, 53, 52,
90438 /* 290 */ 52, 51, 51, 51, 50, 237, 312, 410, 464, 421,
90439 /* 300 */ 592, 592, 592, 671, 146, 410, 1, 205, 410, 596,
90440 /* 310 */ 622, 621, 413, 420, 949, 596, 949, 340, 236, 530,
90441 /* 320 */ 413, 600, 74, 413, 236, 552, 589, 583, 547, 600,
90442 /* 330 */ 95, 68, 600, 88, 551, 622, 621, 465, 542, 38,
90443 /* 340 */ 49, 599, 46, 147, 465, 56, 57, 47, 581, 580,
90444 /* 350 */ 582, 582, 54, 54, 55, 55, 55, 55, 424, 53,
90445 /* 360 */ 53, 53, 53, 52, 52, 51, 51, 51, 50, 237,
90446 /* 370 */ 312, 397, 395, 232, 529, 577, 387, 533, 619, 618,
90447 /* 380 */ 605, 492, 560, 588, 587, 350, 257, 622, 621, 495,
90448 /* 390 */ 564, 356, 350, 257, 49, 239, 46, 147, 559, 357,
90449 /* 400 */ 589, 583, 239, 619, 618, 585, 584, 408, 258, 578,
90450 /* 410 */ 578, 672, 209, 35, 558, 258, 401, 622, 621, 56,
90451 /* 420 */ 57, 47, 581, 580, 582, 582, 54, 54, 55, 55,
90452 /* 430 */ 55, 55, 586, 53, 53, 53, 53, 52, 52, 51,
90453 /* 440 */ 51, 51, 50, 237, 312, 560, 599, 410, 526, 531,
90454 /* 450 */ 184, 514, 513, 474, 366, 619, 618, 576, 410, 65,
90455 /* 460 */ 176, 559, 413, 408, 311, 578, 578, 567, 491, 215,
90456 /* 470 */ 352, 600, 94, 413, 589, 583, 474, 558, 408, 518,
90457 /* 480 */ 578, 578, 600, 95, 470, 619, 618, 62, 420, 948,
90458 /* 490 */ 517, 948, 349, 56, 57, 47, 581, 580, 582, 582,
90459 /* 500 */ 54, 54, 55, 55, 55, 55, 175, 53, 53, 53,
90460 /* 510 */ 53, 52, 52, 51, 51, 51, 50, 237, 312, 490,
90461 /* 520 */ 157, 410, 509, 292, 393, 373, 348, 410, 623, 410,
90462 /* 530 */ 428, 67, 611, 424, 620, 410, 413, 540, 408, 171,
90463 /* 540 */ 578, 578, 413, 620, 413, 600, 73, 620, 589, 583,
90464 /* 550 */ 413, 600, 80, 600, 88, 238, 168, 306, 422, 600,
90465 /* 560 */ 80, 201, 18, 468, 406, 574, 573, 56, 57, 47,
90466 /* 570 */ 581, 580, 582, 582, 54, 54, 55, 55, 55, 55,
90467 /* 580 */ 579, 53, 53, 53, 53, 52, 52, 51, 51, 51,
90468 /* 590 */ 50, 237, 312, 44, 233, 599, 271, 320, 341, 472,
90469 /* 600 */ 410, 874, 421, 473, 503, 319, 410, 200, 144, 66,
90470 /* 610 */ 327, 483, 508, 596, 274, 413, 239, 364, 484, 382,
90471 /* 620 */ 30, 413, 589, 583, 600, 69, 502, 236, 342, 575,
90472 /* 630 */ 600, 97, 199, 198, 209, 959, 186, 418, 2, 566,
90473 /* 640 */ 269, 56, 57, 47, 581, 580, 582, 582, 54, 54,
90474 /* 650 */ 55, 55, 55, 55, 410, 53, 53, 53, 53, 52,
90475 /* 660 */ 52, 51, 51, 51, 50, 237, 312, 263, 599, 413,
90476 /* 670 */ 410, 21, 190, 358, 410, 326, 410, 202, 600, 100,
90477 /* 680 */ 386, 596, 620, 562, 265, 413, 267, 410, 620, 413,
90478 /* 690 */ 563, 413, 352, 4, 600, 98, 589, 583, 600, 106,
90479 /* 700 */ 600, 104, 413, 174, 601, 629, 627, 333, 602, 34,
90480 /* 710 */ 337, 600, 108, 561, 359, 56, 57, 47, 581, 580,
90481 /* 720 */ 582, 582, 54, 54, 55, 55, 55, 55, 410, 53,
90482 /* 730 */ 53, 53, 53, 52, 52, 51, 51, 51, 50, 237,
90483 /* 740 */ 312, 410, 499, 413, 167, 567, 405, 215, 504, 505,
90484 /* 750 */ 316, 557, 600, 109, 353, 13, 413, 410, 12, 410,
90485 /* 760 */ 538, 410, 335, 358, 223, 600, 134, 571, 571, 620,
90486 /* 770 */ 589, 583, 413, 20, 413, 620, 413, 272, 620, 167,
90487 /* 780 */ 167, 600, 135, 600, 61, 600, 105, 317, 148, 56,
90488 /* 790 */ 57, 47, 581, 580, 582, 582, 54, 54, 55, 55,
90489 /* 800 */ 55, 55, 410, 53, 53, 53, 53, 52, 52, 51,
90490 /* 810 */ 51, 51, 50, 237, 312, 410, 275, 413, 410, 275,
90491 /* 820 */ 275, 222, 410, 330, 363, 544, 600, 103, 132, 360,
90492 /* 830 */ 413, 620, 522, 413, 620, 620, 410, 413, 170, 600,
90493 /* 840 */ 96, 603, 600, 102, 589, 583, 600, 77, 374, 536,
90494 /* 850 */ 167, 413, 143, 325, 256, 28, 224, 324, 511, 528,
90495 /* 860 */ 600, 99, 527, 56, 57, 47, 581, 580, 582, 582,
90496 /* 870 */ 54, 54, 55, 55, 55, 55, 410, 53, 53, 53,
90497 /* 880 */ 53, 52, 52, 51, 51, 51, 50, 237, 312, 410,
90498 /* 890 */ 275, 413, 410, 469, 275, 167, 458, 39, 171, 37,
90499 /* 900 */ 600, 138, 214, 144, 413, 620, 142, 413, 410, 620,
90500 /* 910 */ 410, 358, 239, 600, 137, 230, 600, 136, 589, 583,
90501 /* 920 */ 457, 263, 23, 413, 351, 413, 620, 323, 445, 501,
90502 /* 930 */ 23, 322, 600, 76, 600, 93, 620, 56, 45, 47,
90503 /* 940 */ 581, 580, 582, 582, 54, 54, 55, 55, 55, 55,
90504 /* 950 */ 410, 53, 53, 53, 53, 52, 52, 51, 51, 51,
90505 /* 960 */ 50, 237, 312, 410, 262, 413, 410, 426, 263, 308,
90506 /* 970 */ 203, 213, 212, 380, 600, 92, 520, 519, 413, 130,
90507 /* 980 */ 538, 413, 538, 620, 410, 628, 2, 600, 75, 273,
90508 /* 990 */ 600, 91, 589, 583, 375, 620, 129, 620, 27, 413,
90509 /* 1000 */ 425, 307, 221, 128, 599, 599, 599, 281, 600, 90,
90510 /* 1010 */ 371, 452, 57, 47, 581, 580, 582, 582, 54, 54,
90511 /* 1020 */ 55, 55, 55, 55, 410, 53, 53, 53, 53, 52,
90512 /* 1030 */ 52, 51, 51, 51, 50, 237, 312, 410, 263, 413,
90513 /* 1040 */ 410, 263, 263, 365, 208, 321, 206, 542, 600, 101,
90514 /* 1050 */ 50, 237, 413, 620, 610, 413, 620, 620, 410, 542,
90515 /* 1060 */ 165, 600, 89, 188, 600, 87, 589, 583, 478, 620,
90516 /* 1070 */ 467, 519, 125, 413, 569, 235, 542, 367, 599, 475,
90517 /* 1080 */ 599, 450, 600, 86, 449, 448, 231, 47, 581, 580,
90518 /* 1090 */ 582, 582, 54, 54, 55, 55, 55, 55, 287, 53,
90519 /* 1100 */ 53, 53, 53, 52, 52, 51, 51, 51, 50, 237,
90520 /* 1110 */ 43, 404, 410, 3, 410, 285, 260, 414, 621, 263,
90521 /* 1120 */ 609, 627, 333, 43, 404, 410, 3, 413, 407, 413,
90522 /* 1130 */ 414, 621, 171, 263, 620, 620, 600, 85, 600, 72,
90523 /* 1140 */ 413, 407, 124, 140, 353, 604, 409, 402, 620, 600,
90524 /* 1150 */ 71, 291, 471, 495, 160, 123, 593, 565, 620, 620,
90525 /* 1160 */ 402, 620, 220, 15, 463, 460, 620, 417, 625, 159,
90526 /* 1170 */ 565, 620, 399, 240, 158, 126, 219, 40, 41, 532,
90527 /* 1180 */ 410, 207, 121, 120, 42, 412, 411, 620, 263, 594,
90528 /* 1190 */ 40, 41, 556, 543, 25, 413, 11, 42, 412, 411,
90529 /* 1200 */ 24, 118, 594, 620, 600, 84, 455, 620, 620, 43,
90530 /* 1210 */ 404, 218, 3, 539, 156, 599, 414, 621, 113, 239,
90531 /* 1220 */ 592, 592, 592, 591, 590, 14, 155, 407, 620, 537,
90532 /* 1230 */ 451, 247, 444, 592, 592, 592, 591, 590, 14, 343,
90533 /* 1240 */ 410, 111, 410, 277, 620, 410, 402, 410, 507, 110,
90534 /* 1250 */ 10, 64, 204, 336, 435, 413, 565, 413, 620, 276,
90535 /* 1260 */ 413, 434, 413, 620, 600, 83, 600, 95, 334, 600,
90536 /* 1270 */ 82, 600, 81, 150, 620, 488, 40, 41, 270, 268,
90537 /* 1280 */ 266, 191, 332, 42, 412, 411, 599, 410, 594, 241,
90538 /* 1290 */ 620, 410, 264, 620, 620, 620, 33, 404, 419, 3,
90539 /* 1300 */ 107, 229, 413, 414, 621, 149, 413, 620, 397, 181,
90540 /* 1310 */ 259, 600, 70, 398, 407, 600, 17, 315, 314, 592,
90541 /* 1320 */ 592, 592, 591, 590, 14, 620, 127, 361, 624, 217,
90542 /* 1330 */ 462, 461, 354, 402, 304, 303, 302, 179, 300, 254,
90543 /* 1340 */ 614, 453, 620, 565, 454, 620, 620, 620, 613, 612,
90544 /* 1350 */ 443, 416, 180, 246, 620, 151, 415, 245, 243, 620,
90545 /* 1360 */ 178, 598, 242, 40, 41, 620, 244, 8, 620, 239,
90546 /* 1370 */ 42, 412, 411, 620, 410, 594, 410, 620, 60, 153,
90547 /* 1380 */ 429, 465, 622, 621, 296, 154, 30, 145, 152, 413,
90548 /* 1390 */ 388, 413, 295, 394, 294, 620, 31, 392, 600, 79,
90549 /* 1400 */ 600, 78, 620, 290, 396, 413, 592, 592, 592, 591,
90550 /* 1410 */ 590, 14, 620, 293, 600, 9, 597, 59, 620, 36,
90551 /* 1420 */ 555, 173, 565, 234, 185, 288, 29, 541, 391, 345,
90552 /* 1430 */ 248, 286, 521, 535, 313, 284, 385, 328, 534, 239,
90553 /* 1440 */ 516, 515, 196, 195, 279, 310, 511, 512, 510, 131,
90554 /* 1450 */ 524, 227, 258, 228, 594, 309, 487, 486, 493, 226,
90555 /* 1460 */ 372, 485, 164, 338, 479, 163, 368, 370, 162, 26,
90556 /* 1470 */ 211, 477, 261, 161, 141, 476, 362, 466, 122, 187,
90557 /* 1480 */ 119, 456, 347, 117, 346, 592, 592, 592, 116, 115,
90558 /* 1490 */ 114, 447, 112, 182, 318, 22, 432, 19, 431, 430,
90559 /* 1500 */ 63, 427, 608, 193, 297, 595, 572, 570, 403, 553,
90560 /* 1510 */ 550, 289, 280, 508, 498, 497, 496, 494, 379, 355,
90561 /* 1520 */ 459, 255, 249, 344, 446, 305, 5, 568, 548, 298,
90562 /* 1530 */ 298, 210, 369, 298, 400, 506, 500, 489, 525, 523,
90563 /* 1540 */ 482, 239, 237,
90564 };
90565 static const YYCODETYPE yy_lookahead[] = {
90566 /* 0 */ 19, 222, 223, 224, 225, 24, 1, 26, 77, 78,
90567 /* 10 */ 79, 80, 15, 82, 83, 84, 85, 86, 87, 88,
90568 /* 20 */ 89, 90, 91, 92, 7, 8, 9, 26, 27, 23,
90569 /* 30 */ 49, 50, 81, 82, 83, 84, 85, 86, 87, 88,
90570 /* 40 */ 89, 90, 91, 92, 88, 89, 90, 91, 92, 68,
90571 /* 50 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
90572 /* 60 */ 79, 80, 22, 82, 83, 84, 85, 86, 87, 88,
90573 /* 70 */ 89, 90, 91, 92, 19, 94, 222, 19, 224, 225,
90574 /* 80 */ 25, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90575 /* 90 */ 91, 92, 19, 26, 27, 94, 95, 96, 244, 25,
90576 /* 100 */ 99, 100, 101, 25, 49, 50, 19, 150, 96, 54,
90577 /* 110 */ 109, 99, 100, 101, 27, 158, 26, 27, 161, 162,
90578 /* 120 */ 117, 109, 165, 68, 69, 70, 71, 72, 73, 74,
90579 /* 130 */ 75, 76, 77, 78, 79, 80, 16, 82, 83, 84,
90580 /* 140 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 111,
90581 /* 150 */ 92, 113, 114, 24, 96, 97, 98, 99, 100, 101,
90582 /* 160 */ 102, 94, 95, 112, 25, 92, 108, 116, 150, 95,
90583 /* 170 */ 97, 98, 99, 100, 101, 102, 86, 87, 49, 50,
90584 /* 180 */ 60, 108, 62, 165, 94, 95, 119, 97, 170, 171,
90585 /* 190 */ 50, 26, 27, 119, 104, 105, 118, 68, 69, 70,
90586 /* 200 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
90587 /* 210 */ 22, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90588 /* 220 */ 91, 92, 19, 98, 86, 87, 88, 89, 90, 91,
90589 /* 230 */ 92, 150, 23, 108, 25, 96, 150, 66, 99, 100,
90590 /* 240 */ 101, 26, 161, 162, 104, 24, 165, 26, 109, 231,
90591 /* 250 */ 232, 165, 49, 50, 22, 23, 170, 171, 138, 94,
90592 /* 260 */ 95, 169, 170, 171, 76, 94, 185, 186, 22, 98,
90593 /* 270 */ 24, 68, 69, 70, 71, 72, 73, 74, 75, 76,
90594 /* 280 */ 77, 78, 79, 80, 119, 82, 83, 84, 85, 86,
90595 /* 290 */ 87, 88, 89, 90, 91, 92, 19, 150, 11, 67,
90596 /* 300 */ 129, 130, 131, 117, 95, 150, 22, 160, 150, 94,
90597 /* 310 */ 26, 27, 165, 22, 23, 94, 25, 231, 232, 23,
90598 /* 320 */ 165, 174, 175, 165, 232, 32, 49, 50, 119, 174,
90599 /* 330 */ 175, 22, 174, 175, 41, 26, 27, 57, 166, 136,
90600 /* 340 */ 222, 194, 224, 225, 57, 68, 69, 70, 71, 72,
90601 /* 350 */ 73, 74, 75, 76, 77, 78, 79, 80, 67, 82,
90602 /* 360 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90603 /* 370 */ 19, 216, 214, 215, 23, 23, 221, 205, 94, 95,
90604 /* 380 */ 172, 173, 12, 49, 50, 105, 106, 26, 27, 181,
90605 /* 390 */ 23, 19, 105, 106, 222, 115, 224, 225, 28, 27,
90606 /* 400 */ 49, 50, 115, 94, 95, 71, 72, 111, 128, 113,
90607 /* 410 */ 114, 117, 160, 136, 44, 128, 46, 26, 27, 68,
90608 /* 420 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
90609 /* 430 */ 79, 80, 98, 82, 83, 84, 85, 86, 87, 88,
90610 /* 440 */ 89, 90, 91, 92, 19, 12, 194, 150, 23, 88,
90611 /* 450 */ 23, 7, 8, 105, 106, 94, 95, 23, 150, 25,
90612 /* 460 */ 117, 28, 165, 111, 163, 113, 114, 166, 167, 168,
90613 /* 470 */ 218, 174, 175, 165, 49, 50, 128, 44, 111, 46,
90614 /* 480 */ 113, 114, 174, 175, 21, 94, 95, 235, 22, 23,
90615 /* 490 */ 57, 25, 240, 68, 69, 70, 71, 72, 73, 74,
90616 /* 500 */ 75, 76, 77, 78, 79, 80, 117, 82, 83, 84,
90617 /* 510 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 150,
90618 /* 520 */ 25, 150, 23, 226, 216, 19, 63, 150, 150, 150,
90619 /* 530 */ 161, 162, 150, 67, 165, 150, 165, 23, 111, 25,
90620 /* 540 */ 113, 114, 165, 165, 165, 174, 175, 165, 49, 50,
90621 /* 550 */ 165, 174, 175, 174, 175, 197, 50, 22, 23, 174,
90622 /* 560 */ 175, 160, 204, 100, 169, 170, 171, 68, 69, 70,
90623 /* 570 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
90624 /* 580 */ 112, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90625 /* 590 */ 91, 92, 19, 22, 215, 194, 23, 220, 97, 30,
90626 /* 600 */ 150, 138, 67, 34, 36, 220, 150, 206, 207, 22,
90627 /* 610 */ 104, 181, 182, 26, 108, 165, 115, 48, 188, 51,
90628 /* 620 */ 125, 165, 49, 50, 174, 175, 58, 232, 127, 23,
90629 /* 630 */ 174, 175, 105, 106, 160, 142, 143, 144, 145, 23,
90630 /* 640 */ 16, 68, 69, 70, 71, 72, 73, 74, 75, 76,
90631 /* 650 */ 77, 78, 79, 80, 150, 82, 83, 84, 85, 86,
90632 /* 660 */ 87, 88, 89, 90, 91, 92, 19, 150, 194, 165,
90633 /* 670 */ 150, 24, 22, 150, 150, 107, 150, 22, 174, 175,
90634 /* 680 */ 88, 94, 165, 23, 60, 165, 62, 150, 165, 165,
90635 /* 690 */ 11, 165, 218, 35, 174, 175, 49, 50, 174, 175,
90636 /* 700 */ 174, 175, 165, 25, 112, 0, 1, 2, 116, 25,
90637 /* 710 */ 193, 174, 175, 23, 240, 68, 69, 70, 71, 72,
90638 /* 720 */ 73, 74, 75, 76, 77, 78, 79, 80, 150, 82,
90639 /* 730 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90640 /* 740 */ 19, 150, 23, 165, 25, 166, 167, 168, 97, 98,
90641 /* 750 */ 155, 23, 174, 175, 150, 25, 165, 150, 35, 150,
90642 /* 760 */ 150, 150, 245, 150, 241, 174, 175, 129, 130, 165,
90643 /* 770 */ 49, 50, 165, 52, 165, 165, 165, 23, 165, 25,
90644 /* 780 */ 25, 174, 175, 174, 175, 174, 175, 248, 249, 68,
90645 /* 790 */ 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
90646 /* 800 */ 79, 80, 150, 82, 83, 84, 85, 86, 87, 88,
90647 /* 810 */ 89, 90, 91, 92, 19, 150, 150, 165, 150, 150,
90648 /* 820 */ 150, 217, 150, 213, 229, 119, 174, 175, 22, 234,
90649 /* 830 */ 165, 165, 165, 165, 165, 165, 150, 165, 35, 174,
90650 /* 840 */ 175, 174, 174, 175, 49, 50, 174, 175, 23, 27,
90651 /* 850 */ 25, 165, 117, 187, 241, 22, 187, 187, 103, 23,
90652 /* 860 */ 174, 175, 23, 68, 69, 70, 71, 72, 73, 74,
90653 /* 870 */ 75, 76, 77, 78, 79, 80, 150, 82, 83, 84,
90654 /* 880 */ 85, 86, 87, 88, 89, 90, 91, 92, 19, 150,
90655 /* 890 */ 150, 165, 150, 23, 150, 25, 23, 135, 25, 137,
90656 /* 900 */ 174, 175, 206, 207, 165, 165, 39, 165, 150, 165,
90657 /* 910 */ 150, 150, 115, 174, 175, 52, 174, 175, 49, 50,
90658 /* 920 */ 23, 150, 25, 165, 127, 165, 165, 187, 23, 29,
90659 /* 930 */ 25, 187, 174, 175, 174, 175, 165, 68, 69, 70,
90660 /* 940 */ 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
90661 /* 950 */ 150, 82, 83, 84, 85, 86, 87, 88, 89, 90,
90662 /* 960 */ 91, 92, 19, 150, 193, 165, 150, 23, 150, 25,
90663 /* 970 */ 160, 160, 160, 52, 174, 175, 190, 191, 165, 22,
90664 /* 980 */ 150, 165, 150, 165, 150, 144, 145, 174, 175, 23,
90665 /* 990 */ 174, 175, 49, 50, 52, 165, 22, 165, 22, 165,
90666 /* 1000 */ 250, 251, 241, 22, 194, 194, 194, 108, 174, 175,
90667 /* 1010 */ 19, 193, 69, 70, 71, 72, 73, 74, 75, 76,
90668 /* 1020 */ 77, 78, 79, 80, 150, 82, 83, 84, 85, 86,
90669 /* 1030 */ 87, 88, 89, 90, 91, 92, 19, 150, 150, 165,
90670 /* 1040 */ 150, 150, 150, 213, 160, 213, 160, 166, 174, 175,
90671 /* 1050 */ 91, 92, 165, 165, 150, 165, 165, 165, 150, 166,
90672 /* 1060 */ 102, 174, 175, 24, 174, 175, 49, 50, 20, 165,
90673 /* 1070 */ 190, 191, 104, 165, 86, 87, 166, 43, 194, 59,
90674 /* 1080 */ 194, 193, 174, 175, 193, 193, 205, 70, 71, 72,
90675 /* 1090 */ 73, 74, 75, 76, 77, 78, 79, 80, 205, 82,
90676 /* 1100 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
90677 /* 1110 */ 19, 20, 150, 22, 150, 205, 138, 26, 27, 150,
90678 /* 1120 */ 150, 1, 2, 19, 20, 150, 22, 165, 37, 165,
90679 /* 1130 */ 26, 27, 25, 150, 165, 165, 174, 175, 174, 175,
90680 /* 1140 */ 165, 37, 53, 150, 150, 173, 150, 56, 165, 174,
90681 /* 1150 */ 175, 150, 53, 181, 104, 22, 150, 66, 165, 165,
90682 /* 1160 */ 56, 165, 193, 5, 1, 27, 165, 146, 147, 117,
90683 /* 1170 */ 66, 165, 150, 152, 35, 154, 193, 86, 87, 88,
90684 /* 1180 */ 150, 160, 107, 126, 93, 94, 95, 165, 150, 98,
90685 /* 1190 */ 86, 87, 150, 150, 76, 165, 22, 93, 94, 95,
90686 /* 1200 */ 76, 118, 98, 165, 174, 175, 1, 165, 165, 19,
90687 /* 1210 */ 20, 217, 22, 150, 16, 194, 26, 27, 118, 115,
90688 /* 1220 */ 129, 130, 131, 132, 133, 134, 120, 37, 165, 150,
90689 /* 1230 */ 20, 193, 127, 129, 130, 131, 132, 133, 134, 218,
90690 /* 1240 */ 150, 107, 150, 150, 165, 150, 56, 150, 150, 126,
90691 /* 1250 */ 22, 16, 160, 65, 23, 165, 66, 165, 165, 150,
90692 /* 1260 */ 165, 23, 165, 165, 174, 175, 174, 175, 247, 174,
90693 /* 1270 */ 175, 174, 175, 15, 165, 150, 86, 87, 150, 150,
90694 /* 1280 */ 150, 22, 3, 93, 94, 95, 194, 150, 98, 140,
90695 /* 1290 */ 165, 150, 150, 165, 165, 165, 19, 20, 4, 22,
90696 /* 1300 */ 164, 180, 165, 26, 27, 249, 165, 165, 216, 6,
90697 /* 1310 */ 150, 174, 175, 221, 37, 174, 175, 252, 252, 129,
90698 /* 1320 */ 130, 131, 132, 133, 134, 165, 180, 150, 149, 5,
90699 /* 1330 */ 150, 150, 150, 56, 10, 11, 12, 13, 14, 150,
90700 /* 1340 */ 149, 17, 165, 66, 150, 165, 165, 165, 149, 13,
90701 /* 1350 */ 150, 149, 151, 150, 165, 31, 159, 33, 150, 165,
90702 /* 1360 */ 151, 194, 150, 86, 87, 165, 42, 25, 165, 115,
90703 /* 1370 */ 93, 94, 95, 165, 150, 98, 150, 165, 22, 55,
90704 /* 1380 */ 150, 57, 26, 27, 199, 61, 125, 150, 64, 165,
90705 /* 1390 */ 150, 165, 200, 122, 201, 165, 123, 150, 174, 175,
90706 /* 1400 */ 174, 175, 165, 150, 121, 165, 129, 130, 131, 132,
90707 /* 1410 */ 133, 134, 165, 202, 174, 175, 203, 124, 165, 135,
90708 /* 1420 */ 157, 117, 66, 227, 157, 210, 104, 211, 120, 105,
90709 /* 1430 */ 106, 210, 176, 211, 110, 210, 104, 47, 211, 115,
90710 /* 1440 */ 176, 184, 86, 87, 176, 179, 103, 178, 176, 22,
90711 /* 1450 */ 94, 92, 128, 230, 98, 179, 176, 176, 184, 230,
90712 /* 1460 */ 18, 176, 156, 139, 157, 156, 45, 157, 156, 135,
90713 /* 1470 */ 157, 157, 238, 156, 68, 239, 157, 189, 189, 219,
90714 /* 1480 */ 22, 199, 157, 192, 18, 129, 130, 131, 192, 192,
90715 /* 1490 */ 192, 199, 189, 219, 157, 243, 40, 243, 157, 157,
90716 /* 1500 */ 246, 38, 153, 196, 198, 166, 233, 233, 228, 177,
90717 /* 1510 */ 177, 209, 177, 182, 177, 166, 177, 166, 178, 242,
90718 /* 1520 */ 199, 242, 209, 209, 199, 148, 196, 166, 208, 195,
90719 /* 1530 */ 195, 236, 237, 195, 191, 183, 183, 186, 174, 174,
90720 /* 1540 */ 186, 115, 92,
90721 };
90722 #define YY_SHIFT_USE_DFLT (-70)
90723 #define YY_SHIFT_COUNT (417)
90724 #define YY_SHIFT_MIN (-69)
90725 #define YY_SHIFT_MAX (1466)
90726 static const short yy_shift_ofst[] = {
90727 /* 0 */ 1120, 1104, 1324, 1104, 1190, 1190, 90, 90, 1, -19,
90728 /* 10 */ 1190, 1190, 1190, 1190, 1190, 280, 391, 721, 1091, 1190,
90729 /* 20 */ 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
90730 /* 30 */ 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
90731 /* 40 */ 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1277, 1190, 1190,
90732 /* 50 */ 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190,
90733 /* 60 */ 1190, -49, 287, 391, 391, 988, 988, 215, 1426, 55,
90734 /* 70 */ 647, 573, 499, 425, 351, 277, 203, 129, 795, 795,
90735 /* 80 */ 795, 795, 795, 795, 795, 795, 795, 795, 795, 795,
90736 /* 90 */ 795, 795, 795, 795, 795, 795, 869, 795, 943, 1017,
90737 /* 100 */ 1017, -69, -69, -69, -69, -1, -1, 58, 138, -44,
90738 /* 110 */ 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
90739 /* 120 */ 391, 391, 391, 391, 391, 391, 463, 506, 391, 391,
90740 /* 130 */ 391, 391, 391, 215, 959, 1450, -70, -70, -70, 1356,
90741 /* 140 */ 73, 433, 433, 361, 309, 165, 67, 284, 466, 291,
90742 /* 150 */ 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
90743 /* 160 */ 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
90744 /* 170 */ 391, 391, 391, 391, 391, 391, 391, 391, 391, 391,
90745 /* 180 */ 391, 391, 501, 221, 221, 221, 705, 797, 1426, 1426,
90746 /* 190 */ 1426, -70, -70, -70, 139, 171, 171, 12, 568, 568,
90747 /* 200 */ 209, 427, 370, 367, 352, 296, 38, 38, 38, 38,
90748 /* 210 */ 348, 569, 38, 38, 74, 587, 592, 17, 495, 87,
90749 /* 220 */ 87, 372, 495, 372, 755, 215, 293, 215, 293, 140,
90750 /* 230 */ 293, 87, 293, 293, 762, 638, 638, 215, 78, 51,
90751 /* 240 */ 246, 1463, 1304, 1304, 1456, 1456, 1304, 1458, 1406, 1261,
90752 /* 250 */ 1466, 1466, 1466, 1466, 1304, 1261, 1458, 1406, 1406, 1304,
90753 /* 260 */ 1442, 1334, 1421, 1304, 1304, 1442, 1304, 1442, 1304, 1442,
90754 /* 270 */ 1427, 1332, 1332, 1332, 1390, 1359, 1359, 1427, 1332, 1343,
90755 /* 280 */ 1332, 1390, 1332, 1332, 1308, 1322, 1308, 1322, 1308, 1322,
90756 /* 290 */ 1304, 1304, 1284, 1293, 1283, 1273, 1271, 1261, 1254, 1342,
90757 /* 300 */ 1336, 1336, 1303, 1303, 1303, 1303, -70, -70, -70, -70,
90758 /* 310 */ -70, -70, 334, 120, 535, 232, 624, 944, 188, 905,
90759 /* 320 */ 897, 873, 870, 825, 754, 719, 651, 527, 444, 125,
90760 /* 330 */ 514, 434, 1294, 1279, 1259, 1149, 1258, 1188, 1235, 1238,
90761 /* 340 */ 1231, 1105, 1228, 1123, 1134, 1100, 1210, 1106, 1198, 1205,
90762 /* 350 */ 1083, 1174, 1057, 1124, 1118, 1075, 1138, 1139, 1052, 1163,
90763 /* 360 */ 1158, 1133, 1050, 978, 1099, 1107, 1089, 1020, 1034, 968,
90764 /* 370 */ 1039, 1048, 991, 899, 958, 981, 942, 976, 974, 966,
90765 /* 380 */ 957, 921, 900, 833, 863, 867, 839, 836, 735, 822,
90766 /* 390 */ 803, 806, 706, 684, 723, 730, 658, 684, 728, 690,
90767 /* 400 */ 678, 660, 655, 679, 650, 616, 606, 571, 468, 389,
90768 /* 410 */ 343, 294, 186, 3, 40, 6, -3, 5,
90769 };
90770 #define YY_REDUCE_USE_DFLT (-222)
90771 #define YY_REDUCE_COUNT (311)
90772 #define YY_REDUCE_MIN (-221)
90773 #define YY_REDUCE_MAX (1377)
90774 static const short yy_reduce_ofst[] = {
90775 /* 0 */ 493, 1092, 1021, 147, 158, 155, 86, 18, 81, 172,
90776 /* 10 */ 385, 377, 308, 379, 297, 252, -43, -146, 1240, 1226,
90777 /* 20 */ 1224, 1141, 1137, 1097, 1095, 1090, 1030, 975, 964, 962,
90778 /* 30 */ 908, 890, 887, 874, 834, 816, 813, 800, 760, 758,
90779 /* 40 */ 742, 739, 726, 686, 672, 668, 665, 652, 611, 609,
90780 /* 50 */ 607, 591, 578, 537, 526, 524, 520, 504, 456, 450,
90781 /* 60 */ 371, -221, 474, 369, 517, 395, 92, 301, 401, 118,
90782 /* 70 */ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
90783 /* 80 */ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
90784 /* 90 */ 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
90785 /* 100 */ 118, 118, 118, 118, 118, 118, 118, 208, 118, 118,
90786 /* 110 */ 1038, 994, 983, 969, 892, 891, 888, 818, 761, 832,
90787 /* 120 */ 613, 604, 523, 744, 830, 771, 595, 430, 740, 670,
90788 /* 130 */ 669, 666, 610, 579, 118, 118, 118, 118, 118, 667,
90789 /* 140 */ 972, 880, 786, 996, 1253, 1247, 1237, 1001, 750, 750,
90790 /* 150 */ 1230, 1212, 1208, 1203, 1200, 1194, 1189, 1182, 1181, 1180,
90791 /* 160 */ 1177, 1160, 1142, 1130, 1129, 1128, 1125, 1109, 1098, 1093,
90792 /* 170 */ 1079, 1063, 1043, 1042, 1022, 1006, 996, 993, 970, 904,
90793 /* 180 */ 382, 378, 886, 910, 893, 881, 841, 884, 812, 811,
90794 /* 190 */ 810, 539, 696, 358, 1354, 1365, 1364, 1351, 1353, 1352,
90795 /* 200 */ 1320, 1338, 1343, 1338, 1338, 1338, 1338, 1338, 1338, 1338,
90796 /* 210 */ 1295, 1295, 1335, 1334, 1320, 1361, 1330, 1377, 1325, 1314,
90797 /* 220 */ 1313, 1279, 1321, 1277, 1340, 1351, 1339, 1349, 1337, 1331,
90798 /* 230 */ 1335, 1302, 1333, 1332, 1280, 1274, 1273, 1339, 1306, 1307,
90799 /* 240 */ 1349, 1254, 1342, 1341, 1254, 1252, 1337, 1274, 1303, 1292,
90800 /* 250 */ 1298, 1297, 1296, 1291, 1325, 1282, 1260, 1289, 1288, 1319,
90801 /* 260 */ 1317, 1236, 1234, 1314, 1313, 1312, 1310, 1309, 1307, 1306,
90802 /* 270 */ 1276, 1285, 1281, 1280, 1274, 1229, 1223, 1266, 1272, 1269,
90803 /* 280 */ 1268, 1257, 1264, 1256, 1227, 1225, 1222, 1221, 1216, 1215,
90804 /* 290 */ 1267, 1263, 1196, 1213, 1211, 1193, 1192, 1185, 1167, 1197,
90805 /* 300 */ 1209, 1201, 1202, 1199, 1191, 1179, 1066, 1065, 1056, 1146,
90806 /* 310 */ 1121, 1136,
90807 };
90808 static const YYACTIONTYPE yy_default[] = {
90809 /* 0 */ 634, 869, 958, 958, 958, 869, 898, 898, 958, 757,
90810 /* 10 */ 958, 958, 958, 958, 867, 958, 958, 932, 958, 958,
90811 /* 20 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90812 /* 30 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90813 /* 40 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90814 /* 50 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90815 /* 60 */ 958, 841, 958, 958, 958, 898, 898, 673, 761, 792,
90816 /* 70 */ 958, 958, 958, 958, 958, 958, 958, 958, 931, 933,
90817 /* 80 */ 807, 806, 800, 799, 911, 772, 797, 790, 783, 794,
90818 /* 90 */ 870, 863, 864, 862, 866, 871, 958, 793, 829, 847,
90819 /* 100 */ 828, 846, 853, 845, 831, 840, 830, 665, 832, 833,
90820 /* 110 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90821 /* 120 */ 958, 958, 958, 958, 958, 958, 660, 726, 958, 958,
90822 /* 130 */ 958, 958, 958, 958, 834, 835, 850, 849, 848, 958,
90823 /* 140 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90824 /* 150 */ 958, 938, 936, 958, 882, 958, 958, 958, 958, 958,
90825 /* 160 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90826 /* 170 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90827 /* 180 */ 958, 640, 958, 757, 757, 757, 634, 958, 958, 958,
90828 /* 190 */ 958, 950, 761, 751, 717, 958, 958, 958, 958, 958,
90829 /* 200 */ 958, 958, 958, 958, 958, 958, 802, 740, 921, 923,
90830 /* 210 */ 958, 904, 738, 662, 759, 675, 749, 642, 796, 774,
90831 /* 220 */ 774, 916, 796, 916, 699, 958, 786, 958, 786, 696,
90832 /* 230 */ 786, 774, 786, 786, 865, 958, 958, 958, 758, 749,
90833 /* 240 */ 958, 943, 765, 765, 935, 935, 765, 808, 730, 796,
90834 /* 250 */ 737, 737, 737, 737, 765, 796, 808, 730, 730, 765,
90835 /* 260 */ 657, 910, 908, 765, 765, 657, 765, 657, 765, 657,
90836 /* 270 */ 875, 728, 728, 728, 713, 879, 879, 875, 728, 699,
90837 /* 280 */ 728, 713, 728, 728, 778, 773, 778, 773, 778, 773,
90838 /* 290 */ 765, 765, 958, 791, 779, 789, 787, 796, 958, 716,
90839 /* 300 */ 650, 650, 639, 639, 639, 639, 955, 955, 950, 701,
90840 /* 310 */ 701, 683, 958, 958, 958, 958, 958, 958, 884, 958,
90841 /* 320 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90842 /* 330 */ 958, 958, 958, 635, 945, 958, 958, 942, 958, 958,
90843 /* 340 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90844 /* 350 */ 958, 958, 958, 958, 958, 958, 958, 958, 914, 958,
90845 /* 360 */ 958, 958, 958, 958, 958, 907, 906, 958, 958, 958,
90846 /* 370 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90847 /* 380 */ 958, 958, 958, 958, 958, 958, 958, 958, 958, 958,
90848 /* 390 */ 958, 958, 958, 788, 958, 780, 958, 868, 958, 958,
90849 /* 400 */ 958, 958, 958, 958, 958, 958, 958, 958, 743, 817,
90850 /* 410 */ 958, 816, 820, 815, 667, 958, 648, 958, 631, 636,
90851 /* 420 */ 954, 957, 956, 953, 952, 951, 946, 944, 941, 940,
90852 /* 430 */ 939, 937, 934, 930, 888, 886, 893, 892, 891, 890,
90853 /* 440 */ 889, 887, 885, 883, 803, 801, 798, 795, 929, 881,
90854 /* 450 */ 739, 736, 735, 656, 947, 913, 922, 920, 809, 919,
90855 /* 460 */ 918, 917, 915, 912, 899, 805, 804, 731, 873, 872,
90856 /* 470 */ 659, 903, 902, 901, 905, 909, 900, 767, 658, 655,
90857 /* 480 */ 664, 720, 719, 727, 725, 724, 723, 722, 721, 718,
90858 /* 490 */ 666, 674, 685, 712, 698, 697, 878, 880, 877, 876,
90859 /* 500 */ 705, 710, 709, 708, 707, 706, 704, 703, 702, 695,
90860 /* 510 */ 694, 700, 693, 715, 714, 711, 692, 734, 733, 732,
90861 /* 520 */ 729, 691, 690, 689, 820, 688, 687, 826, 825, 813,
90862 /* 530 */ 857, 754, 753, 752, 764, 763, 776, 775, 811, 810,
90863 /* 540 */ 777, 762, 756, 755, 771, 770, 769, 768, 760, 750,
90864 /* 550 */ 782, 785, 784, 781, 842, 859, 766, 856, 928, 927,
90865 /* 560 */ 926, 925, 924, 861, 860, 827, 824, 678, 679, 897,
90866 /* 570 */ 895, 896, 894, 681, 680, 677, 676, 858, 745, 744,
90867 /* 580 */ 854, 851, 843, 838, 855, 852, 844, 839, 837, 836,
90868 /* 590 */ 822, 821, 819, 818, 814, 823, 669, 746, 742, 741,
90869 /* 600 */ 812, 748, 747, 686, 684, 682, 663, 661, 654, 652,
90870 /* 610 */ 651, 653, 649, 647, 646, 645, 644, 643, 672, 671,
90871 /* 620 */ 670, 668, 667, 641, 638, 637, 633, 632, 630,
90872 };
 
90873
90874 /* The next table maps tokens into fallback tokens. If a construct
90875 ** like the following:
90876 **
90877 ** %fallback ID X Y Z.
@@ -91642,18 +91654,17 @@
91654 YYCODETYPE iLookAhead /* The look-ahead token */
91655 ){
91656 int i;
91657 int stateno = pParser->yystack[pParser->yyidx].stateno;
91658
91659 if( stateno>YY_SHIFT_COUNT
91660 || (i = yy_shift_ofst[stateno])==YY_SHIFT_USE_DFLT ){
91661 return yy_default[stateno];
91662 }
91663 assert( iLookAhead!=YYNOCODE );
91664 i += iLookAhead;
91665 if( i<0 || i>=YY_ACTTAB_COUNT || yy_lookahead[i]!=iLookAhead ){
 
 
91666 if( iLookAhead>0 ){
91667 #ifdef YYFALLBACK
91668 YYCODETYPE iFallback; /* Fallback token */
91669 if( iLookAhead<sizeof(yyFallback)/sizeof(yyFallback[0])
91670 && (iFallback = yyFallback[iLookAhead])!=0 ){
@@ -91667,11 +91678,19 @@
91678 }
91679 #endif
91680 #ifdef YYWILDCARD
91681 {
91682 int j = i - iLookAhead + YYWILDCARD;
91683 if(
91684 #if YY_SHIFT_MIN+YYWILDCARD<0
91685 j>=0 &&
91686 #endif
91687 #if YY_SHIFT_MAX+YYWILDCARD>=YY_ACTTAB_COUNT
91688 j<YY_ACTTAB_COUNT &&
91689 #endif
91690 yy_lookahead[j]==YYWILDCARD
91691 ){
91692 #ifndef NDEBUG
91693 if( yyTraceFILE ){
91694 fprintf(yyTraceFILE, "%sWILDCARD %s => %s\n",
91695 yyTracePrompt, yyTokenName[iLookAhead], yyTokenName[YYWILDCARD]);
91696 }
@@ -91699,26 +91718,26 @@
91718 int stateno, /* Current state number */
91719 YYCODETYPE iLookAhead /* The look-ahead token */
91720 ){
91721 int i;
91722 #ifdef YYERRORSYMBOL
91723 if( stateno>YY_REDUCE_COUNT ){
91724 return yy_default[stateno];
91725 }
91726 #else
91727 assert( stateno<=YY_REDUCE_COUNT );
91728 #endif
91729 i = yy_reduce_ofst[stateno];
91730 assert( i!=YY_REDUCE_USE_DFLT );
91731 assert( iLookAhead!=YYNOCODE );
91732 i += iLookAhead;
91733 #ifdef YYERRORSYMBOL
91734 if( i<0 || i>=YY_ACTTAB_COUNT || yy_lookahead[i]!=iLookAhead ){
91735 return yy_default[stateno];
91736 }
91737 #else
91738 assert( i>=0 && i<YY_ACTTAB_COUNT );
91739 assert( yy_lookahead[i]==iLookAhead );
91740 #endif
91741 return yy_action[i];
91742 }
91743
@@ -93586,11 +93605,11 @@
93605 /************** Begin file keywordhash.h *************************************/
93606 /***** This file contains automatically generated code ******
93607 **
93608 ** The code in this file has been automatically generated by
93609 **
93610 ** sqlite/tool/mkkeywordhash.c
93611 **
93612 ** The code in this file implements a function that determines whether
93613 ** or not a given identifier is really an SQL keyword. The same thing
93614 ** might be implemented more directly using a hand-written hash table.
93615 ** But by using this automatically generated code, the size of the code
@@ -93641,27 +93660,27 @@
93660 'T','R','I','C','T','O','U','T','E','R','I','G','H','T','R','O','L','L',
93661 'B','A','C','K','R','O','W','U','N','I','O','N','U','S','I','N','G','V',
93662 'A','C','U','U','M','V','I','E','W','I','N','I','T','I','A','L','L','Y',
93663 };
93664 static const unsigned char aHash[127] = {
93665 72, 101, 114, 70, 0, 45, 0, 0, 78, 0, 73, 0, 0,
93666 42, 12, 74, 15, 0, 113, 81, 50, 108, 0, 19, 0, 0,
93667 118, 0, 116, 111, 0, 22, 89, 0, 9, 0, 0, 66, 67,
93668 0, 65, 6, 0, 48, 86, 98, 0, 115, 97, 0, 0, 44,
93669 0, 99, 24, 0, 17, 0, 119, 49, 23, 0, 5, 106, 25,
93670 92, 0, 0, 121, 102, 56, 120, 53, 28, 51, 0, 87, 0,
93671 96, 26, 0, 95, 0, 0, 0, 91, 88, 93, 84, 105, 14,
93672 39, 104, 0, 77, 0, 18, 85, 107, 32, 0, 117, 76, 109,
93673 58, 46, 80, 0, 0, 90, 40, 0, 112, 0, 36, 0, 0,
93674 29, 0, 82, 59, 60, 0, 20, 57, 0, 52,
93675 };
93676 static const unsigned char aNext[121] = {
93677 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0,
93678 0, 2, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
93679 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
93680 0, 0, 0, 0, 33, 0, 21, 0, 0, 0, 43, 3, 47,
93681 0, 0, 0, 0, 30, 0, 54, 0, 38, 0, 0, 0, 1,
93682 62, 0, 0, 63, 0, 41, 0, 0, 0, 0, 0, 0, 0,
93683 61, 0, 0, 0, 0, 31, 55, 16, 34, 10, 0, 0, 0,
93684 0, 0, 0, 0, 11, 68, 75, 0, 8, 0, 100, 94, 0,
93685 103, 0, 83, 0, 71, 0, 0, 110, 27, 37, 69, 79, 0,
93686 35, 64, 0, 0,
@@ -93668,12 +93687,12 @@
93687 };
93688 static const unsigned char aLen[121] = {
93689 7, 7, 5, 4, 6, 4, 5, 3, 6, 7, 3, 6, 6,
93690 7, 7, 3, 8, 2, 6, 5, 4, 4, 3, 10, 4, 6,
93691 11, 6, 2, 7, 5, 5, 9, 6, 9, 9, 7, 10, 10,
93692 4, 6, 2, 3, 9, 4, 2, 6, 5, 6, 6, 5, 6,
93693 5, 5, 7, 7, 7, 3, 2, 4, 4, 7, 3, 6, 4,
93694 7, 6, 12, 6, 9, 4, 6, 5, 4, 7, 6, 5, 6,
93695 7, 5, 4, 5, 6, 5, 7, 3, 7, 13, 2, 2, 4,
93696 6, 6, 8, 5, 17, 12, 7, 8, 8, 2, 4, 4, 4,
93697 4, 4, 2, 2, 6, 5, 8, 5, 5, 8, 3, 5, 5,
93698 6, 4, 9, 3,
@@ -93700,11 +93719,11 @@
93719 TK_ALTER, TK_RAISE, TK_EXCLUSIVE, TK_EXISTS, TK_SAVEPOINT,
93720 TK_INTERSECT, TK_TRIGGER, TK_REFERENCES, TK_CONSTRAINT, TK_INTO,
93721 TK_OFFSET, TK_OF, TK_SET, TK_TEMP, TK_TEMP,
93722 TK_OR, TK_UNIQUE, TK_QUERY, TK_ATTACH, TK_HAVING,
93723 TK_GROUP, TK_UPDATE, TK_BEGIN, TK_JOIN_KW, TK_RELEASE,
93724 TK_BETWEEN, TK_NOTNULL, TK_NOT, TK_NO, TK_NULL,
93725 TK_LIKE_KW, TK_CASCADE, TK_ASC, TK_DELETE, TK_CASE,
93726 TK_COLLATE, TK_CREATE, TK_CTIME_KW, TK_DETACH, TK_IMMEDIATE,
93727 TK_JOIN, TK_INSERT, TK_MATCH, TK_PLAN, TK_ANALYZE,
93728 TK_PRAGMA, TK_ABORT, TK_VALUES, TK_VIRTUAL, TK_LIMIT,
93729 TK_WHEN, TK_WHERE, TK_RENAME, TK_AFTER, TK_REPLACE,
@@ -93765,12 +93784,12 @@
93784 testcase( i==38 ); /* CONSTRAINT */
93785 testcase( i==39 ); /* INTO */
93786 testcase( i==40 ); /* OFFSET */
93787 testcase( i==41 ); /* OF */
93788 testcase( i==42 ); /* SET */
93789 testcase( i==43 ); /* TEMPORARY */
93790 testcase( i==44 ); /* TEMP */
93791 testcase( i==45 ); /* OR */
93792 testcase( i==46 ); /* UNIQUE */
93793 testcase( i==47 ); /* QUERY */
93794 testcase( i==48 ); /* ATTACH */
93795 testcase( i==49 ); /* HAVING */
@@ -93778,12 +93797,12 @@
93797 testcase( i==51 ); /* UPDATE */
93798 testcase( i==52 ); /* BEGIN */
93799 testcase( i==53 ); /* INNER */
93800 testcase( i==54 ); /* RELEASE */
93801 testcase( i==55 ); /* BETWEEN */
93802 testcase( i==56 ); /* NOTNULL */
93803 testcase( i==57 ); /* NOT */
93804 testcase( i==58 ); /* NO */
93805 testcase( i==59 ); /* NULL */
93806 testcase( i==60 ); /* LIKE */
93807 testcase( i==61 ); /* CASCADE */
93808 testcase( i==62 ); /* ASC */
@@ -95912,11 +95931,11 @@
95931 ** A virtual database can be either a disk file (that is automatically
95932 ** deleted when the file is closed) or it an be held entirely in memory.
95933 ** The sqlite3TempInMemory() function is used to determine which.
95934 */
95935 SQLITE_PRIVATE int sqlite3BtreeFactory(
95936 sqlite3 *db, /* Main database when opening aux otherwise 0 */
95937 const char *zFilename, /* Name of the file containing the BTree database */
95938 int omitJournal, /* if TRUE then do not journal this file */
95939 int nCache, /* How many pages in the page cache */
95940 int vfsFlags, /* Flags passed through to vfsOpen */
95941 Btree **ppBtree /* Pointer to new Btree object written here */
@@ -96174,13 +96193,10 @@
96193 # error SQLITE_MAX_ATTACHED must be between 0 and 30
96194 #endif
96195 #if SQLITE_MAX_LIKE_PATTERN_LENGTH<1
96196 # error SQLITE_MAX_LIKE_PATTERN_LENGTH must be at least 1
96197 #endif
 
 
 
96198 #if SQLITE_MAX_COLUMN>32767
96199 # error SQLITE_MAX_COLUMN must not exceed 32767
96200 #endif
96201 #if SQLITE_MAX_TRIGGER_DEPTH<1
96202 # error SQLITE_MAX_TRIGGER_DEPTH must be at least 1
96203
+2 -2
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -119,11 +119,11 @@
119119
**
120120
** Requirements: [H10011] [H10014]
121121
*/
122122
#define SQLITE_VERSION "3.6.20"
123123
#define SQLITE_VERSION_NUMBER 3006020
124
-#define SQLITE_SOURCE_ID "2009-10-30 14:27:15 612952743da28e651512547fc0d3925f4c698eb4"
124
+#define SQLITE_SOURCE_ID "2009-11-04 13:30:02 eb7a544fe49d1626bacecfe53ddc03fe082e3243"
125125
126126
/*
127127
** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
128128
** KEYWORDS: sqlite3_version
129129
**
@@ -2287,11 +2287,11 @@
22872287
*/
22882288
SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
22892289
22902290
/*
22912291
** CAPI3REF: Run-Time Limit Categories {H12790} <H12760>
2292
-** KEYWORDS: {limit category} {limit categories}
2292
+** KEYWORDS: {limit category} {*limit categories}
22932293
**
22942294
** These constants define various performance limits
22952295
** that can be lowered at run-time using [sqlite3_limit()].
22962296
** The synopsis of the meanings of the various limits is shown below.
22972297
** Additional information is available at [limits | Limits in SQLite].
22982298
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -119,11 +119,11 @@
119 **
120 ** Requirements: [H10011] [H10014]
121 */
122 #define SQLITE_VERSION "3.6.20"
123 #define SQLITE_VERSION_NUMBER 3006020
124 #define SQLITE_SOURCE_ID "2009-10-30 14:27:15 612952743da28e651512547fc0d3925f4c698eb4"
125
126 /*
127 ** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
128 ** KEYWORDS: sqlite3_version
129 **
@@ -2287,11 +2287,11 @@
2287 */
2288 SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
2289
2290 /*
2291 ** CAPI3REF: Run-Time Limit Categories {H12790} <H12760>
2292 ** KEYWORDS: {limit category} {limit categories}
2293 **
2294 ** These constants define various performance limits
2295 ** that can be lowered at run-time using [sqlite3_limit()].
2296 ** The synopsis of the meanings of the various limits is shown below.
2297 ** Additional information is available at [limits | Limits in SQLite].
2298
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -119,11 +119,11 @@
119 **
120 ** Requirements: [H10011] [H10014]
121 */
122 #define SQLITE_VERSION "3.6.20"
123 #define SQLITE_VERSION_NUMBER 3006020
124 #define SQLITE_SOURCE_ID "2009-11-04 13:30:02 eb7a544fe49d1626bacecfe53ddc03fe082e3243"
125
126 /*
127 ** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
128 ** KEYWORDS: sqlite3_version
129 **
@@ -2287,11 +2287,11 @@
2287 */
2288 SQLITE_API int sqlite3_limit(sqlite3*, int id, int newVal);
2289
2290 /*
2291 ** CAPI3REF: Run-Time Limit Categories {H12790} <H12760>
2292 ** KEYWORDS: {limit category} {*limit categories}
2293 **
2294 ** These constants define various performance limits
2295 ** that can be lowered at run-time using [sqlite3_limit()].
2296 ** The synopsis of the meanings of the various limits is shown below.
2297 ** Additional information is available at [limits | Limits in SQLite].
2298

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button