Index: XIOS/dev/branch_yushan/src/parse_expr/lex_parser.cpp
===================================================================
--- XIOS/dev/branch_yushan/src/parse_expr/lex_parser.cpp	(revision 1036)
+++ XIOS/dev/branch_yushan/src/parse_expr/lex_parser.cpp	(revision 1037)
@@ -10,5 +10,5 @@
 #define YY_FLEX_MAJOR_VERSION 2
 #define YY_FLEX_MINOR_VERSION 5
-#define YY_FLEX_SUBMINOR_VERSION 37
+#define YY_FLEX_SUBMINOR_VERSION 39
 #if YY_FLEX_SUBMINOR_VERSION > 0
 #define FLEX_BETA
@@ -143,5 +143,13 @@
 /* Size of default input buffer. */
 #ifndef YY_BUF_SIZE
+#ifdef __ia64__
+/* On IA-64, the buffer size is 16k, not 8k.
+ * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
+ * Ditto for the __ia64__ case accordingly.
+ */
+#define YY_BUF_SIZE 32768
+#else
 #define YY_BUF_SIZE 16384
+#endif /* __ia64__ */
 #endif
 
@@ -169,4 +177,5 @@
 
     #define YY_LESS_LINENO(n)
+    #define YY_LINENO_REWIND_TO(ptr)
     
 /* Return all but the first "n" matched characters back to the input stream. */
@@ -347,4 +356,5 @@
 extern char *yytext;
 #define yytext_ptr yytext
+
 static yyconst flex_int16_t yy_nxt[][128] =
     {
@@ -564,5 +574,5 @@
       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
-      -12,   23,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
+      -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
@@ -579,11 +589,11 @@
       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
-      -13,  -13,  -13,  -13,  -13,  -13,   24,  -13,   25,   25,
-       25,   25,   25,   25,   25,   25,   25,   25,  -13,  -13,
-      -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,   26,
+      -13,  -13,  -13,  -13,  -13,  -13,   23,  -13,   24,   24,
+       24,   24,   24,   24,   24,   24,   24,   24,  -13,  -13,
+      -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,   25,
       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
-      -13,   26,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
+      -13,   25,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
 
       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
@@ -598,5 +608,5 @@
       -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
       -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
-      -14,   27,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
+      -14,   26,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
       -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
 
@@ -616,5 +626,5 @@
 
       -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
-      -15,   28,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
+      -15,   27,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
       -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
       -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
@@ -633,5 +643,5 @@
       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
-      -16,   29,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
+      -16,   28,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
@@ -650,12 +660,12 @@
       -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
       -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
-      -17,  -17,  -17,  -17,  -17,   30,   30,   30,   30,   30,
-       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
-       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
-
-       30,  -17,  -17,  -17,  -17,  -17,  -17,   30,   30,   30,
-       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
-       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
-       30,   30,   30,  -17,  -17,  -17,  -17,  -17
+      -17,  -17,  -17,  -17,  -17,   29,   29,   29,   29,   29,
+       29,   29,   29,   29,   29,   29,   29,   29,   29,   29,
+       29,   29,   29,   29,   29,   29,   29,   29,   29,   29,
+
+       29,  -17,  -17,  -17,  -17,  -17,  -17,   29,   29,   29,
+       29,   29,   29,   29,   29,   29,   29,   29,   29,   29,
+       29,   29,   29,   29,   29,   29,   29,   29,   29,   29,
+       29,   29,   29,  -17,  -17,  -17,  -17,  -17
     },
 
@@ -665,14 +675,14 @@
       -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
       -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
-      -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,   31,   31,
-       31,   31,   31,   31,   31,   31,   31,   31,  -18,  -18,
-
-      -18,  -18,  -18,  -18,  -18,   31,   31,   31,   31,   31,
-       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
-       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
-       31,  -18,  -18,  -18,  -18,   31,  -18,   31,   31,   31,
-       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
-       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
-       31,   31,   31,  -18,  -18,  -18,  -18,  -18
+      -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,  -18,  -18,
+
+      -18,  -18,  -18,  -18,  -18,   30,   30,   30,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
+       30,  -18,  -18,  -18,  -18,   30,  -18,   30,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
+       30,   30,   30,  -18,  -18,  -18,  -18,  -18
     },
 
@@ -735,13 +745,13 @@
       -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,
 
