WebCore/generated/CSSGrammar.cpp
changeset 0 4f2f89ce4247
child 2 303757a437d3
equal deleted inserted replaced
-1:000000000000 0:4f2f89ce4247
       
     1 
       
     2 /* A Bison parser, made by GNU Bison 2.4.1.  */
       
     3 
       
     4 /* Skeleton implementation for Bison's Yacc-like parsers in C
       
     5    
       
     6       Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
       
     7    Free Software Foundation, Inc.
       
     8    
       
     9    This program is free software: you can redistribute it and/or modify
       
    10    it under the terms of the GNU General Public License as published by
       
    11    the Free Software Foundation, either version 3 of the License, or
       
    12    (at your option) any later version.
       
    13    
       
    14    This program is distributed in the hope that it will be useful,
       
    15    but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
       
    17    GNU General Public License for more details.
       
    18    
       
    19    You should have received a copy of the GNU General Public License
       
    20    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
       
    21 
       
    22 /* As a special exception, you may create a larger work that contains
       
    23    part or all of the Bison parser skeleton and distribute that work
       
    24    under terms of your choice, so long as that work isn't itself a
       
    25    parser generator using the skeleton or a modified version thereof
       
    26    as a parser skeleton.  Alternatively, if you modify or redistribute
       
    27    the parser skeleton itself, you may (at your option) remove this
       
    28    special exception, which will cause the skeleton and the resulting
       
    29    Bison output files to be licensed under the GNU General Public
       
    30    License without this special exception.
       
    31    
       
    32    This special exception was added by the Free Software Foundation in
       
    33    version 2.2 of Bison.  */
       
    34 
       
    35 /* C LALR(1) parser skeleton written by Richard Stallman, by
       
    36    simplifying the original so-called "semantic" parser.  */
       
    37 
       
    38 /* All symbols defined below should begin with yy or YY, to avoid
       
    39    infringing on user name space.  This should be done even for local
       
    40    variables, as they might otherwise be expanded by user macros.
       
    41    There are some unavoidable exceptions within include files to
       
    42    define necessary library symbols; they are noted "INFRINGES ON
       
    43    USER NAME SPACE" below.  */
       
    44 
       
    45 /* Identify Bison output.  */
       
    46 #define YYBISON 1
       
    47 
       
    48 /* Bison version.  */
       
    49 #define YYBISON_VERSION "2.4.1"
       
    50 
       
    51 /* Skeleton name.  */
       
    52 #define YYSKELETON_NAME "yacc.c"
       
    53 
       
    54 /* Pure parsers.  */
       
    55 #define YYPURE 1
       
    56 
       
    57 /* Push parsers.  */
       
    58 #define YYPUSH 0
       
    59 
       
    60 /* Pull parsers.  */
       
    61 #define YYPULL 1
       
    62 
       
    63 /* Using locations.  */
       
    64 #define YYLSP_NEEDED 0
       
    65 
       
    66 /* Substitute the variable and function names.  */
       
    67 #define yyparse         cssyyparse
       
    68 #define yylex           cssyylex
       
    69 #define yyerror         cssyyerror
       
    70 #define yylval          cssyylval
       
    71 #define yychar          cssyychar
       
    72 #define yydebug         cssyydebug
       
    73 #define yynerrs         cssyynerrs
       
    74 
       
    75 
       
    76 /* Copy the first part of user declarations.  */
       
    77 
       
    78 /* Line 189 of yacc.c  */
       
    79 #line 1 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
    80 
       
    81 
       
    82 /*
       
    83  *  Copyright (C) 2002-2003 Lars Knoll (knoll@kde.org)
       
    84  *  Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
       
    85  *  Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com)
       
    86  *  Copyright (C) 2008 Eric Seidel <eric@webkit.org>
       
    87  *
       
    88  *  This library is free software; you can redistribute it and/or
       
    89  *  modify it under the terms of the GNU Lesser General Public
       
    90  *  License as published by the Free Software Foundation; either
       
    91  *  version 2 of the License, or (at your option) any later version.
       
    92  *
       
    93  *  This library is distributed in the hope that it will be useful,
       
    94  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    95  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
       
    96  *  Lesser General Public License for more details.
       
    97  *
       
    98  *  You should have received a copy of the GNU Lesser General Public
       
    99  *  License along with this library; if not, write to the Free Software
       
   100  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
       
   101  *
       
   102  */
       
   103 
       
   104 #include "config.h"
       
   105 
       
   106 #include "CSSMediaRule.h"
       
   107 #include "CSSParser.h"
       
   108 #include "CSSPrimitiveValue.h"
       
   109 #include "CSSPropertyNames.h"
       
   110 #include "CSSRuleList.h"
       
   111 #include "CSSSelector.h"
       
   112 #include "CSSStyleSheet.h"
       
   113 #include "Document.h"
       
   114 #include "HTMLNames.h"
       
   115 #include "MediaList.h"
       
   116 #include "WebKitCSSKeyframeRule.h"
       
   117 #include "WebKitCSSKeyframesRule.h"
       
   118 #include <wtf/FastMalloc.h>
       
   119 #include <stdlib.h>
       
   120 #include <string.h>
       
   121 
       
   122 using namespace WebCore;
       
   123 using namespace HTMLNames;
       
   124 
       
   125 #define YYMALLOC fastMalloc
       
   126 #define YYFREE fastFree
       
   127 
       
   128 #define YYENABLE_NLS 0
       
   129 #define YYLTYPE_IS_TRIVIAL 1
       
   130 #define YYMAXDEPTH 10000
       
   131 #define YYDEBUG 0
       
   132 
       
   133 // FIXME: Replace with %parse-param { CSSParser* parser } once we can depend on bison 2.x
       
   134 #define YYPARSE_PARAM parser
       
   135 #define YYLEX_PARAM parser
       
   136 
       
   137 
       
   138 
       
   139 /* Line 189 of yacc.c  */
       
   140 #line 141 "generated/CSSGrammar.tab.c"
       
   141 
       
   142 /* Enabling traces.  */
       
   143 #ifndef YYDEBUG
       
   144 # define YYDEBUG 0
       
   145 #endif
       
   146 
       
   147 /* Enabling verbose error messages.  */
       
   148 #ifdef YYERROR_VERBOSE
       
   149 # undef YYERROR_VERBOSE
       
   150 # define YYERROR_VERBOSE 1
       
   151 #else
       
   152 # define YYERROR_VERBOSE 0
       
   153 #endif
       
   154 
       
   155 /* Enabling the token table.  */
       
   156 #ifndef YYTOKEN_TABLE
       
   157 # define YYTOKEN_TABLE 0
       
   158 #endif
       
   159 
       
   160 
       
   161 /* Tokens.  */
       
   162 #ifndef YYTOKENTYPE
       
   163 # define YYTOKENTYPE
       
   164    /* Put the tokens into the symbol table, so that GDB and other debuggers
       
   165       know about them.  */
       
   166    enum yytokentype {
       
   167      TOKEN_EOF = 0,
       
   168      LOWEST_PREC = 258,
       
   169      UNIMPORTANT_TOK = 259,
       
   170      WHITESPACE = 260,
       
   171      SGML_CD = 261,
       
   172      INCLUDES = 262,
       
   173      DASHMATCH = 263,
       
   174      BEGINSWITH = 264,
       
   175      ENDSWITH = 265,
       
   176      CONTAINS = 266,
       
   177      STRING = 267,
       
   178      IDENT = 268,
       
   179      NTH = 269,
       
   180      HEX = 270,
       
   181      IDSEL = 271,
       
   182      IMPORT_SYM = 272,
       
   183      PAGE_SYM = 273,
       
   184      MEDIA_SYM = 274,
       
   185      FONT_FACE_SYM = 275,
       
   186      CHARSET_SYM = 276,
       
   187      NAMESPACE_SYM = 277,
       
   188      WEBKIT_RULE_SYM = 278,
       
   189      WEBKIT_DECLS_SYM = 279,
       
   190      WEBKIT_KEYFRAME_RULE_SYM = 280,
       
   191      WEBKIT_KEYFRAMES_SYM = 281,
       
   192      WEBKIT_VALUE_SYM = 282,
       
   193      WEBKIT_MEDIAQUERY_SYM = 283,
       
   194      WEBKIT_SELECTOR_SYM = 284,
       
   195      WEBKIT_VARIABLES_SYM = 285,
       
   196      WEBKIT_DEFINE_SYM = 286,
       
   197      VARIABLES_FOR = 287,
       
   198      WEBKIT_VARIABLES_DECLS_SYM = 288,
       
   199      TOPLEFTCORNER_SYM = 289,
       
   200      TOPLEFT_SYM = 290,
       
   201      TOPCENTER_SYM = 291,
       
   202      TOPRIGHT_SYM = 292,
       
   203      TOPRIGHTCORNER_SYM = 293,
       
   204      BOTTOMLEFTCORNER_SYM = 294,
       
   205      BOTTOMLEFT_SYM = 295,
       
   206      BOTTOMCENTER_SYM = 296,
       
   207      BOTTOMRIGHT_SYM = 297,
       
   208      BOTTOMRIGHTCORNER_SYM = 298,
       
   209      LEFTTOP_SYM = 299,
       
   210      LEFTMIDDLE_SYM = 300,
       
   211      LEFTBOTTOM_SYM = 301,
       
   212      RIGHTTOP_SYM = 302,
       
   213      RIGHTMIDDLE_SYM = 303,
       
   214      RIGHTBOTTOM_SYM = 304,
       
   215      ATKEYWORD = 305,
       
   216      IMPORTANT_SYM = 306,
       
   217      MEDIA_ONLY = 307,
       
   218      MEDIA_NOT = 308,
       
   219      MEDIA_AND = 309,
       
   220      REMS = 310,
       
   221      QEMS = 311,
       
   222      EMS = 312,
       
   223      EXS = 313,
       
   224      PXS = 314,
       
   225      CMS = 315,
       
   226      MMS = 316,
       
   227      INS = 317,
       
   228      PTS = 318,
       
   229      PCS = 319,
       
   230      DEGS = 320,
       
   231      RADS = 321,
       
   232      GRADS = 322,
       
   233      TURNS = 323,
       
   234      MSECS = 324,
       
   235      SECS = 325,
       
   236      HERZ = 326,
       
   237      KHERZ = 327,
       
   238      DIMEN = 328,
       
   239      PERCENTAGE = 329,
       
   240      FLOATTOKEN = 330,
       
   241      INTEGER = 331,
       
   242      URI = 332,
       
   243      FUNCTION = 333,
       
   244      NOTFUNCTION = 334,
       
   245      UNICODERANGE = 335,
       
   246      VARCALL = 336
       
   247    };
       
   248 #endif
       
   249 
       
   250 
       
   251 
       
   252 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
       
   253 typedef union YYSTYPE
       
   254 {
       
   255 
       
   256 /* Line 214 of yacc.c  */
       
   257 #line 62 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
   258 
       
   259     bool boolean;
       
   260     char character;
       
   261     int integer;
       
   262     double number;
       
   263     CSSParserString string;
       
   264 
       
   265     CSSRule* rule;
       
   266     CSSRuleList* ruleList;
       
   267     CSSSelector* selector;
       
   268     Vector<CSSSelector*>* selectorList;
       
   269     CSSSelector::MarginBoxType marginBox;
       
   270     CSSSelector::Relation relation;
       
   271     MediaList* mediaList;
       
   272     MediaQuery* mediaQuery;
       
   273     MediaQuery::Restrictor mediaQueryRestrictor;
       
   274     MediaQueryExp* mediaQueryExp;
       
   275     CSSParserValue value;
       
   276     CSSParserValueList* valueList;
       
   277     Vector<MediaQueryExp*>* mediaQueryExpList;
       
   278     WebKitCSSKeyframeRule* keyframeRule;
       
   279     WebKitCSSKeyframesRule* keyframesRule;
       
   280     float val;
       
   281 
       
   282 
       
   283 
       
   284 /* Line 214 of yacc.c  */
       
   285 #line 286 "generated/CSSGrammar.tab.c"
       
   286 } YYSTYPE;
       
   287 # define YYSTYPE_IS_TRIVIAL 1
       
   288 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
       
   289 # define YYSTYPE_IS_DECLARED 1
       
   290 #endif
       
   291 
       
   292 
       
   293 /* Copy the second part of user declarations.  */
       
   294 
       
   295 /* Line 264 of yacc.c  */
       
   296 #line 87 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
   297 
       
   298 
       
   299 static inline int cssyyerror(const char*)
       
   300 {
       
   301     return 1;
       
   302 }
       
   303 
       
   304 static int cssyylex(YYSTYPE* yylval, void* parser)
       
   305 {
       
   306     return static_cast<CSSParser*>(parser)->lex(yylval);
       
   307 }
       
   308 
       
   309 
       
   310 
       
   311 /* Line 264 of yacc.c  */
       
   312 #line 313 "generated/CSSGrammar.tab.c"
       
   313 
       
   314 #ifdef short
       
   315 # undef short
       
   316 #endif
       
   317 
       
   318 #ifdef YYTYPE_UINT8
       
   319 typedef YYTYPE_UINT8 yytype_uint8;
       
   320 #else
       
   321 typedef unsigned char yytype_uint8;
       
   322 #endif
       
   323 
       
   324 #ifdef YYTYPE_INT8
       
   325 typedef YYTYPE_INT8 yytype_int8;
       
   326 #elif (defined __STDC__ || defined __C99__FUNC__ \
       
   327      || defined __cplusplus || defined _MSC_VER)
       
   328 typedef signed char yytype_int8;
       
   329 #else
       
   330 typedef short int yytype_int8;
       
   331 #endif
       
   332 
       
   333 #ifdef YYTYPE_UINT16
       
   334 typedef YYTYPE_UINT16 yytype_uint16;
       
   335 #else
       
   336 typedef unsigned short int yytype_uint16;
       
   337 #endif
       
   338 
       
   339 #ifdef YYTYPE_INT16
       
   340 typedef YYTYPE_INT16 yytype_int16;
       
   341 #else
       
   342 typedef short int yytype_int16;
       
   343 #endif
       
   344 
       
   345 #ifndef YYSIZE_T
       
   346 # ifdef __SIZE_TYPE__
       
   347 #  define YYSIZE_T __SIZE_TYPE__
       
   348 # elif defined size_t
       
   349 #  define YYSIZE_T size_t
       
   350 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
       
   351      || defined __cplusplus || defined _MSC_VER)
       
   352 #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
       
   353 #  define YYSIZE_T size_t
       
   354 # else
       
   355 #  define YYSIZE_T unsigned int
       
   356 # endif
       
   357 #endif
       
   358 
       
   359 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
       
   360 
       
   361 #ifndef YY_
       
   362 # if YYENABLE_NLS
       
   363 #  if ENABLE_NLS
       
   364 #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
       
   365 #   define YY_(msgid) dgettext ("bison-runtime", msgid)
       
   366 #  endif
       
   367 # endif
       
   368 # ifndef YY_
       
   369 #  define YY_(msgid) msgid
       
   370 # endif
       
   371 #endif
       
   372 
       
   373 /* Suppress unused-variable warnings by "using" E.  */
       
   374 #if ! defined lint || defined __GNUC__
       
   375 # define YYUSE(e) ((void) (e))
       
   376 #else
       
   377 # define YYUSE(e) /* empty */
       
   378 #endif
       
   379 
       
   380 /* Identity function, used to suppress warnings about constant conditions.  */
       
   381 #ifndef lint
       
   382 # define YYID(n) (n)
       
   383 #else
       
   384 #if (defined __STDC__ || defined __C99__FUNC__ \
       
   385      || defined __cplusplus || defined _MSC_VER)
       
   386 static int
       
   387 YYID (int yyi)
       
   388 #else
       
   389 static int
       
   390 YYID (yyi)
       
   391     int yyi;
       
   392 #endif
       
   393 {
       
   394   return yyi;
       
   395 }
       
   396 #endif
       
   397 
       
   398 #if ! defined yyoverflow || YYERROR_VERBOSE
       
   399 
       
   400 /* The parser invokes alloca or malloc; define the necessary symbols.  */
       
   401 
       
   402 # ifdef YYSTACK_USE_ALLOCA
       
   403 #  if YYSTACK_USE_ALLOCA
       
   404 #   ifdef __GNUC__
       
   405 #    define YYSTACK_ALLOC __builtin_alloca
       
   406 #   elif defined __BUILTIN_VA_ARG_INCR
       
   407 #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
       
   408 #   elif defined _AIX
       
   409 #    define YYSTACK_ALLOC __alloca
       
   410 #   elif defined _MSC_VER
       
   411 #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
       
   412 #    define alloca _alloca
       
   413 #   else
       
   414 #    define YYSTACK_ALLOC alloca
       
   415 #    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
       
   416      || defined __cplusplus || defined _MSC_VER)
       
   417 #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
       
   418 #     ifndef _STDLIB_H
       
   419 #      define _STDLIB_H 1
       
   420 #     endif
       
   421 #    endif
       
   422 #   endif
       
   423 #  endif
       
   424 # endif
       
   425 
       
   426 # ifdef YYSTACK_ALLOC
       
   427    /* Pacify GCC's `empty if-body' warning.  */
       
   428 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
       
   429 #  ifndef YYSTACK_ALLOC_MAXIMUM
       
   430     /* The OS might guarantee only one guard page at the bottom of the stack,
       
   431        and a page size can be as small as 4096 bytes.  So we cannot safely
       
   432        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
       
   433        to allow for a few compiler-allocated temporary stack slots.  */
       
   434 #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
       
   435 #  endif
       
   436 # else
       
   437 #  define YYSTACK_ALLOC YYMALLOC
       
   438 #  define YYSTACK_FREE YYFREE
       
   439 #  ifndef YYSTACK_ALLOC_MAXIMUM
       
   440 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
       
   441 #  endif
       
   442 #  if (defined __cplusplus && ! defined _STDLIB_H \
       
   443        && ! ((defined YYMALLOC || defined malloc) \
       
   444 	     && (defined YYFREE || defined free)))
       
   445 #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
       
   446 #   ifndef _STDLIB_H
       
   447 #    define _STDLIB_H 1
       
   448 #   endif
       
   449 #  endif
       
   450 #  ifndef YYMALLOC
       
   451 #   define YYMALLOC malloc
       
   452 #   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
       
   453      || defined __cplusplus || defined _MSC_VER)
       
   454 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
       
   455 #   endif
       
   456 #  endif
       
   457 #  ifndef YYFREE
       
   458 #   define YYFREE free
       
   459 #   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
       
   460      || defined __cplusplus || defined _MSC_VER)
       
   461 void free (void *); /* INFRINGES ON USER NAME SPACE */
       
   462 #   endif
       
   463 #  endif
       
   464 # endif
       
   465 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
       
   466 
       
   467 
       
   468 #if (! defined yyoverflow \
       
   469      && (! defined __cplusplus \
       
   470 	 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
       
   471 
       
   472 /* A type that is properly aligned for any stack member.  */
       
   473 union yyalloc
       
   474 {
       
   475   yytype_int16 yyss_alloc;
       
   476   YYSTYPE yyvs_alloc;
       
   477 };
       
   478 
       
   479 /* The size of the maximum gap between one aligned stack and the next.  */
       
   480 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
       
   481 
       
   482 /* The size of an array large to enough to hold all stacks, each with
       
   483    N elements.  */
       
   484 # define YYSTACK_BYTES(N) \
       
   485      ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
       
   486       + YYSTACK_GAP_MAXIMUM)
       
   487 
       
   488 /* Copy COUNT objects from FROM to TO.  The source and destination do
       
   489    not overlap.  */
       
   490 # ifndef YYCOPY
       
   491 #  if defined __GNUC__ && 1 < __GNUC__
       
   492 #   define YYCOPY(To, From, Count) \
       
   493       __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
       
   494 #  else
       
   495 #   define YYCOPY(To, From, Count)		\
       
   496       do					\
       
   497 	{					\
       
   498 	  YYSIZE_T yyi;				\
       
   499 	  for (yyi = 0; yyi < (Count); yyi++)	\
       
   500 	    (To)[yyi] = (From)[yyi];		\
       
   501 	}					\
       
   502       while (YYID (0))
       
   503 #  endif
       
   504 # endif
       
   505 
       
   506 /* Relocate STACK from its old location to the new one.  The
       
   507    local variables YYSIZE and YYSTACKSIZE give the old and new number of
       
   508    elements in the stack, and YYPTR gives the new location of the
       
   509    stack.  Advance YYPTR to a properly aligned location for the next
       
   510    stack.  */
       
   511 # define YYSTACK_RELOCATE(Stack_alloc, Stack)				\
       
   512     do									\
       
   513       {									\
       
   514 	YYSIZE_T yynewbytes;						\
       
   515 	YYCOPY (&yyptr->Stack_alloc, Stack, yysize);			\
       
   516 	Stack = &yyptr->Stack_alloc;					\
       
   517 	yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
       
   518 	yyptr += yynewbytes / sizeof (*yyptr);				\
       
   519       }									\
       
   520     while (YYID (0))
       
   521 
       
   522 #endif
       
   523 
       
   524 /* YYFINAL -- State number of the termination state.  */
       
   525 #define YYFINAL  24
       
   526 /* YYLAST -- Last index in YYTABLE.  */
       
   527 #define YYLAST   1670
       
   528 
       
   529 /* YYNTOKENS -- Number of terminals.  */
       
   530 #define YYNTOKENS  102
       
   531 /* YYNNTS -- Number of nonterminals.  */
       
   532 #define YYNNTS  90
       
   533 /* YYNRULES -- Number of rules.  */
       
   534 #define YYNRULES  291
       
   535 /* YYNRULES -- Number of states.  */
       
   536 #define YYNSTATES  551
       
   537 
       
   538 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
       
   539 #define YYUNDEFTOK  2
       
   540 #define YYMAXUTOK   336
       
   541 
       
   542 #define YYTRANSLATE(YYX)						\
       
   543   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
       
   544 
       
   545 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
       
   546 static const yytype_uint8 yytranslate[] =
       
   547 {
       
   548        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   549        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   550        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   551        2,     2,     2,     2,     2,   100,     2,   101,     2,     2,
       
   552       90,    91,    20,    93,    92,    96,    18,    99,     2,     2,
       
   553        2,     2,     2,     2,     2,     2,     2,     2,    17,    89,
       
   554        2,    98,    95,     2,     2,     2,     2,     2,     2,     2,
       
   555        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   556        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   557        2,    19,     2,    97,     2,     2,     2,     2,     2,     2,
       
   558        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   559        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   560        2,     2,     2,    87,    21,    88,    94,     2,     2,     2,
       
   561        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   562        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   563        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   564        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   565        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   566        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   567        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   568        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   569        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   570        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   571        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   572        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   573        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
       
   574        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
       
   575       15,    16,    22,    23,    24,    25,    26,    27,    28,    29,
       
   576       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
       
   577       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
       
   578       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
       
   579       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
       
   580       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
       
   581       80,    81,    82,    83,    84,    85,    86
       
   582 };
       
   583 
       
   584 #if YYDEBUG
       
   585 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
       
   586    YYRHS.  */
       
   587 static const yytype_uint16 yyprhs[] =
       
   588 {
       
   589        0,     0,     3,     8,    11,    14,    17,    20,    23,    26,
       
   590       29,    36,    43,    49,    55,    61,    67,    73,    74,    77,
       
   591       78,    81,    84,    85,    87,    89,    91,    97,   101,   105,
       
   592      106,   110,   112,   114,   116,   118,   120,   122,   124,   126,
       
   593      128,   130,   132,   133,   137,   139,   141,   143,   145,   147,
       
   594      149,   151,   153,   155,   157,   159,   166,   173,   177,   181,
       
   595      189,   197,   198,   202,   204,   207,   209,   213,   215,   218,
       
   596      222,   227,   231,   237,   242,   247,   254,   259,   267,   270,
       
   597      276,   280,   285,   288,   295,   302,   306,   310,   311,   314,
       
   598      316,   318,   321,   322,   327,   335,   337,   343,   344,   348,
       
   599      349,   351,   353,   355,   360,   361,   363,   365,   370,   373,
       
   600      381,   388,   391,   400,   402,   404,   405,   409,   416,   418,
       
   601      424,   426,   428,   437,   441,   445,   447,   450,   452,   453,
       
   602      455,   460,   461,   469,   471,   473,   475,   477,   479,   481,
       
   603      483,   485,   487,   489,   491,   493,   495,   497,   499,   501,
       
   604      509,   513,   517,   520,   523,   526,   528,   529,   531,   533,
       
   605      539,   541,   546,   549,   552,   554,   556,   559,   563,   566,
       
   606      568,   571,   574,   576,   579,   581,   584,   588,   591,   593,
       
   607      595,   597,   600,   603,   605,   607,   609,   611,   613,   616,
       
   608      619,   624,   633,   639,   649,   651,   653,   655,   657,   659,
       
   609      661,   663,   665,   668,   671,   675,   682,   690,   697,   704,
       
   610      706,   709,   711,   715,   717,   720,   723,   727,   731,   736,
       
   611      740,   746,   751,   756,   763,   769,   772,   775,   782,   789,
       
   612      792,   796,   801,   804,   807,   810,   811,   813,   817,   820,
       
   613      824,   827,   830,   833,   834,   836,   839,   842,   845,   848,
       
   614      852,   855,   858,   860,   863,   865,   868,   871,   874,   877,
       
   615      880,   883,   886,   889,   892,   895,   898,   901,   904,   907,
       
   616      910,   913,   916,   919,   922,   925,   928,   931,   934,   936,
       
   617      942,   946,   949,   952,   954,   957,   961,   965,   968,   974,
       
   618      978,   980
       
   619 };
       
   620 
       
   621 /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
       
   622 static const yytype_int16 yyrhs[] =
       
   623 {
       
   624      103,     0,    -1,   111,   113,   112,   116,    -1,   104,   111,
       
   625       -1,   106,   111,    -1,   108,   111,    -1,   109,   111,    -1,
       
   626      110,   111,    -1,   107,   111,    -1,   105,   111,    -1,    28,
       
   627       87,   111,   117,   111,    88,    -1,    30,    87,   111,   146,
       
   628      111,    88,    -1,    29,    87,   111,   175,    88,    -1,    38,
       
   629       87,   111,   125,    88,    -1,    32,    87,   111,   180,    88,
       
   630       -1,    33,     5,   111,   138,    88,    -1,    34,    87,   111,
       
   631      160,    88,    -1,    -1,   111,     5,    -1,    -1,   112,     6,
       
   632       -1,   112,     5,    -1,    -1,   115,    -1,    88,    -1,     0,
       
   633       -1,    26,   111,    12,   111,    89,    -1,    26,     1,   190,
       
   634       -1,    26,     1,    89,    -1,    -1,   116,   118,   112,    -1,
       
   635      159,    -1,   141,    -1,   149,    -1,   155,    -1,   143,    -1,
       
   636      129,    -1,   122,    -1,   123,    -1,   117,    -1,   189,    -1,
       
   637      188,    -1,    -1,   119,   121,   112,    -1,   159,    -1,   149,
       
   638       -1,   155,    -1,   143,    -1,   120,    -1,   189,    -1,   188,
       
   639       -1,   129,    -1,   122,    -1,   123,    -1,   141,    -1,    22,
       
   640      111,   131,   111,   139,    89,    -1,    22,   111,   131,   111,
       
   641      139,   190,    -1,    22,     1,    89,    -1,    22,     1,   190,
       
   642       -1,    35,   111,   139,    87,   111,   125,    88,    -1,    36,
       
   643      111,   124,    87,   111,   125,    88,    -1,    -1,    37,     5,
       
   644      140,    -1,   127,    -1,   126,   127,    -1,   126,    -1,     1,
       
   645      191,     1,    -1,     1,    -1,   126,     1,    -1,   127,    89,
       
   646      111,    -1,   127,   191,    89,   111,    -1,     1,    89,   111,
       
   647       -1,     1,   191,     1,    89,   111,    -1,   126,   127,    89,
       
   648      111,    -1,   126,     1,    89,   111,    -1,   126,     1,   191,
       
   649        1,    89,   111,    -1,   128,    17,   111,   180,    -1,   128,
       
   650      111,    87,   111,   175,    88,   111,    -1,   128,     1,    -1,
       
   651      128,    17,   111,     1,   180,    -1,   128,    17,   111,    -1,
       
   652      128,    17,   111,     1,    -1,    13,   111,    -1,    27,   111,
       
   653      130,   131,   111,    89,    -1,    27,   111,   130,   131,   111,
       
   654      190,    -1,    27,     1,   190,    -1,    27,     1,    89,    -1,
       
   655       -1,    13,   111,    -1,    12,    -1,    82,    -1,    13,   111,
       
   656       -1,    -1,    17,   111,   180,   111,    -1,    90,   111,   132,
       
   657      111,   133,    91,   111,    -1,   134,    -1,   135,   111,    59,
       
   658      111,   134,    -1,    -1,    59,   111,   135,    -1,    -1,    57,
       
   659       -1,    58,    -1,   135,    -1,   137,   111,   142,   136,    -1,
       
   660       -1,   140,    -1,   138,    -1,   140,    92,   111,   138,    -1,
       
   661      140,     1,    -1,    24,   111,   140,    87,   111,   119,   187,
       
   662       -1,    24,   111,    87,   111,   119,   187,    -1,    13,   111,
       
   663       -1,    31,   111,   144,   111,    87,   111,   145,    88,    -1,
       
   664       13,    -1,    12,    -1,    -1,   145,   146,   111,    -1,   147,
       
   665      111,    87,   111,   175,    88,    -1,   148,    -1,   147,   111,
       
   666       92,   111,   148,    -1,    79,    -1,    13,    -1,    23,   111,
       
   667      150,   111,    87,   111,   151,   114,    -1,    23,     1,   190,
       
   668       -1,    23,     1,    89,    -1,    13,    -1,    13,   173,    -1,
       
   669      173,    -1,    -1,   175,    -1,   151,   152,   111,   175,    -1,
       
   670       -1,   154,   153,   111,    87,   111,   175,   114,    -1,    39,
       
   671       -1,    40,    -1,    41,    -1,    42,    -1,    43,    -1,    44,
       
   672       -1,    45,    -1,    46,    -1,    47,    -1,    48,    -1,    49,
       
   673       -1,    50,    -1,    51,    -1,    52,    -1,    53,    -1,    54,
       
   674       -1,    25,   111,    87,   111,   175,    88,   111,    -1,    25,
       
   675        1,   190,    -1,    25,     1,    89,    -1,    93,   111,    -1,
       
   676       94,   111,    -1,    95,   111,    -1,   158,    -1,    -1,    96,
       
   677       -1,    93,    -1,   160,    87,   111,   175,   114,    -1,   162,
       
   678       -1,   160,    92,   111,   162,    -1,   160,     1,    -1,   162,
       
   679        5,    -1,   164,    -1,   161,    -1,   161,   164,    -1,   162,
       
   680      156,   164,    -1,   162,     1,    -1,    21,    -1,    20,    21,
       
   681       -1,    13,    21,    -1,   165,    -1,   165,   166,    -1,   166,
       
   682       -1,   163,   165,    -1,   163,   165,   166,    -1,   163,   166,
       
   683       -1,    13,    -1,    20,    -1,   167,    -1,   166,   167,    -1,
       
   684      166,     1,    -1,    16,    -1,    15,    -1,   168,    -1,   170,
       
   685       -1,   174,    -1,    18,    13,    -1,    13,   111,    -1,    19,
       
   686      111,   169,    97,    -1,    19,   111,   169,   171,   111,   172,
       
   687      111,    97,    -1,    19,   111,   163,   169,    97,    -1,    19,
       
   688      111,   163,   169,   171,   111,   172,   111,    97,    -1,    98,
       
   689       -1,     7,    -1,     8,    -1,     9,    -1,    10,    -1,    11,
       
   690       -1,    13,    -1,    12,    -1,    17,    13,    -1,    17,    13,
       
   691       -1,    17,    17,    13,    -1,    17,    83,   111,    14,   111,
       
   692       91,    -1,    17,    83,   111,   157,    81,   111,    91,    -1,
       
   693       17,    83,   111,    13,   111,    91,    -1,    17,    84,   111,
       
   694      164,   111,    91,    -1,   177,    -1,   176,   177,    -1,   176,
       
   695       -1,     1,   191,     1,    -1,     1,    -1,   176,     1,    -1,
       
   696      176,   191,    -1,   177,    89,   111,    -1,   177,   191,   111,
       
   697       -1,   177,   191,    89,   111,    -1,     1,    89,   111,    -1,
       
   698        1,   191,     1,    89,   111,    -1,   176,   177,    89,   111,
       
   699       -1,   176,     1,    89,   111,    -1,   176,     1,   191,     1,
       
   700       89,   111,    -1,   178,    17,   111,   180,   179,    -1,   184,
       
   701      111,    -1,   178,     1,    -1,   178,    17,   111,     1,   180,
       
   702      179,    -1,   178,    17,   111,   180,   179,     1,    -1,    56,
       
   703      111,    -1,   178,    17,   111,    -1,   178,    17,   111,     1,
       
   704       -1,   178,   190,    -1,    13,   111,    -1,    56,   111,    -1,
       
   705       -1,   182,    -1,   180,   181,   182,    -1,   180,   191,    -1,
       
   706      180,   191,     1,    -1,   180,     1,    -1,    99,   111,    -1,
       
   707       92,   111,    -1,    -1,   183,    -1,   158,   183,    -1,    12,
       
   708      111,    -1,    13,   111,    -1,    78,   111,    -1,   158,    78,
       
   709      111,    -1,    82,   111,    -1,    85,   111,    -1,   186,    -1,
       
   710      100,   111,    -1,   185,    -1,   184,   111,    -1,   101,   111,
       
   711       -1,    81,   111,    -1,    80,   111,    -1,    79,   111,    -1,
       
   712       64,   111,    -1,    65,   111,    -1,    66,   111,    -1,    67,
       
   713      111,    -1,    68,   111,    -1,    69,   111,    -1,    70,   111,
       
   714       -1,    71,   111,    -1,    72,   111,    -1,    73,   111,    -1,
       
   715       74,   111,    -1,    75,   111,    -1,    76,   111,    -1,    77,
       
   716      111,    -1,    62,   111,    -1,    61,   111,    -1,    63,   111,
       
   717       -1,    60,   111,    -1,    86,    -1,    83,   111,   180,    91,
       
   718      111,    -1,    83,   111,     1,    -1,    15,   111,    -1,    16,
       
   719      111,    -1,   114,    -1,     1,   114,    -1,    55,     1,   190,
       
   720       -1,    55,     1,    89,    -1,     1,   190,    -1,    87,     1,
       
   721      191,     1,   114,    -1,    87,     1,   114,    -1,   190,    -1,
       
   722      191,     1,   190,    -1
       
   723 };
       
   724 
       
   725 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
       
   726 static const yytype_uint16 yyrline[] =
       
   727 {
       
   728        0,   292,   292,   293,   294,   295,   296,   297,   298,   299,
       
   729      303,   309,   315,   321,   327,   341,   348,   358,   359,   362,
       
   730      364,   365,   368,   370,   375,   376,   380,   386,   388,   392,
       
   731      394,   402,   403,   404,   405,   406,   407,   408,   409,   413,
       
   732      416,   417,   421,   422,   433,   434,   435,   436,   440,   441,
       
   733      442,   443,   444,   445,   446,   451,   454,   457,   460,   466,
       
   734      470,   476,   480,   486,   489,   494,   497,   500,   503,   509,
       
   735      512,   515,   518,   521,   526,   529,   535,   539,   543,   547,
       
   736      551,   556,   563,   569,   573,   576,   579,   585,   586,   590,
       
   737      591,   595,   601,   604,   610,   617,   622,   629,   632,   638,
       
   738      641,   644,   650,   655,   663,   666,   670,   675,   680,   686,
       
   739      689,   695,   701,   708,   709,   713,   714,   722,   728,   733,
       
   740      742,   743,   756,   768,   771,   777,   783,   791,   796,   804,
       
   741      805,   809,   809,   817,   820,   823,   826,   829,   832,   835,
       
   742      838,   841,   844,   847,   850,   853,   856,   859,   862,   868,
       
   743      872,   875,   881,   882,   883,   887,   888,   892,   893,   897,
       
   744      904,   914,   923,   929,   935,   938,   942,   958,   978,   984,
       
   745      985,   986,   990,   995,  1002,  1008,  1018,  1030,  1043,  1051,
       
   746     1059,  1062,  1075,  1081,  1089,  1101,  1102,  1103,  1107,  1118,
       
   747     1129,  1134,  1140,  1148,  1160,  1163,  1166,  1169,  1172,  1175,
       
   748     1181,  1182,  1186,  1197,  1231,  1251,  1269,  1287,  1306,  1321,
       
   749     1324,  1329,  1332,  1335,  1338,  1341,  1347,  1350,  1353,  1356,
       
   750     1359,  1362,  1367,  1370,  1376,  1390,  1402,  1406,  1413,  1418,
       
   751     1423,  1428,  1433,  1440,  1446,  1447,  1451,  1456,  1470,  1473,
       
   752     1476,  1482,  1485,  1488,  1494,  1495,  1496,  1497,  1503,  1504,
       
   753     1505,  1506,  1507,  1508,  1510,  1513,  1516,  1522,  1523,  1524,
       
   754     1525,  1526,  1527,  1528,  1529,  1530,  1531,  1532,  1533,  1534,
       
   755     1535,  1536,  1537,  1538,  1539,  1540,  1541,  1542,  1553,  1561,
       
   756     1570,  1586,  1587,  1594,  1597,  1603,  1606,  1612,  1630,  1633,
       
   757     1639,  1640
       
   758 };
       
   759 #endif
       
   760 
       
   761 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
       
   762 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
       
   763    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
       
   764 static const char *const yytname[] =
       
   765 {
       
   766   "TOKEN_EOF", "error", "$undefined", "LOWEST_PREC", "UNIMPORTANT_TOK",
       
   767   "WHITESPACE", "SGML_CD", "INCLUDES", "DASHMATCH", "BEGINSWITH",
       
   768   "ENDSWITH", "CONTAINS", "STRING", "IDENT", "NTH", "HEX", "IDSEL", "':'",
       
   769   "'.'", "'['", "'*'", "'|'", "IMPORT_SYM", "PAGE_SYM", "MEDIA_SYM",
       
   770   "FONT_FACE_SYM", "CHARSET_SYM", "NAMESPACE_SYM", "WEBKIT_RULE_SYM",
       
   771   "WEBKIT_DECLS_SYM", "WEBKIT_KEYFRAME_RULE_SYM", "WEBKIT_KEYFRAMES_SYM",
       
   772   "WEBKIT_VALUE_SYM", "WEBKIT_MEDIAQUERY_SYM", "WEBKIT_SELECTOR_SYM",
       
   773   "WEBKIT_VARIABLES_SYM", "WEBKIT_DEFINE_SYM", "VARIABLES_FOR",
       
   774   "WEBKIT_VARIABLES_DECLS_SYM", "TOPLEFTCORNER_SYM", "TOPLEFT_SYM",
       
   775   "TOPCENTER_SYM", "TOPRIGHT_SYM", "TOPRIGHTCORNER_SYM",
       
   776   "BOTTOMLEFTCORNER_SYM", "BOTTOMLEFT_SYM", "BOTTOMCENTER_SYM",
       
   777   "BOTTOMRIGHT_SYM", "BOTTOMRIGHTCORNER_SYM", "LEFTTOP_SYM",
       
   778   "LEFTMIDDLE_SYM", "LEFTBOTTOM_SYM", "RIGHTTOP_SYM", "RIGHTMIDDLE_SYM",
       
   779   "RIGHTBOTTOM_SYM", "ATKEYWORD", "IMPORTANT_SYM", "MEDIA_ONLY",
       
   780   "MEDIA_NOT", "MEDIA_AND", "REMS", "QEMS", "EMS", "EXS", "PXS", "CMS",
       
   781   "MMS", "INS", "PTS", "PCS", "DEGS", "RADS", "GRADS", "TURNS", "MSECS",
       
   782   "SECS", "HERZ", "KHERZ", "DIMEN", "PERCENTAGE", "FLOATTOKEN", "INTEGER",
       
   783   "URI", "FUNCTION", "NOTFUNCTION", "UNICODERANGE", "VARCALL", "'{'",
       
   784   "'}'", "';'", "'('", "')'", "','", "'+'", "'~'", "'>'", "'-'", "']'",
       
   785   "'='", "'/'", "'#'", "'%'", "$accept", "stylesheet", "webkit_rule",
       
   786   "webkit_keyframe_rule", "webkit_decls", "webkit_variables_decls",
       
   787   "webkit_value", "webkit_mediaquery", "webkit_selector", "maybe_space",
       
   788   "maybe_sgml", "maybe_charset", "closing_brace", "charset", "rule_list",
       
   789   "valid_rule", "rule", "block_rule_list", "block_valid_rule",
       
   790   "block_rule", "import", "variables_rule", "variables_media_list",
       
   791   "variables_declaration_list", "variables_decl_list",
       
   792   "variables_declaration", "variable_name", "namespace", "maybe_ns_prefix",
       
   793   "string_or_uri", "media_feature", "maybe_media_value", "media_query_exp",
       
   794   "media_query_exp_list", "maybe_and_media_query_exp_list",
       
   795   "maybe_media_restrictor", "media_query", "maybe_media_list",
       
   796   "media_list", "media", "medium", "keyframes", "keyframe_name",
       
   797   "keyframes_rule", "keyframe_rule", "key_list", "key", "page",
       
   798   "page_selector", "declarations_and_margins", "margin_box", "$@1",
       
   799   "margin_sym", "font_face", "combinator", "maybe_unary_operator",
       
   800   "unary_operator", "ruleset", "selector_list",
       
   801   "selector_with_trailing_whitespace", "selector", "namespace_selector",
       
   802   "simple_selector", "element_name", "specifier_list", "specifier",
       
   803   "class", "attr_name", "attrib", "match", "ident_or_string",
       
   804   "pseudo_page", "pseudo", "declaration_list", "decl_list", "declaration",
       
   805   "property", "prio", "expr", "operator", "term", "unary_term",
       
   806   "variable_reference", "function", "hexcolor", "save_block", "invalid_at",
       
   807   "invalid_rule", "invalid_block", "invalid_block_list", 0
       
   808 };
       
   809 #endif
       
   810 
       
   811 # ifdef YYPRINT
       
   812 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
       
   813    token YYLEX-NUM.  */
       
   814 static const yytype_uint16 yytoknum[] =
       
   815 {
       
   816        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
       
   817      265,   266,   267,   268,   269,   270,   271,    58,    46,    91,
       
   818       42,   124,   272,   273,   274,   275,   276,   277,   278,   279,
       
   819      280,   281,   282,   283,   284,   285,   286,   287,   288,   289,
       
   820      290,   291,   292,   293,   294,   295,   296,   297,   298,   299,
       
   821      300,   301,   302,   303,   304,   305,   306,   307,   308,   309,
       
   822      310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
       
   823      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
       
   824      330,   331,   332,   333,   334,   335,   336,   123,   125,    59,
       
   825       40,    41,    44,    43,   126,    62,    45,    93,    61,    47,
       
   826       35,    37
       
   827 };
       
   828 # endif
       
   829 
       
   830 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
       
   831 static const yytype_uint8 yyr1[] =
       
   832 {
       
   833        0,   102,   103,   103,   103,   103,   103,   103,   103,   103,
       
   834      104,   105,   106,   107,   108,   109,   110,   111,   111,   112,
       
   835      112,   112,   113,   113,   114,   114,   115,   115,   115,   116,
       
   836      116,   117,   117,   117,   117,   117,   117,   117,   117,   118,
       
   837      118,   118,   119,   119,   120,   120,   120,   120,   121,   121,
       
   838      121,   121,   121,   121,   121,   122,   122,   122,   122,   123,
       
   839      123,   124,   124,   125,   125,   125,   125,   125,   125,   126,
       
   840      126,   126,   126,   126,   126,   126,   127,   127,   127,   127,
       
   841      127,   127,   128,   129,   129,   129,   129,   130,   130,   131,
       
   842      131,   132,   133,   133,   134,   135,   135,   136,   136,   137,
       
   843      137,   137,   138,   138,   139,   139,   140,   140,   140,   141,
       
   844      141,   142,   143,   144,   144,   145,   145,   146,   147,   147,
       
   845      148,   148,   149,   149,   149,   150,   150,   150,   150,   151,
       
   846      151,   153,   152,   154,   154,   154,   154,   154,   154,   154,
       
   847      154,   154,   154,   154,   154,   154,   154,   154,   154,   155,
       
   848      155,   155,   156,   156,   156,   157,   157,   158,   158,   159,
       
   849      160,   160,   160,   161,   162,   162,   162,   162,   162,   163,
       
   850      163,   163,   164,   164,   164,   164,   164,   164,   165,   165,
       
   851      166,   166,   166,   167,   167,   167,   167,   167,   168,   169,
       
   852      170,   170,   170,   170,   171,   171,   171,   171,   171,   171,
       
   853      172,   172,   173,   174,   174,   174,   174,   174,   174,   175,
       
   854      175,   175,   175,   175,   175,   175,   176,   176,   176,   176,
       
   855      176,   176,   176,   176,   177,   177,   177,   177,   177,   177,
       
   856      177,   177,   177,   178,   179,   179,   180,   180,   180,   180,
       
   857      180,   181,   181,   181,   182,   182,   182,   182,   182,   182,
       
   858      182,   182,   182,   182,   182,   182,   182,   183,   183,   183,
       
   859      183,   183,   183,   183,   183,   183,   183,   183,   183,   183,
       
   860      183,   183,   183,   183,   183,   183,   183,   183,   184,   185,
       
   861      185,   186,   186,   187,   187,   188,   188,   189,   190,   190,
       
   862      191,   191
       
   863 };
       
   864 
       
   865 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
       
   866 static const yytype_uint8 yyr2[] =
       
   867 {
       
   868        0,     2,     4,     2,     2,     2,     2,     2,     2,     2,
       
   869        6,     6,     5,     5,     5,     5,     5,     0,     2,     0,
       
   870        2,     2,     0,     1,     1,     1,     5,     3,     3,     0,
       
   871        3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
       
   872        1,     1,     0,     3,     1,     1,     1,     1,     1,     1,
       
   873        1,     1,     1,     1,     1,     6,     6,     3,     3,     7,
       
   874        7,     0,     3,     1,     2,     1,     3,     1,     2,     3,
       
   875        4,     3,     5,     4,     4,     6,     4,     7,     2,     5,
       
   876        3,     4,     2,     6,     6,     3,     3,     0,     2,     1,
       
   877        1,     2,     0,     4,     7,     1,     5,     0,     3,     0,
       
   878        1,     1,     1,     4,     0,     1,     1,     4,     2,     7,
       
   879        6,     2,     8,     1,     1,     0,     3,     6,     1,     5,
       
   880        1,     1,     8,     3,     3,     1,     2,     1,     0,     1,
       
   881        4,     0,     7,     1,     1,     1,     1,     1,     1,     1,
       
   882        1,     1,     1,     1,     1,     1,     1,     1,     1,     7,
       
   883        3,     3,     2,     2,     2,     1,     0,     1,     1,     5,
       
   884        1,     4,     2,     2,     1,     1,     2,     3,     2,     1,
       
   885        2,     2,     1,     2,     1,     2,     3,     2,     1,     1,
       
   886        1,     2,     2,     1,     1,     1,     1,     1,     2,     2,
       
   887        4,     8,     5,     9,     1,     1,     1,     1,     1,     1,
       
   888        1,     1,     2,     2,     3,     6,     7,     6,     6,     1,
       
   889        2,     1,     3,     1,     2,     2,     3,     3,     4,     3,
       
   890        5,     4,     4,     6,     5,     2,     2,     6,     6,     2,
       
   891        3,     4,     2,     2,     2,     0,     1,     3,     2,     3,
       
   892        2,     2,     2,     0,     1,     2,     2,     2,     2,     3,
       
   893        2,     2,     1,     2,     1,     2,     2,     2,     2,     2,
       
   894        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
       
   895        2,     2,     2,     2,     2,     2,     2,     2,     1,     5,
       
   896        3,     2,     2,     1,     2,     3,     3,     2,     5,     3,
       
   897        1,     3
       
   898 };
       
   899 
       
   900 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
       
   901    STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
       
   902    means the default is an error.  */
       
   903 static const yytype_uint16 yydefact[] =
       
   904 {
       
   905       17,     0,     0,     0,     0,     0,     0,     0,     0,    17,
       
   906       17,    17,    17,    17,    17,    17,    22,    17,    17,    17,
       
   907       17,    17,    17,    17,     1,     3,     9,     4,     8,     5,
       
   908        6,     7,    18,     0,    19,    23,     0,     0,     0,     0,
       
   909       99,     0,     0,     0,     0,    29,   178,   184,   183,     0,
       
   910        0,    17,   179,   169,     0,     0,    17,     0,     0,    17,
       
   911       17,    17,    17,    37,    38,    36,    32,    35,    33,    34,
       
   912       31,     0,   165,     0,     0,   164,   172,     0,   180,   185,
       
   913      186,   187,   213,    17,    17,   278,     0,     0,   209,     0,
       
   914       17,   121,   120,    17,    17,   118,    17,    17,    17,    17,
       
   915       17,    17,    17,    17,    17,    17,    17,    17,    17,    17,
       
   916       17,    17,    17,    17,    17,    17,    17,    17,    17,    17,
       
   917       17,    17,    17,    17,    17,   158,   157,    17,    17,     0,
       
   918        0,   236,   244,    17,   254,   252,   100,   101,    17,    95,
       
   919      102,    17,     0,     0,    67,    17,     0,     0,    63,     0,
       
   920        0,    28,    27,    17,    21,    20,     0,   171,   203,     0,
       
   921       17,    17,   188,     0,   170,     0,     0,     0,   128,    99,
       
   922        0,     0,     0,    87,     0,    99,    61,     0,   162,    17,
       
   923       17,   166,   168,   163,    17,    17,    17,     0,   178,   179,
       
   924      175,     0,     0,   182,   181,    17,   290,     0,   233,   229,
       
   925       12,   214,   210,     0,    17,     0,   226,    17,   232,   225,
       
   926        0,     0,   246,   247,   281,   282,   277,   275,   274,   276,
       
   927      260,   261,   262,   263,   264,   265,   266,   267,   268,   269,
       
   928      270,   271,   272,   273,   248,   259,   258,   257,   250,     0,
       
   929      251,   253,   256,    17,   245,   240,    14,    17,    17,     0,
       
   930        0,   255,     0,     0,     0,    15,    16,    17,     0,    82,
       
   931       13,    68,    64,    17,     0,    78,    17,     0,     0,     0,
       
   932        0,     0,    39,    19,    41,    40,   204,   156,     0,    17,
       
   933        0,     0,     0,    57,    58,    89,    90,    17,   124,   123,
       
   934      125,     0,    17,   127,    17,   106,     0,   151,   150,    17,
       
   935       86,    85,    17,     0,   114,   113,    17,     0,     0,     0,
       
   936        0,    10,     0,     0,   152,   153,   154,   167,     0,   219,
       
   937      212,    17,     0,    17,     0,   216,    17,   217,     0,    11,
       
   938       17,    17,   280,     0,   249,   242,   241,   237,   239,    17,
       
   939       17,    17,    17,    97,    71,    66,    17,     0,    17,    69,
       
   940       17,     0,    17,    25,    24,   289,     0,    26,   287,     0,
       
   941       30,    17,    17,     0,   155,    17,   189,    17,     0,   195,
       
   942      196,   197,   198,   199,   190,   194,    17,   104,   126,   202,
       
   943        0,    42,   108,    17,    17,     0,    88,    17,     0,    17,
       
   944       99,    17,     0,     0,    17,   291,   222,     0,   221,   218,
       
   945      231,     0,     0,     0,    17,    91,    92,     0,   111,    17,
       
   946      103,    17,    74,     0,    73,    70,    81,     0,     0,     0,
       
   947      286,   285,     0,     0,    17,     0,   192,    17,     0,     0,
       
   948       17,     0,    42,    99,     0,     0,    17,     0,     0,     0,
       
   949      159,   220,    17,     0,    17,     0,     0,   119,   279,    17,
       
   950        0,    96,     0,    72,    17,     0,     0,   288,   207,   205,
       
   951        0,   208,     0,   201,   200,    17,    55,    56,     0,     0,
       
   952      283,    48,    19,    52,    53,    51,    54,    47,    45,    46,
       
   953       44,   110,    50,    49,     0,   107,    17,    83,    84,   115,
       
   954        0,     0,   223,   227,   234,   228,   117,     0,    17,    98,
       
   955       75,    17,   206,    17,     0,     0,   129,   284,    43,   109,
       
   956      149,     0,    59,    60,     0,    94,    77,     0,   191,   133,
       
   957      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
       
   958      144,   145,   146,   147,   148,   122,    17,   131,   112,    17,
       
   959       93,   193,     0,    17,   116,   130,     0,    17,     0,     0,
       
   960      132
       
   961 };
       
   962 
       
   963 /* YYDEFGOTO[NTERM-NUM].  */
       
   964 static const yytype_int16 yydefgoto[] =
       
   965 {
       
   966       -1,     8,     9,    10,    11,    12,    13,    14,    15,   253,
       
   967       45,    34,   470,    35,   156,    62,   273,   431,   471,   472,
       
   968       63,    64,   310,   146,   147,   148,   149,    65,   303,   287,
       
   969      340,   450,   139,   140,   410,   141,   295,   307,   308,    66,
       
   970      343,    67,   306,   511,    93,    94,    95,    68,   292,   505,
       
   971      536,   543,   537,    69,   187,   363,   129,    70,    71,    72,
       
   972       73,    74,    75,    76,    77,    78,    79,   282,    80,   376,
       
   973      465,   293,    81,    86,    87,    88,    89,   445,   130,   249,
       
   974      131,   132,    90,   134,   135,   481,   482,   483,   196,   250
       
   975 };
       
   976 
       
   977 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
       
   978    STATE-NUM.  */
       
   979 #define YYPACT_NINF -264
       
   980 static const yytype_int16 yypact[] =
       
   981 {
       
   982      499,   -80,   -60,   -47,   -24,    64,    -8,   159,   307,  -264,
       
   983     -264,  -264,  -264,  -264,  -264,  -264,    24,  -264,  -264,  -264,
       
   984     -264,  -264,  -264,  -264,  -264,   314,   314,   314,   314,   314,
       
   985      314,   314,  -264,   369,  -264,  -264,   925,   224,     3,  1222,
       
   986      259,   453,    36,   247,   205,    47,   299,  -264,  -264,   356,
       
   987      332,  -264,   308,  -264,   310,   260,  -264,   189,   300,  -264,
       
   988     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
   989     -264,    38,   698,    76,   489,  -264,   463,   397,  -264,  -264,
       
   990     -264,  -264,   291,  -264,  -264,  -264,   268,  1480,   312,   180,
       
   991     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
   992     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
   993     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
   994     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,   561,
       
   995      958,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
   996       21,  -264,   283,    70,   316,  -264,   287,   164,   321,   191,
       
   997      399,  -264,  -264,  -264,  -264,  -264,   788,  -264,  -264,   404,
       
   998     -264,  -264,  -264,   413,  -264,   333,   188,   359,   418,   267,
       
   999      366,   209,   370,    61,   346,   338,     1,   194,  -264,  -264,
       
  1000     -264,  -264,  -264,  -264,  -264,  -264,  -264,   698,  -264,  -264,
       
  1001      463,  1309,  1328,  -264,  -264,  -264,  -264,   420,   314,   314,
       
  1002     -264,   375,   340,  1554,  -264,  1462,  -264,  -264,  -264,   314,
       
  1003      216,   167,   314,   314,   314,   314,   314,   314,   314,   314,
       
  1004      314,   314,   314,   314,   314,   314,   314,   314,   314,   314,
       
  1005      314,   314,   314,   314,   314,   314,   314,   314,   314,  1180,
       
  1006      314,   314,   314,  -264,  -264,  -264,  -264,  -264,  -264,  1373,
       
  1007      510,   314,   196,   285,   372,  -264,  -264,  -264,   431,   314,
       
  1008     -264,   406,   348,  -264,    77,  -264,  -264,   211,   144,   182,
       
  1009      351,   440,  -264,  -264,  -264,  -264,  -264,    59,   453,   299,
       
  1010      308,   434,    37,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
  1011      435,   443,  -264,  -264,  -264,  -264,    91,  -264,  -264,  -264,
       
  1012     -264,  -264,  -264,   250,  -264,  -264,  -264,   376,   166,   470,
       
  1013      389,  -264,   224,   453,   314,   314,   314,  -264,  1337,   314,
       
  1014      407,  -264,   486,  -264,   351,   314,  -264,   314,   694,  -264,
       
  1015     -264,  -264,  -264,  1048,   314,   314,   314,  -264,   351,  -264,
       
  1016     -264,  -264,  -264,   441,   314,   410,  -264,   511,  -264,   314,
       
  1017     -264,  1090,  -264,  -264,  -264,  -264,   512,  -264,  -264,   429,
       
  1018       47,  -264,  -264,   439,  -264,  -264,   314,  -264,    78,  -264,
       
  1019     -264,  -264,  -264,  -264,  -264,  -264,  -264,   270,  -264,  -264,
       
  1020      221,   314,  -264,  -264,  -264,   224,   314,  -264,   222,  -264,
       
  1021      -22,  -264,   148,   146,  -264,  -264,   314,   432,   314,   314,
       
  1022     1373,   604,   224,     3,  -264,   314,    26,    60,   314,  -264,
       
  1023     -264,  -264,   314,   451,   314,   314,  1373,   784,   224,   144,
       
  1024     -264,  -264,   169,   177,  -264,   183,  -264,  -264,   438,   455,
       
  1025     -264,  1556,   314,   259,   436,   206,  -264,    36,   158,    36,
       
  1026     -264,   314,  -264,   604,  -264,  1319,   442,  -264,   314,  -264,
       
  1027      444,  -264,    60,   314,  -264,   826,   446,  -264,  -264,  -264,
       
  1028      193,  -264,   438,  -264,  -264,  -264,  -264,  -264,   224,   144,
       
  1029     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
  1030     -264,  -264,  -264,  -264,  1556,  -264,  -264,  -264,  -264,   314,
       
  1031      457,   477,   314,  -264,   314,  -264,  -264,  1222,  -264,    21,
       
  1032      314,  -264,  -264,  -264,    -2,  1582,  -264,  -264,    47,  -264,
       
  1033      314,   276,  -264,  -264,   916,   314,   314,    29,  -264,  -264,
       
  1034     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
  1035     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,
       
  1036      314,  -264,   224,  -264,   314,  -264,   246,  -264,   224,   148,
       
  1037     -264
       
  1038 };
       
  1039 
       
  1040 /* YYPGOTO[NTERM-NUM].  */
       
  1041 static const yytype_int16 yypgoto[] =
       
  1042 {
       
  1043     -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,  -264,     0,
       
  1044     -248,  -264,  -263,  -264,  -264,   385,  -264,   135,  -264,  -264,
       
  1045     -240,  -203,  -264,   109,  -264,   421,  -264,  -196,  -264,   266,
       
  1046     -264,  -264,   187,   155,  -264,  -264,   -36,   223,  -168,  -146,
       
  1047     -264,   -96,  -264,  -264,    97,  -264,   210,   -94,  -264,  -264,
       
  1048     -264,  -264,  -264,   -78,  -264,  -264,   335,   -65,   573,  -264,
       
  1049      302,   496,   -48,   544,   -44,   -49,  -264,   380,  -264,   294,
       
  1050      201,   398,  -264,  -245,  -264,   611,  -264,   258,  -197,  -264,
       
  1051      459,   583,   -37,  -264,  -264,   218,   564,   565,    48,   -12
       
  1052 };
       
  1053 
       
  1054 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
       
  1055    positive, shift that token.  If negative, reduce the rule which
       
  1056    number is the opposite.  If zero, do what YYDEFACT says.
       
  1057    If YYTABLE_NINF, syntax error.  */
       
  1058 #define YYTABLE_NINF -244
       
  1059 static const yytype_int16 yytable[] =
       
  1060 {
       
  1061       16,   296,   133,    32,   142,   355,    32,    17,    32,    25,
       
  1062       26,    27,    28,    29,    30,    31,    91,    36,    37,    38,
       
  1063       39,    40,    41,    42,   181,   360,   -17,    18,   194,    32,
       
  1064      191,    32,   192,    44,    32,   136,   137,   144,   309,   178,
       
  1065       19,    32,   333,   449,   369,   370,   371,   372,   373,   145,
       
  1066       33,   163,   154,   155,   166,   168,   169,   171,   173,   174,
       
  1067      175,   176,   177,    20,    32,    32,    32,   392,   138,    21,
       
  1068      197,   178,   361,   362,   302,   203,   205,   182,   324,    22,
       
  1069      -17,   183,    92,   198,   199,   369,   370,   371,   372,   373,
       
  1070      209,   152,   382,   210,   211,   518,   212,   213,   214,   215,
       
  1071      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
       
  1072      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
       
  1073      236,   237,   238,   239,   240,   179,   541,   241,   242,   440,
       
  1074      180,   401,   258,   251,   374,   375,   264,   208,   252,   317,
       
  1075      434,   254,   194,   194,   353,   259,   318,   182,   353,   267,
       
  1076      138,   183,   125,   269,   417,   126,   457,   446,   256,   382,
       
  1077      277,   278,   180,  -160,  -160,   261,   350,   382,  -160,   184,
       
  1078      185,   186,    32,   456,    32,   426,   375,   145,   383,   312,
       
  1079      313,   206,    32,   384,   314,   315,   316,    32,    32,   322,
       
  1080      170,   473,   265,    32,   -17,   319,   -17,   207,    32,    32,
       
  1081      285,    32,   133,   443,   325,   327,   507,   328,   266,   339,
       
  1082       32,    32,   133,   284,    32,   289,    32,   153,   298,   455,
       
  1083      301,    32,   438,   506,   508,    82,    32,    32,   474,    32,
       
  1084      365,   150,   354,  -161,  -161,   475,   354,    83,  -161,   184,
       
  1085      185,   186,   535,   334,   473,   -62,    23,   335,   336,   347,
       
  1086      384,    32,   -65,  -105,   330,  -105,   356,   344,   384,   331,
       
  1087      458,   167,   285,   349,    32,   -17,   351,   150,   459,   194,
       
  1088      286,   357,    32,   -17,   461,    32,   -17,   -17,   -17,   366,
       
  1089       84,   474,   311,   -99,   502,   476,   550,   377,   475,    91,
       
  1090       32,   133,   380,   150,   381,   487,   299,   545,   352,   385,
       
  1091      514,   172,   386,   549,   329,   -17,   388,    24,   430,   436,
       
  1092       85,   165,   -17,   -17,   133,   -17,   136,   137,   358,    32,
       
  1093      157,   396,   -17,   398,   136,   137,   399,   136,   137,   164,
       
  1094      402,   403,   286,   547,   150,   477,   151,   478,   476,   405,
       
  1095      406,   407,   408,    32,   341,   162,   412,   -17,   414,   138,
       
  1096      415,    32,   418,   479,   294,    92,   200,   138,   304,   305,
       
  1097      138,   422,   423,   133,   538,   425,   480,   366,   395,   158,
       
  1098       43,   255,   395,   159,   -17,   260,   428,    32,   150,   133,
       
  1099      195,   -17,   -17,   432,   433,   342,   395,   435,   477,   437,
       
  1100      478,   439,   -17,   395,   441,   136,   137,   485,   193,   150,
       
  1101      268,   204,  -174,   150,   448,   257,   479,   421,   150,   452,
       
  1102      263,   453,    47,    48,    49,    50,    51,   276,    32,   480,
       
  1103      150,   320,   283,    32,   460,  -104,   279,   462,   138,   323,
       
  1104      468,   290,   345,   280,    53,   291,   489,   348,   150,   160,
       
  1105      161,   359,   492,    32,   494,   395,   150,   367,   288,   497,
       
  1106      463,   464,   291,   150,   500,   297,   379,   150,    32,   300,
       
  1107      133,   395,   150,   389,   321,   504,    46,   395,    47,    48,
       
  1108       49,    50,    51,    52,    53,   390,   391,   467,    47,    48,
       
  1109       49,    50,    51,   488,  -174,  -174,   510,   397,  -174,  -174,
       
  1110     -174,  -174,  -174,   150,   150,   346,   394,   150,   515,   411,
       
  1111      409,   516,   188,   517,    47,    48,    49,    50,    51,   189,
       
  1112     -238,   338,   413,   419,   540,  -238,   150,   358,   420,   150,
       
  1113      424,   442,  -238,  -238,   486,  -238,  -238,     1,     2,     3,
       
  1114      496,     4,     5,     6,   501,   498,   542,     7,   150,   544,
       
  1115      454,   272,   150,   546,   466,   512,   490,   548,   491,  -238,
       
  1116     -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,
       
  1117     -238,  -238,  -238,  -238,  -238,   513,  -238,   484,   262,   387,
       
  1118     -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,
       
  1119     -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,  -238,
       
  1120     -238,  -238,  -238,  -238,   451,  -238,  -238,  -238,  -238,  -238,
       
  1121      429,  -238,  -238,  -238,  -235,   245,  -238,   499,   539,  -238,
       
  1122     -238,  -238,   364,   447,   143,   393,  -243,  -243,   190,  -243,
       
  1123     -243,   100,   101,   102,   103,   104,   105,   106,   107,   108,
       
  1124      109,   110,   111,   112,   113,   114,   115,   116,   117,   243,
       
  1125      119,   120,   121,  -235,  -235,  -235,  -235,  -235,  -235,  -235,
       
  1126     -235,  -235,  -235,  -235,  -235,  -235,  -235,  -235,  -235,   281,
       
  1127      444,   368,   427,   503,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1128     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1129     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,   378,  -243,
       
  1130     -243,   150,  -235,  -235,  -230,   400,   247,  -243,   202,    32,
       
  1131     -243,   493,   509,   248,  -243,  -243,    96,    97,   337,    98,
       
  1132       99,    46,   244,    47,    48,    49,    50,    51,    52,    53,
       
  1133      274,   275,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1134        0,     0,     0,  -230,  -230,  -230,  -230,  -230,  -230,  -230,
       
  1135     -230,  -230,  -230,  -230,  -230,  -230,  -230,  -230,  -230,     0,
       
  1136        0,     0,     0,     0,   100,   101,   102,   103,   104,   105,
       
  1137      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
       
  1138      116,   117,   118,   119,   120,   121,   122,   123,     0,   124,
       
  1139       85,  -230,  -230,  -230,     0,   245,     0,   125,    -2,   270,
       
  1140      126,     0,     0,     0,   127,   128,  -243,  -243,     0,  -243,
       
  1141     -243,    46,     0,    47,    48,    49,    50,    51,    52,    53,
       
  1142       54,    55,    56,    57,     0,    58,     0,     0,     0,    59,
       
  1143        0,     0,     0,    60,    61,     0,     0,   245,     0,     0,
       
  1144        0,     0,     0,     0,     0,     0,     0,     0,  -243,  -243,
       
  1145        0,  -243,  -243,   271,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1146     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1147     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,     0,  -243,
       
  1148     -243,   150,   -76,   -76,     0,     0,   247,  -243,     0,     0,
       
  1149     -243,     0,     0,   248,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1150     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1151     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1152        0,  -243,  -243,   150,   -79,   -79,     0,   245,   247,  -243,
       
  1153        0,   -17,  -243,     0,     0,   248,  -243,  -243,  -243,  -243,
       
  1154       32,  -243,  -243,     0,     0,     0,     0,     0,    46,     0,
       
  1155       47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
       
  1156       57,     0,    58,     0,     0,     0,    59,     0,     0,   245,
       
  1157       60,    61,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1158     -243,  -243,     0,  -243,  -243,     0,  -243,  -243,  -243,  -243,
       
  1159     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1160     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1161        0,  -243,  -243,   150,     0,     0,     0,   -17,   247,  -243,
       
  1162        0,     0,  -243,     0,     0,   248,  -243,  -243,  -243,  -243,
       
  1163     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1164     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1165     -243,  -243,     0,  -243,  -243,   150,   246,     0,     0,   245,
       
  1166      247,  -243,     0,     0,  -243,     0,     0,   248,  -243,  -243,
       
  1167     -243,  -243,     0,  -243,  -243,     0,     0,     0,     0,     0,
       
  1168        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1169        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1170        0,   416,     0,     0,     0,    32,     0,     0,     0,     0,
       
  1171        0,     0,    96,    97,     0,    98,    99,     0,  -243,  -243,
       
  1172     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1173     -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,  -243,
       
  1174     -243,  -243,     0,  -243,  -243,   150,     0,     0,     0,   404,
       
  1175      247,  -243,     0,     0,  -243,     0,     0,   248,  -243,  -243,
       
  1176      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
       
  1177      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
       
  1178      120,   121,   122,   123,     0,   124,    85,   -80,   -80,   -80,
       
  1179        0,   332,     0,   125,     0,    32,   126,     0,     0,     0,
       
  1180      127,   128,    96,    97,     0,    98,    99,     0,     0,     0,
       
  1181        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1182        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1183        0,     0,     0,     0,     0,     0,     0,    32,     0,     0,
       
  1184        0,     0,     0,     0,    96,    97,     0,    98,    99,     0,
       
  1185      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
       
  1186      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
       
  1187      120,   121,   122,   123,     0,   124,    85,     0,     0,     0,
       
  1188        0,     0,     0,   125,     0,     0,   126,     0,     0,     0,
       
  1189      127,   128,   100,   101,   102,   103,   104,   105,   106,   107,
       
  1190      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
       
  1191      118,   119,   120,   121,   122,   123,     0,   124,    85,     0,
       
  1192      193,     0,     0,     0,  -177,   125,     0,     0,   126,  -224,
       
  1193      495,     0,   127,   128,    47,    48,    49,    50,    51,   193,
       
  1194        0,     0,     0,  -173,     0,     0,     0,     0,   193,     0,
       
  1195        0,     0,  -176,    47,    48,    49,    50,    51,     0,     0,
       
  1196        0,     0,    47,    48,    49,    50,    51,     0,  -224,  -224,
       
  1197     -224,  -224,  -224,  -224,  -224,  -224,  -224,  -224,  -224,  -224,
       
  1198     -224,  -224,  -224,  -224,     0,     0,     0,     0,     0,     0,
       
  1199        0,     0,     0,     0,     0,    96,    97,     0,    98,    99,
       
  1200        0,     0,     0,     0,     0,     0,  -177,  -177,     0,     0,
       
  1201     -177,  -177,  -177,  -177,  -177,     0,  -224,  -224,  -224,     0,
       
  1202        0,     0,     0,     0,     0,  -173,  -173,     0,     0,  -173,
       
  1203     -173,  -173,  -173,  -173,  -176,  -176,     0,     0,  -176,  -176,
       
  1204     -176,  -176,  -176,   100,   101,   102,   103,   104,   105,   106,
       
  1205      107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
       
  1206      117,   118,   119,   120,   121,   122,   123,     0,   124,    85,
       
  1207        0,     0,   -17,   324,     0,     0,   125,   -17,     0,   126,
       
  1208        0,     0,     0,   127,   128,   -17,     0,     0,     0,     0,
       
  1209     -211,   201,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1210        0,     0,     0,    83,     0,     0,     0,     0,     0,     0,
       
  1211        0,   -17,   -17,   -17,   -17,   -17,   -17,   -17,   -17,   -17,
       
  1212      -17,   -17,   -17,   -17,   -17,   -17,   -17,     0,   -17,  -211,
       
  1213     -211,  -211,  -211,  -211,  -211,  -211,  -211,  -211,  -211,  -211,
       
  1214     -211,  -211,  -211,  -211,  -211,     0,    84,     0,     0,     0,
       
  1215        0,     0,     0,     0,     0,     0,     0,     0,   -17,   -17,
       
  1216      -17,   326,     0,     0,  -215,   324,   353,   469,     0,     0,
       
  1217        0,     0,     0,     0,     0,     0,    85,   150,  -211,    46,
       
  1218        0,    47,    48,    49,    50,    51,    52,    53,    54,    55,
       
  1219       56,    57,   353,    58,     0,     0,     0,    59,     0,     0,
       
  1220        0,    60,    61,  -215,  -215,  -215,  -215,  -215,  -215,  -215,
       
  1221     -215,  -215,  -215,  -215,  -215,  -215,  -215,  -215,  -215,     0,
       
  1222        0,   271,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1223        0,   519,   520,   521,   522,   523,   524,   525,   526,   527,
       
  1224      528,   529,   530,   531,   532,   533,   534,     0,     0,     0,
       
  1225        0,     0,  -215,     0,   354,     0,     0,     0,     0,     0,
       
  1226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1227        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
       
  1228      354
       
  1229 };
       
  1230 
       
  1231 static const yytype_int16 yycheck[] =
       
  1232 {
       
  1233        0,   169,    39,     5,    40,   268,     5,    87,     5,     9,
       
  1234       10,    11,    12,    13,    14,    15,    13,    17,    18,    19,
       
  1235       20,    21,    22,    23,    72,   273,     5,    87,    77,     5,
       
  1236       74,     5,    76,    33,     5,    57,    58,     1,    37,     1,
       
  1237       87,     5,   239,    17,     7,     8,     9,    10,    11,    13,
       
  1238       26,    51,     5,     6,    54,    55,    56,    57,    58,    59,
       
  1239       60,    61,    62,    87,     5,     5,     5,   312,    90,     5,
       
  1240       82,     1,    13,    14,    13,    87,    88,     1,     1,    87,
       
  1241       59,     5,    79,    83,    84,     7,     8,     9,    10,    11,
       
  1242       90,    43,     1,    93,    94,    97,    96,    97,    98,    99,
       
  1243      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
       
  1244      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
       
  1245      120,   121,   122,   123,   124,    87,    97,   127,   128,   392,
       
  1246       92,   328,   144,   133,    97,    98,   148,    89,   138,   187,
       
  1247      385,   141,   191,   192,     0,   145,   190,     1,     0,   149,
       
  1248       90,     5,    93,   153,   351,    96,   419,   402,    88,     1,
       
  1249      160,   161,    92,    87,    88,     1,    89,     1,    92,    93,
       
  1250       94,    95,     5,   418,     5,    97,    98,    13,    87,   179,
       
  1251      180,     1,     5,    92,   184,   185,   186,     5,     5,   201,
       
  1252        1,   431,     1,     5,     5,   195,     5,    17,     5,     5,
       
  1253       12,     5,   239,   400,   204,   205,   469,   207,    17,    13,
       
  1254        5,     5,   249,   165,     5,   167,     5,    12,   170,   416,
       
  1255      172,     5,   390,   468,   472,     1,     5,     5,   431,     5,
       
  1256      278,    87,    88,    87,    88,   431,    88,    13,    92,    93,
       
  1257       94,    95,   505,   243,   484,    87,    87,   247,   248,   261,
       
  1258       92,     5,    88,    87,    87,    89,   268,   257,    92,    92,
       
  1259       91,     1,    12,   263,     5,     5,   266,    87,    91,   318,
       
  1260       82,    89,     5,    13,    91,     5,    87,    17,    87,   279,
       
  1261       56,   484,    88,    13,    91,   431,   549,   287,   484,    13,
       
  1262        5,   328,   292,    87,   294,    89,    87,   542,    87,   299,
       
  1263      497,     1,   302,   548,    88,     5,   306,     0,    87,    87,
       
  1264       86,     1,    12,    13,   351,     5,    57,    58,   270,     5,
       
  1265       21,   321,    12,   323,    57,    58,   326,    57,    58,    21,
       
  1266      330,   331,    82,    87,    87,   431,    89,   431,   484,   339,
       
  1267      340,   341,   342,     5,    59,    13,   346,    87,   348,    90,
       
  1268      350,     5,   352,   431,    87,    79,    88,    90,    12,    13,
       
  1269       90,   361,   362,   400,    88,   365,   431,   367,   320,    13,
       
  1270        1,    88,   324,    17,     5,    88,   376,     5,    87,   416,
       
  1271       89,    12,    82,   383,   384,    13,   338,   387,   484,   389,
       
  1272      484,   391,    82,   345,   394,    57,    58,   433,     1,    87,
       
  1273        1,    89,     5,    87,   404,    89,   484,   359,    87,   409,
       
  1274       89,   411,    15,    16,    17,    18,    19,    13,     5,   484,
       
  1275       87,     1,    89,     5,   424,    87,    13,   427,    90,    89,
       
  1276      430,    13,     1,    20,    21,    17,   436,    89,    87,    83,
       
  1277       84,     1,   442,     5,   444,   397,    87,    13,    89,   449,
       
  1278       12,    13,    17,    87,   454,    89,    13,    87,     5,    89,
       
  1279      497,   413,    87,    87,    89,   465,    13,   419,    15,    16,
       
  1280       17,    18,    19,    20,    21,     5,    87,   429,    15,    16,
       
  1281       17,    18,    19,   435,    87,    88,   486,     1,    91,    92,
       
  1282       93,    94,    95,    87,    87,    89,    89,    87,   498,    89,
       
  1283       59,   501,    13,   503,    15,    16,    17,    18,    19,    20,
       
  1284        0,     1,     1,     1,   514,     5,    87,   469,    89,    87,
       
  1285       81,    89,    12,    13,    88,    15,    16,    28,    29,    30,
       
  1286       88,    32,    33,    34,    88,    91,   536,    38,    87,   539,
       
  1287       89,   156,    87,   543,    89,    88,   437,   547,   439,    39,
       
  1288       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
       
  1289       50,    51,    52,    53,    54,    88,    56,   432,   147,   303,
       
  1290       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
       
  1291       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
       
  1292       80,    81,    82,    83,   407,    85,    86,    87,    88,    89,
       
  1293      377,    91,    92,    93,     0,     1,    96,   452,   511,    99,
       
  1294      100,   101,   277,   403,    41,   313,    12,    13,    74,    15,
       
  1295       16,    60,    61,    62,    63,    64,    65,    66,    67,    68,
       
  1296       69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
       
  1297       79,    80,    81,    39,    40,    41,    42,    43,    44,    45,
       
  1298       46,    47,    48,    49,    50,    51,    52,    53,    54,   163,
       
  1299       56,   281,   368,   462,    60,    61,    62,    63,    64,    65,
       
  1300       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
       
  1301       76,    77,    78,    79,    80,    81,    82,    83,   290,    85,
       
  1302       86,    87,    88,    89,     0,     1,    92,    93,    87,     5,
       
  1303       96,   443,   484,    99,   100,   101,    12,    13,   249,    15,
       
  1304       16,    13,   129,    15,    16,    17,    18,    19,    20,    21,
       
  1305      156,   156,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1306       -1,    -1,    -1,    39,    40,    41,    42,    43,    44,    45,
       
  1307       46,    47,    48,    49,    50,    51,    52,    53,    54,    -1,
       
  1308       -1,    -1,    -1,    -1,    60,    61,    62,    63,    64,    65,
       
  1309       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
       
  1310       76,    77,    78,    79,    80,    81,    82,    83,    -1,    85,
       
  1311       86,    87,    88,    89,    -1,     1,    -1,    93,     0,     1,
       
  1312       96,    -1,    -1,    -1,   100,   101,    12,    13,    -1,    15,
       
  1313       16,    13,    -1,    15,    16,    17,    18,    19,    20,    21,
       
  1314       22,    23,    24,    25,    -1,    27,    -1,    -1,    -1,    31,
       
  1315       -1,    -1,    -1,    35,    36,    -1,    -1,     1,    -1,    -1,
       
  1316       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    12,    13,
       
  1317       -1,    15,    16,    55,    60,    61,    62,    63,    64,    65,
       
  1318       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
       
  1319       76,    77,    78,    79,    80,    81,    82,    83,    -1,    85,
       
  1320       86,    87,    88,    89,    -1,    -1,    92,    93,    -1,    -1,
       
  1321       96,    -1,    -1,    99,   100,   101,    60,    61,    62,    63,
       
  1322       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
       
  1323       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
       
  1324       -1,    85,    86,    87,    88,    89,    -1,     1,    92,    93,
       
  1325       -1,     5,    96,    -1,    -1,    99,   100,   101,    12,    13,
       
  1326        5,    15,    16,    -1,    -1,    -1,    -1,    -1,    13,    -1,
       
  1327       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
       
  1328       25,    -1,    27,    -1,    -1,    -1,    31,    -1,    -1,     1,
       
  1329       35,    36,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1330       12,    13,    -1,    15,    16,    -1,    60,    61,    62,    63,
       
  1331       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
       
  1332       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
       
  1333       -1,    85,    86,    87,    -1,    -1,    -1,    91,    92,    93,
       
  1334       -1,    -1,    96,    -1,    -1,    99,   100,   101,    60,    61,
       
  1335       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
       
  1336       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
       
  1337       82,    83,    -1,    85,    86,    87,    88,    -1,    -1,     1,
       
  1338       92,    93,    -1,    -1,    96,    -1,    -1,    99,   100,   101,
       
  1339       12,    13,    -1,    15,    16,    -1,    -1,    -1,    -1,    -1,
       
  1340       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1341       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1342       -1,     1,    -1,    -1,    -1,     5,    -1,    -1,    -1,    -1,
       
  1343       -1,    -1,    12,    13,    -1,    15,    16,    -1,    60,    61,
       
  1344       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
       
  1345       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
       
  1346       82,    83,    -1,    85,    86,    87,    -1,    -1,    -1,    91,
       
  1347       92,    93,    -1,    -1,    96,    -1,    -1,    99,   100,   101,
       
  1348       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
       
  1349       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
       
  1350       80,    81,    82,    83,    -1,    85,    86,    87,    88,    89,
       
  1351       -1,     1,    -1,    93,    -1,     5,    96,    -1,    -1,    -1,
       
  1352      100,   101,    12,    13,    -1,    15,    16,    -1,    -1,    -1,
       
  1353       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1354       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1355       -1,    -1,    -1,    -1,    -1,    -1,    -1,     5,    -1,    -1,
       
  1356       -1,    -1,    -1,    -1,    12,    13,    -1,    15,    16,    -1,
       
  1357       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
       
  1358       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
       
  1359       80,    81,    82,    83,    -1,    85,    86,    -1,    -1,    -1,
       
  1360       -1,    -1,    -1,    93,    -1,    -1,    96,    -1,    -1,    -1,
       
  1361      100,   101,    60,    61,    62,    63,    64,    65,    66,    67,
       
  1362       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
       
  1363       78,    79,    80,    81,    82,    83,    -1,    85,    86,    -1,
       
  1364        1,    -1,    -1,    -1,     5,    93,    -1,    -1,    96,     0,
       
  1365        1,    -1,   100,   101,    15,    16,    17,    18,    19,     1,
       
  1366       -1,    -1,    -1,     5,    -1,    -1,    -1,    -1,     1,    -1,
       
  1367       -1,    -1,     5,    15,    16,    17,    18,    19,    -1,    -1,
       
  1368       -1,    -1,    15,    16,    17,    18,    19,    -1,    39,    40,
       
  1369       41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
       
  1370       51,    52,    53,    54,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1371       -1,    -1,    -1,    -1,    -1,    12,    13,    -1,    15,    16,
       
  1372       -1,    -1,    -1,    -1,    -1,    -1,    87,    88,    -1,    -1,
       
  1373       91,    92,    93,    94,    95,    -1,    87,    88,    89,    -1,
       
  1374       -1,    -1,    -1,    -1,    -1,    87,    88,    -1,    -1,    91,
       
  1375       92,    93,    94,    95,    87,    88,    -1,    -1,    91,    92,
       
  1376       93,    94,    95,    60,    61,    62,    63,    64,    65,    66,
       
  1377       67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
       
  1378       77,    78,    79,    80,    81,    82,    83,    -1,    85,    86,
       
  1379       -1,    -1,     0,     1,    -1,    -1,    93,     5,    -1,    96,
       
  1380       -1,    -1,    -1,   100,   101,    13,    -1,    -1,    -1,    -1,
       
  1381        0,     1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1382       -1,    -1,    -1,    13,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1383       -1,    39,    40,    41,    42,    43,    44,    45,    46,    47,
       
  1384       48,    49,    50,    51,    52,    53,    54,    -1,    56,    39,
       
  1385       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
       
  1386       50,    51,    52,    53,    54,    -1,    56,    -1,    -1,    -1,
       
  1387       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,    87,
       
  1388       88,    89,    -1,    -1,     0,     1,     0,     1,    -1,    -1,
       
  1389       -1,    -1,    -1,    -1,    -1,    -1,    86,    87,    88,    13,
       
  1390       -1,    15,    16,    17,    18,    19,    20,    21,    22,    23,
       
  1391       24,    25,     0,    27,    -1,    -1,    -1,    31,    -1,    -1,
       
  1392       -1,    35,    36,    39,    40,    41,    42,    43,    44,    45,
       
  1393       46,    47,    48,    49,    50,    51,    52,    53,    54,    -1,
       
  1394       -1,    55,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1395       -1,    39,    40,    41,    42,    43,    44,    45,    46,    47,
       
  1396       48,    49,    50,    51,    52,    53,    54,    -1,    -1,    -1,
       
  1397       -1,    -1,    88,    -1,    88,    -1,    -1,    -1,    -1,    -1,
       
  1398       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1399       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       
  1400       88
       
  1401 };
       
  1402 
       
  1403 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
       
  1404    symbol of state STATE-NUM.  */
       
  1405 static const yytype_uint8 yystos[] =
       
  1406 {
       
  1407        0,    28,    29,    30,    32,    33,    34,    38,   103,   104,
       
  1408      105,   106,   107,   108,   109,   110,   111,    87,    87,    87,
       
  1409       87,     5,    87,    87,     0,   111,   111,   111,   111,   111,
       
  1410      111,   111,     5,    26,   113,   115,   111,   111,   111,   111,
       
  1411      111,   111,   111,     1,   111,   112,    13,    15,    16,    17,
       
  1412       18,    19,    20,    21,    22,    23,    24,    25,    27,    31,
       
  1413       35,    36,   117,   122,   123,   129,   141,   143,   149,   155,
       
  1414      159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
       
  1415      170,   174,     1,    13,    56,    86,   175,   176,   177,   178,
       
  1416      184,    13,    79,   146,   147,   148,    12,    13,    15,    16,
       
  1417       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
       
  1418       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
       
  1419       80,    81,    82,    83,    85,    93,    96,   100,   101,   158,
       
  1420      180,   182,   183,   184,   185,   186,    57,    58,    90,   134,
       
  1421      135,   137,   138,   160,     1,    13,   125,   126,   127,   128,
       
  1422       87,    89,   190,    12,     5,     6,   116,    21,    13,    17,
       
  1423       83,    84,    13,   111,    21,     1,   111,     1,   111,   111,
       
  1424        1,   111,     1,   111,   111,   111,   111,   111,     1,    87,
       
  1425       92,   164,     1,     5,    93,    94,    95,   156,    13,    20,
       
  1426      165,   166,   166,     1,   167,    89,   190,   191,   111,   111,
       
  1427       88,     1,   177,   191,    89,   191,     1,    17,   190,   111,
       
  1428      111,   111,   111,   111,   111,   111,   111,   111,   111,   111,
       
  1429      111,   111,   111,   111,   111,   111,   111,   111,   111,   111,
       
  1430      111,   111,   111,   111,   111,   111,   111,   111,   111,   111,
       
  1431      111,   111,   111,    78,   183,     1,    88,    92,    99,   181,
       
  1432      191,   111,   111,   111,   111,    88,    88,    89,   191,   111,
       
  1433       88,     1,   127,    89,   191,     1,    17,   111,     1,   111,
       
  1434        1,    55,   117,   118,   188,   189,    13,   111,   111,    13,
       
  1435       20,   163,   169,    89,   190,    12,    82,   131,    89,   190,
       
  1436       13,    17,   150,   173,    87,   138,   140,    89,   190,    87,
       
  1437       89,   190,    13,   130,    12,    13,   144,   139,   140,    37,
       
  1438      124,    88,   111,   111,   111,   111,   111,   164,   166,   111,
       
  1439        1,    89,   191,    89,     1,   111,    89,   111,   111,    88,
       
  1440       87,    92,     1,   180,   111,   111,   111,   182,     1,    13,
       
  1441      132,    59,    13,   142,   111,     1,    89,   191,    89,   111,
       
  1442       89,   111,    87,     0,    88,   114,   191,    89,   190,     1,
       
  1443      112,    13,    14,   157,   158,   164,   111,    13,   169,     7,
       
  1444        8,     9,    10,    11,    97,    98,   171,   111,   173,    13,
       
  1445      111,   111,     1,    87,    92,   111,   111,   131,   111,    87,
       
  1446        5,    87,   175,   162,    89,   190,   111,     1,   111,   111,
       
  1447        1,   180,   111,   111,    91,   111,   111,   111,   111,    59,
       
  1448      136,    89,   111,     1,   111,   111,     1,   180,   111,     1,
       
  1449       89,   190,   111,   111,    81,   111,    97,   171,   111,   139,
       
  1450       87,   119,   111,   111,   175,   111,    87,   111,   140,   111,
       
  1451      114,   111,    89,   180,    56,   179,   175,   148,   111,    17,
       
  1452      133,   134,   111,   111,    89,   180,   175,   114,    91,    91,
       
  1453      111,    91,   111,    12,    13,   172,    89,   190,   111,     1,
       
  1454      114,   120,   121,   122,   123,   129,   141,   143,   149,   155,
       
  1455      159,   187,   188,   189,   119,   138,    88,    89,   190,   111,
       
  1456      125,   125,   111,   179,   111,     1,    88,   111,    91,   135,
       
  1457      111,    88,    91,   172,   111,   151,   175,   114,   112,   187,
       
  1458      111,   145,    88,    88,   180,   111,   111,   111,    97,    39,
       
  1459       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
       
  1460       50,    51,    52,    53,    54,   114,   152,   154,    88,   146,
       
  1461      111,    97,   111,   153,   111,   175,   111,    87,   111,   175,
       
  1462      114
       
  1463 };
       
  1464 
       
  1465 #define yyerrok		(yyerrstatus = 0)
       
  1466 #define yyclearin	(yychar = YYEMPTY)
       
  1467 #define YYEMPTY		(-2)
       
  1468 #define YYEOF		0
       
  1469 
       
  1470 #define YYACCEPT	goto yyacceptlab
       
  1471 #define YYABORT		goto yyabortlab
       
  1472 #define YYERROR		goto yyerrorlab
       
  1473 
       
  1474 
       
  1475 /* Like YYERROR except do call yyerror.  This remains here temporarily
       
  1476    to ease the transition to the new meaning of YYERROR, for GCC.
       
  1477    Once GCC version 2 has supplanted version 1, this can go.  */
       
  1478 
       
  1479 #define YYFAIL		goto yyerrlab
       
  1480 
       
  1481 #define YYRECOVERING()  (!!yyerrstatus)
       
  1482 
       
  1483 #define YYBACKUP(Token, Value)					\
       
  1484 do								\
       
  1485   if (yychar == YYEMPTY && yylen == 1)				\
       
  1486     {								\
       
  1487       yychar = (Token);						\
       
  1488       yylval = (Value);						\
       
  1489       yytoken = YYTRANSLATE (yychar);				\
       
  1490       YYPOPSTACK (1);						\
       
  1491       goto yybackup;						\
       
  1492     }								\
       
  1493   else								\
       
  1494     {								\
       
  1495       yyerror (YY_("syntax error: cannot back up")); \
       
  1496       YYERROR;							\
       
  1497     }								\
       
  1498 while (YYID (0))
       
  1499 
       
  1500 
       
  1501 #define YYTERROR	1
       
  1502 #define YYERRCODE	256
       
  1503 
       
  1504 
       
  1505 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
       
  1506    If N is 0, then set CURRENT to the empty location which ends
       
  1507    the previous symbol: RHS[0] (always defined).  */
       
  1508 
       
  1509 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
       
  1510 #ifndef YYLLOC_DEFAULT
       
  1511 # define YYLLOC_DEFAULT(Current, Rhs, N)				\
       
  1512     do									\
       
  1513       if (YYID (N))                                                    \
       
  1514 	{								\
       
  1515 	  (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;	\
       
  1516 	  (Current).first_column = YYRHSLOC (Rhs, 1).first_column;	\
       
  1517 	  (Current).last_line    = YYRHSLOC (Rhs, N).last_line;		\
       
  1518 	  (Current).last_column  = YYRHSLOC (Rhs, N).last_column;	\
       
  1519 	}								\
       
  1520       else								\
       
  1521 	{								\
       
  1522 	  (Current).first_line   = (Current).last_line   =		\
       
  1523 	    YYRHSLOC (Rhs, 0).last_line;				\
       
  1524 	  (Current).first_column = (Current).last_column =		\
       
  1525 	    YYRHSLOC (Rhs, 0).last_column;				\
       
  1526 	}								\
       
  1527     while (YYID (0))
       
  1528 #endif
       
  1529 
       
  1530 
       
  1531 /* YY_LOCATION_PRINT -- Print the location on the stream.
       
  1532    This macro was not mandated originally: define only if we know
       
  1533    we won't break user code: when these are the locations we know.  */
       
  1534 
       
  1535 #ifndef YY_LOCATION_PRINT
       
  1536 # if YYLTYPE_IS_TRIVIAL
       
  1537 #  define YY_LOCATION_PRINT(File, Loc)			\
       
  1538      fprintf (File, "%d.%d-%d.%d",			\
       
  1539 	      (Loc).first_line, (Loc).first_column,	\
       
  1540 	      (Loc).last_line,  (Loc).last_column)
       
  1541 # else
       
  1542 #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
       
  1543 # endif
       
  1544 #endif
       
  1545 
       
  1546 
       
  1547 /* YYLEX -- calling `yylex' with the right arguments.  */
       
  1548 
       
  1549 #ifdef YYLEX_PARAM
       
  1550 # define YYLEX yylex (&yylval, YYLEX_PARAM)
       
  1551 #else
       
  1552 # define YYLEX yylex (&yylval)
       
  1553 #endif
       
  1554 
       
  1555 /* Enable debugging if requested.  */
       
  1556 #if YYDEBUG
       
  1557 
       
  1558 # ifndef YYFPRINTF
       
  1559 #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
       
  1560 #  define YYFPRINTF fprintf
       
  1561 # endif
       
  1562 
       
  1563 # define YYDPRINTF(Args)			\
       
  1564 do {						\
       
  1565   if (yydebug)					\
       
  1566     YYFPRINTF Args;				\
       
  1567 } while (YYID (0))
       
  1568 
       
  1569 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)			  \
       
  1570 do {									  \
       
  1571   if (yydebug)								  \
       
  1572     {									  \
       
  1573       YYFPRINTF (stderr, "%s ", Title);					  \
       
  1574       yy_symbol_print (stderr,						  \
       
  1575 		  Type, Value); \
       
  1576       YYFPRINTF (stderr, "\n");						  \
       
  1577     }									  \
       
  1578 } while (YYID (0))
       
  1579 
       
  1580 
       
  1581 /*--------------------------------.
       
  1582 | Print this symbol on YYOUTPUT.  |
       
  1583 `--------------------------------*/
       
  1584 
       
  1585 /*ARGSUSED*/
       
  1586 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  1587      || defined __cplusplus || defined _MSC_VER)
       
  1588 static void
       
  1589 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
       
  1590 #else
       
  1591 static void
       
  1592 yy_symbol_value_print (yyoutput, yytype, yyvaluep)
       
  1593     FILE *yyoutput;
       
  1594     int yytype;
       
  1595     YYSTYPE const * const yyvaluep;
       
  1596 #endif
       
  1597 {
       
  1598   if (!yyvaluep)
       
  1599     return;
       
  1600 # ifdef YYPRINT
       
  1601   if (yytype < YYNTOKENS)
       
  1602     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
       
  1603 # else
       
  1604   YYUSE (yyoutput);
       
  1605 # endif
       
  1606   switch (yytype)
       
  1607     {
       
  1608       default:
       
  1609 	break;
       
  1610     }
       
  1611 }
       
  1612 
       
  1613 
       
  1614 /*--------------------------------.
       
  1615 | Print this symbol on YYOUTPUT.  |
       
  1616 `--------------------------------*/
       
  1617 
       
  1618 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  1619      || defined __cplusplus || defined _MSC_VER)
       
  1620 static void
       
  1621 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
       
  1622 #else
       
  1623 static void
       
  1624 yy_symbol_print (yyoutput, yytype, yyvaluep)
       
  1625     FILE *yyoutput;
       
  1626     int yytype;
       
  1627     YYSTYPE const * const yyvaluep;
       
  1628 #endif
       
  1629 {
       
  1630   if (yytype < YYNTOKENS)
       
  1631     YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
       
  1632   else
       
  1633     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
       
  1634 
       
  1635   yy_symbol_value_print (yyoutput, yytype, yyvaluep);
       
  1636   YYFPRINTF (yyoutput, ")");
       
  1637 }
       
  1638 
       
  1639 /*------------------------------------------------------------------.
       
  1640 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
       
  1641 | TOP (included).                                                   |
       
  1642 `------------------------------------------------------------------*/
       
  1643 
       
  1644 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  1645      || defined __cplusplus || defined _MSC_VER)
       
  1646 static void
       
  1647 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
       
  1648 #else
       
  1649 static void
       
  1650 yy_stack_print (yybottom, yytop)
       
  1651     yytype_int16 *yybottom;
       
  1652     yytype_int16 *yytop;
       
  1653 #endif
       
  1654 {
       
  1655   YYFPRINTF (stderr, "Stack now");
       
  1656   for (; yybottom <= yytop; yybottom++)
       
  1657     {
       
  1658       int yybot = *yybottom;
       
  1659       YYFPRINTF (stderr, " %d", yybot);
       
  1660     }
       
  1661   YYFPRINTF (stderr, "\n");
       
  1662 }
       
  1663 
       
  1664 # define YY_STACK_PRINT(Bottom, Top)				\
       
  1665 do {								\
       
  1666   if (yydebug)							\
       
  1667     yy_stack_print ((Bottom), (Top));				\
       
  1668 } while (YYID (0))
       
  1669 
       
  1670 
       
  1671 /*------------------------------------------------.
       
  1672 | Report that the YYRULE is going to be reduced.  |
       
  1673 `------------------------------------------------*/
       
  1674 
       
  1675 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  1676      || defined __cplusplus || defined _MSC_VER)
       
  1677 static void
       
  1678 yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
       
  1679 #else
       
  1680 static void
       
  1681 yy_reduce_print (yyvsp, yyrule)
       
  1682     YYSTYPE *yyvsp;
       
  1683     int yyrule;
       
  1684 #endif
       
  1685 {
       
  1686   int yynrhs = yyr2[yyrule];
       
  1687   int yyi;
       
  1688   unsigned long int yylno = yyrline[yyrule];
       
  1689   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
       
  1690 	     yyrule - 1, yylno);
       
  1691   /* The symbols being reduced.  */
       
  1692   for (yyi = 0; yyi < yynrhs; yyi++)
       
  1693     {
       
  1694       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
       
  1695       yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
       
  1696 		       &(yyvsp[(yyi + 1) - (yynrhs)])
       
  1697 		       		       );
       
  1698       YYFPRINTF (stderr, "\n");
       
  1699     }
       
  1700 }
       
  1701 
       
  1702 # define YY_REDUCE_PRINT(Rule)		\
       
  1703 do {					\
       
  1704   if (yydebug)				\
       
  1705     yy_reduce_print (yyvsp, Rule); \
       
  1706 } while (YYID (0))
       
  1707 
       
  1708 /* Nonzero means print parse trace.  It is left uninitialized so that
       
  1709    multiple parsers can coexist.  */
       
  1710 int yydebug;
       
  1711 #else /* !YYDEBUG */
       
  1712 # define YYDPRINTF(Args)
       
  1713 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
       
  1714 # define YY_STACK_PRINT(Bottom, Top)
       
  1715 # define YY_REDUCE_PRINT(Rule)
       
  1716 #endif /* !YYDEBUG */
       
  1717 
       
  1718 
       
  1719 /* YYINITDEPTH -- initial size of the parser's stacks.  */
       
  1720 #ifndef	YYINITDEPTH
       
  1721 # define YYINITDEPTH 200
       
  1722 #endif
       
  1723 
       
  1724 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
       
  1725    if the built-in stack extension method is used).
       
  1726 
       
  1727    Do not make this value too large; the results are undefined if
       
  1728    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
       
  1729    evaluated with infinite-precision integer arithmetic.  */
       
  1730 
       
  1731 #ifndef YYMAXDEPTH
       
  1732 # define YYMAXDEPTH 10000
       
  1733 #endif
       
  1734 
       
  1735 
       
  1736 
       
  1737 #if YYERROR_VERBOSE
       
  1738 
       
  1739 # ifndef yystrlen
       
  1740 #  if defined __GLIBC__ && defined _STRING_H
       
  1741 #   define yystrlen strlen
       
  1742 #  else
       
  1743 /* Return the length of YYSTR.  */
       
  1744 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  1745      || defined __cplusplus || defined _MSC_VER)
       
  1746 static YYSIZE_T
       
  1747 yystrlen (const char *yystr)
       
  1748 #else
       
  1749 static YYSIZE_T
       
  1750 yystrlen (yystr)
       
  1751     const char *yystr;
       
  1752 #endif
       
  1753 {
       
  1754   YYSIZE_T yylen;
       
  1755   for (yylen = 0; yystr[yylen]; yylen++)
       
  1756     continue;
       
  1757   return yylen;
       
  1758 }
       
  1759 #  endif
       
  1760 # endif
       
  1761 
       
  1762 # ifndef yystpcpy
       
  1763 #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
       
  1764 #   define yystpcpy stpcpy
       
  1765 #  else
       
  1766 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
       
  1767    YYDEST.  */
       
  1768 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  1769      || defined __cplusplus || defined _MSC_VER)
       
  1770 static char *
       
  1771 yystpcpy (char *yydest, const char *yysrc)
       
  1772 #else
       
  1773 static char *
       
  1774 yystpcpy (yydest, yysrc)
       
  1775     char *yydest;
       
  1776     const char *yysrc;
       
  1777 #endif
       
  1778 {
       
  1779   char *yyd = yydest;
       
  1780   const char *yys = yysrc;
       
  1781 
       
  1782   while ((*yyd++ = *yys++) != '\0')
       
  1783     continue;
       
  1784 
       
  1785   return yyd - 1;
       
  1786 }
       
  1787 #  endif
       
  1788 # endif
       
  1789 
       
  1790 # ifndef yytnamerr
       
  1791 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
       
  1792    quotes and backslashes, so that it's suitable for yyerror.  The
       
  1793    heuristic is that double-quoting is unnecessary unless the string
       
  1794    contains an apostrophe, a comma, or backslash (other than
       
  1795    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
       
  1796    null, do not copy; instead, return the length of what the result
       
  1797    would have been.  */
       
  1798 static YYSIZE_T
       
  1799 yytnamerr (char *yyres, const char *yystr)
       
  1800 {
       
  1801   if (*yystr == '"')
       
  1802     {
       
  1803       YYSIZE_T yyn = 0;
       
  1804       char const *yyp = yystr;
       
  1805 
       
  1806       for (;;)
       
  1807 	switch (*++yyp)
       
  1808 	  {
       
  1809 	  case '\'':
       
  1810 	  case ',':
       
  1811 	    goto do_not_strip_quotes;
       
  1812 
       
  1813 	  case '\\':
       
  1814 	    if (*++yyp != '\\')
       
  1815 	      goto do_not_strip_quotes;
       
  1816 	    /* Fall through.  */
       
  1817 	  default:
       
  1818 	    if (yyres)
       
  1819 	      yyres[yyn] = *yyp;
       
  1820 	    yyn++;
       
  1821 	    break;
       
  1822 
       
  1823 	  case '"':
       
  1824 	    if (yyres)
       
  1825 	      yyres[yyn] = '\0';
       
  1826 	    return yyn;
       
  1827 	  }
       
  1828     do_not_strip_quotes: ;
       
  1829     }
       
  1830 
       
  1831   if (! yyres)
       
  1832     return yystrlen (yystr);
       
  1833 
       
  1834   return yystpcpy (yyres, yystr) - yyres;
       
  1835 }
       
  1836 # endif
       
  1837 
       
  1838 /* Copy into YYRESULT an error message about the unexpected token
       
  1839    YYCHAR while in state YYSTATE.  Return the number of bytes copied,
       
  1840    including the terminating null byte.  If YYRESULT is null, do not
       
  1841    copy anything; just return the number of bytes that would be
       
  1842    copied.  As a special case, return 0 if an ordinary "syntax error"
       
  1843    message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
       
  1844    size calculation.  */
       
  1845 static YYSIZE_T
       
  1846 yysyntax_error (char *yyresult, int yystate, int yychar)
       
  1847 {
       
  1848   int yyn = yypact[yystate];
       
  1849 
       
  1850   if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
       
  1851     return 0;
       
  1852   else
       
  1853     {
       
  1854       int yytype = YYTRANSLATE (yychar);
       
  1855       YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
       
  1856       YYSIZE_T yysize = yysize0;
       
  1857       YYSIZE_T yysize1;
       
  1858       int yysize_overflow = 0;
       
  1859       enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
       
  1860       char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
       
  1861       int yyx;
       
  1862 
       
  1863 # if 0
       
  1864       /* This is so xgettext sees the translatable formats that are
       
  1865 	 constructed on the fly.  */
       
  1866       YY_("syntax error, unexpected %s");
       
  1867       YY_("syntax error, unexpected %s, expecting %s");
       
  1868       YY_("syntax error, unexpected %s, expecting %s or %s");
       
  1869       YY_("syntax error, unexpected %s, expecting %s or %s or %s");
       
  1870       YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
       
  1871 # endif
       
  1872       char *yyfmt;
       
  1873       char const *yyf;
       
  1874       static char const yyunexpected[] = "syntax error, unexpected %s";
       
  1875       static char const yyexpecting[] = ", expecting %s";
       
  1876       static char const yyor[] = " or %s";
       
  1877       char yyformat[sizeof yyunexpected
       
  1878 		    + sizeof yyexpecting - 1
       
  1879 		    + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
       
  1880 		       * (sizeof yyor - 1))];
       
  1881       char const *yyprefix = yyexpecting;
       
  1882 
       
  1883       /* Start YYX at -YYN if negative to avoid negative indexes in
       
  1884 	 YYCHECK.  */
       
  1885       int yyxbegin = yyn < 0 ? -yyn : 0;
       
  1886 
       
  1887       /* Stay within bounds of both yycheck and yytname.  */
       
  1888       int yychecklim = YYLAST - yyn + 1;
       
  1889       int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
       
  1890       int yycount = 1;
       
  1891 
       
  1892       yyarg[0] = yytname[yytype];
       
  1893       yyfmt = yystpcpy (yyformat, yyunexpected);
       
  1894 
       
  1895       for (yyx = yyxbegin; yyx < yyxend; ++yyx)
       
  1896 	if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
       
  1897 	  {
       
  1898 	    if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
       
  1899 	      {
       
  1900 		yycount = 1;
       
  1901 		yysize = yysize0;
       
  1902 		yyformat[sizeof yyunexpected - 1] = '\0';
       
  1903 		break;
       
  1904 	      }
       
  1905 	    yyarg[yycount++] = yytname[yyx];
       
  1906 	    yysize1 = yysize + yytnamerr (0, yytname[yyx]);
       
  1907 	    yysize_overflow |= (yysize1 < yysize);
       
  1908 	    yysize = yysize1;
       
  1909 	    yyfmt = yystpcpy (yyfmt, yyprefix);
       
  1910 	    yyprefix = yyor;
       
  1911 	  }
       
  1912 
       
  1913       yyf = YY_(yyformat);
       
  1914       yysize1 = yysize + yystrlen (yyf);
       
  1915       yysize_overflow |= (yysize1 < yysize);
       
  1916       yysize = yysize1;
       
  1917 
       
  1918       if (yysize_overflow)
       
  1919 	return YYSIZE_MAXIMUM;
       
  1920 
       
  1921       if (yyresult)
       
  1922 	{
       
  1923 	  /* Avoid sprintf, as that infringes on the user's name space.
       
  1924 	     Don't have undefined behavior even if the translation
       
  1925 	     produced a string with the wrong number of "%s"s.  */
       
  1926 	  char *yyp = yyresult;
       
  1927 	  int yyi = 0;
       
  1928 	  while ((*yyp = *yyf) != '\0')
       
  1929 	    {
       
  1930 	      if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
       
  1931 		{
       
  1932 		  yyp += yytnamerr (yyp, yyarg[yyi++]);
       
  1933 		  yyf += 2;
       
  1934 		}
       
  1935 	      else
       
  1936 		{
       
  1937 		  yyp++;
       
  1938 		  yyf++;
       
  1939 		}
       
  1940 	    }
       
  1941 	}
       
  1942       return yysize;
       
  1943     }
       
  1944 }
       
  1945 #endif /* YYERROR_VERBOSE */
       
  1946 
       
  1947 
       
  1948 /*-----------------------------------------------.
       
  1949 | Release the memory associated to this symbol.  |
       
  1950 `-----------------------------------------------*/
       
  1951 
       
  1952 /*ARGSUSED*/
       
  1953 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  1954      || defined __cplusplus || defined _MSC_VER)
       
  1955 static void
       
  1956 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
       
  1957 #else
       
  1958 static void
       
  1959 yydestruct (yymsg, yytype, yyvaluep)
       
  1960     const char *yymsg;
       
  1961     int yytype;
       
  1962     YYSTYPE *yyvaluep;
       
  1963 #endif
       
  1964 {
       
  1965   YYUSE (yyvaluep);
       
  1966 
       
  1967   if (!yymsg)
       
  1968     yymsg = "Deleting";
       
  1969   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
       
  1970 
       
  1971   switch (yytype)
       
  1972     {
       
  1973 
       
  1974       default:
       
  1975 	break;
       
  1976     }
       
  1977 }
       
  1978 
       
  1979 /* Prevent warnings from -Wmissing-prototypes.  */
       
  1980 #ifdef YYPARSE_PARAM
       
  1981 #if defined __STDC__ || defined __cplusplus
       
  1982 int yyparse (void *YYPARSE_PARAM);
       
  1983 #else
       
  1984 int yyparse ();
       
  1985 #endif
       
  1986 #else /* ! YYPARSE_PARAM */
       
  1987 #if defined __STDC__ || defined __cplusplus
       
  1988 int yyparse (void);
       
  1989 #else
       
  1990 int yyparse ();
       
  1991 #endif
       
  1992 #endif /* ! YYPARSE_PARAM */
       
  1993 
       
  1994 
       
  1995 
       
  1996 
       
  1997 
       
  1998 /*-------------------------.
       
  1999 | yyparse or yypush_parse.  |
       
  2000 `-------------------------*/
       
  2001 
       
  2002 #ifdef YYPARSE_PARAM
       
  2003 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  2004      || defined __cplusplus || defined _MSC_VER)
       
  2005 int
       
  2006 yyparse (void *YYPARSE_PARAM)
       
  2007 #else
       
  2008 int
       
  2009 yyparse (YYPARSE_PARAM)
       
  2010     void *YYPARSE_PARAM;
       
  2011 #endif
       
  2012 #else /* ! YYPARSE_PARAM */
       
  2013 #if (defined __STDC__ || defined __C99__FUNC__ \
       
  2014      || defined __cplusplus || defined _MSC_VER)
       
  2015 int
       
  2016 yyparse (void)
       
  2017 #else
       
  2018 int
       
  2019 yyparse ()
       
  2020 
       
  2021 #endif
       
  2022 #endif
       
  2023 {
       
  2024 /* The lookahead symbol.  */
       
  2025 int yychar;
       
  2026 
       
  2027 /* The semantic value of the lookahead symbol.  */
       
  2028 YYSTYPE yylval;
       
  2029 
       
  2030     /* Number of syntax errors so far.  */
       
  2031     int yynerrs;
       
  2032 
       
  2033     int yystate;
       
  2034     /* Number of tokens to shift before error messages enabled.  */
       
  2035     int yyerrstatus;
       
  2036 
       
  2037     /* The stacks and their tools:
       
  2038        `yyss': related to states.
       
  2039        `yyvs': related to semantic values.
       
  2040 
       
  2041        Refer to the stacks thru separate pointers, to allow yyoverflow
       
  2042        to reallocate them elsewhere.  */
       
  2043 
       
  2044     /* The state stack.  */
       
  2045     yytype_int16 yyssa[YYINITDEPTH];
       
  2046     yytype_int16 *yyss;
       
  2047     yytype_int16 *yyssp;
       
  2048 
       
  2049     /* The semantic value stack.  */
       
  2050     YYSTYPE yyvsa[YYINITDEPTH];
       
  2051     YYSTYPE *yyvs;
       
  2052     YYSTYPE *yyvsp;
       
  2053 
       
  2054     YYSIZE_T yystacksize;
       
  2055 
       
  2056   int yyn;
       
  2057   int yyresult;
       
  2058   /* Lookahead token as an internal (translated) token number.  */
       
  2059   int yytoken;
       
  2060   /* The variables used to return semantic value and location from the
       
  2061      action routines.  */
       
  2062   YYSTYPE yyval;
       
  2063 
       
  2064 #if YYERROR_VERBOSE
       
  2065   /* Buffer for error messages, and its allocated size.  */
       
  2066   char yymsgbuf[128];
       
  2067   char *yymsg = yymsgbuf;
       
  2068   YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
       
  2069 #endif
       
  2070 
       
  2071 #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
       
  2072 
       
  2073   /* The number of symbols on the RHS of the reduced rule.
       
  2074      Keep to zero when no symbol should be popped.  */
       
  2075   int yylen = 0;
       
  2076 
       
  2077   yytoken = 0;
       
  2078   yyss = yyssa;
       
  2079   yyvs = yyvsa;
       
  2080   yystacksize = YYINITDEPTH;
       
  2081 
       
  2082   YYDPRINTF ((stderr, "Starting parse\n"));
       
  2083 
       
  2084   yystate = 0;
       
  2085   yyerrstatus = 0;
       
  2086   yynerrs = 0;
       
  2087   yychar = YYEMPTY; /* Cause a token to be read.  */
       
  2088 
       
  2089   /* Initialize stack pointers.
       
  2090      Waste one element of value and location stack
       
  2091      so that they stay on the same level as the state stack.
       
  2092      The wasted elements are never initialized.  */
       
  2093   yyssp = yyss;
       
  2094   yyvsp = yyvs;
       
  2095 
       
  2096   goto yysetstate;
       
  2097 
       
  2098 /*------------------------------------------------------------.
       
  2099 | yynewstate -- Push a new state, which is found in yystate.  |
       
  2100 `------------------------------------------------------------*/
       
  2101  yynewstate:
       
  2102   /* In all cases, when you get here, the value and location stacks
       
  2103      have just been pushed.  So pushing a state here evens the stacks.  */
       
  2104   yyssp++;
       
  2105 
       
  2106  yysetstate:
       
  2107   *yyssp = yystate;
       
  2108 
       
  2109   if (yyss + yystacksize - 1 <= yyssp)
       
  2110     {
       
  2111       /* Get the current used size of the three stacks, in elements.  */
       
  2112       YYSIZE_T yysize = yyssp - yyss + 1;
       
  2113 
       
  2114 #ifdef yyoverflow
       
  2115       {
       
  2116 	/* Give user a chance to reallocate the stack.  Use copies of
       
  2117 	   these so that the &'s don't force the real ones into
       
  2118 	   memory.  */
       
  2119 	YYSTYPE *yyvs1 = yyvs;
       
  2120 	yytype_int16 *yyss1 = yyss;
       
  2121 
       
  2122 	/* Each stack pointer address is followed by the size of the
       
  2123 	   data in use in that stack, in bytes.  This used to be a
       
  2124 	   conditional around just the two extra args, but that might
       
  2125 	   be undefined if yyoverflow is a macro.  */
       
  2126 	yyoverflow (YY_("memory exhausted"),
       
  2127 		    &yyss1, yysize * sizeof (*yyssp),
       
  2128 		    &yyvs1, yysize * sizeof (*yyvsp),
       
  2129 		    &yystacksize);
       
  2130 
       
  2131 	yyss = yyss1;
       
  2132 	yyvs = yyvs1;
       
  2133       }
       
  2134 #else /* no yyoverflow */
       
  2135 # ifndef YYSTACK_RELOCATE
       
  2136       goto yyexhaustedlab;
       
  2137 # else
       
  2138       /* Extend the stack our own way.  */
       
  2139       if (YYMAXDEPTH <= yystacksize)
       
  2140 	goto yyexhaustedlab;
       
  2141       yystacksize *= 2;
       
  2142       if (YYMAXDEPTH < yystacksize)
       
  2143 	yystacksize = YYMAXDEPTH;
       
  2144 
       
  2145       {
       
  2146 	yytype_int16 *yyss1 = yyss;
       
  2147 	union yyalloc *yyptr =
       
  2148 	  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
       
  2149 	if (! yyptr)
       
  2150 	  goto yyexhaustedlab;
       
  2151 	YYSTACK_RELOCATE (yyss_alloc, yyss);
       
  2152 	YYSTACK_RELOCATE (yyvs_alloc, yyvs);
       
  2153 #  undef YYSTACK_RELOCATE
       
  2154 	if (yyss1 != yyssa)
       
  2155 	  YYSTACK_FREE (yyss1);
       
  2156       }
       
  2157 # endif
       
  2158 #endif /* no yyoverflow */
       
  2159 
       
  2160       yyssp = yyss + yysize - 1;
       
  2161       yyvsp = yyvs + yysize - 1;
       
  2162 
       
  2163       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
       
  2164 		  (unsigned long int) yystacksize));
       
  2165 
       
  2166       if (yyss + yystacksize - 1 <= yyssp)
       
  2167 	YYABORT;
       
  2168     }
       
  2169 
       
  2170   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
       
  2171 
       
  2172   if (yystate == YYFINAL)
       
  2173     YYACCEPT;
       
  2174 
       
  2175   goto yybackup;
       
  2176 
       
  2177 /*-----------.
       
  2178 | yybackup.  |
       
  2179 `-----------*/
       
  2180 yybackup:
       
  2181 
       
  2182   /* Do appropriate processing given the current state.  Read a
       
  2183      lookahead token if we need one and don't already have one.  */
       
  2184 
       
  2185   /* First try to decide what to do without reference to lookahead token.  */
       
  2186   yyn = yypact[yystate];
       
  2187   if (yyn == YYPACT_NINF)
       
  2188     goto yydefault;
       
  2189 
       
  2190   /* Not known => get a lookahead token if don't already have one.  */
       
  2191 
       
  2192   /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
       
  2193   if (yychar == YYEMPTY)
       
  2194     {
       
  2195       YYDPRINTF ((stderr, "Reading a token: "));
       
  2196       yychar = YYLEX;
       
  2197     }
       
  2198 
       
  2199   if (yychar <= YYEOF)
       
  2200     {
       
  2201       yychar = yytoken = YYEOF;
       
  2202       YYDPRINTF ((stderr, "Now at end of input.\n"));
       
  2203     }
       
  2204   else
       
  2205     {
       
  2206       yytoken = YYTRANSLATE (yychar);
       
  2207       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
       
  2208     }
       
  2209 
       
  2210   /* If the proper action on seeing token YYTOKEN is to reduce or to
       
  2211      detect an error, take that action.  */
       
  2212   yyn += yytoken;
       
  2213   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
       
  2214     goto yydefault;
       
  2215   yyn = yytable[yyn];
       
  2216   if (yyn <= 0)
       
  2217     {
       
  2218       if (yyn == 0 || yyn == YYTABLE_NINF)
       
  2219 	goto yyerrlab;
       
  2220       yyn = -yyn;
       
  2221       goto yyreduce;
       
  2222     }
       
  2223 
       
  2224   /* Count tokens shifted since error; after three, turn off error
       
  2225      status.  */
       
  2226   if (yyerrstatus)
       
  2227     yyerrstatus--;
       
  2228 
       
  2229   /* Shift the lookahead token.  */
       
  2230   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
       
  2231 
       
  2232   /* Discard the shifted token.  */
       
  2233   yychar = YYEMPTY;
       
  2234 
       
  2235   yystate = yyn;
       
  2236   *++yyvsp = yylval;
       
  2237 
       
  2238   goto yynewstate;
       
  2239 
       
  2240 
       
  2241 /*-----------------------------------------------------------.
       
  2242 | yydefault -- do the default action for the current state.  |
       
  2243 `-----------------------------------------------------------*/
       
  2244 yydefault:
       
  2245   yyn = yydefact[yystate];
       
  2246   if (yyn == 0)
       
  2247     goto yyerrlab;
       
  2248   goto yyreduce;
       
  2249 
       
  2250 
       
  2251 /*-----------------------------.
       
  2252 | yyreduce -- Do a reduction.  |
       
  2253 `-----------------------------*/
       
  2254 yyreduce:
       
  2255   /* yyn is the number of a rule to reduce with.  */
       
  2256   yylen = yyr2[yyn];
       
  2257 
       
  2258   /* If YYLEN is nonzero, implement the default value of the action:
       
  2259      `$$ = $1'.
       
  2260 
       
  2261      Otherwise, the following line sets YYVAL to garbage.
       
  2262      This behavior is undocumented and Bison
       
  2263      users should not rely upon it.  Assigning to YYVAL
       
  2264      unconditionally makes the parser a bit smaller, and it avoids a
       
  2265      GCC warning that YYVAL may be used uninitialized.  */
       
  2266   yyval = yyvsp[1-yylen];
       
  2267 
       
  2268 
       
  2269   YY_REDUCE_PRINT (yyn);
       
  2270   switch (yyn)
       
  2271     {
       
  2272         case 10:
       
  2273 
       
  2274 /* Line 1455 of yacc.c  */
       
  2275 #line 303 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2276     {
       
  2277         static_cast<CSSParser*>(parser)->m_rule = (yyvsp[(4) - (6)].rule);
       
  2278     ;}
       
  2279     break;
       
  2280 
       
  2281   case 11:
       
  2282 
       
  2283 /* Line 1455 of yacc.c  */
       
  2284 #line 309 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2285     {
       
  2286         static_cast<CSSParser*>(parser)->m_keyframe = (yyvsp[(4) - (6)].keyframeRule);
       
  2287     ;}
       
  2288     break;
       
  2289 
       
  2290   case 12:
       
  2291 
       
  2292 /* Line 1455 of yacc.c  */
       
  2293 #line 315 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2294     {
       
  2295         /* can be empty */
       
  2296     ;}
       
  2297     break;
       
  2298 
       
  2299   case 13:
       
  2300 
       
  2301 /* Line 1455 of yacc.c  */
       
  2302 #line 321 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2303     {
       
  2304         /* can be empty */
       
  2305     ;}
       
  2306     break;
       
  2307 
       
  2308   case 14:
       
  2309 
       
  2310 /* Line 1455 of yacc.c  */
       
  2311 #line 327 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2312     {
       
  2313         CSSParser* p = static_cast<CSSParser*>(parser);
       
  2314         if ((yyvsp[(4) - (5)].valueList)) {
       
  2315             p->m_valueList = p->sinkFloatingValueList((yyvsp[(4) - (5)].valueList));
       
  2316             int oldParsedProperties = p->m_numParsedProperties;
       
  2317             if (!p->parseValue(p->m_id, p->m_important))
       
  2318                 p->rollbackLastProperties(p->m_numParsedProperties - oldParsedProperties);
       
  2319             delete p->m_valueList;
       
  2320             p->m_valueList = 0;
       
  2321         }
       
  2322     ;}
       
  2323     break;
       
  2324 
       
  2325   case 15:
       
  2326 
       
  2327 /* Line 1455 of yacc.c  */
       
  2328 #line 341 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2329     {
       
  2330          CSSParser* p = static_cast<CSSParser*>(parser);
       
  2331          p->m_mediaQuery = p->sinkFloatingMediaQuery((yyvsp[(4) - (5)].mediaQuery));
       
  2332      ;}
       
  2333     break;
       
  2334 
       
  2335   case 16:
       
  2336 
       
  2337 /* Line 1455 of yacc.c  */
       
  2338 #line 348 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2339     {
       
  2340         if ((yyvsp[(4) - (5)].selectorList)) {
       
  2341             CSSParser* p = static_cast<CSSParser*>(parser);
       
  2342             if (p->m_selectorListForParseSelector)
       
  2343                 p->m_selectorListForParseSelector->adoptSelectorVector(*(yyvsp[(4) - (5)].selectorList));
       
  2344         }
       
  2345     ;}
       
  2346     break;
       
  2347 
       
  2348   case 23:
       
  2349 
       
  2350 /* Line 1455 of yacc.c  */
       
  2351 #line 370 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2352     {
       
  2353   ;}
       
  2354     break;
       
  2355 
       
  2356   case 26:
       
  2357 
       
  2358 /* Line 1455 of yacc.c  */
       
  2359 #line 380 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2360     {
       
  2361      CSSParser* p = static_cast<CSSParser*>(parser);
       
  2362      (yyval.rule) = static_cast<CSSParser*>(parser)->createCharsetRule((yyvsp[(3) - (5)].string));
       
  2363      if ((yyval.rule) && p->m_styleSheet)
       
  2364          p->m_styleSheet->append((yyval.rule));
       
  2365   ;}
       
  2366     break;
       
  2367 
       
  2368   case 27:
       
  2369 
       
  2370 /* Line 1455 of yacc.c  */
       
  2371 #line 386 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2372     {
       
  2373   ;}
       
  2374     break;
       
  2375 
       
  2376   case 28:
       
  2377 
       
  2378 /* Line 1455 of yacc.c  */
       
  2379 #line 388 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2380     {
       
  2381   ;}
       
  2382     break;
       
  2383 
       
  2384   case 30:
       
  2385 
       
  2386 /* Line 1455 of yacc.c  */
       
  2387 #line 394 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2388     {
       
  2389      CSSParser* p = static_cast<CSSParser*>(parser);
       
  2390      if ((yyvsp[(2) - (3)].rule) && p->m_styleSheet)
       
  2391          p->m_styleSheet->append((yyvsp[(2) - (3)].rule));
       
  2392  ;}
       
  2393     break;
       
  2394 
       
  2395   case 39:
       
  2396 
       
  2397 /* Line 1455 of yacc.c  */
       
  2398 #line 413 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2399     {
       
  2400         static_cast<CSSParser*>(parser)->m_hadSyntacticallyValidCSSRule = true;
       
  2401     ;}
       
  2402     break;
       
  2403 
       
  2404   case 42:
       
  2405 
       
  2406 /* Line 1455 of yacc.c  */
       
  2407 #line 421 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2408     { (yyval.ruleList) = 0; ;}
       
  2409     break;
       
  2410 
       
  2411   case 43:
       
  2412 
       
  2413 /* Line 1455 of yacc.c  */
       
  2414 #line 422 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2415     {
       
  2416       (yyval.ruleList) = (yyvsp[(1) - (3)].ruleList);
       
  2417       if ((yyvsp[(2) - (3)].rule)) {
       
  2418           if (!(yyval.ruleList))
       
  2419               (yyval.ruleList) = static_cast<CSSParser*>(parser)->createRuleList();
       
  2420           (yyval.ruleList)->append((yyvsp[(2) - (3)].rule));
       
  2421       }
       
  2422   ;}
       
  2423     break;
       
  2424 
       
  2425   case 55:
       
  2426 
       
  2427 /* Line 1455 of yacc.c  */
       
  2428 #line 451 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2429     {
       
  2430         (yyval.rule) = static_cast<CSSParser*>(parser)->createImportRule((yyvsp[(3) - (6)].string), (yyvsp[(5) - (6)].mediaList));
       
  2431     ;}
       
  2432     break;
       
  2433 
       
  2434   case 56:
       
  2435 
       
  2436 /* Line 1455 of yacc.c  */
       
  2437 #line 454 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2438     {
       
  2439         (yyval.rule) = 0;
       
  2440     ;}
       
  2441     break;
       
  2442 
       
  2443   case 57:
       
  2444 
       
  2445 /* Line 1455 of yacc.c  */
       
  2446 #line 457 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2447     {
       
  2448         (yyval.rule) = 0;
       
  2449     ;}
       
  2450     break;
       
  2451 
       
  2452   case 58:
       
  2453 
       
  2454 /* Line 1455 of yacc.c  */
       
  2455 #line 460 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2456     {
       
  2457         (yyval.rule) = 0;
       
  2458     ;}
       
  2459     break;
       
  2460 
       
  2461   case 59:
       
  2462 
       
  2463 /* Line 1455 of yacc.c  */
       
  2464 #line 466 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2465     {
       
  2466         (yyval.rule) = static_cast<CSSParser*>(parser)->createVariablesRule((yyvsp[(3) - (7)].mediaList), true);
       
  2467     ;}
       
  2468     break;
       
  2469 
       
  2470   case 60:
       
  2471 
       
  2472 /* Line 1455 of yacc.c  */
       
  2473 #line 470 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2474     {
       
  2475         (yyval.rule) = static_cast<CSSParser*>(parser)->createVariablesRule((yyvsp[(3) - (7)].mediaList), false);
       
  2476     ;}
       
  2477     break;
       
  2478 
       
  2479   case 61:
       
  2480 
       
  2481 /* Line 1455 of yacc.c  */
       
  2482 #line 476 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2483     {
       
  2484         (yyval.mediaList) = static_cast<CSSParser*>(parser)->createMediaList();
       
  2485     ;}
       
  2486     break;
       
  2487 
       
  2488   case 62:
       
  2489 
       
  2490 /* Line 1455 of yacc.c  */
       
  2491 #line 480 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2492     {
       
  2493         (yyval.mediaList) = (yyvsp[(3) - (3)].mediaList);
       
  2494     ;}
       
  2495     break;
       
  2496 
       
  2497   case 63:
       
  2498 
       
  2499 /* Line 1455 of yacc.c  */
       
  2500 #line 486 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2501     {
       
  2502         (yyval.boolean) = (yyvsp[(1) - (1)].boolean);
       
  2503     ;}
       
  2504     break;
       
  2505 
       
  2506   case 64:
       
  2507 
       
  2508 /* Line 1455 of yacc.c  */
       
  2509 #line 489 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2510     {
       
  2511         (yyval.boolean) = (yyvsp[(1) - (2)].boolean);
       
  2512         if ((yyvsp[(2) - (2)].boolean))
       
  2513             (yyval.boolean) = (yyvsp[(2) - (2)].boolean);
       
  2514     ;}
       
  2515     break;
       
  2516 
       
  2517   case 65:
       
  2518 
       
  2519 /* Line 1455 of yacc.c  */
       
  2520 #line 494 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2521     {
       
  2522         (yyval.boolean) = (yyvsp[(1) - (1)].boolean);
       
  2523     ;}
       
  2524     break;
       
  2525 
       
  2526   case 66:
       
  2527 
       
  2528 /* Line 1455 of yacc.c  */
       
  2529 #line 497 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2530     {
       
  2531         (yyval.boolean) = false;
       
  2532     ;}
       
  2533     break;
       
  2534 
       
  2535   case 67:
       
  2536 
       
  2537 /* Line 1455 of yacc.c  */
       
  2538 #line 500 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2539     {
       
  2540         (yyval.boolean) = false;
       
  2541     ;}
       
  2542     break;
       
  2543 
       
  2544   case 68:
       
  2545 
       
  2546 /* Line 1455 of yacc.c  */
       
  2547 #line 503 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2548     {
       
  2549         (yyval.boolean) = (yyvsp[(1) - (2)].boolean);
       
  2550     ;}
       
  2551     break;
       
  2552 
       
  2553   case 69:
       
  2554 
       
  2555 /* Line 1455 of yacc.c  */
       
  2556 #line 509 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2557     {
       
  2558         (yyval.boolean) = (yyvsp[(1) - (3)].boolean);
       
  2559     ;}
       
  2560     break;
       
  2561 
       
  2562   case 70:
       
  2563 
       
  2564 /* Line 1455 of yacc.c  */
       
  2565 #line 512 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2566     {
       
  2567         (yyval.boolean) = false;
       
  2568     ;}
       
  2569     break;
       
  2570 
       
  2571   case 71:
       
  2572 
       
  2573 /* Line 1455 of yacc.c  */
       
  2574 #line 515 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2575     {
       
  2576         (yyval.boolean) = false;
       
  2577     ;}
       
  2578     break;
       
  2579 
       
  2580   case 72:
       
  2581 
       
  2582 /* Line 1455 of yacc.c  */
       
  2583 #line 518 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2584     {
       
  2585         (yyval.boolean) = false;
       
  2586     ;}
       
  2587     break;
       
  2588 
       
  2589   case 73:
       
  2590 
       
  2591 /* Line 1455 of yacc.c  */
       
  2592 #line 521 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2593     {
       
  2594         (yyval.boolean) = (yyvsp[(1) - (4)].boolean);
       
  2595         if ((yyvsp[(2) - (4)].boolean))
       
  2596             (yyval.boolean) = (yyvsp[(2) - (4)].boolean);
       
  2597     ;}
       
  2598     break;
       
  2599 
       
  2600   case 74:
       
  2601 
       
  2602 /* Line 1455 of yacc.c  */
       
  2603 #line 526 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2604     {
       
  2605         (yyval.boolean) = (yyvsp[(1) - (4)].boolean);
       
  2606     ;}
       
  2607     break;
       
  2608 
       
  2609   case 75:
       
  2610 
       
  2611 /* Line 1455 of yacc.c  */
       
  2612 #line 529 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2613     {
       
  2614         (yyval.boolean) = (yyvsp[(1) - (6)].boolean);
       
  2615     ;}
       
  2616     break;
       
  2617 
       
  2618   case 76:
       
  2619 
       
  2620 /* Line 1455 of yacc.c  */
       
  2621 #line 535 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2622     {
       
  2623         (yyval.boolean) = static_cast<CSSParser*>(parser)->addVariable((yyvsp[(1) - (4)].string), (yyvsp[(4) - (4)].valueList));
       
  2624     ;}
       
  2625     break;
       
  2626 
       
  2627   case 77:
       
  2628 
       
  2629 /* Line 1455 of yacc.c  */
       
  2630 #line 539 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2631     {
       
  2632         (yyval.boolean) = static_cast<CSSParser*>(parser)->addVariableDeclarationBlock((yyvsp[(1) - (7)].string));
       
  2633     ;}
       
  2634     break;
       
  2635 
       
  2636   case 78:
       
  2637 
       
  2638 /* Line 1455 of yacc.c  */
       
  2639 #line 543 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2640     {
       
  2641         (yyval.boolean) = false;
       
  2642     ;}
       
  2643     break;
       
  2644 
       
  2645   case 79:
       
  2646 
       
  2647 /* Line 1455 of yacc.c  */
       
  2648 #line 547 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2649     {
       
  2650         (yyval.boolean) = false;
       
  2651     ;}
       
  2652     break;
       
  2653 
       
  2654   case 80:
       
  2655 
       
  2656 /* Line 1455 of yacc.c  */
       
  2657 #line 551 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2658     {
       
  2659         /* @variables { varname: } Just reduce away this variable with no value. */
       
  2660         (yyval.boolean) = false;
       
  2661     ;}
       
  2662     break;
       
  2663 
       
  2664   case 81:
       
  2665 
       
  2666 /* Line 1455 of yacc.c  */
       
  2667 #line 556 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2668     {
       
  2669         /* if we come across rules with invalid values like this case: @variables { varname: *; }, just discard the property/value pair */
       
  2670         (yyval.boolean) = false;
       
  2671     ;}
       
  2672     break;
       
  2673 
       
  2674   case 82:
       
  2675 
       
  2676 /* Line 1455 of yacc.c  */
       
  2677 #line 563 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2678     {
       
  2679         (yyval.string) = (yyvsp[(1) - (2)].string);
       
  2680     ;}
       
  2681     break;
       
  2682 
       
  2683   case 83:
       
  2684 
       
  2685 /* Line 1455 of yacc.c  */
       
  2686 #line 569 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2687     {
       
  2688     static_cast<CSSParser*>(parser)->addNamespace((yyvsp[(3) - (6)].string), (yyvsp[(4) - (6)].string));
       
  2689     (yyval.rule) = 0;
       
  2690 ;}
       
  2691     break;
       
  2692 
       
  2693   case 84:
       
  2694 
       
  2695 /* Line 1455 of yacc.c  */
       
  2696 #line 573 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2697     {
       
  2698     (yyval.rule) = 0;
       
  2699 ;}
       
  2700     break;
       
  2701 
       
  2702   case 85:
       
  2703 
       
  2704 /* Line 1455 of yacc.c  */
       
  2705 #line 576 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2706     {
       
  2707     (yyval.rule) = 0;
       
  2708 ;}
       
  2709     break;
       
  2710 
       
  2711   case 86:
       
  2712 
       
  2713 /* Line 1455 of yacc.c  */
       
  2714 #line 579 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2715     {
       
  2716     (yyval.rule) = 0;
       
  2717 ;}
       
  2718     break;
       
  2719 
       
  2720   case 87:
       
  2721 
       
  2722 /* Line 1455 of yacc.c  */
       
  2723 #line 585 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2724     { (yyval.string).characters = 0; ;}
       
  2725     break;
       
  2726 
       
  2727   case 88:
       
  2728 
       
  2729 /* Line 1455 of yacc.c  */
       
  2730 #line 586 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2731     { (yyval.string) = (yyvsp[(1) - (2)].string); ;}
       
  2732     break;
       
  2733 
       
  2734   case 91:
       
  2735 
       
  2736 /* Line 1455 of yacc.c  */
       
  2737 #line 595 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2738     {
       
  2739         (yyval.string) = (yyvsp[(1) - (2)].string);
       
  2740     ;}
       
  2741     break;
       
  2742 
       
  2743   case 92:
       
  2744 
       
  2745 /* Line 1455 of yacc.c  */
       
  2746 #line 601 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2747     {
       
  2748         (yyval.valueList) = 0;
       
  2749     ;}
       
  2750     break;
       
  2751 
       
  2752   case 93:
       
  2753 
       
  2754 /* Line 1455 of yacc.c  */
       
  2755 #line 604 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2756     {
       
  2757         (yyval.valueList) = (yyvsp[(3) - (4)].valueList);
       
  2758     ;}
       
  2759     break;
       
  2760 
       
  2761   case 94:
       
  2762 
       
  2763 /* Line 1455 of yacc.c  */
       
  2764 #line 610 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2765     {
       
  2766         (yyvsp[(3) - (7)].string).lower();
       
  2767         (yyval.mediaQueryExp) = static_cast<CSSParser*>(parser)->createFloatingMediaQueryExp((yyvsp[(3) - (7)].string), (yyvsp[(5) - (7)].valueList));
       
  2768     ;}
       
  2769     break;
       
  2770 
       
  2771   case 95:
       
  2772 
       
  2773 /* Line 1455 of yacc.c  */
       
  2774 #line 617 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2775     {
       
  2776         CSSParser* p = static_cast<CSSParser*>(parser);
       
  2777         (yyval.mediaQueryExpList) = p->createFloatingMediaQueryExpList();
       
  2778         (yyval.mediaQueryExpList)->append(p->sinkFloatingMediaQueryExp((yyvsp[(1) - (1)].mediaQueryExp)));
       
  2779     ;}
       
  2780     break;
       
  2781 
       
  2782   case 96:
       
  2783 
       
  2784 /* Line 1455 of yacc.c  */
       
  2785 #line 622 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2786     {
       
  2787         (yyval.mediaQueryExpList) = (yyvsp[(1) - (5)].mediaQueryExpList);
       
  2788         (yyval.mediaQueryExpList)->append(static_cast<CSSParser*>(parser)->sinkFloatingMediaQueryExp((yyvsp[(5) - (5)].mediaQueryExp)));
       
  2789     ;}
       
  2790     break;
       
  2791 
       
  2792   case 97:
       
  2793 
       
  2794 /* Line 1455 of yacc.c  */
       
  2795 #line 629 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2796     {
       
  2797         (yyval.mediaQueryExpList) = static_cast<CSSParser*>(parser)->createFloatingMediaQueryExpList();
       
  2798     ;}
       
  2799     break;
       
  2800 
       
  2801   case 98:
       
  2802 
       
  2803 /* Line 1455 of yacc.c  */
       
  2804 #line 632 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2805     {
       
  2806         (yyval.mediaQueryExpList) = (yyvsp[(3) - (3)].mediaQueryExpList);
       
  2807     ;}
       
  2808     break;
       
  2809 
       
  2810   case 99:
       
  2811 
       
  2812 /* Line 1455 of yacc.c  */
       
  2813 #line 638 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2814     {
       
  2815         (yyval.mediaQueryRestrictor) = MediaQuery::None;
       
  2816     ;}
       
  2817     break;
       
  2818 
       
  2819   case 100:
       
  2820 
       
  2821 /* Line 1455 of yacc.c  */
       
  2822 #line 641 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2823     {
       
  2824         (yyval.mediaQueryRestrictor) = MediaQuery::Only;
       
  2825     ;}
       
  2826     break;
       
  2827 
       
  2828   case 101:
       
  2829 
       
  2830 /* Line 1455 of yacc.c  */
       
  2831 #line 644 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2832     {
       
  2833         (yyval.mediaQueryRestrictor) = MediaQuery::Not;
       
  2834     ;}
       
  2835     break;
       
  2836 
       
  2837   case 102:
       
  2838 
       
  2839 /* Line 1455 of yacc.c  */
       
  2840 #line 650 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2841     {
       
  2842         CSSParser* p = static_cast<CSSParser*>(parser);
       
  2843         (yyval.mediaQuery) = p->createFloatingMediaQuery(p->sinkFloatingMediaQueryExpList((yyvsp[(1) - (1)].mediaQueryExpList)));
       
  2844     ;}
       
  2845     break;
       
  2846 
       
  2847   case 103:
       
  2848 
       
  2849 /* Line 1455 of yacc.c  */
       
  2850 #line 655 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2851     {
       
  2852         CSSParser* p = static_cast<CSSParser*>(parser);
       
  2853         (yyvsp[(3) - (4)].string).lower();
       
  2854         (yyval.mediaQuery) = p->createFloatingMediaQuery((yyvsp[(1) - (4)].mediaQueryRestrictor), (yyvsp[(3) - (4)].string), p->sinkFloatingMediaQueryExpList((yyvsp[(4) - (4)].mediaQueryExpList)));
       
  2855     ;}
       
  2856     break;
       
  2857 
       
  2858   case 104:
       
  2859 
       
  2860 /* Line 1455 of yacc.c  */
       
  2861 #line 663 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2862     {
       
  2863         (yyval.mediaList) = static_cast<CSSParser*>(parser)->createMediaList();
       
  2864      ;}
       
  2865     break;
       
  2866 
       
  2867   case 106:
       
  2868 
       
  2869 /* Line 1455 of yacc.c  */
       
  2870 #line 670 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2871     {
       
  2872         CSSParser* p = static_cast<CSSParser*>(parser);
       
  2873         (yyval.mediaList) = p->createMediaList();
       
  2874         (yyval.mediaList)->appendMediaQuery(p->sinkFloatingMediaQuery((yyvsp[(1) - (1)].mediaQuery)));
       
  2875     ;}
       
  2876     break;
       
  2877 
       
  2878   case 107:
       
  2879 
       
  2880 /* Line 1455 of yacc.c  */
       
  2881 #line 675 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2882     {
       
  2883         (yyval.mediaList) = (yyvsp[(1) - (4)].mediaList);
       
  2884         if ((yyval.mediaList))
       
  2885             (yyval.mediaList)->appendMediaQuery(static_cast<CSSParser*>(parser)->sinkFloatingMediaQuery((yyvsp[(4) - (4)].mediaQuery)));
       
  2886     ;}
       
  2887     break;
       
  2888 
       
  2889   case 108:
       
  2890 
       
  2891 /* Line 1455 of yacc.c  */
       
  2892 #line 680 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2893     {
       
  2894         (yyval.mediaList) = 0;
       
  2895     ;}
       
  2896     break;
       
  2897 
       
  2898   case 109:
       
  2899 
       
  2900 /* Line 1455 of yacc.c  */
       
  2901 #line 686 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2902     {
       
  2903         (yyval.rule) = static_cast<CSSParser*>(parser)->createMediaRule((yyvsp[(3) - (7)].mediaList), (yyvsp[(6) - (7)].ruleList));
       
  2904     ;}
       
  2905     break;
       
  2906 
       
  2907   case 110:
       
  2908 
       
  2909 /* Line 1455 of yacc.c  */
       
  2910 #line 689 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2911     {
       
  2912         (yyval.rule) = static_cast<CSSParser*>(parser)->createMediaRule(0, (yyvsp[(5) - (6)].ruleList));
       
  2913     ;}
       
  2914     break;
       
  2915 
       
  2916   case 111:
       
  2917 
       
  2918 /* Line 1455 of yacc.c  */
       
  2919 #line 695 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2920     {
       
  2921       (yyval.string) = (yyvsp[(1) - (2)].string);
       
  2922   ;}
       
  2923     break;
       
  2924 
       
  2925   case 112:
       
  2926 
       
  2927 /* Line 1455 of yacc.c  */
       
  2928 #line 701 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2929     {
       
  2930         (yyval.rule) = (yyvsp[(7) - (8)].keyframesRule);
       
  2931         (yyvsp[(7) - (8)].keyframesRule)->setNameInternal((yyvsp[(3) - (8)].string));
       
  2932     ;}
       
  2933     break;
       
  2934 
       
  2935   case 115:
       
  2936 
       
  2937 /* Line 1455 of yacc.c  */
       
  2938 #line 713 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2939     { (yyval.keyframesRule) = static_cast<CSSParser*>(parser)->createKeyframesRule(); ;}
       
  2940     break;
       
  2941 
       
  2942   case 116:
       
  2943 
       
  2944 /* Line 1455 of yacc.c  */
       
  2945 #line 714 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2946     {
       
  2947         (yyval.keyframesRule) = (yyvsp[(1) - (3)].keyframesRule);
       
  2948         if ((yyvsp[(2) - (3)].keyframeRule))
       
  2949             (yyval.keyframesRule)->append((yyvsp[(2) - (3)].keyframeRule));
       
  2950     ;}
       
  2951     break;
       
  2952 
       
  2953   case 117:
       
  2954 
       
  2955 /* Line 1455 of yacc.c  */
       
  2956 #line 722 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2957     {
       
  2958         (yyval.keyframeRule) = static_cast<CSSParser*>(parser)->createKeyframeRule((yyvsp[(1) - (6)].valueList));
       
  2959     ;}
       
  2960     break;
       
  2961 
       
  2962   case 118:
       
  2963 
       
  2964 /* Line 1455 of yacc.c  */
       
  2965 #line 728 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2966     {
       
  2967         CSSParser* p = static_cast<CSSParser*>(parser);
       
  2968         (yyval.valueList) = p->createFloatingValueList();
       
  2969         (yyval.valueList)->addValue(p->sinkFloatingValue((yyvsp[(1) - (1)].value)));
       
  2970     ;}
       
  2971     break;
       
  2972 
       
  2973   case 119:
       
  2974 
       
  2975 /* Line 1455 of yacc.c  */
       
  2976 #line 733 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2977     {
       
  2978         CSSParser* p = static_cast<CSSParser*>(parser);
       
  2979         (yyval.valueList) = (yyvsp[(1) - (5)].valueList);
       
  2980         if ((yyval.valueList))
       
  2981             (yyval.valueList)->addValue(p->sinkFloatingValue((yyvsp[(5) - (5)].value)));
       
  2982     ;}
       
  2983     break;
       
  2984 
       
  2985   case 120:
       
  2986 
       
  2987 /* Line 1455 of yacc.c  */
       
  2988 #line 742 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2989     { (yyval.value).id = 0; (yyval.value).isInt = false; (yyval.value).fValue = (yyvsp[(1) - (1)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_NUMBER; ;}
       
  2990     break;
       
  2991 
       
  2992   case 121:
       
  2993 
       
  2994 /* Line 1455 of yacc.c  */
       
  2995 #line 743 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  2996     {
       
  2997         (yyval.value).id = 0; (yyval.value).isInt = false; (yyval.value).unit = CSSPrimitiveValue::CSS_NUMBER;
       
  2998         CSSParserString& str = (yyvsp[(1) - (1)].string);
       
  2999         if (equalIgnoringCase("from", str.characters, str.length))
       
  3000             (yyval.value).fValue = 0;
       
  3001         else if (equalIgnoringCase("to", str.characters, str.length))
       
  3002             (yyval.value).fValue = 100;
       
  3003         else
       
  3004             YYERROR;
       
  3005     ;}
       
  3006     break;
       
  3007 
       
  3008   case 122:
       
  3009 
       
  3010 /* Line 1455 of yacc.c  */
       
  3011 #line 757 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3012     {
       
  3013         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3014         if ((yyvsp[(3) - (8)].selector))
       
  3015             (yyval.rule) = p->createPageRule(p->sinkFloatingSelector((yyvsp[(3) - (8)].selector)));
       
  3016         else {
       
  3017             // Clear properties in the invalid @page rule.
       
  3018             p->clearProperties();
       
  3019             // Also clear margin at-rules here once we fully implement margin at-rules parsing.
       
  3020             (yyval.rule) = 0;
       
  3021         }
       
  3022     ;}
       
  3023     break;
       
  3024 
       
  3025   case 123:
       
  3026 
       
  3027 /* Line 1455 of yacc.c  */
       
  3028 #line 768 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3029     {
       
  3030       (yyval.rule) = 0;
       
  3031     ;}
       
  3032     break;
       
  3033 
       
  3034   case 124:
       
  3035 
       
  3036 /* Line 1455 of yacc.c  */
       
  3037 #line 771 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3038     {
       
  3039       (yyval.rule) = 0;
       
  3040     ;}
       
  3041     break;
       
  3042 
       
  3043   case 125:
       
  3044 
       
  3045 /* Line 1455 of yacc.c  */
       
  3046 #line 777 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3047     {
       
  3048         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3049         (yyval.selector) = p->createFloatingSelector();
       
  3050         (yyval.selector)->m_tag = QualifiedName(nullAtom, (yyvsp[(1) - (1)].string), p->m_defaultNamespace);
       
  3051         (yyval.selector)->setForPage();
       
  3052     ;}
       
  3053     break;
       
  3054 
       
  3055   case 126:
       
  3056 
       
  3057 /* Line 1455 of yacc.c  */
       
  3058 #line 783 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3059     {
       
  3060         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3061         (yyval.selector) = (yyvsp[(2) - (2)].selector);
       
  3062         if ((yyval.selector)) {
       
  3063             (yyval.selector)->m_tag = QualifiedName(nullAtom, (yyvsp[(1) - (2)].string), p->m_defaultNamespace);
       
  3064             (yyval.selector)->setForPage();
       
  3065         }
       
  3066     ;}
       
  3067     break;
       
  3068 
       
  3069   case 127:
       
  3070 
       
  3071 /* Line 1455 of yacc.c  */
       
  3072 #line 791 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3073     {
       
  3074         (yyval.selector) = (yyvsp[(1) - (1)].selector);
       
  3075         if ((yyval.selector))
       
  3076             (yyval.selector)->setForPage();
       
  3077     ;}
       
  3078     break;
       
  3079 
       
  3080   case 128:
       
  3081 
       
  3082 /* Line 1455 of yacc.c  */
       
  3083 #line 796 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3084     {
       
  3085         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3086         (yyval.selector) = p->createFloatingSelector();
       
  3087         (yyval.selector)->setForPage();
       
  3088     ;}
       
  3089     break;
       
  3090 
       
  3091   case 131:
       
  3092 
       
  3093 /* Line 1455 of yacc.c  */
       
  3094 #line 809 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3095     {
       
  3096         static_cast<CSSParser*>(parser)->startDeclarationsForMarginBox();
       
  3097     ;}
       
  3098     break;
       
  3099 
       
  3100   case 132:
       
  3101 
       
  3102 /* Line 1455 of yacc.c  */
       
  3103 #line 811 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3104     {
       
  3105         (yyval.rule) = static_cast<CSSParser*>(parser)->createMarginAtRule((yyvsp[(1) - (7)].marginBox));
       
  3106     ;}
       
  3107     break;
       
  3108 
       
  3109   case 133:
       
  3110 
       
  3111 /* Line 1455 of yacc.c  */
       
  3112 #line 817 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3113     {
       
  3114         (yyval.marginBox) = CSSSelector::TopLeftCornerMarginBox;
       
  3115     ;}
       
  3116     break;
       
  3117 
       
  3118   case 134:
       
  3119 
       
  3120 /* Line 1455 of yacc.c  */
       
  3121 #line 820 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3122     {
       
  3123         (yyval.marginBox) = CSSSelector::TopLeftMarginBox;
       
  3124     ;}
       
  3125     break;
       
  3126 
       
  3127   case 135:
       
  3128 
       
  3129 /* Line 1455 of yacc.c  */
       
  3130 #line 823 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3131     {
       
  3132         (yyval.marginBox) = CSSSelector::TopCenterMarginBox;
       
  3133     ;}
       
  3134     break;
       
  3135 
       
  3136   case 136:
       
  3137 
       
  3138 /* Line 1455 of yacc.c  */
       
  3139 #line 826 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3140     {
       
  3141         (yyval.marginBox) = CSSSelector::TopRightMarginBox;
       
  3142     ;}
       
  3143     break;
       
  3144 
       
  3145   case 137:
       
  3146 
       
  3147 /* Line 1455 of yacc.c  */
       
  3148 #line 829 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3149     {
       
  3150         (yyval.marginBox) = CSSSelector::TopRightCornerMarginBox;
       
  3151     ;}
       
  3152     break;
       
  3153 
       
  3154   case 138:
       
  3155 
       
  3156 /* Line 1455 of yacc.c  */
       
  3157 #line 832 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3158     {
       
  3159         (yyval.marginBox) = CSSSelector::BottomLeftCornerMarginBox;
       
  3160     ;}
       
  3161     break;
       
  3162 
       
  3163   case 139:
       
  3164 
       
  3165 /* Line 1455 of yacc.c  */
       
  3166 #line 835 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3167     {
       
  3168         (yyval.marginBox) = CSSSelector::BottomLeftMarginBox;
       
  3169     ;}
       
  3170     break;
       
  3171 
       
  3172   case 140:
       
  3173 
       
  3174 /* Line 1455 of yacc.c  */
       
  3175 #line 838 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3176     {
       
  3177         (yyval.marginBox) = CSSSelector::BottomCenterMarginBox;
       
  3178     ;}
       
  3179     break;
       
  3180 
       
  3181   case 141:
       
  3182 
       
  3183 /* Line 1455 of yacc.c  */
       
  3184 #line 841 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3185     {
       
  3186         (yyval.marginBox) = CSSSelector::BottomRightMarginBox;
       
  3187     ;}
       
  3188     break;
       
  3189 
       
  3190   case 142:
       
  3191 
       
  3192 /* Line 1455 of yacc.c  */
       
  3193 #line 844 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3194     {
       
  3195         (yyval.marginBox) = CSSSelector::BottomRightCornerMarginBox;
       
  3196     ;}
       
  3197     break;
       
  3198 
       
  3199   case 143:
       
  3200 
       
  3201 /* Line 1455 of yacc.c  */
       
  3202 #line 847 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3203     {
       
  3204         (yyval.marginBox) = CSSSelector::LeftTopMarginBox;
       
  3205     ;}
       
  3206     break;
       
  3207 
       
  3208   case 144:
       
  3209 
       
  3210 /* Line 1455 of yacc.c  */
       
  3211 #line 850 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3212     {
       
  3213         (yyval.marginBox) = CSSSelector::LeftMiddleMarginBox;
       
  3214     ;}
       
  3215     break;
       
  3216 
       
  3217   case 145:
       
  3218 
       
  3219 /* Line 1455 of yacc.c  */
       
  3220 #line 853 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3221     {
       
  3222         (yyval.marginBox) = CSSSelector::LeftBottomMarginBox;
       
  3223     ;}
       
  3224     break;
       
  3225 
       
  3226   case 146:
       
  3227 
       
  3228 /* Line 1455 of yacc.c  */
       
  3229 #line 856 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3230     {
       
  3231         (yyval.marginBox) = CSSSelector::RightTopMarginBox;
       
  3232     ;}
       
  3233     break;
       
  3234 
       
  3235   case 147:
       
  3236 
       
  3237 /* Line 1455 of yacc.c  */
       
  3238 #line 859 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3239     {
       
  3240         (yyval.marginBox) = CSSSelector::RightMiddleMarginBox;
       
  3241     ;}
       
  3242     break;
       
  3243 
       
  3244   case 148:
       
  3245 
       
  3246 /* Line 1455 of yacc.c  */
       
  3247 #line 862 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3248     {
       
  3249         (yyval.marginBox) = CSSSelector::RightBottomMarginBox;
       
  3250     ;}
       
  3251     break;
       
  3252 
       
  3253   case 149:
       
  3254 
       
  3255 /* Line 1455 of yacc.c  */
       
  3256 #line 869 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3257     {
       
  3258         (yyval.rule) = static_cast<CSSParser*>(parser)->createFontFaceRule();
       
  3259     ;}
       
  3260     break;
       
  3261 
       
  3262   case 150:
       
  3263 
       
  3264 /* Line 1455 of yacc.c  */
       
  3265 #line 872 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3266     {
       
  3267       (yyval.rule) = 0;
       
  3268     ;}
       
  3269     break;
       
  3270 
       
  3271   case 151:
       
  3272 
       
  3273 /* Line 1455 of yacc.c  */
       
  3274 #line 875 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3275     {
       
  3276       (yyval.rule) = 0;
       
  3277     ;}
       
  3278     break;
       
  3279 
       
  3280   case 152:
       
  3281 
       
  3282 /* Line 1455 of yacc.c  */
       
  3283 #line 881 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3284     { (yyval.relation) = CSSSelector::DirectAdjacent; ;}
       
  3285     break;
       
  3286 
       
  3287   case 153:
       
  3288 
       
  3289 /* Line 1455 of yacc.c  */
       
  3290 #line 882 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3291     { (yyval.relation) = CSSSelector::IndirectAdjacent; ;}
       
  3292     break;
       
  3293 
       
  3294   case 154:
       
  3295 
       
  3296 /* Line 1455 of yacc.c  */
       
  3297 #line 883 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3298     { (yyval.relation) = CSSSelector::Child; ;}
       
  3299     break;
       
  3300 
       
  3301   case 155:
       
  3302 
       
  3303 /* Line 1455 of yacc.c  */
       
  3304 #line 887 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3305     { (yyval.integer) = (yyvsp[(1) - (1)].integer); ;}
       
  3306     break;
       
  3307 
       
  3308   case 156:
       
  3309 
       
  3310 /* Line 1455 of yacc.c  */
       
  3311 #line 888 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3312     { (yyval.integer) = 1; ;}
       
  3313     break;
       
  3314 
       
  3315   case 157:
       
  3316 
       
  3317 /* Line 1455 of yacc.c  */
       
  3318 #line 892 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3319     { (yyval.integer) = -1; ;}
       
  3320     break;
       
  3321 
       
  3322   case 158:
       
  3323 
       
  3324 /* Line 1455 of yacc.c  */
       
  3325 #line 893 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3326     { (yyval.integer) = 1; ;}
       
  3327     break;
       
  3328 
       
  3329   case 159:
       
  3330 
       
  3331 /* Line 1455 of yacc.c  */
       
  3332 #line 897 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3333     {
       
  3334         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3335         (yyval.rule) = p->createStyleRule((yyvsp[(1) - (5)].selectorList));
       
  3336     ;}
       
  3337     break;
       
  3338 
       
  3339   case 160:
       
  3340 
       
  3341 /* Line 1455 of yacc.c  */
       
  3342 #line 904 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3343     {
       
  3344         if ((yyvsp[(1) - (1)].selector)) {
       
  3345             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3346             (yyval.selectorList) = p->reusableSelectorVector();
       
  3347             deleteAllValues(*(yyval.selectorList));
       
  3348             (yyval.selectorList)->shrink(0);
       
  3349             (yyval.selectorList)->append(p->sinkFloatingSelector((yyvsp[(1) - (1)].selector)));
       
  3350             p->updateLastSelectorLineAndPosition();
       
  3351         }
       
  3352     ;}
       
  3353     break;
       
  3354 
       
  3355   case 161:
       
  3356 
       
  3357 /* Line 1455 of yacc.c  */
       
  3358 #line 914 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3359     {
       
  3360         if ((yyvsp[(1) - (4)].selectorList) && (yyvsp[(4) - (4)].selector)) {
       
  3361             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3362             (yyval.selectorList) = (yyvsp[(1) - (4)].selectorList);
       
  3363             (yyval.selectorList)->append(p->sinkFloatingSelector((yyvsp[(4) - (4)].selector)));
       
  3364             p->updateLastSelectorLineAndPosition();
       
  3365         } else
       
  3366             (yyval.selectorList) = 0;
       
  3367     ;}
       
  3368     break;
       
  3369 
       
  3370   case 162:
       
  3371 
       
  3372 /* Line 1455 of yacc.c  */
       
  3373 #line 923 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3374     {
       
  3375         (yyval.selectorList) = 0;
       
  3376     ;}
       
  3377     break;
       
  3378 
       
  3379   case 163:
       
  3380 
       
  3381 /* Line 1455 of yacc.c  */
       
  3382 #line 929 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3383     {
       
  3384         (yyval.selector) = (yyvsp[(1) - (2)].selector);
       
  3385     ;}
       
  3386     break;
       
  3387 
       
  3388   case 164:
       
  3389 
       
  3390 /* Line 1455 of yacc.c  */
       
  3391 #line 935 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3392     {
       
  3393         (yyval.selector) = (yyvsp[(1) - (1)].selector);
       
  3394     ;}
       
  3395     break;
       
  3396 
       
  3397   case 165:
       
  3398 
       
  3399 /* Line 1455 of yacc.c  */
       
  3400 #line 939 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3401     {
       
  3402         (yyval.selector) = (yyvsp[(1) - (1)].selector);
       
  3403     ;}
       
  3404     break;
       
  3405 
       
  3406   case 166:
       
  3407 
       
  3408 /* Line 1455 of yacc.c  */
       
  3409 #line 943 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3410     {
       
  3411         (yyval.selector) = (yyvsp[(2) - (2)].selector);
       
  3412         if (!(yyvsp[(1) - (2)].selector))
       
  3413             (yyval.selector) = 0;
       
  3414         else if ((yyval.selector)) {
       
  3415             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3416             CSSSelector* end = (yyval.selector);
       
  3417             while (end->tagHistory())
       
  3418                 end = end->tagHistory();
       
  3419             end->m_relation = CSSSelector::Descendant;
       
  3420             end->setTagHistory(p->sinkFloatingSelector((yyvsp[(1) - (2)].selector)));
       
  3421             if (Document* doc = p->document())
       
  3422                 doc->setUsesDescendantRules(true);
       
  3423         }
       
  3424     ;}
       
  3425     break;
       
  3426 
       
  3427   case 167:
       
  3428 
       
  3429 /* Line 1455 of yacc.c  */
       
  3430 #line 958 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3431     {
       
  3432         (yyval.selector) = (yyvsp[(3) - (3)].selector);
       
  3433         if (!(yyvsp[(1) - (3)].selector))
       
  3434             (yyval.selector) = 0;
       
  3435         else if ((yyval.selector)) {
       
  3436             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3437             CSSSelector* end = (yyval.selector);
       
  3438             while (end->tagHistory())
       
  3439                 end = end->tagHistory();
       
  3440             end->m_relation = (yyvsp[(2) - (3)].relation);
       
  3441             end->setTagHistory(p->sinkFloatingSelector((yyvsp[(1) - (3)].selector)));
       
  3442             if ((yyvsp[(2) - (3)].relation) == CSSSelector::Child) {
       
  3443                 if (Document* doc = p->document())
       
  3444                     doc->setUsesDescendantRules(true);
       
  3445             } else if ((yyvsp[(2) - (3)].relation) == CSSSelector::DirectAdjacent || (yyvsp[(2) - (3)].relation) == CSSSelector::IndirectAdjacent) {
       
  3446                 if (Document* doc = p->document())
       
  3447                     doc->setUsesSiblingRules(true);
       
  3448             }
       
  3449         }
       
  3450     ;}
       
  3451     break;
       
  3452 
       
  3453   case 168:
       
  3454 
       
  3455 /* Line 1455 of yacc.c  */
       
  3456 #line 978 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3457     {
       
  3458         (yyval.selector) = 0;
       
  3459     ;}
       
  3460     break;
       
  3461 
       
  3462   case 169:
       
  3463 
       
  3464 /* Line 1455 of yacc.c  */
       
  3465 #line 984 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3466     { (yyval.string).characters = 0; (yyval.string).length = 0; ;}
       
  3467     break;
       
  3468 
       
  3469   case 170:
       
  3470 
       
  3471 /* Line 1455 of yacc.c  */
       
  3472 #line 985 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3473     { static UChar star = '*'; (yyval.string).characters = &star; (yyval.string).length = 1; ;}
       
  3474     break;
       
  3475 
       
  3476   case 171:
       
  3477 
       
  3478 /* Line 1455 of yacc.c  */
       
  3479 #line 986 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3480     { (yyval.string) = (yyvsp[(1) - (2)].string); ;}
       
  3481     break;
       
  3482 
       
  3483   case 172:
       
  3484 
       
  3485 /* Line 1455 of yacc.c  */
       
  3486 #line 990 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3487     {
       
  3488         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3489         (yyval.selector) = p->createFloatingSelector();
       
  3490         (yyval.selector)->m_tag = QualifiedName(nullAtom, (yyvsp[(1) - (1)].string), p->m_defaultNamespace);
       
  3491     ;}
       
  3492     break;
       
  3493 
       
  3494   case 173:
       
  3495 
       
  3496 /* Line 1455 of yacc.c  */
       
  3497 #line 995 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3498     {
       
  3499         (yyval.selector) = (yyvsp[(2) - (2)].selector);
       
  3500         if ((yyval.selector)) {
       
  3501             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3502             (yyval.selector)->m_tag = QualifiedName(nullAtom, (yyvsp[(1) - (2)].string), p->m_defaultNamespace);
       
  3503         }
       
  3504     ;}
       
  3505     break;
       
  3506 
       
  3507   case 174:
       
  3508 
       
  3509 /* Line 1455 of yacc.c  */
       
  3510 #line 1002 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3511     {
       
  3512         (yyval.selector) = (yyvsp[(1) - (1)].selector);
       
  3513         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3514         if ((yyval.selector) && p->m_defaultNamespace != starAtom)
       
  3515             (yyval.selector)->m_tag = QualifiedName(nullAtom, starAtom, p->m_defaultNamespace);
       
  3516     ;}
       
  3517     break;
       
  3518 
       
  3519   case 175:
       
  3520 
       
  3521 /* Line 1455 of yacc.c  */
       
  3522 #line 1008 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3523     {
       
  3524         AtomicString namespacePrefix = (yyvsp[(1) - (2)].string);
       
  3525         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3526         (yyval.selector) = p->createFloatingSelector();
       
  3527         if (p->m_styleSheet)
       
  3528             (yyval.selector)->m_tag = QualifiedName(namespacePrefix, (yyvsp[(2) - (2)].string),
       
  3529                                       p->m_styleSheet->determineNamespace(namespacePrefix));
       
  3530         else // FIXME: Shouldn't this case be an error?
       
  3531             (yyval.selector)->m_tag = QualifiedName(nullAtom, (yyvsp[(2) - (2)].string), p->m_defaultNamespace);
       
  3532     ;}
       
  3533     break;
       
  3534 
       
  3535   case 176:
       
  3536 
       
  3537 /* Line 1455 of yacc.c  */
       
  3538 #line 1018 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3539     {
       
  3540         (yyval.selector) = (yyvsp[(3) - (3)].selector);
       
  3541         if ((yyval.selector)) {
       
  3542             AtomicString namespacePrefix = (yyvsp[(1) - (3)].string);
       
  3543             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3544             if (p->m_styleSheet)
       
  3545                 (yyval.selector)->m_tag = QualifiedName(namespacePrefix, (yyvsp[(2) - (3)].string),
       
  3546                                           p->m_styleSheet->determineNamespace(namespacePrefix));
       
  3547             else // FIXME: Shouldn't this case be an error?
       
  3548                 (yyval.selector)->m_tag = QualifiedName(nullAtom, (yyvsp[(2) - (3)].string), p->m_defaultNamespace);
       
  3549         }
       
  3550     ;}
       
  3551     break;
       
  3552 
       
  3553   case 177:
       
  3554 
       
  3555 /* Line 1455 of yacc.c  */
       
  3556 #line 1030 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3557     {
       
  3558         (yyval.selector) = (yyvsp[(2) - (2)].selector);
       
  3559         if ((yyval.selector)) {
       
  3560             AtomicString namespacePrefix = (yyvsp[(1) - (2)].string);
       
  3561             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3562             if (p->m_styleSheet)
       
  3563                 (yyval.selector)->m_tag = QualifiedName(namespacePrefix, starAtom,
       
  3564                                           p->m_styleSheet->determineNamespace(namespacePrefix));
       
  3565         }
       
  3566     ;}
       
  3567     break;
       
  3568 
       
  3569   case 178:
       
  3570 
       
  3571 /* Line 1455 of yacc.c  */
       
  3572 #line 1043 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3573     {
       
  3574         CSSParserString& str = (yyvsp[(1) - (1)].string);
       
  3575         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3576         Document* doc = p->document();
       
  3577         if (doc && doc->isHTMLDocument())
       
  3578             str.lower();
       
  3579         (yyval.string) = str;
       
  3580     ;}
       
  3581     break;
       
  3582 
       
  3583   case 179:
       
  3584 
       
  3585 /* Line 1455 of yacc.c  */
       
  3586 #line 1051 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3587     {
       
  3588         static UChar star = '*';
       
  3589         (yyval.string).characters = &star;
       
  3590         (yyval.string).length = 1;
       
  3591     ;}
       
  3592     break;
       
  3593 
       
  3594   case 180:
       
  3595 
       
  3596 /* Line 1455 of yacc.c  */
       
  3597 #line 1059 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3598     {
       
  3599         (yyval.selector) = (yyvsp[(1) - (1)].selector);
       
  3600     ;}
       
  3601     break;
       
  3602 
       
  3603   case 181:
       
  3604 
       
  3605 /* Line 1455 of yacc.c  */
       
  3606 #line 1062 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3607     {
       
  3608         if (!(yyvsp[(2) - (2)].selector))
       
  3609             (yyval.selector) = 0;
       
  3610         else if ((yyvsp[(1) - (2)].selector)) {
       
  3611             (yyval.selector) = (yyvsp[(1) - (2)].selector);
       
  3612             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3613             CSSSelector* end = (yyvsp[(1) - (2)].selector);
       
  3614             while (end->tagHistory())
       
  3615                 end = end->tagHistory();
       
  3616             end->m_relation = CSSSelector::SubSelector;
       
  3617             end->setTagHistory(p->sinkFloatingSelector((yyvsp[(2) - (2)].selector)));
       
  3618         }
       
  3619     ;}
       
  3620     break;
       
  3621 
       
  3622   case 182:
       
  3623 
       
  3624 /* Line 1455 of yacc.c  */
       
  3625 #line 1075 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3626     {
       
  3627         (yyval.selector) = 0;
       
  3628     ;}
       
  3629     break;
       
  3630 
       
  3631   case 183:
       
  3632 
       
  3633 /* Line 1455 of yacc.c  */
       
  3634 #line 1081 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3635     {
       
  3636         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3637         (yyval.selector) = p->createFloatingSelector();
       
  3638         (yyval.selector)->m_match = CSSSelector::Id;
       
  3639         if (!p->m_strict)
       
  3640             (yyvsp[(1) - (1)].string).lower();
       
  3641         (yyval.selector)->m_value = (yyvsp[(1) - (1)].string);
       
  3642     ;}
       
  3643     break;
       
  3644 
       
  3645   case 184:
       
  3646 
       
  3647 /* Line 1455 of yacc.c  */
       
  3648 #line 1089 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3649     {
       
  3650         if ((yyvsp[(1) - (1)].string).characters[0] >= '0' && (yyvsp[(1) - (1)].string).characters[0] <= '9') {
       
  3651             (yyval.selector) = 0;
       
  3652         } else {
       
  3653             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3654             (yyval.selector) = p->createFloatingSelector();
       
  3655             (yyval.selector)->m_match = CSSSelector::Id;
       
  3656             if (!p->m_strict)
       
  3657                 (yyvsp[(1) - (1)].string).lower();
       
  3658             (yyval.selector)->m_value = (yyvsp[(1) - (1)].string);
       
  3659         }
       
  3660     ;}
       
  3661     break;
       
  3662 
       
  3663   case 188:
       
  3664 
       
  3665 /* Line 1455 of yacc.c  */
       
  3666 #line 1107 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3667     {
       
  3668         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3669         (yyval.selector) = p->createFloatingSelector();
       
  3670         (yyval.selector)->m_match = CSSSelector::Class;
       
  3671         if (!p->m_strict)
       
  3672             (yyvsp[(2) - (2)].string).lower();
       
  3673         (yyval.selector)->m_value = (yyvsp[(2) - (2)].string);
       
  3674     ;}
       
  3675     break;
       
  3676 
       
  3677   case 189:
       
  3678 
       
  3679 /* Line 1455 of yacc.c  */
       
  3680 #line 1118 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3681     {
       
  3682         CSSParserString& str = (yyvsp[(1) - (2)].string);
       
  3683         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3684         Document* doc = p->document();
       
  3685         if (doc && doc->isHTMLDocument())
       
  3686             str.lower();
       
  3687         (yyval.string) = str;
       
  3688     ;}
       
  3689     break;
       
  3690 
       
  3691   case 190:
       
  3692 
       
  3693 /* Line 1455 of yacc.c  */
       
  3694 #line 1129 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3695     {
       
  3696         (yyval.selector) = static_cast<CSSParser*>(parser)->createFloatingSelector();
       
  3697         (yyval.selector)->setAttribute(QualifiedName(nullAtom, (yyvsp[(3) - (4)].string), nullAtom));
       
  3698         (yyval.selector)->m_match = CSSSelector::Set;
       
  3699     ;}
       
  3700     break;
       
  3701 
       
  3702   case 191:
       
  3703 
       
  3704 /* Line 1455 of yacc.c  */
       
  3705 #line 1134 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3706     {
       
  3707         (yyval.selector) = static_cast<CSSParser*>(parser)->createFloatingSelector();
       
  3708         (yyval.selector)->setAttribute(QualifiedName(nullAtom, (yyvsp[(3) - (8)].string), nullAtom));
       
  3709         (yyval.selector)->m_match = (CSSSelector::Match)(yyvsp[(4) - (8)].integer);
       
  3710         (yyval.selector)->m_value = (yyvsp[(6) - (8)].string);
       
  3711     ;}
       
  3712     break;
       
  3713 
       
  3714   case 192:
       
  3715 
       
  3716 /* Line 1455 of yacc.c  */
       
  3717 #line 1140 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3718     {
       
  3719         AtomicString namespacePrefix = (yyvsp[(3) - (5)].string);
       
  3720         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3721         (yyval.selector) = p->createFloatingSelector();
       
  3722         (yyval.selector)->setAttribute(QualifiedName(namespacePrefix, (yyvsp[(4) - (5)].string),
       
  3723                                    p->m_styleSheet->determineNamespace(namespacePrefix)));
       
  3724         (yyval.selector)->m_match = CSSSelector::Set;
       
  3725     ;}
       
  3726     break;
       
  3727 
       
  3728   case 193:
       
  3729 
       
  3730 /* Line 1455 of yacc.c  */
       
  3731 #line 1148 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3732     {
       
  3733         AtomicString namespacePrefix = (yyvsp[(3) - (9)].string);
       
  3734         CSSParser* p = static_cast<CSSParser*>(parser);
       
  3735         (yyval.selector) = p->createFloatingSelector();
       
  3736         (yyval.selector)->setAttribute(QualifiedName(namespacePrefix, (yyvsp[(4) - (9)].string),
       
  3737                                    p->m_styleSheet->determineNamespace(namespacePrefix)));
       
  3738         (yyval.selector)->m_match = (CSSSelector::Match)(yyvsp[(5) - (9)].integer);
       
  3739         (yyval.selector)->m_value = (yyvsp[(7) - (9)].string);
       
  3740     ;}
       
  3741     break;
       
  3742 
       
  3743   case 194:
       
  3744 
       
  3745 /* Line 1455 of yacc.c  */
       
  3746 #line 1160 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3747     {
       
  3748         (yyval.integer) = CSSSelector::Exact;
       
  3749     ;}
       
  3750     break;
       
  3751 
       
  3752   case 195:
       
  3753 
       
  3754 /* Line 1455 of yacc.c  */
       
  3755 #line 1163 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3756     {
       
  3757         (yyval.integer) = CSSSelector::List;
       
  3758     ;}
       
  3759     break;
       
  3760 
       
  3761   case 196:
       
  3762 
       
  3763 /* Line 1455 of yacc.c  */
       
  3764 #line 1166 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3765     {
       
  3766         (yyval.integer) = CSSSelector::Hyphen;
       
  3767     ;}
       
  3768     break;
       
  3769 
       
  3770   case 197:
       
  3771 
       
  3772 /* Line 1455 of yacc.c  */
       
  3773 #line 1169 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3774     {
       
  3775         (yyval.integer) = CSSSelector::Begin;
       
  3776     ;}
       
  3777     break;
       
  3778 
       
  3779   case 198:
       
  3780 
       
  3781 /* Line 1455 of yacc.c  */
       
  3782 #line 1172 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3783     {
       
  3784         (yyval.integer) = CSSSelector::End;
       
  3785     ;}
       
  3786     break;
       
  3787 
       
  3788   case 199:
       
  3789 
       
  3790 /* Line 1455 of yacc.c  */
       
  3791 #line 1175 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3792     {
       
  3793         (yyval.integer) = CSSSelector::Contain;
       
  3794     ;}
       
  3795     break;
       
  3796 
       
  3797   case 202:
       
  3798 
       
  3799 /* Line 1455 of yacc.c  */
       
  3800 #line 1186 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3801     {
       
  3802         (yyval.selector) = static_cast<CSSParser*>(parser)->createFloatingSelector();
       
  3803         (yyval.selector)->m_match = CSSSelector::PagePseudoClass;
       
  3804         (yyvsp[(2) - (2)].string).lower();
       
  3805         (yyval.selector)->m_value = (yyvsp[(2) - (2)].string);
       
  3806         CSSSelector::PseudoType type = (yyval.selector)->pseudoType();
       
  3807         if (type == CSSSelector::PseudoUnknown)
       
  3808             (yyval.selector) = 0;
       
  3809     ;}
       
  3810     break;
       
  3811 
       
  3812   case 203:
       
  3813 
       
  3814 /* Line 1455 of yacc.c  */
       
  3815 #line 1197 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3816     {
       
  3817         (yyval.selector) = static_cast<CSSParser*>(parser)->createFloatingSelector();
       
  3818         (yyval.selector)->m_match = CSSSelector::PseudoClass;
       
  3819         (yyvsp[(2) - (2)].string).lower();
       
  3820         (yyval.selector)->m_value = (yyvsp[(2) - (2)].string);
       
  3821         CSSSelector::PseudoType type = (yyval.selector)->pseudoType();
       
  3822         if (type == CSSSelector::PseudoUnknown)
       
  3823             (yyval.selector) = 0;
       
  3824         else if (type == CSSSelector::PseudoEmpty ||
       
  3825                  type == CSSSelector::PseudoFirstChild ||
       
  3826                  type == CSSSelector::PseudoFirstOfType ||
       
  3827                  type == CSSSelector::PseudoLastChild ||
       
  3828                  type == CSSSelector::PseudoLastOfType ||
       
  3829                  type == CSSSelector::PseudoOnlyChild ||
       
  3830                  type == CSSSelector::PseudoOnlyOfType) {
       
  3831             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3832             Document* doc = p->document();
       
  3833             if (doc)
       
  3834                 doc->setUsesSiblingRules(true);
       
  3835         } else if (type == CSSSelector::PseudoFirstLine) {
       
  3836             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3837             if (Document* doc = p->document())
       
  3838                 doc->setUsesFirstLineRules(true);
       
  3839         } else if (type == CSSSelector::PseudoBefore ||
       
  3840                    type == CSSSelector::PseudoAfter) {
       
  3841             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3842             if (Document* doc = p->document())
       
  3843                 doc->setUsesBeforeAfterRules(true);
       
  3844         } else if (type == CSSSelector::PseudoLink || type == CSSSelector::PseudoVisited) {
       
  3845             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3846             if (Document* doc = p->document())
       
  3847                 doc->setUsesLinkRules(true);
       
  3848         }
       
  3849     ;}
       
  3850     break;
       
  3851 
       
  3852   case 204:
       
  3853 
       
  3854 /* Line 1455 of yacc.c  */
       
  3855 #line 1231 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3856     {
       
  3857         (yyval.selector) = static_cast<CSSParser*>(parser)->createFloatingSelector();
       
  3858         (yyval.selector)->m_match = CSSSelector::PseudoElement;
       
  3859         (yyvsp[(3) - (3)].string).lower();
       
  3860         (yyval.selector)->m_value = (yyvsp[(3) - (3)].string);
       
  3861         CSSSelector::PseudoType type = (yyval.selector)->pseudoType();
       
  3862         if (type == CSSSelector::PseudoUnknown)
       
  3863             (yyval.selector) = 0;
       
  3864         else if (type == CSSSelector::PseudoFirstLine) {
       
  3865             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3866             if (Document* doc = p->document())
       
  3867                 doc->setUsesFirstLineRules(true);
       
  3868         } else if (type == CSSSelector::PseudoBefore ||
       
  3869                    type == CSSSelector::PseudoAfter) {
       
  3870             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3871             if (Document* doc = p->document())
       
  3872                 doc->setUsesBeforeAfterRules(true);
       
  3873         }
       
  3874     ;}
       
  3875     break;
       
  3876 
       
  3877   case 205:
       
  3878 
       
  3879 /* Line 1455 of yacc.c  */
       
  3880 #line 1251 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3881     {
       
  3882         CSSParser *p = static_cast<CSSParser*>(parser);
       
  3883         (yyval.selector) = p->createFloatingSelector();
       
  3884         (yyval.selector)->m_match = CSSSelector::PseudoClass;
       
  3885         (yyval.selector)->setArgument((yyvsp[(4) - (6)].string));
       
  3886         (yyval.selector)->m_value = (yyvsp[(2) - (6)].string);
       
  3887         CSSSelector::PseudoType type = (yyval.selector)->pseudoType();
       
  3888         if (type == CSSSelector::PseudoUnknown)
       
  3889             (yyval.selector) = 0;
       
  3890         else if (type == CSSSelector::PseudoNthChild ||
       
  3891                  type == CSSSelector::PseudoNthOfType ||
       
  3892                  type == CSSSelector::PseudoNthLastChild ||
       
  3893                  type == CSSSelector::PseudoNthLastOfType) {
       
  3894             if (p->document())
       
  3895                 p->document()->setUsesSiblingRules(true);
       
  3896         }
       
  3897     ;}
       
  3898     break;
       
  3899 
       
  3900   case 206:
       
  3901 
       
  3902 /* Line 1455 of yacc.c  */
       
  3903 #line 1269 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3904     {
       
  3905         CSSParser *p = static_cast<CSSParser*>(parser);
       
  3906         (yyval.selector) = p->createFloatingSelector();
       
  3907         (yyval.selector)->m_match = CSSSelector::PseudoClass;
       
  3908         (yyval.selector)->setArgument(String::number((yyvsp[(4) - (7)].integer) * (yyvsp[(5) - (7)].number)));
       
  3909         (yyval.selector)->m_value = (yyvsp[(2) - (7)].string);
       
  3910         CSSSelector::PseudoType type = (yyval.selector)->pseudoType();
       
  3911         if (type == CSSSelector::PseudoUnknown)
       
  3912             (yyval.selector) = 0;
       
  3913         else if (type == CSSSelector::PseudoNthChild ||
       
  3914                  type == CSSSelector::PseudoNthOfType ||
       
  3915                  type == CSSSelector::PseudoNthLastChild ||
       
  3916                  type == CSSSelector::PseudoNthLastOfType) {
       
  3917             if (p->document())
       
  3918                 p->document()->setUsesSiblingRules(true);
       
  3919         }
       
  3920     ;}
       
  3921     break;
       
  3922 
       
  3923   case 207:
       
  3924 
       
  3925 /* Line 1455 of yacc.c  */
       
  3926 #line 1287 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3927     {
       
  3928         CSSParser *p = static_cast<CSSParser*>(parser);
       
  3929         (yyval.selector) = p->createFloatingSelector();
       
  3930         (yyval.selector)->m_match = CSSSelector::PseudoClass;
       
  3931         (yyval.selector)->setArgument((yyvsp[(4) - (6)].string));
       
  3932         (yyvsp[(2) - (6)].string).lower();
       
  3933         (yyval.selector)->m_value = (yyvsp[(2) - (6)].string);
       
  3934         CSSSelector::PseudoType type = (yyval.selector)->pseudoType();
       
  3935         if (type == CSSSelector::PseudoUnknown)
       
  3936             (yyval.selector) = 0;
       
  3937         else if (type == CSSSelector::PseudoNthChild ||
       
  3938                  type == CSSSelector::PseudoNthOfType ||
       
  3939                  type == CSSSelector::PseudoNthLastChild ||
       
  3940                  type == CSSSelector::PseudoNthLastOfType) {
       
  3941             if (p->document())
       
  3942                 p->document()->setUsesSiblingRules(true);
       
  3943         }
       
  3944     ;}
       
  3945     break;
       
  3946 
       
  3947   case 208:
       
  3948 
       
  3949 /* Line 1455 of yacc.c  */
       
  3950 #line 1306 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3951     {
       
  3952         if (!(yyvsp[(4) - (6)].selector) || !(yyvsp[(4) - (6)].selector)->isSimple())
       
  3953             (yyval.selector) = 0;
       
  3954         else {
       
  3955             CSSParser* p = static_cast<CSSParser*>(parser);
       
  3956             (yyval.selector) = p->createFloatingSelector();
       
  3957             (yyval.selector)->m_match = CSSSelector::PseudoClass;
       
  3958             (yyval.selector)->setSimpleSelector(p->sinkFloatingSelector((yyvsp[(4) - (6)].selector)));
       
  3959             (yyvsp[(2) - (6)].string).lower();
       
  3960             (yyval.selector)->m_value = (yyvsp[(2) - (6)].string);
       
  3961         }
       
  3962     ;}
       
  3963     break;
       
  3964 
       
  3965   case 209:
       
  3966 
       
  3967 /* Line 1455 of yacc.c  */
       
  3968 #line 1321 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3969     {
       
  3970         (yyval.boolean) = (yyvsp[(1) - (1)].boolean);
       
  3971     ;}
       
  3972     break;
       
  3973 
       
  3974   case 210:
       
  3975 
       
  3976 /* Line 1455 of yacc.c  */
       
  3977 #line 1324 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3978     {
       
  3979         (yyval.boolean) = (yyvsp[(1) - (2)].boolean);
       
  3980         if ( (yyvsp[(2) - (2)].boolean) )
       
  3981             (yyval.boolean) = (yyvsp[(2) - (2)].boolean);
       
  3982     ;}
       
  3983     break;
       
  3984 
       
  3985   case 211:
       
  3986 
       
  3987 /* Line 1455 of yacc.c  */
       
  3988 #line 1329 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3989     {
       
  3990         (yyval.boolean) = (yyvsp[(1) - (1)].boolean);
       
  3991     ;}
       
  3992     break;
       
  3993 
       
  3994   case 212:
       
  3995 
       
  3996 /* Line 1455 of yacc.c  */
       
  3997 #line 1332 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  3998     {
       
  3999         (yyval.boolean) = false;
       
  4000     ;}
       
  4001     break;
       
  4002 
       
  4003   case 213:
       
  4004 
       
  4005 /* Line 1455 of yacc.c  */
       
  4006 #line 1335 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4007     {
       
  4008         (yyval.boolean) = false;
       
  4009     ;}
       
  4010     break;
       
  4011 
       
  4012   case 214:
       
  4013 
       
  4014 /* Line 1455 of yacc.c  */
       
  4015 #line 1338 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4016     {
       
  4017         (yyval.boolean) = (yyvsp[(1) - (2)].boolean);
       
  4018     ;}
       
  4019     break;
       
  4020 
       
  4021   case 215:
       
  4022 
       
  4023 /* Line 1455 of yacc.c  */
       
  4024 #line 1341 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4025     {
       
  4026         (yyval.boolean) = (yyvsp[(1) - (2)].boolean);
       
  4027     ;}
       
  4028     break;
       
  4029 
       
  4030   case 216:
       
  4031 
       
  4032 /* Line 1455 of yacc.c  */
       
  4033 #line 1347 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4034     {
       
  4035         (yyval.boolean) = (yyvsp[(1) - (3)].boolean);
       
  4036     ;}
       
  4037     break;
       
  4038 
       
  4039   case 217:
       
  4040 
       
  4041 /* Line 1455 of yacc.c  */
       
  4042 #line 1350 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4043     {
       
  4044         (yyval.boolean) = false;
       
  4045     ;}
       
  4046     break;
       
  4047 
       
  4048   case 218:
       
  4049 
       
  4050 /* Line 1455 of yacc.c  */
       
  4051 #line 1353 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4052     {
       
  4053         (yyval.boolean) = false;
       
  4054     ;}
       
  4055     break;
       
  4056 
       
  4057   case 219:
       
  4058 
       
  4059 /* Line 1455 of yacc.c  */
       
  4060 #line 1356 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4061     {
       
  4062         (yyval.boolean) = false;
       
  4063     ;}
       
  4064     break;
       
  4065 
       
  4066   case 220:
       
  4067 
       
  4068 /* Line 1455 of yacc.c  */
       
  4069 #line 1359 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4070     {
       
  4071         (yyval.boolean) = false;
       
  4072     ;}
       
  4073     break;
       
  4074 
       
  4075   case 221:
       
  4076 
       
  4077 /* Line 1455 of yacc.c  */
       
  4078 #line 1362 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4079     {
       
  4080         (yyval.boolean) = (yyvsp[(1) - (4)].boolean);
       
  4081         if ((yyvsp[(2) - (4)].boolean))
       
  4082             (yyval.boolean) = (yyvsp[(2) - (4)].boolean);
       
  4083     ;}
       
  4084     break;
       
  4085 
       
  4086   case 222:
       
  4087 
       
  4088 /* Line 1455 of yacc.c  */
       
  4089 #line 1367 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4090     {
       
  4091         (yyval.boolean) = (yyvsp[(1) - (4)].boolean);
       
  4092     ;}
       
  4093     break;
       
  4094 
       
  4095   case 223:
       
  4096 
       
  4097 /* Line 1455 of yacc.c  */
       
  4098 #line 1370 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4099     {
       
  4100         (yyval.boolean) = (yyvsp[(1) - (6)].boolean);
       
  4101     ;}
       
  4102     break;
       
  4103 
       
  4104   case 224:
       
  4105 
       
  4106 /* Line 1455 of yacc.c  */
       
  4107 #line 1376 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4108     {
       
  4109         (yyval.boolean) = false;
       
  4110         CSSParser* p = static_cast<CSSParser*>(parser);
       
  4111         if ((yyvsp[(1) - (5)].integer) && (yyvsp[(4) - (5)].valueList)) {
       
  4112             p->m_valueList = p->sinkFloatingValueList((yyvsp[(4) - (5)].valueList));
       
  4113             int oldParsedProperties = p->m_numParsedProperties;
       
  4114             (yyval.boolean) = p->parseValue((yyvsp[(1) - (5)].integer), (yyvsp[(5) - (5)].boolean));
       
  4115             if (!(yyval.boolean))
       
  4116                 p->rollbackLastProperties(p->m_numParsedProperties - oldParsedProperties);
       
  4117             delete p->m_valueList;
       
  4118             p->m_valueList = 0;
       
  4119         }
       
  4120     ;}
       
  4121     break;
       
  4122 
       
  4123   case 225:
       
  4124 
       
  4125 /* Line 1455 of yacc.c  */
       
  4126 #line 1390 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4127     {
       
  4128         CSSParser* p = static_cast<CSSParser*>(parser);
       
  4129         p->m_valueList = new CSSParserValueList;
       
  4130         p->m_valueList->addValue(p->sinkFloatingValue((yyvsp[(1) - (2)].value)));
       
  4131         int oldParsedProperties = p->m_numParsedProperties;
       
  4132         (yyval.boolean) = p->parseValue(CSSPropertyWebkitVariableDeclarationBlock, false);
       
  4133         if (!(yyval.boolean))
       
  4134             p->rollbackLastProperties(p->m_numParsedProperties - oldParsedProperties);
       
  4135         delete p->m_valueList;
       
  4136         p->m_valueList = 0;
       
  4137     ;}
       
  4138     break;
       
  4139 
       
  4140   case 226:
       
  4141 
       
  4142 /* Line 1455 of yacc.c  */
       
  4143 #line 1402 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4144     {
       
  4145         (yyval.boolean) = false;
       
  4146     ;}
       
  4147     break;
       
  4148 
       
  4149   case 227:
       
  4150 
       
  4151 /* Line 1455 of yacc.c  */
       
  4152 #line 1406 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4153     {
       
  4154         /* The default movable type template has letter-spacing: .none;  Handle this by looking for
       
  4155         error tokens at the start of an expr, recover the expr and then treat as an error, cleaning
       
  4156         up and deleting the shifted expr.  */
       
  4157         (yyval.boolean) = false;
       
  4158     ;}
       
  4159     break;
       
  4160 
       
  4161   case 228:
       
  4162 
       
  4163 /* Line 1455 of yacc.c  */
       
  4164 #line 1413 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4165     {
       
  4166         /* When we encounter something like p {color: red !important fail;} we should drop the declaration */
       
  4167         (yyval.boolean) = false;
       
  4168     ;}
       
  4169     break;
       
  4170 
       
  4171   case 229:
       
  4172 
       
  4173 /* Line 1455 of yacc.c  */
       
  4174 #line 1418 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4175     {
       
  4176         /* Handle this case: div { text-align: center; !important } Just reduce away the stray !important. */
       
  4177         (yyval.boolean) = false;
       
  4178     ;}
       
  4179     break;
       
  4180 
       
  4181   case 230:
       
  4182 
       
  4183 /* Line 1455 of yacc.c  */
       
  4184 #line 1423 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4185     {
       
  4186         /* div { font-family: } Just reduce away this property with no value. */
       
  4187         (yyval.boolean) = false;
       
  4188     ;}
       
  4189     break;
       
  4190 
       
  4191   case 231:
       
  4192 
       
  4193 /* Line 1455 of yacc.c  */
       
  4194 #line 1428 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4195     {
       
  4196         /* if we come across rules with invalid values like this case: p { weight: *; }, just discard the rule */
       
  4197         (yyval.boolean) = false;
       
  4198     ;}
       
  4199     break;
       
  4200 
       
  4201   case 232:
       
  4202 
       
  4203 /* Line 1455 of yacc.c  */
       
  4204 #line 1433 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4205     {
       
  4206         /* if we come across: div { color{;color:maroon} }, ignore everything within curly brackets */
       
  4207         (yyval.boolean) = false;
       
  4208     ;}
       
  4209     break;
       
  4210 
       
  4211   case 233:
       
  4212 
       
  4213 /* Line 1455 of yacc.c  */
       
  4214 #line 1440 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4215     {
       
  4216         (yyval.integer) = cssPropertyID((yyvsp[(1) - (2)].string));
       
  4217     ;}
       
  4218     break;
       
  4219 
       
  4220   case 234:
       
  4221 
       
  4222 /* Line 1455 of yacc.c  */
       
  4223 #line 1446 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4224     { (yyval.boolean) = true; ;}
       
  4225     break;
       
  4226 
       
  4227   case 235:
       
  4228 
       
  4229 /* Line 1455 of yacc.c  */
       
  4230 #line 1447 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4231     { (yyval.boolean) = false; ;}
       
  4232     break;
       
  4233 
       
  4234   case 236:
       
  4235 
       
  4236 /* Line 1455 of yacc.c  */
       
  4237 #line 1451 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4238     {
       
  4239         CSSParser* p = static_cast<CSSParser*>(parser);
       
  4240         (yyval.valueList) = p->createFloatingValueList();
       
  4241         (yyval.valueList)->addValue(p->sinkFloatingValue((yyvsp[(1) - (1)].value)));
       
  4242     ;}
       
  4243     break;
       
  4244 
       
  4245   case 237:
       
  4246 
       
  4247 /* Line 1455 of yacc.c  */
       
  4248 #line 1456 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4249     {
       
  4250         CSSParser* p = static_cast<CSSParser*>(parser);
       
  4251         (yyval.valueList) = (yyvsp[(1) - (3)].valueList);
       
  4252         if ((yyval.valueList)) {
       
  4253             if ((yyvsp[(2) - (3)].character)) {
       
  4254                 CSSParserValue v;
       
  4255                 v.id = 0;
       
  4256                 v.unit = CSSParserValue::Operator;
       
  4257                 v.iValue = (yyvsp[(2) - (3)].character);
       
  4258                 (yyval.valueList)->addValue(v);
       
  4259             }
       
  4260             (yyval.valueList)->addValue(p->sinkFloatingValue((yyvsp[(3) - (3)].value)));
       
  4261         }
       
  4262     ;}
       
  4263     break;
       
  4264 
       
  4265   case 238:
       
  4266 
       
  4267 /* Line 1455 of yacc.c  */
       
  4268 #line 1470 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4269     {
       
  4270         (yyval.valueList) = 0;
       
  4271     ;}
       
  4272     break;
       
  4273 
       
  4274   case 239:
       
  4275 
       
  4276 /* Line 1455 of yacc.c  */
       
  4277 #line 1473 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4278     {
       
  4279         (yyval.valueList) = 0;
       
  4280     ;}
       
  4281     break;
       
  4282 
       
  4283   case 240:
       
  4284 
       
  4285 /* Line 1455 of yacc.c  */
       
  4286 #line 1476 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4287     {
       
  4288         (yyval.valueList) = 0;
       
  4289     ;}
       
  4290     break;
       
  4291 
       
  4292   case 241:
       
  4293 
       
  4294 /* Line 1455 of yacc.c  */
       
  4295 #line 1482 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4296     {
       
  4297         (yyval.character) = '/';
       
  4298     ;}
       
  4299     break;
       
  4300 
       
  4301   case 242:
       
  4302 
       
  4303 /* Line 1455 of yacc.c  */
       
  4304 #line 1485 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4305     {
       
  4306         (yyval.character) = ',';
       
  4307     ;}
       
  4308     break;
       
  4309 
       
  4310   case 243:
       
  4311 
       
  4312 /* Line 1455 of yacc.c  */
       
  4313 #line 1488 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4314     {
       
  4315         (yyval.character) = 0;
       
  4316   ;}
       
  4317     break;
       
  4318 
       
  4319   case 244:
       
  4320 
       
  4321 /* Line 1455 of yacc.c  */
       
  4322 #line 1494 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4323     { (yyval.value) = (yyvsp[(1) - (1)].value); ;}
       
  4324     break;
       
  4325 
       
  4326   case 245:
       
  4327 
       
  4328 /* Line 1455 of yacc.c  */
       
  4329 #line 1495 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4330     { (yyval.value) = (yyvsp[(2) - (2)].value); (yyval.value).fValue *= (yyvsp[(1) - (2)].integer); ;}
       
  4331     break;
       
  4332 
       
  4333   case 246:
       
  4334 
       
  4335 /* Line 1455 of yacc.c  */
       
  4336 #line 1496 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4337     { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_STRING; ;}
       
  4338     break;
       
  4339 
       
  4340   case 247:
       
  4341 
       
  4342 /* Line 1455 of yacc.c  */
       
  4343 #line 1497 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4344     {
       
  4345       (yyval.value).id = cssValueKeywordID((yyvsp[(1) - (2)].string));
       
  4346       (yyval.value).unit = CSSPrimitiveValue::CSS_IDENT;
       
  4347       (yyval.value).string = (yyvsp[(1) - (2)].string);
       
  4348   ;}
       
  4349     break;
       
  4350 
       
  4351   case 248:
       
  4352 
       
  4353 /* Line 1455 of yacc.c  */
       
  4354 #line 1503 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4355     { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_DIMENSION; ;}
       
  4356     break;
       
  4357 
       
  4358   case 249:
       
  4359 
       
  4360 /* Line 1455 of yacc.c  */
       
  4361 #line 1504 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4362     { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(2) - (3)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_DIMENSION; ;}
       
  4363     break;
       
  4364 
       
  4365   case 250:
       
  4366 
       
  4367 /* Line 1455 of yacc.c  */
       
  4368 #line 1505 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4369     { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_URI; ;}
       
  4370     break;
       
  4371 
       
  4372   case 251:
       
  4373 
       
  4374 /* Line 1455 of yacc.c  */
       
  4375 #line 1506 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4376     { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_UNICODE_RANGE; ;}
       
  4377     break;
       
  4378 
       
  4379   case 252:
       
  4380 
       
  4381 /* Line 1455 of yacc.c  */
       
  4382 #line 1507 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4383     { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (1)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_PARSER_HEXCOLOR; ;}
       
  4384     break;
       
  4385 
       
  4386   case 253:
       
  4387 
       
  4388 /* Line 1455 of yacc.c  */
       
  4389 #line 1508 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4390     { (yyval.value).id = 0; (yyval.value).string = CSSParserString(); (yyval.value).unit = CSSPrimitiveValue::CSS_PARSER_HEXCOLOR; ;}
       
  4391     break;
       
  4392 
       
  4393   case 254:
       
  4394 
       
  4395 /* Line 1455 of yacc.c  */
       
  4396 #line 1510 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4397     {
       
  4398       (yyval.value) = (yyvsp[(1) - (1)].value);
       
  4399   ;}
       
  4400     break;
       
  4401 
       
  4402   case 255:
       
  4403 
       
  4404 /* Line 1455 of yacc.c  */
       
  4405 #line 1513 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4406     {
       
  4407       (yyval.value) = (yyvsp[(1) - (2)].value);
       
  4408   ;}
       
  4409     break;
       
  4410 
       
  4411   case 256:
       
  4412 
       
  4413 /* Line 1455 of yacc.c  */
       
  4414 #line 1516 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4415     { /* Handle width: %; */
       
  4416       (yyval.value).id = 0; (yyval.value).unit = 0;
       
  4417   ;}
       
  4418     break;
       
  4419 
       
  4420   case 257:
       
  4421 
       
  4422 /* Line 1455 of yacc.c  */
       
  4423 #line 1522 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4424     { (yyval.value).id = 0; (yyval.value).isInt = true; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_NUMBER; ;}
       
  4425     break;
       
  4426 
       
  4427   case 258:
       
  4428 
       
  4429 /* Line 1455 of yacc.c  */
       
  4430 #line 1523 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4431     { (yyval.value).id = 0; (yyval.value).isInt = false; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_NUMBER; ;}
       
  4432     break;
       
  4433 
       
  4434   case 259:
       
  4435 
       
  4436 /* Line 1455 of yacc.c  */
       
  4437 #line 1524 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4438     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_PERCENTAGE; ;}
       
  4439     break;
       
  4440 
       
  4441   case 260:
       
  4442 
       
  4443 /* Line 1455 of yacc.c  */
       
  4444 #line 1525 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4445     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_PX; ;}
       
  4446     break;
       
  4447 
       
  4448   case 261:
       
  4449 
       
  4450 /* Line 1455 of yacc.c  */
       
  4451 #line 1526 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4452     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_CM; ;}
       
  4453     break;
       
  4454 
       
  4455   case 262:
       
  4456 
       
  4457 /* Line 1455 of yacc.c  */
       
  4458 #line 1527 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4459     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_MM; ;}
       
  4460     break;
       
  4461 
       
  4462   case 263:
       
  4463 
       
  4464 /* Line 1455 of yacc.c  */
       
  4465 #line 1528 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4466     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_IN; ;}
       
  4467     break;
       
  4468 
       
  4469   case 264:
       
  4470 
       
  4471 /* Line 1455 of yacc.c  */
       
  4472 #line 1529 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4473     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_PT; ;}
       
  4474     break;
       
  4475 
       
  4476   case 265:
       
  4477 
       
  4478 /* Line 1455 of yacc.c  */
       
  4479 #line 1530 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4480     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_PC; ;}
       
  4481     break;
       
  4482 
       
  4483   case 266:
       
  4484 
       
  4485 /* Line 1455 of yacc.c  */
       
  4486 #line 1531 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4487     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_DEG; ;}
       
  4488     break;
       
  4489 
       
  4490   case 267:
       
  4491 
       
  4492 /* Line 1455 of yacc.c  */
       
  4493 #line 1532 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4494     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_RAD; ;}
       
  4495     break;
       
  4496 
       
  4497   case 268:
       
  4498 
       
  4499 /* Line 1455 of yacc.c  */
       
  4500 #line 1533 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4501     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_GRAD; ;}
       
  4502     break;
       
  4503 
       
  4504   case 269:
       
  4505 
       
  4506 /* Line 1455 of yacc.c  */
       
  4507 #line 1534 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4508     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_TURN; ;}
       
  4509     break;
       
  4510 
       
  4511   case 270:
       
  4512 
       
  4513 /* Line 1455 of yacc.c  */
       
  4514 #line 1535 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4515     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_MS; ;}
       
  4516     break;
       
  4517 
       
  4518   case 271:
       
  4519 
       
  4520 /* Line 1455 of yacc.c  */
       
  4521 #line 1536 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4522     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_S; ;}
       
  4523     break;
       
  4524 
       
  4525   case 272:
       
  4526 
       
  4527 /* Line 1455 of yacc.c  */
       
  4528 #line 1537 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4529     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_HZ; ;}
       
  4530     break;
       
  4531 
       
  4532   case 273:
       
  4533 
       
  4534 /* Line 1455 of yacc.c  */
       
  4535 #line 1538 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4536     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_KHZ; ;}
       
  4537     break;
       
  4538 
       
  4539   case 274:
       
  4540 
       
  4541 /* Line 1455 of yacc.c  */
       
  4542 #line 1539 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4543     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_EMS; ;}
       
  4544     break;
       
  4545 
       
  4546   case 275:
       
  4547 
       
  4548 /* Line 1455 of yacc.c  */
       
  4549 #line 1540 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4550     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSParserValue::Q_EMS; ;}
       
  4551     break;
       
  4552 
       
  4553   case 276:
       
  4554 
       
  4555 /* Line 1455 of yacc.c  */
       
  4556 #line 1541 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4557     { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].number); (yyval.value).unit = CSSPrimitiveValue::CSS_EXS; ;}
       
  4558     break;
       
  4559 
       
  4560   case 277:
       
  4561 
       
  4562 /* Line 1455 of yacc.c  */
       
  4563 #line 1542 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4564     {
       
  4565       (yyval.value).id = 0;
       
  4566       (yyval.value).fValue = (yyvsp[(1) - (2)].number);
       
  4567       (yyval.value).unit = CSSPrimitiveValue::CSS_REMS;
       
  4568       CSSParser* p = static_cast<CSSParser*>(parser);
       
  4569       if (Document* doc = p->document())
       
  4570           doc->setUsesRemUnits(true);
       
  4571   ;}
       
  4572     break;
       
  4573 
       
  4574   case 278:
       
  4575 
       
  4576 /* Line 1455 of yacc.c  */
       
  4577 #line 1553 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4578     {
       
  4579       (yyval.value).id = 0;
       
  4580       (yyval.value).string = (yyvsp[(1) - (1)].string);
       
  4581       (yyval.value).unit = CSSPrimitiveValue::CSS_PARSER_VARIABLE_FUNCTION_SYNTAX;
       
  4582   ;}
       
  4583     break;
       
  4584 
       
  4585   case 279:
       
  4586 
       
  4587 /* Line 1455 of yacc.c  */
       
  4588 #line 1561 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4589     {
       
  4590         CSSParser* p = static_cast<CSSParser*>(parser);
       
  4591         CSSParserFunction* f = p->createFloatingFunction();
       
  4592         f->name = (yyvsp[(1) - (5)].string);
       
  4593         f->args = p->sinkFloatingValueList((yyvsp[(3) - (5)].valueList));
       
  4594         (yyval.value).id = 0;
       
  4595         (yyval.value).unit = CSSParserValue::Function;
       
  4596         (yyval.value).function = f;
       
  4597     ;}
       
  4598     break;
       
  4599 
       
  4600   case 280:
       
  4601 
       
  4602 /* Line 1455 of yacc.c  */
       
  4603 #line 1570 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4604     {
       
  4605         CSSParser* p = static_cast<CSSParser*>(parser);
       
  4606         CSSParserFunction* f = p->createFloatingFunction();
       
  4607         f->name = (yyvsp[(1) - (3)].string);
       
  4608         f->args = 0;
       
  4609         (yyval.value).id = 0;
       
  4610         (yyval.value).unit = CSSParserValue::Function;
       
  4611         (yyval.value).function = f;
       
  4612   ;}
       
  4613     break;
       
  4614 
       
  4615   case 281:
       
  4616 
       
  4617 /* Line 1455 of yacc.c  */
       
  4618 #line 1586 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4619     { (yyval.string) = (yyvsp[(1) - (2)].string); ;}
       
  4620     break;
       
  4621 
       
  4622   case 282:
       
  4623 
       
  4624 /* Line 1455 of yacc.c  */
       
  4625 #line 1587 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4626     { (yyval.string) = (yyvsp[(1) - (2)].string); ;}
       
  4627     break;
       
  4628 
       
  4629   case 283:
       
  4630 
       
  4631 /* Line 1455 of yacc.c  */
       
  4632 #line 1594 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4633     {
       
  4634         (yyval.rule) = 0;
       
  4635     ;}
       
  4636     break;
       
  4637 
       
  4638   case 284:
       
  4639 
       
  4640 /* Line 1455 of yacc.c  */
       
  4641 #line 1597 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4642     {
       
  4643         (yyval.rule) = 0;
       
  4644     ;}
       
  4645     break;
       
  4646 
       
  4647   case 285:
       
  4648 
       
  4649 /* Line 1455 of yacc.c  */
       
  4650 #line 1603 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4651     {
       
  4652         (yyval.rule) = 0;
       
  4653     ;}
       
  4654     break;
       
  4655 
       
  4656   case 286:
       
  4657 
       
  4658 /* Line 1455 of yacc.c  */
       
  4659 #line 1606 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4660     {
       
  4661         (yyval.rule) = 0;
       
  4662     ;}
       
  4663     break;
       
  4664 
       
  4665   case 287:
       
  4666 
       
  4667 /* Line 1455 of yacc.c  */
       
  4668 #line 1612 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4669     {
       
  4670         (yyval.rule) = 0;
       
  4671     ;}
       
  4672     break;
       
  4673 
       
  4674   case 288:
       
  4675 
       
  4676 /* Line 1455 of yacc.c  */
       
  4677 #line 1630 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4678     {
       
  4679         static_cast<CSSParser*>(parser)->invalidBlockHit();
       
  4680     ;}
       
  4681     break;
       
  4682 
       
  4683   case 289:
       
  4684 
       
  4685 /* Line 1455 of yacc.c  */
       
  4686 #line 1633 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4687     {
       
  4688         static_cast<CSSParser*>(parser)->invalidBlockHit();
       
  4689     ;}
       
  4690     break;
       
  4691 
       
  4692 
       
  4693 
       
  4694 /* Line 1455 of yacc.c  */
       
  4695 #line 4696 "generated/CSSGrammar.tab.c"
       
  4696       default: break;
       
  4697     }
       
  4698   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
       
  4699 
       
  4700   YYPOPSTACK (yylen);
       
  4701   yylen = 0;
       
  4702   YY_STACK_PRINT (yyss, yyssp);
       
  4703 
       
  4704   *++yyvsp = yyval;
       
  4705 
       
  4706   /* Now `shift' the result of the reduction.  Determine what state
       
  4707      that goes to, based on the state we popped back to and the rule
       
  4708      number reduced by.  */
       
  4709 
       
  4710   yyn = yyr1[yyn];
       
  4711 
       
  4712   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
       
  4713   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
       
  4714     yystate = yytable[yystate];
       
  4715   else
       
  4716     yystate = yydefgoto[yyn - YYNTOKENS];
       
  4717 
       
  4718   goto yynewstate;
       
  4719 
       
  4720 
       
  4721 /*------------------------------------.
       
  4722 | yyerrlab -- here on detecting error |
       
  4723 `------------------------------------*/
       
  4724 yyerrlab:
       
  4725   /* If not already recovering from an error, report this error.  */
       
  4726   if (!yyerrstatus)
       
  4727     {
       
  4728       ++yynerrs;
       
  4729 #if ! YYERROR_VERBOSE
       
  4730       yyerror (YY_("syntax error"));
       
  4731 #else
       
  4732       {
       
  4733 	YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
       
  4734 	if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
       
  4735 	  {
       
  4736 	    YYSIZE_T yyalloc = 2 * yysize;
       
  4737 	    if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
       
  4738 	      yyalloc = YYSTACK_ALLOC_MAXIMUM;
       
  4739 	    if (yymsg != yymsgbuf)
       
  4740 	      YYSTACK_FREE (yymsg);
       
  4741 	    yymsg = (char *) YYSTACK_ALLOC (yyalloc);
       
  4742 	    if (yymsg)
       
  4743 	      yymsg_alloc = yyalloc;
       
  4744 	    else
       
  4745 	      {
       
  4746 		yymsg = yymsgbuf;
       
  4747 		yymsg_alloc = sizeof yymsgbuf;
       
  4748 	      }
       
  4749 	  }
       
  4750 
       
  4751 	if (0 < yysize && yysize <= yymsg_alloc)
       
  4752 	  {
       
  4753 	    (void) yysyntax_error (yymsg, yystate, yychar);
       
  4754 	    yyerror (yymsg);
       
  4755 	  }
       
  4756 	else
       
  4757 	  {
       
  4758 	    yyerror (YY_("syntax error"));
       
  4759 	    if (yysize != 0)
       
  4760 	      goto yyexhaustedlab;
       
  4761 	  }
       
  4762       }
       
  4763 #endif
       
  4764     }
       
  4765 
       
  4766 
       
  4767 
       
  4768   if (yyerrstatus == 3)
       
  4769     {
       
  4770       /* If just tried and failed to reuse lookahead token after an
       
  4771 	 error, discard it.  */
       
  4772 
       
  4773       if (yychar <= YYEOF)
       
  4774 	{
       
  4775 	  /* Return failure if at end of input.  */
       
  4776 	  if (yychar == YYEOF)
       
  4777 	    YYABORT;
       
  4778 	}
       
  4779       else
       
  4780 	{
       
  4781 	  yydestruct ("Error: discarding",
       
  4782 		      yytoken, &yylval);
       
  4783 	  yychar = YYEMPTY;
       
  4784 	}
       
  4785     }
       
  4786 
       
  4787   /* Else will try to reuse lookahead token after shifting the error
       
  4788      token.  */
       
  4789   goto yyerrlab1;
       
  4790 
       
  4791 
       
  4792 /*---------------------------------------------------.
       
  4793 | yyerrorlab -- error raised explicitly by YYERROR.  |
       
  4794 `---------------------------------------------------*/
       
  4795 yyerrorlab:
       
  4796 
       
  4797   /* Pacify compilers like GCC when the user code never invokes
       
  4798      YYERROR and the label yyerrorlab therefore never appears in user
       
  4799      code.  */
       
  4800   if (/*CONSTCOND*/ 0)
       
  4801      goto yyerrorlab;
       
  4802 
       
  4803   /* Do not reclaim the symbols of the rule which action triggered
       
  4804      this YYERROR.  */
       
  4805   YYPOPSTACK (yylen);
       
  4806   yylen = 0;
       
  4807   YY_STACK_PRINT (yyss, yyssp);
       
  4808   yystate = *yyssp;
       
  4809   goto yyerrlab1;
       
  4810 
       
  4811 
       
  4812 /*-------------------------------------------------------------.
       
  4813 | yyerrlab1 -- common code for both syntax error and YYERROR.  |
       
  4814 `-------------------------------------------------------------*/
       
  4815 yyerrlab1:
       
  4816   yyerrstatus = 3;	/* Each real token shifted decrements this.  */
       
  4817 
       
  4818   for (;;)
       
  4819     {
       
  4820       yyn = yypact[yystate];
       
  4821       if (yyn != YYPACT_NINF)
       
  4822 	{
       
  4823 	  yyn += YYTERROR;
       
  4824 	  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
       
  4825 	    {
       
  4826 	      yyn = yytable[yyn];
       
  4827 	      if (0 < yyn)
       
  4828 		break;
       
  4829 	    }
       
  4830 	}
       
  4831 
       
  4832       /* Pop the current state because it cannot handle the error token.  */
       
  4833       if (yyssp == yyss)
       
  4834 	YYABORT;
       
  4835 
       
  4836 
       
  4837       yydestruct ("Error: popping",
       
  4838 		  yystos[yystate], yyvsp);
       
  4839       YYPOPSTACK (1);
       
  4840       yystate = *yyssp;
       
  4841       YY_STACK_PRINT (yyss, yyssp);
       
  4842     }
       
  4843 
       
  4844   *++yyvsp = yylval;
       
  4845 
       
  4846 
       
  4847   /* Shift the error token.  */
       
  4848   YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
       
  4849 
       
  4850   yystate = yyn;
       
  4851   goto yynewstate;
       
  4852 
       
  4853 
       
  4854 /*-------------------------------------.
       
  4855 | yyacceptlab -- YYACCEPT comes here.  |
       
  4856 `-------------------------------------*/
       
  4857 yyacceptlab:
       
  4858   yyresult = 0;
       
  4859   goto yyreturn;
       
  4860 
       
  4861 /*-----------------------------------.
       
  4862 | yyabortlab -- YYABORT comes here.  |
       
  4863 `-----------------------------------*/
       
  4864 yyabortlab:
       
  4865   yyresult = 1;
       
  4866   goto yyreturn;
       
  4867 
       
  4868 #if !defined(yyoverflow) || YYERROR_VERBOSE
       
  4869 /*-------------------------------------------------.
       
  4870 | yyexhaustedlab -- memory exhaustion comes here.  |
       
  4871 `-------------------------------------------------*/
       
  4872 yyexhaustedlab:
       
  4873   yyerror (YY_("memory exhausted"));
       
  4874   yyresult = 2;
       
  4875   /* Fall through.  */
       
  4876 #endif
       
  4877 
       
  4878 yyreturn:
       
  4879   if (yychar != YYEMPTY)
       
  4880      yydestruct ("Cleanup: discarding lookahead",
       
  4881 		 yytoken, &yylval);
       
  4882   /* Do not reclaim the symbols of the rule which action triggered
       
  4883      this YYABORT or YYACCEPT.  */
       
  4884   YYPOPSTACK (yylen);
       
  4885   YY_STACK_PRINT (yyss, yyssp);
       
  4886   while (yyssp != yyss)
       
  4887     {
       
  4888       yydestruct ("Cleanup: popping",
       
  4889 		  yystos[*yyssp], yyvsp);
       
  4890       YYPOPSTACK (1);
       
  4891     }
       
  4892 #ifndef yyoverflow
       
  4893   if (yyss != yyssa)
       
  4894     YYSTACK_FREE (yyss);
       
  4895 #endif
       
  4896 #if YYERROR_VERBOSE
       
  4897   if (yymsg != yymsgbuf)
       
  4898     YYSTACK_FREE (yymsg);
       
  4899 #endif
       
  4900   /* Make sure YYID is used.  */
       
  4901   return YYID (yyresult);
       
  4902 }
       
  4903 
       
  4904 
       
  4905 
       
  4906 /* Line 1675 of yacc.c  */
       
  4907 #line 1643 "u:\\yaels-qtwebkit\\WebCore\\css\\CSSGrammar.y"
       
  4908 
       
  4909