-      -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,  -22,  -22,
-      -22,  -22,  -22,  -22,  -22,   32,   32,   32,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,   32,   32,
-       32,  -22,  -22,  -22,  -22,   32,  -22,   32,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,   32,   32,
-       32,   32,   32,  -22,  -22,  -22,  -22,  -22
+      -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,   31,   31,
+       31,   31,   31,   31,   31,   31,   31,   31,  -22,  -22,
+      -22,  -22,  -22,  -22,  -22,   31,   31,   31,   31,   31,
+       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
+       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
+       31,  -22,  -22,  -22,  -22,   31,  -22,   31,   31,   31,
+       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
+       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
+       31,   31,   31,  -22,  -22,  -22,  -22,  -22
     },
 
@@ -749,4 +759,9 @@
         3,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
 
+      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
+      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
+      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
+      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,   32,   32,
+       32,   32,   32,   32,   32,   32,   32,   32,  -23,  -23,
       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
@@ -754,9 +769,4 @@
       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
-      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
-      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
-      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
-      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
-      -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
 
       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
@@ -769,12 +779,12 @@
       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
-      -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,   33,   33,
-       33,   33,   33,   33,   33,   33,   33,   33,  -24,  -24,
+      -24,  -24,  -24,  -24,  -24,  -24,   23,  -24,   24,   24,
+       24,   24,   24,   24,   24,   24,   24,   24,  -24,  -24,
+      -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,   25,
+      -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
+
       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
-
-      -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
-      -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
-      -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
+      -24,   25,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24
@@ -786,12 +796,12 @@
       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
-      -25,  -25,  -25,  -25,  -25,  -25,   24,  -25,   25,   25,
-
-       25,   25,   25,   25,   25,   25,   25,   25,  -25,  -25,
-      -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,   26,
+      -25,  -25,  -25,   33,  -25,   33,  -25,  -25,   34,   34,
+
+       34,   34,   34,   34,   34,   34,   34,   34,  -25,  -25,
       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
-      -25,   26,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
+      -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
+      -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25
@@ -804,6 +814,6 @@
       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
-      -26,  -26,  -26,   34,  -26,   34,  -26,  -26,   35,   35,
-       35,   35,   35,   35,   35,   35,   35,   35,  -26,  -26,
+      -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
+      -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
@@ -856,13 +866,13 @@
 
       -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
-      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29
+      -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,  -29,  -29,
+      -29,  -29,  -29,  -29,  -29,   35,   35,   35,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
+       35,  -29,  -29,  -29,  -29,   35,  -29,   35,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
+       35,   35,   35,  -29,  -29,  -29,  -29,  -29
 
     },
@@ -873,14 +883,14 @@
       -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
       -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
-      -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,  -30,  -30,
-      -30,  -30,  -30,  -30,  -30,   36,   36,   36,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
-       36,  -30,  -30,  -30,  -30,   36,  -30,   36,   36,   36,
-
-       36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
-       36,   36,   36,  -30,  -30,  -30,  -30,  -30
+      -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,  -30,  -30,
+      -30,  -30,  -30,  -30,  -30,   30,   30,   30,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
+       30,  -30,  -30,  -30,  -30,   30,  -30,   30,   30,   30,
+
+       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
+       30,   30,   30,   30,   30,   30,   30,   30,   30,   30,
+       30,   30,   30,  -30,  -30,  -30,  -30,  -30
     },
 
@@ -910,11 +920,11 @@
       -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,   32,   32,
        32,   32,   32,   32,   32,   32,   32,   32,  -32,  -32,
-      -32,  -32,  -32,  -32,  -32,   32,   32,   32,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,   32,   32,
-       32,  -32,  -32,  -32,  -32,   32,  -32,   32,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,   32,   32,
-       32,   32,   32,   32,   32,   32,   32,   32,   32,   32,
-       32,   32,   32,  -32,  -32,  -32,  -32,  -32
+      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,   25,
+      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
+      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
+      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
+      -32,   25,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
+      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
+      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32
     },
 
@@ -925,11 +935,11 @@
       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
-      -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,   33,   33,
-       33,   33,   33,   33,   33,   33,   33,   33,  -33,  -33,
-      -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,   26,
+      -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,   34,   34,
+       34,   34,   34,   34,   34,   34,   34,   34,  -33,  -33,
       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
-      -33,   26,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
+      -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
+      -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
 
       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
@@ -942,6 +952,6 @@
       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
-      -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,   35,   35,
-       35,   35,   35,   35,   35,   35,   35,   35,  -34,  -34,
+      -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,   34,   34,
+       34,   34,   34,   34,   34,   34,   34,   34,  -34,  -34,
       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
@@ -962,29 +972,11 @@
 
        35,   35,   35,   35,   35,   35,   35,   35,  -35,  -35,
-      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
-      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
-      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
-      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
-      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
-      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
-      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35
-    },
-
-    {
-        3,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
-      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
-
-      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
-      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
-      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,  -36,  -36,
-      -36,  -36,  -36,  -36,  -36,   36,   36,   36,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
-       36,  -36,  -36,  -36,  -36,   36,  -36,   36,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
-       36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
-
-       36,   36,   36,  -36,  -36,  -36,  -36,  -36
+      -35,  -35,  -35,  -35,  -35,   35,   35,   35,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
+       35,  -35,  -35,  -35,  -35,   35,  -35,   35,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
+       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
+       35,   35,   35,  -35,  -35,  -35,  -35,  -35
     },
 
@@ -1006,6 +998,6 @@
 	(yy_c_buf_p) = yy_cp;
 
-#define YY_NUM_RULES 20
-#define YY_END_OF_BUFFER 21
+#define YY_NUM_RULES 19
+#define YY_END_OF_BUFFER 20
 /* This struct is not used in this scanner,
    but its presence is necessary. */
@@ -1015,10 +1007,10 @@
 	flex_int32_t yy_nxt;
 	};
-static yyconst flex_int16_t yy_accept[37] =
+static yyconst flex_int16_t yy_accept[36] =
     {   0,
-        0,    0,   21,   20,    1,   20,   17,   18,    8,    6,
-        7,    9,    2,   12,   20,   13,   20,    5,   10,   19,
-        1,    4,   16,    0,    2,    0,   14,   11,   15,    3,
-        5,    4,    2,    0,    2,    3
+        0,    0,   20,   19,    1,   19,   16,   17,    8,    6,
+        7,    9,    2,   12,   19,   13,   19,    5,   10,   18,
+        1,    4,    0,    2,    0,   14,   11,   15,    3,    5,
+        4,    2,    0,    2,    3
     } ;
 
@@ -1026,10 +1018,10 @@
 static char *yy_last_accepting_cpos;
 
-static yyconst yy_state_type yy_NUL_trans[37] =
+static yyconst yy_state_type yy_NUL_trans[36] =
     {   0,
        20,   20,    0,    0,    0,    0,    0,    0,    0,    0,
         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,    0,    0,    0,    0
+        0,    0,    0,    0,    0
     } ;
 
@@ -1061,5 +1053,5 @@
 #include "yacc_parser.hpp"
 
-#line 1064 "lex_parser.cpp"
+#line 1056 "lex_parser.cpp"
 
 #define INITIAL 0
@@ -1142,5 +1134,10 @@
 /* Amount of stuff to slurp up with each read. */
 #ifndef YY_READ_BUF_SIZE
+#ifdef __ia64__
+/* On IA-64, the buffer size is 16k, not 8k */
+#define YY_READ_BUF_SIZE 16384
+#else
 #define YY_READ_BUF_SIZE 8192
+#endif /* __ia64__ */
 #endif
 
@@ -1227,9 +1224,4 @@
 	register int yy_act;
     
-#line 29 "lex_parser.lex"
-
-
-#line 1233 "lex_parser.cpp"
-
 	if ( !(yy_init) )
 		{
@@ -1257,4 +1249,10 @@
 		yy_load_buffer_state( );
 		}
+
+	{
+#line 29 "lex_parser.lex"
+
+
+#line 1257 "lex_parser.cpp"
 
 	while ( 1 )		/* loops until end-of-file is reached */
@@ -1390,28 +1388,23 @@
 case 16:
 YY_RULE_SETUP
-#line 67 "lex_parser.lex"
-return NE;
+#line 68 "lex_parser.lex"
+return LEFT_PARENTHESIS;
 	YY_BREAK
 case 17:
 YY_RULE_SETUP
 #line 69 "lex_parser.lex"
-return LEFT_PARENTHESIS;
+return RIGHT_PARENTHESIS;
 	YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 70 "lex_parser.lex"
-return RIGHT_PARENTHESIS;
+#line 71 "lex_parser.lex"
+return END;
 	YY_BREAK
 case 19:
 YY_RULE_SETUP
 #line 72 "lex_parser.lex"
-return END;
-	YY_BREAK
-case 20:
-YY_RULE_SETUP
-#line 73 "lex_parser.lex"
 ECHO;
 	YY_BREAK
-#line 1416 "lex_parser.cpp"
+#line 1409 "lex_parser.cpp"
 case YY_STATE_EOF(INITIAL):
 	yyterminate();
@@ -1544,4 +1537,5 @@
 	} /* end of action switch */
 		} /* end of scanning one token */
+	} /* end of user's declarations */
 } /* end of yylex */
 
@@ -2402,3 +2396,3 @@
 #define YYTABLES_NAME "yytables"
 
-#line 73 "lex_parser.lex"
+#line 71 "lex_parser.lex"
