~ubuntu-branches/ubuntu/precise/kde4libs/precise-proposed

« back to all changes in this revision

Viewing changes to khtml/css/parser.cpp

  • Committer: Package Import Robot
  • Author(s): Jonathan Riddell
  • Date: 2011-12-16 13:53:22 UTC
  • mfrom: (1.14.11)
  • Revision ID: package-import@ubuntu.com-20111216135322-joct6gdco90t3koc
Tags: 4:4.7.90-0ubuntu1
* New upstream beta release
* Remove kubuntu_mobile patches, kactivities is split out now and they 
  will be out of date, keep 
  kubuntu-mobile-07-serviceAvailabilityChanged-bool-signal.diff
  for binary compatibility reasons

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* A Bison parser, made by GNU Bison 2.4.3.  */
 
1
/* A Bison parser, made by GNU Bison 2.5.  */
2
2
 
3
 
/* Skeleton implementation for Bison's Yacc-like parsers in C
 
3
/* Bison implementation for Yacc-like parsers in C
4
4
   
5
 
      Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
6
 
   2009, 2010 Free Software Foundation, Inc.
 
5
      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
7
6
   
8
7
   This program is free software: you can redistribute it and/or modify
9
8
   it under the terms of the GNU General Public License as published by
45
44
#define YYBISON 1
46
45
 
47
46
/* Bison version.  */
48
 
#define YYBISON_VERSION "2.4.3"
 
47
#define YYBISON_VERSION "2.5"
49
48
 
50
49
/* Skeleton name.  */
51
50
#define YYSKELETON_NAME "yacc.c"
431
430
#    define alloca _alloca
432
431
#   else
433
432
#    define YYSTACK_ALLOC alloca
434
 
#    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
 
433
#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
435
434
     || defined __cplusplus || defined _MSC_VER)
436
435
#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
437
 
#     ifndef _STDLIB_H
438
 
#      define _STDLIB_H 1
 
436
#     ifndef EXIT_SUCCESS
 
437
#      define EXIT_SUCCESS 0
439
438
#     endif
440
439
#    endif
441
440
#   endif
458
457
#  ifndef YYSTACK_ALLOC_MAXIMUM
459
458
#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
460
459
#  endif
461
 
#  if (defined __cplusplus && ! defined _STDLIB_H \
 
460
#  if (defined __cplusplus && ! defined EXIT_SUCCESS \
462
461
       && ! ((defined YYMALLOC || defined malloc) \
463
462
             && (defined YYFREE || defined free)))
464
463
#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
465
 
#   ifndef _STDLIB_H
466
 
#    define _STDLIB_H 1
 
464
#   ifndef EXIT_SUCCESS
 
465
#    define EXIT_SUCCESS 0
467
466
#   endif
468
467
#  endif
469
468
#  ifndef YYMALLOC
470
469
#   define YYMALLOC malloc
471
 
#   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
 
470
#   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
472
471
     || defined __cplusplus || defined _MSC_VER)
473
472
void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
474
473
#   endif
475
474
#  endif
476
475
#  ifndef YYFREE
477
476
#   define YYFREE free
478
 
#   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
 
477
#   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
479
478
     || defined __cplusplus || defined _MSC_VER)
480
479
void free (void *); /* INFRINGES ON USER NAME SPACE */
481
480
#   endif
504
503
     ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
505
504
      + YYSTACK_GAP_MAXIMUM)
506
505
 
 
506
# define YYCOPY_NEEDED 1
 
507
 
 
508
/* Relocate STACK from its old location to the new one.  The
 
509
   local variables YYSIZE and YYSTACKSIZE give the old and new number of
 
510
   elements in the stack, and YYPTR gives the new location of the
 
511
   stack.  Advance YYPTR to a properly aligned location for the next
 
512
   stack.  */
 
513
# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
 
514
    do                                                                  \
 
515
      {                                                                 \
 
516
        YYSIZE_T yynewbytes;                                            \
 
517
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
 
518
        Stack = &yyptr->Stack_alloc;                                    \
 
519
        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
 
520
        yyptr += yynewbytes / sizeof (*yyptr);                          \
 
521
      }                                                                 \
 
522
    while (YYID (0))
 
523
 
 
524
#endif
 
525
 
 
526
#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
507
527
/* Copy COUNT objects from FROM to TO.  The source and destination do
508
528
   not overlap.  */
509
529
# ifndef YYCOPY
521
541
      while (YYID (0))
522
542
#  endif
523
543
# endif
524
 
 
525
 
/* Relocate STACK from its old location to the new one.  The
526
 
   local variables YYSIZE and YYSTACKSIZE give the old and new number of
527
 
   elements in the stack, and YYPTR gives the new location of the
528
 
   stack.  Advance YYPTR to a properly aligned location for the next
529
 
   stack.  */
530
 
# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
531
 
    do                                                                  \
532
 
      {                                                                 \
533
 
        YYSIZE_T yynewbytes;                                            \
534
 
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
535
 
        Stack = &yyptr->Stack_alloc;                                    \
536
 
        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
537
 
        yyptr += yynewbytes / sizeof (*yyptr);                          \
538
 
      }                                                                 \
539
 
    while (YYID (0))
540
 
 
541
 
#endif
 
544
#endif /* !YYCOPY_NEEDED */
542
545
 
543
546
/* YYFINAL -- State number of the termination state.  */
544
 
#define YYFINAL  23
 
547
#define YYFINAL  19
545
548
/* YYLAST -- Last index in YYTABLE.  */
546
 
#define YYLAST   633
 
549
#define YYLAST   619
547
550
 
548
551
/* YYNTOKENS -- Number of terminals.  */
549
552
#define YYNTOKENS  76
552
555
/* YYNRULES -- Number of rules.  */
553
556
#define YYNRULES  199
554
557
/* YYNRULES -- Number of states.  */
555
 
#define YYNSTATES  377
 
558
#define YYNSTATES  378
556
559
 
557
560
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
558
561
#define YYUNDEFTOK  2
603
606
   YYRHS.  */
604
607
static const yytype_uint16 yyprhs[] =
605
608
{
606
 
       0,     0,     3,     9,    12,    15,    18,    21,    24,    26,
607
 
      28,    30,    37,    40,    46,    52,    58,    59,    61,    62,
608
 
      65,    66,    69,    72,    73,    75,    81,    85,    89,    90,
609
 
      94,   101,   105,   109,   110,   114,   119,   123,   127,   131,
610
 
     132,   135,   136,   140,   142,   144,   146,   148,   150,   152,
611
 
     155,   157,   159,   161,   164,   166,   168,   171,   172,   177,
612
 
     185,   187,   193,   194,   198,   199,   201,   203,   205,   210,
613
 
     211,   213,   215,   220,   223,   231,   238,   239,   243,   246,
614
 
     250,   254,   258,   262,   266,   269,   272,   275,   277,   279,
615
 
     282,   284,   289,   292,   294,   297,   301,   305,   308,   310,
616
 
     313,   316,   318,   321,   323,   326,   330,   333,   335,   337,
617
 
     340,   343,   345,   347,   349,   352,   355,   357,   359,   361,
618
 
     363,   366,   369,   374,   383,   389,   399,   401,   403,   405,
619
 
     407,   409,   411,   413,   415,   418,   422,   429,   437,   444,
620
 
     451,   458,   463,   468,   473,   479,   485,   489,   493,   498,
621
 
     503,   509,   512,   515,   518,   519,   521,   525,   528,   531,
622
 
     532,   534,   537,   540,   543,   546,   549,   552,   554,   556,
623
 
     559,   562,   565,   568,   571,   574,   577,   580,   583,   586,
624
 
     589,   592,   595,   598,   601,   604,   607,   610,   613,   616,
625
 
     619,   625,   629,   632,   636,   640,   643,   649,   653,   655
 
609
       0,     0,     3,    10,    13,    16,    19,    22,    25,    27,
 
610
      29,    31,    38,    41,    47,    53,    59,    60,    62,    63,
 
611
      66,    67,    70,    73,    74,    76,    82,    86,    90,    91,
 
612
      95,   102,   106,   110,   111,   115,   120,   124,   128,   132,
 
613
     133,   136,   137,   141,   143,   145,   147,   149,   151,   153,
 
614
     156,   158,   160,   162,   165,   167,   169,   172,   173,   178,
 
615
     186,   188,   194,   195,   199,   200,   202,   204,   206,   211,
 
616
     212,   214,   216,   221,   224,   232,   239,   240,   244,   247,
 
617
     251,   255,   259,   263,   267,   270,   273,   276,   278,   280,
 
618
     283,   285,   290,   293,   295,   298,   302,   306,   309,   311,
 
619
     314,   317,   319,   322,   324,   327,   331,   334,   336,   338,
 
620
     341,   344,   346,   348,   350,   353,   356,   358,   360,   362,
 
621
     364,   367,   370,   375,   384,   390,   400,   402,   404,   406,
 
622
     408,   410,   412,   414,   416,   419,   423,   430,   438,   445,
 
623
     452,   459,   464,   469,   474,   480,   486,   490,   494,   499,
 
624
     504,   510,   513,   516,   519,   520,   522,   526,   529,   532,
 
625
     533,   535,   538,   541,   544,   547,   550,   553,   555,   557,
 
626
     560,   563,   566,   569,   572,   575,   578,   581,   584,   587,
 
627
     590,   593,   596,   599,   602,   605,   608,   611,   614,   617,
 
628
     620,   626,   630,   633,   637,   641,   644,   650,   654,   656
626
629
};
627
630
 
628
631
/* YYRHS -- A `-1'-separated list of the rules' RHS.  */
629
632
static const yytype_int16 yyrhs[] =
630
633
{
631
 
      77,     0,    -1,    87,    86,    89,    91,    95,    -1,    79,
632
 
      85,    -1,    80,    85,    -1,    81,    85,    -1,    83,    85,
633
 
      -1,    82,    85,    -1,   115,    -1,    90,    -1,    92,    -1,
634
 
      27,    62,    85,    78,    85,    63,    -1,    28,   130,    -1,
635
 
      29,    62,    85,   135,    63,    -1,    31,    62,    85,   116,
636
 
      63,    -1,    30,     4,    85,   105,    63,    -1,    -1,    64,
637
 
      -1,    -1,    85,     4,    -1,    -1,    86,     5,    -1,    86,
638
 
       4,    -1,    -1,    88,    -1,    25,    85,    11,    85,    65,
639
 
      -1,    25,     1,   143,    -1,    25,     1,    65,    -1,    -1,
640
 
      89,    90,    86,    -1,    21,    85,    98,    85,   106,    65,
641
 
      -1,    21,     1,   143,    -1,    21,     1,    65,    -1,    -1,
642
 
      91,    93,    86,    -1,    26,    85,    94,    98,    -1,    92,
643
 
      85,    65,    -1,    26,     1,   143,    -1,    26,     1,    65,
644
 
      -1,    -1,    12,     4,    -1,    -1,    95,    96,    86,    -1,
645
 
     115,    -1,   108,    -1,   111,    -1,   112,    -1,   142,    -1,
646
 
     141,    -1,    90,     1,    -1,   115,    -1,   142,    -1,   141,
647
 
      -1,    90,     1,    -1,    11,    -1,    58,    -1,    12,    85,
648
 
      -1,    -1,    16,    85,   135,    85,    -1,    66,    85,    99,
649
 
      85,   100,    67,    85,    -1,   101,    -1,   102,    85,    35,
650
 
      85,   101,    -1,    -1,    35,    85,   102,    -1,    -1,    33,
651
 
      -1,    34,    -1,   102,    -1,   104,    85,   110,   103,    -1,
652
 
      -1,   107,    -1,   105,    -1,   107,    68,    85,   105,    -1,
653
 
     107,     1,    -1,    23,    85,   107,    62,    85,   109,    63,
654
 
      -1,    23,    85,    62,    85,   109,    63,    -1,    -1,   109,
655
 
      97,    85,    -1,    12,    85,    -1,    22,     1,   143,    -1,
656
 
      22,     1,    65,    -1,    24,    85,   130,    -1,    24,     1,
657
 
     143,    -1,    24,     1,    65,    -1,    64,    85,    -1,    69,
658
 
      85,    -1,    70,    85,    -1,    71,    -1,    64,    -1,   116,
659
 
     130,    -1,   117,    -1,   116,    68,    85,   117,    -1,   116,
660
 
       1,    -1,   119,    -1,   117,     4,    -1,   117,     4,   119,
661
 
      -1,   117,   113,   119,    -1,   117,     1,    -1,    20,    -1,
662
 
      19,    20,    -1,    12,    20,    -1,   121,    -1,   121,   122,
663
 
      -1,   122,    -1,   118,   121,    -1,   118,   121,   122,    -1,
664
 
     118,   122,    -1,   121,    -1,   123,    -1,   118,   121,    -1,
665
 
     118,   123,    -1,    12,    -1,    19,    -1,   123,    -1,   122,
666
 
     123,    -1,   122,     1,    -1,    14,    -1,   124,    -1,   126,
667
 
      -1,   129,    -1,    17,    12,    -1,    12,    85,    -1,    18,
668
 
      85,   125,    72,    -1,    18,    85,   125,   127,    85,   128,
669
 
      85,    72,    -1,    18,    85,   118,   125,    72,    -1,    18,
670
 
      85,   118,   125,   127,    85,   128,    85,    72,    -1,    73,
671
 
      -1,     6,    -1,     7,    -1,     8,    -1,     9,    -1,    10,
672
 
      -1,    12,    -1,    11,    -1,    16,    12,    -1,    16,    16,
673
 
      12,    -1,    16,    59,    85,    13,    85,    67,    -1,    16,
674
 
      59,    85,    84,    57,    85,    67,    -1,    16,    59,    85,
675
 
      12,    85,    67,    -1,    16,    59,    85,    11,    85,    67,
676
 
      -1,    16,    60,    85,   120,    85,    67,    -1,    62,    85,
677
 
     132,    63,    -1,    62,    85,     1,    63,    -1,    62,    85,
678
 
     131,    63,    -1,    62,    85,   131,   132,    63,    -1,    62,
679
 
      85,   131,     1,    63,    -1,   132,    65,    85,    -1,     1,
680
 
      65,    85,    -1,   131,   132,    65,    85,    -1,   131,     1,
681
 
      65,    85,    -1,   133,    16,    85,   135,   134,    -1,     1,
682
 
     143,    -1,    12,    85,    -1,    32,    85,    -1,    -1,   137,
683
 
      -1,   135,   136,   137,    -1,    74,    85,    -1,    68,    85,
684
 
      -1,    -1,   138,    -1,   114,   138,    -1,    54,    85,    -1,
685
 
      11,    85,    -1,    12,    85,    -1,    58,    85,    -1,    61,
686
 
      85,    -1,   140,    -1,   139,    -1,    57,    85,    -1,    56,
687
 
      85,    -1,    55,    85,    -1,    39,    85,    -1,    40,    85,
688
 
      -1,    41,    85,    -1,    42,    85,    -1,    43,    85,    -1,
689
 
      44,    85,    -1,    45,    85,    -1,    46,    85,    -1,    47,
690
 
      85,    -1,    48,    85,    -1,    49,    85,    -1,    50,    85,
691
 
      -1,    51,    85,    -1,    37,    85,    -1,    36,    85,    -1,
692
 
      38,    85,    -1,    52,    85,    -1,    53,    85,    -1,    59,
693
 
      85,   135,    67,    85,    -1,    59,    85,     1,    -1,    15,
694
 
      85,    -1,    75,     1,   143,    -1,    75,     1,    65,    -1,
695
 
       1,   143,    -1,    62,     1,   144,     1,    63,    -1,    62,
696
 
       1,    63,    -1,   143,    -1,   144,     1,   143,    -1
 
634
      77,     0,    -1,    85,    87,    86,    89,    91,    95,    -1,
 
635
      79,    85,    -1,    80,    85,    -1,    81,    85,    -1,    83,
 
636
      85,    -1,    82,    85,    -1,   115,    -1,    90,    -1,    92,
 
637
      -1,    27,    62,    85,    78,    85,    63,    -1,    28,   130,
 
638
      -1,    29,    62,    85,   135,    63,    -1,    31,    62,    85,
 
639
     116,    63,    -1,    30,     4,    85,   105,    63,    -1,    -1,
 
640
      64,    -1,    -1,    85,     4,    -1,    -1,    86,     5,    -1,
 
641
      86,     4,    -1,    -1,    88,    -1,    25,    85,    11,    85,
 
642
      65,    -1,    25,     1,   143,    -1,    25,     1,    65,    -1,
 
643
      -1,    89,    90,    86,    -1,    21,    85,    98,    85,   106,
 
644
      65,    -1,    21,     1,   143,    -1,    21,     1,    65,    -1,
 
645
      -1,    91,    93,    86,    -1,    26,    85,    94,    98,    -1,
 
646
      92,    85,    65,    -1,    26,     1,   143,    -1,    26,     1,
 
647
      65,    -1,    -1,    12,     4,    -1,    -1,    95,    96,    86,
 
648
      -1,   115,    -1,   108,    -1,   111,    -1,   112,    -1,   142,
 
649
      -1,   141,    -1,    90,     1,    -1,   115,    -1,   142,    -1,
 
650
     141,    -1,    90,     1,    -1,    11,    -1,    58,    -1,    12,
 
651
      85,    -1,    -1,    16,    85,   135,    85,    -1,    66,    85,
 
652
      99,    85,   100,    67,    85,    -1,   101,    -1,   102,    85,
 
653
      35,    85,   101,    -1,    -1,    35,    85,   102,    -1,    -1,
 
654
      33,    -1,    34,    -1,   102,    -1,   104,    85,   110,   103,
 
655
      -1,    -1,   107,    -1,   105,    -1,   107,    68,    85,   105,
 
656
      -1,   107,     1,    -1,    23,    85,   107,    62,    85,   109,
 
657
      63,    -1,    23,    85,    62,    85,   109,    63,    -1,    -1,
 
658
     109,    97,    85,    -1,    12,    85,    -1,    22,     1,   143,
 
659
      -1,    22,     1,    65,    -1,    24,    85,   130,    -1,    24,
 
660
       1,   143,    -1,    24,     1,    65,    -1,    64,    85,    -1,
 
661
      69,    85,    -1,    70,    85,    -1,    71,    -1,    64,    -1,
 
662
     116,   130,    -1,   117,    -1,   116,    68,    85,   117,    -1,
 
663
     116,     1,    -1,   119,    -1,   117,     4,    -1,   117,     4,
 
664
     119,    -1,   117,   113,   119,    -1,   117,     1,    -1,    20,
 
665
      -1,    19,    20,    -1,    12,    20,    -1,   121,    -1,   121,
 
666
     122,    -1,   122,    -1,   118,   121,    -1,   118,   121,   122,
 
667
      -1,   118,   122,    -1,   121,    -1,   123,    -1,   118,   121,
 
668
      -1,   118,   123,    -1,    12,    -1,    19,    -1,   123,    -1,
 
669
     122,   123,    -1,   122,     1,    -1,    14,    -1,   124,    -1,
 
670
     126,    -1,   129,    -1,    17,    12,    -1,    12,    85,    -1,
 
671
      18,    85,   125,    72,    -1,    18,    85,   125,   127,    85,
 
672
     128,    85,    72,    -1,    18,    85,   118,   125,    72,    -1,
 
673
      18,    85,   118,   125,   127,    85,   128,    85,    72,    -1,
 
674
      73,    -1,     6,    -1,     7,    -1,     8,    -1,     9,    -1,
 
675
      10,    -1,    12,    -1,    11,    -1,    16,    12,    -1,    16,
 
676
      16,    12,    -1,    16,    59,    85,    13,    85,    67,    -1,
 
677
      16,    59,    85,    84,    57,    85,    67,    -1,    16,    59,
 
678
      85,    12,    85,    67,    -1,    16,    59,    85,    11,    85,
 
679
      67,    -1,    16,    60,    85,   120,    85,    67,    -1,    62,
 
680
      85,   132,    63,    -1,    62,    85,     1,    63,    -1,    62,
 
681
      85,   131,    63,    -1,    62,    85,   131,   132,    63,    -1,
 
682
      62,    85,   131,     1,    63,    -1,   132,    65,    85,    -1,
 
683
       1,    65,    85,    -1,   131,   132,    65,    85,    -1,   131,
 
684
       1,    65,    85,    -1,   133,    16,    85,   135,   134,    -1,
 
685
       1,   143,    -1,    12,    85,    -1,    32,    85,    -1,    -1,
 
686
     137,    -1,   135,   136,   137,    -1,    74,    85,    -1,    68,
 
687
      85,    -1,    -1,   138,    -1,   114,   138,    -1,    54,    85,
 
688
      -1,    11,    85,    -1,    12,    85,    -1,    58,    85,    -1,
 
689
      61,    85,    -1,   140,    -1,   139,    -1,    57,    85,    -1,
 
690
      56,    85,    -1,    55,    85,    -1,    39,    85,    -1,    40,
 
691
      85,    -1,    41,    85,    -1,    42,    85,    -1,    43,    85,
 
692
      -1,    44,    85,    -1,    45,    85,    -1,    46,    85,    -1,
 
693
      47,    85,    -1,    48,    85,    -1,    49,    85,    -1,    50,
 
694
      85,    -1,    51,    85,    -1,    37,    85,    -1,    36,    85,
 
695
      -1,    38,    85,    -1,    52,    85,    -1,    53,    85,    -1,
 
696
      59,    85,   135,    67,    85,    -1,    59,    85,     1,    -1,
 
697
      15,    85,    -1,    75,     1,   143,    -1,    75,     1,    65,
 
698
      -1,     1,   143,    -1,    62,     1,   144,     1,    63,    -1,
 
699
      62,     1,    63,    -1,   143,    -1,   144,     1,   143,    -1
697
700
};
698
701
 
699
702
/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
700
703
static const yytype_uint16 yyrline[] =
701
704
{
702
 
       0,   311,   311,   312,   313,   314,   315,   316,   320,   321,
703
 
     322,   326,   333,   339,   364,   374,   380,   382,   386,   387,
704
 
     390,   392,   393,   396,   398,   401,   410,   412,   416,   418,
705
 
     429,   439,   442,   448,   449,   453,   463,   471,   472,   476,
706
 
     477,   480,   482,   493,   494,   495,   496,   497,   498,   499,
707
 
     503,   504,   505,   506,   510,   511,   515,   521,   524,   530,
708
 
     536,   540,   547,   550,   556,   559,   562,   568,   571,   577,
709
 
     580,   585,   589,   594,   601,   612,   624,   625,   635,   653,
710
 
     656,   662,   669,   672,   678,   679,   680,   684,   685,   689,
711
 
     711,   724,   742,   752,   755,   758,   772,   786,   793,   794,
712
 
     795,   799,   804,   811,   818,   826,   836,   849,   854,   861,
713
 
     869,   882,   886,   892,   895,   905,   912,   926,   927,   928,
714
 
     932,   949,   956,   962,   969,   978,   991,   994,   997,  1000,
715
 
    1003,  1006,  1012,  1013,  1017,  1023,  1029,  1036,  1043,  1050,
716
 
    1057,  1066,  1069,  1072,  1075,  1080,  1086,  1090,  1093,  1098,
717
 
    1104,  1126,  1132,  1154,  1155,  1159,  1163,  1179,  1182,  1185,
718
 
    1191,  1192,  1194,  1195,  1196,  1202,  1203,  1204,  1206,  1212,
719
 
    1213,  1214,  1215,  1216,  1217,  1218,  1219,  1220,  1221,  1222,
720
 
    1223,  1224,  1225,  1226,  1227,  1228,  1229,  1230,  1231,  1232,
721
 
    1237,  1245,  1261,  1268,  1274,  1283,  1309,  1310,  1314,  1315
 
705
       0,   312,   312,   313,   314,   315,   316,   317,   321,   322,
 
706
     323,   327,   334,   340,   365,   375,   381,   383,   387,   388,
 
707
     391,   393,   394,   397,   399,   402,   411,   413,   417,   419,
 
708
     430,   440,   443,   449,   450,   454,   464,   472,   473,   477,
 
709
     478,   481,   483,   494,   495,   496,   497,   498,   499,   500,
 
710
     504,   505,   506,   507,   511,   512,   516,   522,   525,   531,
 
711
     537,   541,   548,   551,   557,   560,   563,   569,   572,   578,
 
712
     581,   586,   590,   595,   602,   613,   625,   626,   636,   654,
 
713
     657,   663,   670,   673,   679,   680,   681,   685,   686,   690,
 
714
     712,   725,   743,   753,   756,   759,   773,   787,   794,   795,
 
715
     796,   800,   805,   812,   819,   827,   837,   850,   855,   862,
 
716
     870,   883,   887,   893,   896,   906,   913,   927,   928,   929,
 
717
     933,   950,   957,   963,   970,   979,   992,   995,   998,  1001,
 
718
    1004,  1007,  1013,  1014,  1018,  1024,  1030,  1037,  1044,  1051,
 
719
    1058,  1067,  1070,  1073,  1076,  1081,  1087,  1091,  1094,  1099,
 
720
    1105,  1127,  1133,  1155,  1156,  1160,  1164,  1180,  1183,  1186,
 
721
    1192,  1193,  1195,  1196,  1197,  1203,  1204,  1205,  1207,  1213,
 
722
    1214,  1215,  1216,  1217,  1218,  1219,  1220,  1221,  1222,  1223,
 
723
    1224,  1225,  1226,  1227,  1228,  1229,  1230,  1231,  1232,  1233,
 
724
    1238,  1246,  1262,  1269,  1275,  1284,  1310,  1311,  1315,  1316
722
725
};
723
726
#endif
724
727
 
802
805
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
803
806
static const yytype_uint8 yyr2[] =
804
807
{
805
 
       0,     2,     5,     2,     2,     2,     2,     2,     1,     1,
 
808
       0,     2,     6,     2,     2,     2,     2,     2,     1,     1,
806
809
       1,     6,     2,     5,     5,     5,     0,     1,     0,     2,
807
810
       0,     2,     2,     0,     1,     5,     3,     3,     0,     3,
808
811
       6,     3,     3,     0,     3,     4,     3,     3,     3,     0,
824
827
       5,     3,     2,     3,     3,     2,     5,     3,     1,     3
825
828
};
826
829
 
827
 
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
828
 
   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
 
830
/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
 
831
   Performed when YYTABLE doesn't specify something else to do.  Zero
829
832
   means the default is an error.  */
830
833
static const yytype_uint8 yydefact[] =
831
834
{
832
 
      23,     0,     0,     0,     0,     0,     0,     0,    18,    18,
833
 
      18,    18,    18,    20,    24,     0,     0,    18,    18,    12,
834
 
      18,    18,    18,     1,     3,     4,     5,     7,     6,    28,
835
 
       0,    27,    26,    19,    18,     0,     0,     0,    64,     0,
836
 
      22,    21,    33,     0,     0,   111,   116,     0,     0,    18,
837
 
     112,    98,     0,    18,    18,     9,    10,     8,     0,     0,
838
 
       0,    93,   101,     0,   113,   117,   118,   119,     0,    18,
839
 
       0,     0,     0,    18,    18,    18,    18,    18,    18,    18,
840
 
      18,    18,    18,    18,    18,    18,    18,    18,    18,    18,
841
 
      18,    18,    18,    18,    18,    18,    18,    18,    18,    18,
842
 
      18,    88,    87,     0,   159,   155,   160,   168,   167,    65,
843
 
      66,    18,    60,    67,    18,     0,     0,    20,    41,   197,
844
 
     198,     0,    25,   100,   134,     0,    18,    18,   120,     0,
845
 
      99,     0,     0,    39,     0,    92,    18,    89,    97,    94,
846
 
      18,    18,    18,     0,   111,   112,   104,     0,     0,   115,
847
 
     114,   142,    18,   151,   152,     0,   143,     0,   141,    18,
848
 
      18,   163,   164,   192,   186,   185,   187,   172,   173,   174,
849
 
     175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
850
 
     188,   189,   162,   171,   170,   169,   165,     0,   166,   161,
851
 
      13,    18,    18,     0,     0,     0,     0,    15,    14,    29,
852
 
       0,    18,    20,     0,     0,   135,    16,     0,    18,     0,
853
 
       0,     0,    32,    31,    54,    55,    18,     0,     0,    11,
854
 
       0,    95,    84,    85,    86,    96,     0,   147,   145,    18,
855
 
     144,    18,   146,     0,   191,   159,   158,   157,   156,    18,
856
 
      18,    18,    18,    62,     0,     0,    34,     0,     0,    18,
857
 
       0,     0,     0,    20,    44,    45,    46,    43,    48,    47,
858
 
     196,   199,    18,    18,    18,    17,     0,     0,    18,   107,
859
 
     108,   121,    18,     0,   127,   128,   129,   130,   131,   122,
860
 
     126,    18,    64,    40,    35,     0,   149,   148,   159,    18,
861
 
      56,    57,     0,    78,    18,    68,    38,    37,    36,   195,
862
 
       0,    64,     0,     0,     0,    49,    42,     0,     0,     0,
863
 
      18,   109,   110,     0,   124,    18,     0,    71,     0,     0,
864
 
      18,   150,   190,    18,     0,    61,     0,    80,    79,    18,
865
 
       0,    83,    82,    81,   194,   193,   139,   138,   136,     0,
866
 
     140,     0,   133,   132,    18,    30,    73,    18,   153,     0,
867
 
      18,    63,    76,    18,   137,    18,     0,    64,   159,    59,
868
 
       0,    76,     0,   123,    72,    58,    75,     0,    18,    50,
869
 
      52,    51,     0,   125,    53,    77,    74
 
835
      18,     0,     0,     0,     0,     0,     0,    18,    18,    18,
 
836
      18,    18,    23,    18,    18,    12,    18,    18,    18,     1,
 
837
       3,     4,     5,     7,     6,    19,     0,    20,    24,     0,
 
838
       0,     0,    64,     0,     0,     0,    28,   111,   116,     0,
 
839
       0,    18,   112,    98,     0,    18,    18,     9,    10,     8,
 
840
       0,     0,     0,    93,   101,     0,   113,   117,   118,   119,
 
841
       0,    18,     0,     0,     0,    18,    18,    18,    18,    18,
 
842
      18,    18,    18,    18,    18,    18,    18,    18,    18,    18,
 
843
      18,    18,    18,    18,    18,    18,    18,    18,    18,    18,
 
844
      18,    18,    18,    88,    87,     0,   159,   155,   160,   168,
 
845
     167,    65,    66,    18,    60,    67,    18,     0,     0,     0,
 
846
      27,    26,    18,    22,    21,    33,   100,   134,     0,    18,
 
847
      18,   120,     0,    99,     0,     0,    39,     0,    92,    18,
 
848
      89,    97,    94,    18,    18,    18,     0,   111,   112,   104,
 
849
       0,     0,   115,   114,   142,    18,   151,   152,     0,   143,
 
850
       0,   141,    18,    18,   163,   164,   192,   186,   185,   187,
 
851
     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
 
852
     182,   183,   184,   188,   189,   162,   171,   170,   169,   165,
 
853
       0,   166,   161,    13,    18,    18,     0,     0,     0,     0,
 
854
      15,    14,     0,     0,    20,    41,   135,    16,     0,    18,
 
855
       0,     0,     0,    32,    31,    54,    55,    18,     0,     0,
 
856
      11,     0,    95,    84,    85,    86,    96,     0,   147,   145,
 
857
      18,   144,    18,   146,     0,   191,   159,   158,   157,   156,
 
858
      18,    18,    18,    18,    62,   197,   198,     0,    25,    29,
 
859
       0,    18,    20,     0,    18,    18,    18,    17,     0,     0,
 
860
      18,   107,   108,   121,    18,     0,   127,   128,   129,   130,
 
861
     131,   122,   126,    18,    64,    40,    35,     0,   149,   148,
 
862
     159,    18,    56,    57,     0,    78,    18,    68,     0,     0,
 
863
       0,    34,     0,     0,    18,     0,     0,     0,    20,    44,
 
864
      45,    46,    43,    48,    47,     0,     0,     0,    18,   109,
 
865
     110,     0,   124,    18,     0,    71,     0,     0,    18,   150,
 
866
     190,    18,     0,    61,     0,   196,   199,    38,    37,    36,
 
867
     195,     0,    64,     0,     0,     0,    49,    42,   139,   138,
 
868
     136,     0,   140,     0,   133,   132,    18,    30,    73,    18,
 
869
     153,     0,    18,    63,    80,    79,    18,     0,    83,    82,
 
870
      81,   194,   193,   137,    18,     0,    64,   159,    59,    76,
 
871
      18,     0,   123,    72,    58,     0,    76,   125,    75,     0,
 
872
      18,    50,    52,    51,     0,    53,    77,    74
870
873
};
871
874
 
872
875
/* YYDEFGOTO[NTERM-NUM].  */
873
876
static const yytype_int16 yydefgoto[] =
874
877
{
875
 
      -1,     7,    54,     8,     9,    10,    11,    12,   266,   133,
876
 
      29,    13,    14,    42,   367,   118,    56,   202,   218,   203,
877
 
     253,   368,   216,   240,   324,   112,   113,   295,   114,   317,
878
 
     318,   319,   254,   360,   243,   255,   256,   143,   103,   369,
879
 
      58,    59,    60,    61,   268,    62,    63,    64,    65,   211,
880
 
      66,   281,   344,    67,    19,    70,    71,    72,   321,   104,
881
 
     193,   105,   106,   107,   108,   370,   371,   153,   121
 
878
      -1,     6,    46,     7,     8,     9,    10,    11,   248,   126,
 
879
      36,    27,    28,   115,   369,   195,    48,   242,   209,   243,
 
880
     288,   370,   207,   231,   312,   104,   105,   277,   106,   305,
 
881
     306,   307,   289,   365,   234,   290,   291,   136,    95,   371,
 
882
      50,    51,    52,    53,   250,    54,    55,    56,    57,   202,
 
883
      58,   263,   336,    59,    15,    62,    63,    64,   309,    96,
 
884
     186,    97,    98,    99,   100,   372,   373,   146,   237
882
885
};
883
886
 
884
887
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
885
888
   STATE-NUM.  */
886
 
#define YYPACT_NINF -182
 
889
#define YYPACT_NINF -189
887
890
static const yytype_int16 yypact[] =
888
891
{
889
 
     534,    27,   -32,   -13,     9,   115,    75,   177,  -182,  -182,
890
 
    -182,  -182,  -182,  -182,  -182,   -15,   153,  -182,  -182,  -182,
891
 
    -182,  -182,  -182,  -182,   191,   191,   191,   191,   191,   171,
892
 
     200,  -182,  -182,  -182,  -182,   426,    28,   489,   170,   491,
893
 
    -182,  -182,   212,   232,   114,   215,  -182,   257,   234,  -182,
894
 
     236,  -182,   295,  -182,  -182,  -182,  -182,  -182,    54,   222,
895
 
     500,  -182,   506,   392,  -182,  -182,  -182,  -182,   245,  -182,
896
 
     155,   154,   252,  -182,  -182,  -182,  -182,  -182,  -182,  -182,
897
 
    -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,
898
 
    -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,
899
 
    -182,  -182,  -182,   576,   192,  -182,  -182,  -182,  -182,  -182,
900
 
    -182,  -182,  -182,    10,  -182,   220,    38,  -182,   277,  -182,
901
 
    -182,   304,  -182,  -182,  -182,   300,  -182,  -182,  -182,   319,
902
 
    -182,   270,   223,    22,   143,  -182,  -182,  -182,  -182,   344,
903
 
    -182,  -182,  -182,   344,  -182,  -182,   506,   401,   410,  -182,
904
 
    -182,  -182,  -182,  -182,   191,   264,  -182,   224,  -182,  -182,
905
 
    -182,   191,   191,   191,   191,   191,   191,   191,   191,   191,
906
 
     191,   191,   191,   191,   191,   191,   191,   191,   191,   191,
907
 
     191,   191,   191,   191,   191,   191,   191,   333,   191,  -182,
908
 
    -182,  -182,  -182,   540,   225,    11,   246,  -182,  -182,   171,
909
 
     253,  -182,  -182,    42,   278,  -182,   240,   491,   215,   236,
910
 
     313,   124,  -182,  -182,  -182,  -182,  -182,   326,   112,  -182,
911
 
     491,  -182,   191,   191,   191,  -182,   419,   191,  -182,  -182,
912
 
    -182,  -182,   191,   489,  -182,    87,   191,   191,  -182,  -182,
913
 
    -182,  -182,  -182,   301,   303,   167,   171,   280,   346,  -182,
914
 
      66,   350,   354,  -182,  -182,  -182,  -182,  -182,  -182,  -182,
915
 
    -182,  -182,  -182,  -182,  -182,  -182,   302,   500,  -182,  -182,
916
 
    -182,   191,  -182,   136,  -182,  -182,  -182,  -182,  -182,  -182,
917
 
    -182,  -182,   159,  -182,  -182,   428,   191,   191,   250,  -182,
918
 
     191,    19,   148,   191,  -182,  -182,  -182,  -182,  -182,  -182,
919
 
     336,   132,   338,    65,   351,  -182,   171,   111,   116,   144,
920
 
    -182,  -182,  -182,   145,  -182,  -182,   209,  -182,   330,    56,
921
 
    -182,  -182,   191,  -182,   299,  -182,   148,  -182,  -182,  -182,
922
 
     137,  -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,   149,
923
 
    -182,   209,  -182,  -182,  -182,  -182,  -182,  -182,   191,   489,
924
 
    -182,    10,   191,  -182,  -182,  -182,    32,   170,    40,   191,
925
 
     168,   191,    33,  -182,  -182,   191,  -182,   398,  -182,  -182,
926
 
    -182,  -182,   258,  -182,  -182,   191,  -182
 
892
     469,   -29,   -11,     1,   182,    95,   201,  -189,  -189,  -189,
 
893
    -189,  -189,    20,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
 
894
     211,   211,   211,   211,   211,  -189,    26,  -189,  -189,   522,
 
895
      52,   466,   209,   444,    -5,   290,   326,   216,  -189,   343,
 
896
     212,  -189,   227,  -189,   263,  -189,  -189,  -189,  -189,  -189,
 
897
      42,    54,   533,  -189,   436,   264,  -189,  -189,  -189,  -189,
 
898
     135,  -189,   124,   100,   245,  -189,  -189,  -189,  -189,  -189,
 
899
    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
 
900
    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,
 
901
    -189,  -189,  -189,  -189,  -189,   553,   255,  -189,  -189,  -189,
 
902
    -189,  -189,  -189,  -189,  -189,    17,  -189,   229,    58,   271,
 
903
    -189,  -189,  -189,  -189,  -189,   269,  -189,  -189,   288,  -189,
 
904
    -189,  -189,   285,  -189,   257,   262,    30,   151,  -189,  -189,
 
905
    -189,  -189,   599,  -189,  -189,  -189,   599,  -189,  -189,   436,
 
906
     348,   405,  -189,  -189,  -189,  -189,  -189,   211,   306,  -189,
 
907
     223,  -189,  -189,  -189,   211,   211,   211,   211,   211,   211,
 
908
     211,   211,   211,   211,   211,   211,   211,   211,   211,   211,
 
909
     211,   211,   211,   211,   211,   211,   211,   211,   211,   211,
 
910
     336,   211,  -189,  -189,  -189,  -189,   517,   213,    27,   275,
 
911
    -189,  -189,   352,   164,  -189,   289,  -189,   198,   444,   216,
 
912
     227,   305,   131,  -189,  -189,  -189,  -189,  -189,   320,   181,
 
913
    -189,   444,  -189,   211,   211,   211,  -189,   423,   211,  -189,
 
914
    -189,  -189,  -189,   211,   466,  -189,   242,   211,   211,  -189,
 
915
    -189,  -189,  -189,  -189,   309,  -189,  -189,   349,  -189,   326,
 
916
     295,  -189,  -189,   159,  -189,  -189,  -189,  -189,   299,   533,
 
917
    -189,  -189,  -189,   211,  -189,   422,  -189,  -189,  -189,  -189,
 
918
    -189,  -189,  -189,  -189,   204,  -189,  -189,   126,   211,   211,
 
919
     381,  -189,   211,    19,    43,   211,  -189,  -189,   363,   273,
 
920
     170,   326,   301,   366,  -189,   166,   397,   404,  -189,  -189,
 
921
    -189,  -189,  -189,  -189,  -189,    32,    44,    46,  -189,  -189,
 
922
    -189,   139,  -189,  -189,    28,  -189,   355,   153,  -189,  -189,
 
923
     211,  -189,   341,  -189,    43,  -189,  -189,  -189,  -189,  -189,
 
924
    -189,   296,   279,   334,   165,   339,  -189,   326,  -189,  -189,
 
925
    -189,   152,  -189,    28,  -189,  -189,  -189,  -189,  -189,  -189,
 
926
     211,   466,  -189,    17,  -189,  -189,  -189,    96,  -189,  -189,
 
927
    -189,  -189,  -189,  -189,  -189,    21,   209,    34,   211,   211,
 
928
    -189,    24,  -189,  -189,   211,   130,   211,  -189,  -189,   432,
 
929
    -189,  -189,  -189,  -189,   239,  -189,   211,  -189
927
930
};
928
931
 
929
932
/* YYPGOTO[NTERM-NUM].  */
930
933
static const yytype_int16 yypgoto[] =
931
934
{
932
 
    -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,  -182,    -1,
933
 
     -93,  -182,  -182,  -182,   -30,  -182,   289,  -182,  -182,  -182,
934
 
    -182,  -182,   194,  -182,  -182,   129,    96,  -182,  -182,   -37,
935
 
    -182,   130,  -182,    64,  -182,  -182,  -182,  -182,  -182,   -31,
936
 
     395,   219,  -107,   158,  -182,   -57,   -35,   -45,  -182,   231,
937
 
    -182,   175,   108,  -182,   -56,  -182,   380,  -182,  -182,  -181,
938
 
    -182,   260,   348,  -182,  -182,   254,   255,    -2,  -182
 
935
    -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,  -189,     0,
 
936
    -188,  -189,  -189,  -189,   -17,  -189,   240,  -189,  -189,  -189,
 
937
    -189,  -189,   225,  -189,  -189,   162,   128,  -189,  -189,   -31,
 
938
    -189,   116,  -189,    77,  -189,  -189,  -189,  -189,  -189,   -27,
 
939
     412,   236,  -103,    -4,  -189,   -37,   -32,   -26,  -189,   250,
 
940
    -189,   202,   132,  -189,   -47,  -189,   409,  -189,  -189,  -175,
 
941
    -189,   280,   364,  -189,  -189,   233,   237,   -30,  -189
939
942
};
940
943
 
941
944
/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
942
945
   positive, shift that token.  If negative, reduce the rule which
943
 
   number is the opposite.  If zero, do what YYDEFACT says.
944
 
   If YYTABLE_NINF, syntax error.  */
 
946
   number is the opposite.  If YYTABLE_NINF, syntax error.  */
945
947
#define YYTABLE_NINF -155
946
948
static const yytype_int16 yytable[] =
947
949
{
948
 
      16,   115,   137,   146,    57,    55,   235,    24,    25,    26,
949
 
      27,    28,   117,    32,   -18,    33,    35,    36,   150,    37,
950
 
      38,    39,   210,    33,   199,   147,    33,   148,    15,    68,
951
 
      17,   -18,    33,    44,   217,   323,    33,    33,   -18,   135,
952
 
      69,   120,    -2,   247,   -18,   -18,   241,    30,   129,    18,
953
 
      31,   132,   288,   134,    45,   135,    46,   346,    47,    48,
954
 
      49,    50,    51,    52,   248,   249,   250,   302,   154,    33,
955
 
     -18,    20,   161,   162,   163,   164,   165,   166,   167,   168,
 
950
      12,   107,    49,   130,   111,   226,   239,    20,    21,    22,
 
951
      23,    24,    47,    29,    30,   139,    31,    32,    33,   201,
 
952
     140,   -18,   141,    25,    25,    25,    35,    34,    25,   143,
 
953
     -18,    25,    25,    13,    25,   311,    25,   -18,   -18,   334,
 
954
     335,   122,   208,   128,   125,    26,   127,    25,    25,   270,
 
955
      25,    14,   -18,    60,   281,   131,    25,   109,   132,   128,
 
956
     110,   147,   232,    16,    61,   154,   155,   156,   157,   158,
 
957
     159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
956
958
     169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
957
 
     179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
958
 
     267,   198,   150,   150,   363,   373,   136,   -18,   191,   246,
959
 
     194,   226,   195,   196,   192,    33,    18,   251,    33,    21,
960
 
      33,   -70,   136,   214,   347,   206,   207,    18,   -18,   213,
961
 
     274,   275,   276,   277,   278,   220,    33,    22,   346,   222,
962
 
     223,   224,   274,   275,   276,   277,   278,    33,    33,    33,
963
 
     269,   227,    33,    33,   289,   191,   155,    33,   232,   233,
964
 
     306,   192,   270,    33,    34,   109,   110,    69,   358,   247,
965
 
     215,    33,   257,   252,    33,    40,    41,    23,   336,   122,
966
 
      45,   150,    46,   337,    47,    48,    49,    50,    51,    52,
967
 
     236,   237,   109,   110,   329,    33,   279,   280,   111,   353,
968
 
     245,    43,   261,   109,   110,   347,   219,   271,   314,   280,
969
 
     311,   338,   340,    33,   111,   282,   354,   158,   156,   159,
970
 
     342,   343,   312,   138,   -69,   111,   139,    33,   286,    33,
971
 
     287,   366,   298,    52,   214,   123,   111,   239,   290,   291,
972
 
     292,   293,   297,   251,    33,   299,   128,   333,   301,   303,
973
 
      33,   262,   263,   264,   244,   190,   130,   -18,   242,   247,
974
 
     191,   307,   308,   309,   -18,   -18,   192,   313,   160,   124,
975
 
      45,   271,    46,   125,    47,    48,    49,    50,    51,    52,
976
 
     316,   215,   320,   197,   -90,   -90,   140,   230,   322,   231,
977
 
     -90,   141,   142,   326,    30,   119,   131,   221,   328,   -18,
978
 
     332,   225,   335,   200,   265,   204,   -18,    30,   151,   339,
979
 
     152,   -18,   205,  -154,   341,  -154,   126,   127,   191,   348,
980
 
     364,   376,   349,    33,   192,   272,    30,   228,   352,   229,
981
 
     283,   208,    30,   251,   234,   212,   294,    33,   209,    51,
982
 
      30,   260,    30,   356,    73,    74,   357,   300,    75,   359,
983
 
     195,   304,   361,   -18,   362,   305,    45,   365,    46,   310,
984
 
      47,    48,    49,    50,    51,    30,   350,   375,   296,    76,
985
 
      77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
986
 
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
987
 
      97,    98,    99,   149,   100,   345,  -103,   101,    30,   374,
988
 
      30,   327,   149,   331,   102,  -106,    46,   201,    47,    48,
989
 
      49,   149,   284,    30,  -102,    46,   334,    47,    48,    49,
990
 
     149,   325,   351,  -105,    46,   372,    47,    48,    49,   138,
991
 
      33,   330,   139,    46,   116,    47,    48,    49,    45,   285,
992
 
      46,   273,    47,    48,    49,    50,    51,    52,   315,   355,
993
 
     157,   189,    53,   238,  -103,  -103,  -103,   258,   259,     0,
994
 
    -103,  -103,  -103,  -106,  -106,  -106,     0,     0,     0,  -106,
995
 
    -106,  -106,  -102,  -102,  -102,     0,     0,     0,  -102,  -102,
996
 
    -102,  -105,  -105,  -105,     0,     0,     0,  -105,  -105,  -105,
997
 
     -91,   -91,   140,    33,     0,    33,   -91,   141,   142,     0,
998
 
      73,    74,     0,    45,    75,    46,     0,    47,    48,    49,
999
 
      50,    51,   144,     0,    46,     0,    47,    48,    49,   145,
1000
 
      46,     0,    47,    48,    49,    76,    77,    78,    79,    80,
1001
 
      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1002
 
      91,    92,    93,    94,    95,    96,    97,    98,    99,     0,
1003
 
     100,    73,    74,   101,     0,    75,     0,     0,     0,     1,
1004
 
     102,     2,     3,     4,     5,     6,     0,     0,     0,     0,
1005
 
       0,     0,     0,     0,     0,     0,    76,    77,    78,    79,
 
959
     179,   180,   181,   362,   204,   249,   367,   338,   194,   328,
 
960
     327,   -18,   184,   187,    14,   188,   189,   217,   185,   103,
 
961
     129,   329,   193,   330,   143,   143,   -90,   -90,   133,   197,
 
962
     198,   191,   -90,   134,   135,   148,   129,   131,   212,   211,
 
963
     132,   282,   216,   213,   214,   215,    61,   256,   257,   258,
 
964
     259,   260,    37,    25,    38,   218,    39,    40,    41,    42,
 
965
      43,    44,   223,   224,   338,    25,    25,    18,   360,    -2,
 
966
     282,   251,   236,   151,   339,   152,   357,   323,    25,    25,
 
967
     -18,    37,   252,    38,    25,    39,    40,    41,    42,    43,
 
968
      44,   283,   284,   285,   227,   228,    17,   149,   -91,   -91,
 
969
     133,   143,   205,   368,   -91,   134,   135,   109,   144,   253,
 
970
     145,    19,    25,   261,   262,   286,   332,   264,    25,   244,
 
971
     245,   246,   299,    25,   210,    25,   292,    25,   -70,   353,
 
972
     268,   339,   269,   300,   121,   230,   287,    14,   -18,   238,
 
973
     272,   273,   274,   275,   286,   319,   116,   101,   102,   206,
 
974
     282,   280,   101,   102,   295,   296,   297,   123,   316,   318,
 
975
     301,    37,   320,    38,   253,    39,    40,    41,    42,    43,
 
976
      44,   153,   247,   304,   124,   142,    25,   -18,  -103,   -69,
 
977
     103,   310,   192,   205,   -18,   103,   314,   350,    38,    25,
 
978
      39,    40,    41,    25,   322,   324,   221,   233,   222,    25,
 
979
      44,   345,   190,   349,    25,   352,   279,   199,   331,   -18,
 
980
     196,   112,   377,   333,   200,    43,   -18,   -18,   340,   271,
 
981
     184,   341,   101,   102,   286,   240,   185,   254,   183,   109,
 
982
     206,   -18,   203,   184,   265,   363,  -103,  -103,  -103,   185,
 
983
     113,   114,  -103,  -103,  -103,   109,   355,   225,   317,   356,
 
984
      25,   346,   358,   188,   276,   103,   359,    65,    66,   142,
 
985
     278,    67,  -106,   -18,   361,   117,   298,   364,   109,   118,
 
986
     366,   344,    38,   109,    39,    40,    41,   321,   109,   219,
 
987
     376,   220,    68,    69,    70,    71,    72,    73,    74,    75,
 
988
      76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
 
989
      86,    87,    88,    89,    90,    91,   109,    92,   325,   348,
 
990
      93,   109,   119,   120,   351,   326,   142,    94,   342,  -102,
 
991
    -106,  -106,  -106,   308,   109,   235,  -106,  -106,  -106,    38,
 
992
     337,    39,    40,    41,   142,   109,   315,  -105,   256,   257,
 
993
     258,   259,   260,   375,   266,   241,   313,    38,   347,    39,
 
994
      40,    41,   343,   374,  -154,   108,  -154,   267,    25,   184,
 
995
      38,   255,    39,    40,    41,   185,    37,   303,    38,   182,
 
996
      39,    40,    41,    42,    43,   354,   229,  -102,  -102,  -102,
 
997
      25,   150,     0,  -102,  -102,  -102,   293,    65,    66,     0,
 
998
     294,    67,     0,     0,     0,  -105,  -105,  -105,     0,     0,
 
999
       0,  -105,  -105,  -105,   302,   262,     1,     2,     3,     4,
 
1000
       5,     0,    68,    69,    70,    71,    72,    73,    74,    75,
 
1001
      76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
 
1002
      86,    87,    88,    89,    90,    91,    25,    92,    65,    66,
 
1003
      93,     0,    67,     0,    37,     0,    38,    94,    39,    40,
 
1004
      41,    42,    43,    44,     0,   137,     0,    38,    45,    39,
 
1005
      40,    41,   138,    68,    69,    70,    71,    72,    73,    74,
 
1006
      75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
 
1007
      85,    86,    87,    88,    89,    90,    91,     0,    92,     0,
 
1008
       0,    93,     0,     0,     0,     0,     0,     0,    94,    68,
 
1009
      69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
 
1010
      79,    80,    81,    82,    83,    84,    85,     0,    87,    88,
 
1011
      89,    37,     0,    38,     0,    39,    40,    41,    42,    43
 
1012
};
 
1013
 
 
1014
#define yypact_value_is_default(yystate) \
 
1015
  ((yystate) == (-189))
 
1016
 
 
1017
#define yytable_value_is_error(yytable_value) \
 
1018
  YYID (0)
 
1019
 
 
1020
static const yytype_int16 yycheck[] =
 
1021
{
 
1022
       0,    32,    29,    50,    34,   180,   194,     7,     8,     9,
 
1023
      10,    11,    29,    13,    14,    52,    16,    17,    18,   122,
 
1024
      52,     4,    54,     4,     4,     4,    26,     1,     4,    55,
 
1025
       4,     4,     4,    62,     4,    16,     4,    11,     4,    11,
 
1026
      12,    41,    12,     1,    44,    25,    46,     4,     4,   224,
 
1027
       4,    62,    35,     1,   242,     1,     4,    62,     4,     1,
 
1028
      65,    61,    35,    62,    12,    65,    66,    67,    68,    69,
 
1029
      70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1006
1030
      80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
1007
 
      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
1008
 
       0,   100,     0,     0,   101,     0,     0,     0,     0,     0,
1009
 
       0,   102,    76,    77,    78,    79,    80,    81,    82,    83,
1010
 
      84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1011
 
       0,    95,    96,    97
1012
 
};
1013
 
 
1014
 
static const yytype_int16 yycheck[] =
1015
 
{
1016
 
       1,    38,    58,    60,    35,    35,   187,     8,     9,    10,
1017
 
      11,    12,    42,    15,     4,     4,    17,    18,    63,    20,
1018
 
      21,    22,   129,     4,   117,    60,     4,    62,     1,     1,
1019
 
      62,     4,     4,    34,    12,    16,     4,     4,    11,     1,
1020
 
      12,    43,     0,     1,     4,    35,    35,    62,    49,    62,
1021
 
      65,    52,   233,    54,    12,     1,    14,     1,    16,    17,
1022
 
      18,    19,    20,    21,    22,    23,    24,     1,    69,     4,
1023
 
       4,    62,    73,    74,    75,    76,    77,    78,    79,    80,
1024
 
      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1025
 
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
1026
 
     207,    63,   147,   148,    72,    72,    68,    67,    68,   202,
1027
 
     111,   146,   113,   114,    74,     4,    62,    75,     4,     4,
1028
 
       4,    65,    68,    11,    68,   126,   127,    62,    62,   131,
1029
 
       6,     7,     8,     9,    10,   136,     4,    62,     1,   140,
1030
 
     141,   142,     6,     7,     8,     9,    10,     4,     4,     4,
1031
 
     207,   152,     4,     4,    67,    68,     1,     4,   159,   160,
1032
 
     253,    74,   207,     4,    11,    33,    34,    12,   349,     1,
1033
 
      58,     4,   203,   203,     4,     4,     5,     0,    67,    65,
1034
 
      12,   226,    14,    67,    16,    17,    18,    19,    20,    21,
1035
 
     191,   192,    33,    34,    62,     4,    72,    73,    66,    62,
1036
 
     201,     1,   204,    33,    34,    68,    63,   208,    72,    73,
1037
 
     267,    67,    67,     4,    66,   216,    67,    63,    63,    65,
1038
 
      11,    12,   267,     1,    65,    66,     4,     4,   229,     4,
1039
 
     231,    63,    65,    21,    11,    20,    66,    12,   239,   240,
1040
 
     241,   242,   244,    75,     4,   247,    12,   303,   249,   250,
1041
 
       4,    11,    12,    13,     1,    63,    20,     4,    12,     1,
1042
 
      68,   262,   263,   264,    11,    12,    74,   268,    16,    12,
1043
 
      12,   272,    14,    16,    16,    17,    18,    19,    20,    21,
1044
 
     281,    58,    32,    63,    62,    63,    64,    63,   289,    65,
1045
 
      68,    69,    70,   294,    62,    63,     1,   139,   300,     4,
1046
 
     302,   143,   304,    26,    64,     1,    11,    62,    63,   310,
1047
 
      65,    58,    12,    63,   315,    65,    59,    60,    68,   320,
1048
 
     357,    63,   323,     4,    74,    12,    62,    63,   329,    65,
1049
 
       4,    12,    62,    75,     1,    65,    35,     4,    19,    20,
1050
 
      62,    63,    62,   344,    11,    12,   347,     1,    15,   350,
1051
 
     351,     1,   353,    58,   355,     1,    12,   358,    14,    57,
1052
 
      16,    17,    18,    19,    20,    62,    67,   368,    65,    36,
 
1031
      90,    91,    92,    72,   124,   198,    72,     1,   115,    67,
 
1032
     288,    67,    68,   103,    62,   105,   106,   139,    74,    66,
 
1033
      68,    67,   112,    67,   140,   141,    62,    63,    64,   119,
 
1034
     120,    63,    68,    69,    70,     1,    68,     1,   132,   129,
 
1035
       4,     1,   136,   133,   134,   135,    12,     6,     7,     8,
 
1036
       9,    10,    12,     4,    14,   145,    16,    17,    18,    19,
 
1037
      20,    21,   152,   153,     1,     4,     4,    62,    62,     0,
 
1038
       1,   198,   192,    63,    68,    65,   341,     1,     4,     4,
 
1039
       4,    12,   198,    14,     4,    16,    17,    18,    19,    20,
 
1040
      21,    22,    23,    24,   184,   185,     4,    63,    62,    63,
 
1041
      64,   217,    11,    63,    68,    69,    70,    62,    63,   199,
 
1042
      65,     0,     4,    72,    73,    75,    67,   207,     4,    11,
 
1043
      12,    13,   249,     4,    63,     4,   243,     4,    65,    67,
 
1044
     220,    68,   222,   249,    12,    12,   243,    62,    62,    65,
 
1045
     230,   231,   232,   233,    75,    65,    20,    33,    34,    58,
 
1046
       1,   241,    33,    34,   244,   245,   246,    20,   278,   279,
 
1047
     250,    12,   282,    14,   254,    16,    17,    18,    19,    20,
 
1048
      21,    16,    64,   263,     1,     1,     4,     4,     4,    65,
 
1049
      66,   271,     1,    11,    11,    66,   276,   324,    14,     4,
 
1050
      16,    17,    18,     4,   284,   285,    63,    12,    65,     4,
 
1051
      21,   321,    63,   323,     4,   325,     1,    12,   298,     4,
 
1052
      12,    11,    63,   303,    19,    20,    11,    12,   308,    67,
 
1053
      68,   311,    33,    34,    75,    26,    74,    12,    63,    62,
 
1054
      58,    58,    65,    68,     4,   356,    62,    63,    64,    74,
 
1055
       4,     5,    68,    69,    70,    62,   336,     1,    65,   339,
 
1056
       4,    62,   342,   343,    35,    66,   346,    11,    12,     1,
 
1057
       1,    15,     4,    58,   354,    12,    57,   357,    62,    16,
 
1058
     360,    65,    14,    62,    16,    17,    18,     1,    62,    63,
 
1059
     370,    65,    36,    37,    38,    39,    40,    41,    42,    43,
 
1060
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
 
1061
      54,    55,    56,    57,    58,    59,    62,    61,     1,    65,
 
1062
      64,    62,    59,    60,    65,     1,     1,    71,    67,     4,
 
1063
      62,    63,    64,    32,    62,    63,    68,    69,    70,    14,
 
1064
      65,    16,    17,    18,     1,    62,    63,     4,     6,     7,
 
1065
       8,     9,    10,     1,   209,   195,   274,    14,   322,    16,
 
1066
      17,    18,   314,   366,    63,    33,    65,   211,     4,    68,
 
1067
      14,   201,    16,    17,    18,    74,    12,   255,    14,    95,
 
1068
      16,    17,    18,    19,    20,   333,   186,    62,    63,    64,
 
1069
       4,    62,    -1,    68,    69,    70,   243,    11,    12,    -1,
 
1070
     243,    15,    -1,    -1,    -1,    62,    63,    64,    -1,    -1,
 
1071
      -1,    68,    69,    70,    72,    73,    27,    28,    29,    30,
 
1072
      31,    -1,    36,    37,    38,    39,    40,    41,    42,    43,
 
1073
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
 
1074
      54,    55,    56,    57,    58,    59,     4,    61,    11,    12,
 
1075
      64,    -1,    15,    -1,    12,    -1,    14,    71,    16,    17,
 
1076
      18,    19,    20,    21,    -1,    12,    -1,    14,    26,    16,
 
1077
      17,    18,    19,    36,    37,    38,    39,    40,    41,    42,
 
1078
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
 
1079
      53,    54,    55,    56,    57,    58,    59,    -1,    61,    -1,
 
1080
      -1,    64,    -1,    -1,    -1,    -1,    -1,    -1,    71,    36,
1053
1081
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
1054
 
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
1055
 
      57,    58,    59,     1,    61,    65,     4,    64,    62,     1,
1056
 
      62,    65,     1,    65,    71,     4,    14,   118,    16,    17,
1057
 
      18,     1,   218,    62,     4,    14,    65,    16,    17,    18,
1058
 
       1,   292,   326,     4,    14,   361,    16,    17,    18,     1,
1059
 
       4,   301,     4,    14,    39,    16,    17,    18,    12,   220,
1060
 
      14,   210,    16,    17,    18,    19,    20,    21,   273,   341,
1061
 
      70,   103,    26,   193,    62,    63,    64,   203,   203,    -1,
1062
 
      68,    69,    70,    62,    63,    64,    -1,    -1,    -1,    68,
1063
 
      69,    70,    62,    63,    64,    -1,    -1,    -1,    68,    69,
1064
 
      70,    62,    63,    64,    -1,    -1,    -1,    68,    69,    70,
1065
 
      62,    63,    64,     4,    -1,     4,    68,    69,    70,    -1,
1066
 
      11,    12,    -1,    12,    15,    14,    -1,    16,    17,    18,
1067
 
      19,    20,    12,    -1,    14,    -1,    16,    17,    18,    19,
1068
 
      14,    -1,    16,    17,    18,    36,    37,    38,    39,    40,
1069
 
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
1070
 
      51,    52,    53,    54,    55,    56,    57,    58,    59,    -1,
1071
 
      61,    11,    12,    64,    -1,    15,    -1,    -1,    -1,    25,
1072
 
      71,    27,    28,    29,    30,    31,    -1,    -1,    -1,    -1,
1073
 
      -1,    -1,    -1,    -1,    -1,    -1,    36,    37,    38,    39,
1074
 
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
1075
 
      50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
1076
 
      -1,    61,    -1,    -1,    64,    -1,    -1,    -1,    -1,    -1,
1077
 
      -1,    71,    36,    37,    38,    39,    40,    41,    42,    43,
1078
 
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
1079
 
      -1,    55,    56,    57
 
1082
      47,    48,    49,    50,    51,    52,    53,    -1,    55,    56,
 
1083
      57,    12,    -1,    14,    -1,    16,    17,    18,    19,    20
1080
1084
};
1081
1085
 
1082
1086
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1083
1087
   symbol of state STATE-NUM.  */
1084
1088
static const yytype_uint8 yystos[] =
1085
1089
{
1086
 
       0,    25,    27,    28,    29,    30,    31,    77,    79,    80,
1087
 
      81,    82,    83,    87,    88,     1,    85,    62,    62,   130,
1088
 
      62,     4,    62,     0,    85,    85,    85,    85,    85,    86,
1089
 
      62,    65,   143,     4,    11,    85,    85,    85,    85,    85,
1090
 
       4,     5,    89,     1,    85,    12,    14,    16,    17,    18,
1091
 
      19,    20,    21,    26,    78,    90,    92,   115,   116,   117,
1092
 
     118,   119,   121,   122,   123,   124,   126,   129,     1,    12,
1093
 
     131,   132,   133,    11,    12,    15,    36,    37,    38,    39,
1094
 
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
1095
 
      50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
1096
 
      61,    64,    71,   114,   135,   137,   138,   139,   140,    33,
1097
 
      34,    66,   101,   102,   104,   105,   116,    90,    91,    63,
1098
 
     143,   144,    65,    20,    12,    16,    59,    60,    12,    85,
1099
 
      20,     1,    85,    85,    85,     1,    68,   130,     1,     4,
1100
 
      64,    69,    70,   113,    12,    19,   121,   122,   122,     1,
1101
 
     123,    63,    65,   143,    85,     1,    63,   132,    63,    65,
1102
 
      16,    85,    85,    85,    85,    85,    85,    85,    85,    85,
1103
 
      85,    85,    85,    85,    85,    85,    85,    85,    85,    85,
1104
 
      85,    85,    85,    85,    85,    85,    85,    85,    85,   138,
1105
 
      63,    68,    74,   136,    85,    85,    85,    63,    63,    86,
1106
 
      26,    92,    93,    95,     1,    12,    85,    85,    12,    19,
1107
 
     118,   125,    65,   143,    11,    58,    98,    12,    94,    63,
1108
 
      85,   119,    85,    85,    85,   119,   122,    85,    63,    65,
1109
 
      63,    65,    85,    85,     1,   135,    85,    85,   137,    12,
1110
 
      99,    35,    12,   110,     1,    85,    86,     1,    22,    23,
1111
 
      24,    75,    90,    96,   108,   111,   112,   115,   141,   142,
1112
 
      63,   143,    11,    12,    13,    64,    84,   118,   120,   121,
1113
 
     123,    85,    12,   125,     6,     7,     8,     9,    10,    72,
1114
 
      73,   127,    85,     4,    98,   117,    85,    85,   135,    67,
1115
 
      85,    85,    85,    85,    35,   103,    65,   143,    65,   143,
1116
 
       1,    85,     1,    85,     1,     1,    86,    85,    85,    85,
1117
 
      57,   121,   123,    85,    72,   127,    85,   105,   106,   107,
1118
 
      32,   134,    85,    16,   100,   101,    85,    65,   143,    62,
1119
 
     107,    65,   143,   130,    65,   143,    67,    67,    67,    85,
1120
 
      67,    85,    11,    12,   128,    65,     1,    68,    85,    85,
1121
 
      67,   102,    85,    62,    67,   128,    85,    85,   135,    85,
1122
 
     109,    85,    85,    72,   105,    85,    63,    90,    97,   115,
1123
 
     141,   142,   109,    72,     1,    85,    63
 
1090
       0,    27,    28,    29,    30,    31,    77,    79,    80,    81,
 
1091
      82,    83,    85,    62,    62,   130,    62,     4,    62,     0,
 
1092
      85,    85,    85,    85,    85,     4,    25,    87,    88,    85,
 
1093
      85,    85,    85,    85,     1,    85,    86,    12,    14,    16,
 
1094
      17,    18,    19,    20,    21,    26,    78,    90,    92,   115,
 
1095
     116,   117,   118,   119,   121,   122,   123,   124,   126,   129,
 
1096
       1,    12,   131,   132,   133,    11,    12,    15,    36,    37,
 
1097
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
 
1098
      48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
 
1099
      58,    59,    61,    64,    71,   114,   135,   137,   138,   139,
 
1100
     140,    33,    34,    66,   101,   102,   104,   105,   116,    62,
 
1101
      65,   143,    11,     4,     5,    89,    20,    12,    16,    59,
 
1102
      60,    12,    85,    20,     1,    85,    85,    85,     1,    68,
 
1103
     130,     1,     4,    64,    69,    70,   113,    12,    19,   121,
 
1104
     122,   122,     1,   123,    63,    65,   143,    85,     1,    63,
 
1105
     132,    63,    65,    16,    85,    85,    85,    85,    85,    85,
 
1106
      85,    85,    85,    85,    85,    85,    85,    85,    85,    85,
 
1107
      85,    85,    85,    85,    85,    85,    85,    85,    85,    85,
 
1108
      85,    85,   138,    63,    68,    74,   136,    85,    85,    85,
 
1109
      63,    63,     1,    85,    90,    91,    12,    85,    85,    12,
 
1110
      19,   118,   125,    65,   143,    11,    58,    98,    12,    94,
 
1111
      63,    85,   119,    85,    85,    85,   119,   122,    85,    63,
 
1112
      65,    63,    65,    85,    85,     1,   135,    85,    85,   137,
 
1113
      12,    99,    35,    12,   110,    63,   143,   144,    65,    86,
 
1114
      26,    92,    93,    95,    11,    12,    13,    64,    84,   118,
 
1115
     120,   121,   123,    85,    12,   125,     6,     7,     8,     9,
 
1116
      10,    72,    73,   127,    85,     4,    98,   117,    85,    85,
 
1117
     135,    67,    85,    85,    85,    85,    35,   103,     1,     1,
 
1118
      85,    86,     1,    22,    23,    24,    75,    90,    96,   108,
 
1119
     111,   112,   115,   141,   142,    85,    85,    85,    57,   121,
 
1120
     123,    85,    72,   127,    85,   105,   106,   107,    32,   134,
 
1121
      85,    16,   100,   101,    85,    63,   143,    65,   143,    65,
 
1122
     143,     1,    85,     1,    85,     1,     1,    86,    67,    67,
 
1123
      67,    85,    67,    85,    11,    12,   128,    65,     1,    68,
 
1124
      85,    85,    67,   102,    65,   143,    62,   107,    65,   143,
 
1125
     130,    65,   143,    67,   128,    85,    85,   135,    85,    85,
 
1126
      62,    85,    72,   105,    85,   109,    85,    72,    63,    90,
 
1127
      97,   115,   141,   142,   109,     1,    85,    63
1124
1128
};
1125
1129
 
1126
1130
#define yyerrok         (yyerrstatus = 0)
1156
1160
    {                                                           \
1157
1161
      yychar = (Token);                                         \
1158
1162
      yylval = (Value);                                         \
1159
 
      yytoken = YYTRANSLATE (yychar);                           \
1160
1163
      YYPOPSTACK (1);                                           \
1161
1164
      goto yybackup;                                            \
1162
1165
    }                                                           \
1198
1201
#endif
1199
1202
 
1200
1203
 
1201
 
/* YY_LOCATION_PRINT -- Print the location on the stream.
1202
 
   This macro was not mandated originally: define only if we know
1203
 
   we won't break user code: when these are the locations we know.  */
 
1204
/* This macro is provided for backward compatibility. */
1204
1205
 
1205
1206
#ifndef YY_LOCATION_PRINT
1206
 
# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
1207
 
#  define YY_LOCATION_PRINT(File, Loc)                  \
1208
 
     fprintf (File, "%d.%d-%d.%d",                      \
1209
 
              (Loc).first_line, (Loc).first_column,     \
1210
 
              (Loc).last_line,  (Loc).last_column)
1211
 
# else
1212
 
#  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1213
 
# endif
 
1207
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1214
1208
#endif
1215
1209
 
1216
1210
 
1402
1396
# define YYMAXDEPTH 10000
1403
1397
#endif
1404
1398
 
1405
 
 
1406
1399
 
1407
1400
#if YYERROR_VERBOSE
1408
1401
 
1505
1498
}
1506
1499
# endif
1507
1500
 
1508
 
/* Copy into YYRESULT an error message about the unexpected token
1509
 
   YYCHAR while in state YYSTATE.  Return the number of bytes copied,
1510
 
   including the terminating null byte.  If YYRESULT is null, do not
1511
 
   copy anything; just return the number of bytes that would be
1512
 
   copied.  As a special case, return 0 if an ordinary "syntax error"
1513
 
   message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
1514
 
   size calculation.  */
1515
 
static YYSIZE_T
1516
 
yysyntax_error (char *yyresult, int yystate, int yychar)
 
1501
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
 
1502
   about the unexpected token YYTOKEN for the state stack whose top is
 
1503
   YYSSP.
 
1504
 
 
1505
   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
 
1506
   not large enough to hold the message.  In that case, also set
 
1507
   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
 
1508
   required number of bytes is too large to store.  */
 
1509
static int
 
1510
yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
 
1511
                yytype_int16 *yyssp, int yytoken)
1517
1512
{
1518
 
  int yyn = yypact[yystate];
1519
 
 
1520
 
  if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
1521
 
    return 0;
1522
 
  else
1523
 
    {
1524
 
      int yytype = YYTRANSLATE (yychar);
1525
 
      YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
1526
 
      YYSIZE_T yysize = yysize0;
1527
 
      YYSIZE_T yysize1;
1528
 
      int yysize_overflow = 0;
1529
 
      enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1530
 
      char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1531
 
      int yyx;
1532
 
 
1533
 
# if 0
1534
 
      /* This is so xgettext sees the translatable formats that are
1535
 
         constructed on the fly.  */
1536
 
      YY_("syntax error, unexpected %s");
1537
 
      YY_("syntax error, unexpected %s, expecting %s");
1538
 
      YY_("syntax error, unexpected %s, expecting %s or %s");
1539
 
      YY_("syntax error, unexpected %s, expecting %s or %s or %s");
1540
 
      YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
1541
 
# endif
1542
 
      char *yyfmt;
1543
 
      char const *yyf;
1544
 
      static char const yyunexpected[] = "syntax error, unexpected %s";
1545
 
      static char const yyexpecting[] = ", expecting %s";
1546
 
      static char const yyor[] = " or %s";
1547
 
      char yyformat[sizeof yyunexpected
1548
 
                    + sizeof yyexpecting - 1
1549
 
                    + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
1550
 
                       * (sizeof yyor - 1))];
1551
 
      char const *yyprefix = yyexpecting;
1552
 
 
1553
 
      /* Start YYX at -YYN if negative to avoid negative indexes in
1554
 
         YYCHECK.  */
1555
 
      int yyxbegin = yyn < 0 ? -yyn : 0;
1556
 
 
1557
 
      /* Stay within bounds of both yycheck and yytname.  */
1558
 
      int yychecklim = YYLAST - yyn + 1;
1559
 
      int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
1560
 
      int yycount = 1;
1561
 
 
1562
 
      yyarg[0] = yytname[yytype];
1563
 
      yyfmt = yystpcpy (yyformat, yyunexpected);
1564
 
 
1565
 
      for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1566
 
        if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
1567
 
          {
1568
 
            if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1569
 
              {
1570
 
                yycount = 1;
1571
 
                yysize = yysize0;
1572
 
                yyformat[sizeof yyunexpected - 1] = '\0';
1573
 
                break;
1574
 
              }
1575
 
            yyarg[yycount++] = yytname[yyx];
1576
 
            yysize1 = yysize + yytnamerr (0, yytname[yyx]);
1577
 
            yysize_overflow |= (yysize1 < yysize);
1578
 
            yysize = yysize1;
1579
 
            yyfmt = yystpcpy (yyfmt, yyprefix);
1580
 
            yyprefix = yyor;
1581
 
          }
1582
 
 
1583
 
      yyf = YY_(yyformat);
1584
 
      yysize1 = yysize + yystrlen (yyf);
1585
 
      yysize_overflow |= (yysize1 < yysize);
1586
 
      yysize = yysize1;
1587
 
 
1588
 
      if (yysize_overflow)
1589
 
        return YYSIZE_MAXIMUM;
1590
 
 
1591
 
      if (yyresult)
1592
 
        {
1593
 
          /* Avoid sprintf, as that infringes on the user's name space.
1594
 
             Don't have undefined behavior even if the translation
1595
 
             produced a string with the wrong number of "%s"s.  */
1596
 
          char *yyp = yyresult;
1597
 
          int yyi = 0;
1598
 
          while ((*yyp = *yyf) != '\0')
1599
 
            {
1600
 
              if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
1601
 
                {
1602
 
                  yyp += yytnamerr (yyp, yyarg[yyi++]);
1603
 
                  yyf += 2;
1604
 
                }
1605
 
              else
1606
 
                {
1607
 
                  yyp++;
1608
 
                  yyf++;
1609
 
                }
1610
 
            }
1611
 
        }
1612
 
      return yysize;
1613
 
    }
 
1513
  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
 
1514
  YYSIZE_T yysize = yysize0;
 
1515
  YYSIZE_T yysize1;
 
1516
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
 
1517
  /* Internationalized format string. */
 
1518
  const char *yyformat = 0;
 
1519
  /* Arguments of yyformat. */
 
1520
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
 
1521
  /* Number of reported tokens (one for the "unexpected", one per
 
1522
     "expected"). */
 
1523
  int yycount = 0;
 
1524
 
 
1525
  /* There are many possibilities here to consider:
 
1526
     - Assume YYFAIL is not used.  It's too flawed to consider.  See
 
1527
       <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
 
1528
       for details.  YYERROR is fine as it does not invoke this
 
1529
       function.
 
1530
     - If this state is a consistent state with a default action, then
 
1531
       the only way this function was invoked is if the default action
 
1532
       is an error action.  In that case, don't check for expected
 
1533
       tokens because there are none.
 
1534
     - The only way there can be no lookahead present (in yychar) is if
 
1535
       this state is a consistent state with a default action.  Thus,
 
1536
       detecting the absence of a lookahead is sufficient to determine
 
1537
       that there is no unexpected or expected token to report.  In that
 
1538
       case, just report a simple "syntax error".
 
1539
     - Don't assume there isn't a lookahead just because this state is a
 
1540
       consistent state with a default action.  There might have been a
 
1541
       previous inconsistent state, consistent state with a non-default
 
1542
       action, or user semantic action that manipulated yychar.
 
1543
     - Of course, the expected token list depends on states to have
 
1544
       correct lookahead information, and it depends on the parser not
 
1545
       to perform extra reductions after fetching a lookahead from the
 
1546
       scanner and before detecting a syntax error.  Thus, state merging
 
1547
       (from LALR or IELR) and default reductions corrupt the expected
 
1548
       token list.  However, the list is correct for canonical LR with
 
1549
       one exception: it will still contain any token that will not be
 
1550
       accepted due to an error action in a later state.
 
1551
  */
 
1552
  if (yytoken != YYEMPTY)
 
1553
    {
 
1554
      int yyn = yypact[*yyssp];
 
1555
      yyarg[yycount++] = yytname[yytoken];
 
1556
      if (!yypact_value_is_default (yyn))
 
1557
        {
 
1558
          /* Start YYX at -YYN if negative to avoid negative indexes in
 
1559
             YYCHECK.  In other words, skip the first -YYN actions for
 
1560
             this state because they are default actions.  */
 
1561
          int yyxbegin = yyn < 0 ? -yyn : 0;
 
1562
          /* Stay within bounds of both yycheck and yytname.  */
 
1563
          int yychecklim = YYLAST - yyn + 1;
 
1564
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
 
1565
          int yyx;
 
1566
 
 
1567
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
 
1568
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
 
1569
                && !yytable_value_is_error (yytable[yyx + yyn]))
 
1570
              {
 
1571
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
 
1572
                  {
 
1573
                    yycount = 1;
 
1574
                    yysize = yysize0;
 
1575
                    break;
 
1576
                  }
 
1577
                yyarg[yycount++] = yytname[yyx];
 
1578
                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
 
1579
                if (! (yysize <= yysize1
 
1580
                       && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
 
1581
                  return 2;
 
1582
                yysize = yysize1;
 
1583
              }
 
1584
        }
 
1585
    }
 
1586
 
 
1587
  switch (yycount)
 
1588
    {
 
1589
# define YYCASE_(N, S)                      \
 
1590
      case N:                               \
 
1591
        yyformat = S;                       \
 
1592
      break
 
1593
      YYCASE_(0, YY_("syntax error"));
 
1594
      YYCASE_(1, YY_("syntax error, unexpected %s"));
 
1595
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
 
1596
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
 
1597
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
 
1598
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
 
1599
# undef YYCASE_
 
1600
    }
 
1601
 
 
1602
  yysize1 = yysize + yystrlen (yyformat);
 
1603
  if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
 
1604
    return 2;
 
1605
  yysize = yysize1;
 
1606
 
 
1607
  if (*yymsg_alloc < yysize)
 
1608
    {
 
1609
      *yymsg_alloc = 2 * yysize;
 
1610
      if (! (yysize <= *yymsg_alloc
 
1611
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
 
1612
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
 
1613
      return 1;
 
1614
    }
 
1615
 
 
1616
  /* Avoid sprintf, as that infringes on the user's name space.
 
1617
     Don't have undefined behavior even if the translation
 
1618
     produced a string with the wrong number of "%s"s.  */
 
1619
  {
 
1620
    char *yyp = *yymsg;
 
1621
    int yyi = 0;
 
1622
    while ((*yyp = *yyformat) != '\0')
 
1623
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
 
1624
        {
 
1625
          yyp += yytnamerr (yyp, yyarg[yyi++]);
 
1626
          yyformat += 2;
 
1627
        }
 
1628
      else
 
1629
        {
 
1630
          yyp++;
 
1631
          yyformat++;
 
1632
        }
 
1633
  }
 
1634
  return 0;
1614
1635
}
1615
1636
#endif /* YYERROR_VERBOSE */
1616
 
 
1617
1637
 
1618
1638
/*-----------------------------------------------.
1619
1639
| Release the memory associated to this symbol.  |
1640
1660
 
1641
1661
  switch (yytype)
1642
1662
    {
 
1663
      case 100: /* "maybe_media_value" */
 
1664
 
 
1665
        { delete (yyvaluep->valueList); (yyvaluep->valueList) = 0; };
 
1666
 
 
1667
        break;
1643
1668
      case 102: /* "media_query_exp_list" */
1644
1669
 
1645
1670
        { delete (yyvaluep->mediaQueryExpList); (yyvaluep->mediaQueryExpList) = 0; };
1715
1740
        { delete (yyvaluep->valueList); (yyvaluep->valueList) = 0; };
1716
1741
 
1717
1742
        break;
 
1743
      case 139: /* "function" */
 
1744
 
 
1745
        { if ((yyvaluep->value).function) delete (yyvaluep->value).function->args; delete (yyvaluep->value).function; (yyvaluep->value).function = 0; };
 
1746
 
 
1747
        break;
1718
1748
 
1719
1749
      default:
1720
1750
        break;
1721
1751
    }
1722
1752
}
1723
1753
 
 
1754
 
1724
1755
/* Prevent warnings from -Wmissing-prototypes.  */
1725
1756
#ifdef YYPARSE_PARAM
1726
1757
#if defined __STDC__ || defined __cplusplus
1737
1768
#endif /* ! YYPARSE_PARAM */
1738
1769
 
1739
1770
 
1740
 
 
1741
 
 
1742
 
 
1743
 
/*-------------------------.
1744
 
| yyparse or yypush_parse.  |
1745
 
`-------------------------*/
 
1771
/*----------.
 
1772
| yyparse.  |
 
1773
`----------*/
1746
1774
 
1747
1775
#ifdef YYPARSE_PARAM
1748
1776
#if (defined __STDC__ || defined __C99__FUNC__ \
1929
1957
 
1930
1958
  /* First try to decide what to do without reference to lookahead token.  */
1931
1959
  yyn = yypact[yystate];
1932
 
  if (yyn == YYPACT_NINF)
 
1960
  if (yypact_value_is_default (yyn))
1933
1961
    goto yydefault;
1934
1962
 
1935
1963
  /* Not known => get a lookahead token if don't already have one.  */
1960
1988
  yyn = yytable[yyn];
1961
1989
  if (yyn <= 0)
1962
1990
    {
1963
 
      if (yyn == 0 || yyn == YYTABLE_NINF)
1964
 
        goto yyerrlab;
 
1991
      if (yytable_value_is_error (yyn))
 
1992
        goto yyerrlab;
1965
1993
      yyn = -yyn;
1966
1994
      goto yyreduce;
1967
1995
    }
2019
2047
    {
2020
2048
        CSSParser *p = static_cast<CSSParser *>(parser);
2021
2049
        p->rule = (yyvsp[(4) - (6)].rule);
2022
 
    ;}
 
2050
    }
2023
2051
    break;
2024
2052
 
2025
2053
  case 12:
2026
2054
 
2027
2055
    {
2028
2056
        /* can be empty */
2029
 
    ;}
 
2057
    }
2030
2058
    break;
2031
2059
 
2032
2060
  case 13:
2052
2080
#endif
2053
2081
        delete p->valueList;
2054
2082
        p->valueList = 0;
2055
 
    ;}
 
2083
    }
2056
2084
    break;
2057
2085
 
2058
2086
  case 14:
2063
2091
                        p->selectors = *(yyvsp[(4) - (5)].selectorList);
2064
2092
                else
2065
2093
                        p->selectors.clear(); // parse error
2066
 
        ;}
 
2094
        }
2067
2095
    break;
2068
2096
 
2069
2097
  case 15:
2071
2099
    {
2072
2100
         CSSParser *p = static_cast<CSSParser *>(parser);
2073
2101
         p->mediaQuery = (yyvsp[(4) - (5)].mediaQuery);
2074
 
     ;}
 
2102
     }
2075
2103
    break;
2076
2104
 
2077
2105
  case 25:
2084
2112
     if (p->styleElement && p->styleElement->isCSSStyleSheet()) {
2085
2113
         p->styleElement->append( new CSSCharsetRuleImpl(p->styleElement, domString((yyvsp[(3) - (5)].string))) );
2086
2114
     }
2087
 
 ;}
 
2115
 }
2088
2116
    break;
2089
2117
 
2090
2118
  case 26:
2091
2119
 
2092
2120
    {
2093
 
 ;}
 
2121
 }
2094
2122
    break;
2095
2123
 
2096
2124
  case 27:
2097
2125
 
2098
2126
    {
2099
 
 ;}
 
2127
 }
2100
2128
    break;
2101
2129
 
2102
2130
  case 29:
2108
2136
     } else {
2109
2137
         delete (yyvsp[(2) - (3)].rule);
2110
2138
     }
2111
 
 ;}
 
2139
 }
2112
2140
    break;
2113
2141
 
2114
2142
  case 30:
2122
2150
            (yyval.rule) = new CSSImportRuleImpl( p->styleElement, domString((yyvsp[(3) - (6)].string)), (yyvsp[(5) - (6)].mediaList) );
2123
2151
        else
2124
2152
            (yyval.rule) = 0;
2125
 
    ;}
 
2153
    }
2126
2154
    break;
2127
2155
 
2128
2156
  case 31:
2129
2157
 
2130
2158
    {
2131
2159
        (yyval.rule) = 0;
2132
 
    ;}
 
2160
    }
2133
2161
    break;
2134
2162
 
2135
2163
  case 32:
2136
2164
 
2137
2165
    {
2138
2166
        (yyval.rule) = 0;
2139
 
    ;}
 
2167
    }
2140
2168
    break;
2141
2169
 
2142
2170
  case 35:
2147
2175
#endif
2148
2176
    CSSParser *p = static_cast<CSSParser *>(parser);
2149
2177
    (yyval.rule) = new CSSNamespaceRuleImpl(p->styleElement, domString((yyvsp[(3) - (4)].string)), domString((yyvsp[(4) - (4)].string)));
2150
 
 ;}
 
2178
 }
2151
2179
    break;
2152
2180
 
2153
2181
  case 36:
2159
2187
                    (static_cast<CSSNamespaceRuleImpl*>((yyvsp[(1) - (3)].rule))); 
2160
2188
                            // can't use ->append since it 
2161
2189
                            // wouldn't keep track of dirtiness
2162
 
 ;}
 
2190
 }
2163
2191
    break;
2164
2192
 
2165
2193
  case 39:
2166
2194
 
2167
 
    { (yyval.string).string = 0; ;}
 
2195
    { (yyval.string).string = 0; }
2168
2196
    break;
2169
2197
 
2170
2198
  case 40:
2171
2199
 
2172
 
    { (yyval.string) = (yyvsp[(1) - (2)].string); ;}
 
2200
    { (yyval.string) = (yyvsp[(1) - (2)].string); }
2173
2201
    break;
2174
2202
 
2175
2203
  case 42:
2181
2209
     } else {
2182
2210
         delete (yyvsp[(2) - (3)].rule);
2183
2211
     }
2184
 
 ;}
 
2212
 }
2185
2213
    break;
2186
2214
 
2187
2215
  case 49:
2188
2216
 
2189
 
    { delete (yyvsp[(1) - (2)].rule); (yyval.rule) = 0; ;}
 
2217
    { delete (yyvsp[(1) - (2)].rule); (yyval.rule) = 0; }
2190
2218
    break;
2191
2219
 
2192
2220
  case 53:
2193
2221
 
2194
 
    { delete (yyvsp[(1) - (2)].rule); (yyval.rule) = 0; ;}
 
2222
    { delete (yyvsp[(1) - (2)].rule); (yyval.rule) = 0; }
2195
2223
    break;
2196
2224
 
2197
2225
  case 56:
2198
2226
 
2199
2227
    {
2200
2228
        (yyval.string) = (yyvsp[(1) - (2)].string);
2201
 
    ;}
 
2229
    }
2202
2230
    break;
2203
2231
 
2204
2232
  case 57:
2205
2233
 
2206
2234
    {
2207
2235
        (yyval.valueList) = 0;
2208
 
    ;}
 
2236
    }
2209
2237
    break;
2210
2238
 
2211
2239
  case 58:
2212
2240
 
2213
2241
    {
2214
2242
        (yyval.valueList) = (yyvsp[(3) - (4)].valueList);
2215
 
    ;}
 
2243
    }
2216
2244
    break;
2217
2245
 
2218
2246
  case 59:
2219
2247
 
2220
2248
    {
2221
2249
        (yyval.mediaQueryExp) = new khtml::MediaQueryExp(domString((yyvsp[(3) - (7)].string)).lower(), (yyvsp[(5) - (7)].valueList));
2222
 
    ;}
 
2250
    }
2223
2251
    break;
2224
2252
 
2225
2253
  case 60:
2227
2255
    {
2228
2256
      (yyval.mediaQueryExpList) =  new QList<khtml::MediaQueryExp*>;
2229
2257
      (yyval.mediaQueryExpList)->append((yyvsp[(1) - (1)].mediaQueryExp));
2230
 
    ;}
 
2258
    }
2231
2259
    break;
2232
2260
 
2233
2261
  case 61:
2235
2263
    {
2236
2264
      (yyval.mediaQueryExpList) = (yyvsp[(1) - (5)].mediaQueryExpList);
2237
2265
      (yyval.mediaQueryExpList)->append((yyvsp[(5) - (5)].mediaQueryExp));
2238
 
    ;}
 
2266
    }
2239
2267
    break;
2240
2268
 
2241
2269
  case 62:
2242
2270
 
2243
2271
    {
2244
2272
        (yyval.mediaQueryExpList) = new QList<khtml::MediaQueryExp*>;
2245
 
    ;}
 
2273
    }
2246
2274
    break;
2247
2275
 
2248
2276
  case 63:
2249
2277
 
2250
2278
    {
2251
2279
        (yyval.mediaQueryExpList) = (yyvsp[(3) - (3)].mediaQueryExpList);
2252
 
    ;}
 
2280
    }
2253
2281
    break;
2254
2282
 
2255
2283
  case 64:
2256
2284
 
2257
2285
    {
2258
2286
        (yyval.mediaQueryRestrictor) = khtml::MediaQuery::None;
2259
 
    ;}
 
2287
    }
2260
2288
    break;
2261
2289
 
2262
2290
  case 65:
2263
2291
 
2264
2292
    {
2265
2293
        (yyval.mediaQueryRestrictor) = khtml::MediaQuery::Only;
2266
 
    ;}
 
2294
    }
2267
2295
    break;
2268
2296
 
2269
2297
  case 66:
2270
2298
 
2271
2299
    {
2272
2300
        (yyval.mediaQueryRestrictor) = khtml::MediaQuery::Not;
2273
 
    ;}
 
2301
    }
2274
2302
    break;
2275
2303
 
2276
2304
  case 67:
2277
2305
 
2278
2306
    {
2279
2307
        (yyval.mediaQuery) = new khtml::MediaQuery(khtml::MediaQuery::None, "all", (yyvsp[(1) - (1)].mediaQueryExpList));
2280
 
    ;}
 
2308
    }
2281
2309
    break;
2282
2310
 
2283
2311
  case 68:
2284
2312
 
2285
2313
    {
2286
2314
        (yyval.mediaQuery) = new khtml::MediaQuery((yyvsp[(1) - (4)].mediaQueryRestrictor), domString((yyvsp[(3) - (4)].string)).lower(), (yyvsp[(4) - (4)].mediaQueryExpList));
2287
 
    ;}
 
2315
    }
2288
2316
    break;
2289
2317
 
2290
2318
  case 69:
2291
2319
 
2292
2320
    {
2293
2321
        (yyval.mediaList) = new MediaListImpl();
2294
 
    ;}
 
2322
    }
2295
2323
    break;
2296
2324
 
2297
2325
  case 71:
2299
2327
    {
2300
2328
        (yyval.mediaList) = new MediaListImpl();
2301
2329
        (yyval.mediaList)->appendMediaQuery((yyvsp[(1) - (1)].mediaQuery));
2302
 
    ;}
 
2330
    }
2303
2331
    break;
2304
2332
 
2305
2333
  case 72:
2308
2336
        (yyval.mediaList) = (yyvsp[(1) - (4)].mediaList);
2309
2337
        if ((yyval.mediaList))
2310
2338
            (yyval.mediaList)->appendMediaQuery( (yyvsp[(4) - (4)].mediaQuery) );
2311
 
    ;}
 
2339
    }
2312
2340
    break;
2313
2341
 
2314
2342
  case 73:
2316
2344
    {
2317
2345
       delete (yyvsp[(1) - (2)].mediaList);
2318
2346
       (yyval.mediaList) = 0;
2319
 
    ;}
 
2347
    }
2320
2348
    break;
2321
2349
 
2322
2350
  case 74:
2331
2359
            delete (yyvsp[(3) - (7)].mediaList);
2332
2360
            delete (yyvsp[(6) - (7)].ruleList);
2333
2361
        }
2334
 
    ;}
 
2362
    }
2335
2363
    break;
2336
2364
 
2337
2365
  case 75:
2344
2372
            (yyval.rule) = 0;
2345
2373
            delete (yyvsp[(5) - (6)].ruleList);
2346
2374
        }
2347
 
    ;}
 
2375
    }
2348
2376
    break;
2349
2377
 
2350
2378
  case 76:
2351
2379
 
2352
 
    { (yyval.ruleList) = 0; ;}
 
2380
    { (yyval.ruleList) = 0; }
2353
2381
    break;
2354
2382
 
2355
2383
  case 77:
2360
2388
          if ( !(yyval.ruleList) ) (yyval.ruleList) = new CSSRuleListImpl();
2361
2389
          (yyval.ruleList)->append( (yyvsp[(2) - (3)].rule) );
2362
2390
      }
2363
 
  ;}
 
2391
  }
2364
2392
    break;
2365
2393
 
2366
2394
  case 78:
2367
2395
 
2368
2396
    {
2369
2397
      (yyval.string) = (yyvsp[(1) - (2)].string);
2370
 
  ;}
 
2398
  }
2371
2399
    break;
2372
2400
 
2373
2401
  case 79:
2374
2402
 
2375
2403
    {
2376
2404
      (yyval.rule) = 0;
2377
 
    ;}
 
2405
    }
2378
2406
    break;
2379
2407
 
2380
2408
  case 80:
2381
2409
 
2382
2410
    {
2383
2411
      (yyval.rule) = 0;
2384
 
    ;}
 
2412
    }
2385
2413
    break;
2386
2414
 
2387
2415
  case 81:
2392
2420
      CSSStyleDeclarationImpl *decl = p->createFontFaceStyleDeclaration( rule );
2393
2421
      rule->setDeclaration(decl);
2394
2422
      (yyval.rule) = rule;
2395
 
    ;}
 
2423
    }
2396
2424
    break;
2397
2425
 
2398
2426
  case 82:
2399
2427
 
2400
2428
    {
2401
2429
      (yyval.rule) = 0;
2402
 
    ;}
 
2430
    }
2403
2431
    break;
2404
2432
 
2405
2433
  case 83:
2406
2434
 
2407
2435
    {
2408
2436
      (yyval.rule) = 0;
2409
 
    ;}
 
2437
    }
2410
2438
    break;
2411
2439
 
2412
2440
  case 84:
2413
2441
 
2414
 
    { (yyval.relation) = CSSSelector::DirectAdjacent; ;}
 
2442
    { (yyval.relation) = CSSSelector::DirectAdjacent; }
2415
2443
    break;
2416
2444
 
2417
2445
  case 85:
2418
2446
 
2419
 
    { (yyval.relation) = CSSSelector::IndirectAdjacent; ;}
 
2447
    { (yyval.relation) = CSSSelector::IndirectAdjacent; }
2420
2448
    break;
2421
2449
 
2422
2450
  case 86:
2423
2451
 
2424
 
    { (yyval.relation) = CSSSelector::Child; ;}
 
2452
    { (yyval.relation) = CSSSelector::Child; }
2425
2453
    break;
2426
2454
 
2427
2455
  case 87:
2428
2456
 
2429
 
    { (yyval.val) = -1; ;}
 
2457
    { (yyval.val) = -1; }
2430
2458
    break;
2431
2459
 
2432
2460
  case 88:
2433
2461
 
2434
 
    { (yyval.val) = 1; ;}
 
2462
    { (yyval.val) = 1; }
2435
2463
    break;
2436
2464
 
2437
2465
  case 89:
2454
2482
            (yyvsp[(1) - (2)].selectorList) = 0;
2455
2483
            p->clearProperties();
2456
2484
        }
2457
 
    ;}
 
2485
    }
2458
2486
    break;
2459
2487
 
2460
2488
  case 90:
2471
2499
        } else {
2472
2500
            (yyval.selectorList) = 0;
2473
2501
        }
2474
 
    ;}
 
2502
    }
2475
2503
    break;
2476
2504
 
2477
2505
  case 91:
2493
2521
            delete (yyvsp[(4) - (4)].selector);
2494
2522
            (yyval.selectorList) = 0;
2495
2523
        }
2496
 
    ;}
 
2524
    }
2497
2525
    break;
2498
2526
 
2499
2527
  case 92:
2503
2531
        delete (yyvsp[(1) - (2)].selectorList);
2504
2532
        (yyvsp[(1) - (2)].selectorList) = 0;
2505
2533
        (yyval.selectorList) = 0;
2506
 
    ;}
 
2534
    }
2507
2535
    break;
2508
2536
 
2509
2537
  case 93:
2510
2538
 
2511
2539
    {
2512
2540
        (yyval.selector) = (yyvsp[(1) - (1)].selector);
2513
 
    ;}
 
2541
    }
2514
2542
    break;
2515
2543
 
2516
2544
  case 94:
2517
2545
 
2518
2546
    {
2519
2547
        (yyval.selector) = (yyvsp[(1) - (2)].selector);
2520
 
    ;}
 
2548
    }
2521
2549
    break;
2522
2550
 
2523
2551
  case 95:
2535
2563
            end->relation = CSSSelector::Descendant;
2536
2564
            end->tagHistory = (yyvsp[(1) - (3)].selector);
2537
2565
        }
2538
 
    ;}
 
2566
    }
2539
2567
    break;
2540
2568
 
2541
2569
  case 96:
2553
2581
            end->relation = (yyvsp[(2) - (3)].relation);
2554
2582
            end->tagHistory = (yyvsp[(1) - (3)].selector);
2555
2583
        }
2556
 
    ;}
 
2584
    }
2557
2585
    break;
2558
2586
 
2559
2587
  case 97:
2561
2589
    {
2562
2590
        delete (yyvsp[(1) - (2)].selector);
2563
2591
        (yyval.selector) = 0;
2564
 
    ;}
 
2592
    }
2565
2593
    break;
2566
2594
 
2567
2595
  case 98:
2568
2596
 
2569
 
    { (yyval.string).string = 0; (yyval.string).length = 0; ;}
 
2597
    { (yyval.string).string = 0; (yyval.string).length = 0; }
2570
2598
    break;
2571
2599
 
2572
2600
  case 99:
2573
2601
 
2574
 
    { static unsigned short star = '*'; (yyval.string).string = &star; (yyval.string).length = 1; ;}
 
2602
    { static unsigned short star = '*'; (yyval.string).string = &star; (yyval.string).length = 1; }
2575
2603
    break;
2576
2604
 
2577
2605
  case 100:
2578
2606
 
2579
 
    { (yyval.string) = (yyvsp[(1) - (2)].string); ;}
 
2607
    { (yyval.string) = (yyvsp[(1) - (2)].string); }
2580
2608
    break;
2581
2609
 
2582
2610
  case 101:
2585
2613
        (yyval.selector) = new CSSSelector();
2586
2614
        (yyval.selector)->tagLocalName = LocalName::fromId(localNamePart((yyvsp[(1) - (1)].element)));
2587
2615
        (yyval.selector)->tagNamespace = NamespaceName::fromId(namespacePart((yyvsp[(1) - (1)].element)));
2588
 
    ;}
 
2616
    }
2589
2617
    break;
2590
2618
 
2591
2619
  case 102:
2596
2624
            (yyval.selector)->tagLocalName = LocalName::fromId(localNamePart((yyvsp[(1) - (2)].element)));
2597
2625
            (yyval.selector)->tagNamespace = NamespaceName::fromId(namespacePart((yyvsp[(1) - (2)].element)));
2598
2626
        }
2599
 
    ;}
 
2627
    }
2600
2628
    break;
2601
2629
 
2602
2630
  case 103:
2607
2635
            (yyval.selector)->tagLocalName = LocalName::fromId(anyLocalName);
2608
2636
            (yyval.selector)->tagNamespace = NamespaceName::fromId(static_cast<CSSParser*>(parser)->defaultNamespace());
2609
2637
        }
2610
 
    ;}
 
2638
    }
2611
2639
    break;
2612
2640
 
2613
2641
  case 104:
2619
2647
        CSSParser *p = static_cast<CSSParser *>(parser);
2620
2648
        if (p->styleElement && p->styleElement->isCSSStyleSheet())
2621
2649
            static_cast<CSSStyleSheetImpl*>(p->styleElement)->determineNamespace((yyval.selector)->tagNamespace, domString((yyvsp[(1) - (2)].string)));
2622
 
    ;}
 
2650
    }
2623
2651
    break;
2624
2652
 
2625
2653
  case 105:
2633
2661
            if (p->styleElement && p->styleElement->isCSSStyleSheet())
2634
2662
                static_cast<CSSStyleSheetImpl*>(p->styleElement)->determineNamespace((yyval.selector)->tagNamespace, domString((yyvsp[(1) - (3)].string)));
2635
2663
        }
2636
 
    ;}
 
2664
    }
2637
2665
    break;
2638
2666
 
2639
2667
  case 106:
2647
2675
            if (p->styleElement && p->styleElement->isCSSStyleSheet())
2648
2676
                static_cast<CSSStyleSheetImpl*>(p->styleElement)->determineNamespace((yyval.selector)->tagNamespace, domString((yyvsp[(1) - (2)].string)));
2649
2677
        }
2650
 
    ;}
 
2678
    }
2651
2679
    break;
2652
2680
 
2653
2681
  case 107:
2656
2684
        (yyval.selector) = new CSSSelector();
2657
2685
        (yyval.selector)->tagLocalName = LocalName::fromId(localNamePart((yyvsp[(1) - (1)].element)));
2658
2686
        (yyval.selector)->tagNamespace = NamespaceName::fromId(namespacePart((yyvsp[(1) - (1)].element)));
2659
 
    ;}
 
2687
    }
2660
2688
    break;
2661
2689
 
2662
2690
  case 108:
2667
2695
            (yyval.selector)->tagLocalName = LocalName::fromId(anyLocalName);
2668
2696
            (yyval.selector)->tagNamespace = NamespaceName::fromId(static_cast<CSSParser*>(parser)->defaultNamespace());
2669
2697
        }
2670
 
    ;}
 
2698
    }
2671
2699
    break;
2672
2700
 
2673
2701
  case 109:
2679
2707
        CSSParser *p = static_cast<CSSParser *>(parser);
2680
2708
        if (p->styleElement && p->styleElement->isCSSStyleSheet())
2681
2709
            static_cast<CSSStyleSheetImpl*>(p->styleElement)->determineNamespace((yyval.selector)->tagNamespace, domString((yyvsp[(1) - (2)].string)));
2682
 
    ;}
 
2710
    }
2683
2711
    break;
2684
2712
 
2685
2713
  case 110:
2693
2721
            if (p->styleElement && p->styleElement->isCSSStyleSheet())
2694
2722
                static_cast<CSSStyleSheetImpl*>(p->styleElement)->determineNamespace((yyval.selector)->tagNamespace, domString((yyvsp[(1) - (2)].string)));
2695
2723
        }
2696
 
    ;}
 
2724
    }
2697
2725
    break;
2698
2726
 
2699
2727
  case 111:
2701
2729
    {
2702
2730
      CSSParser *p = static_cast<CSSParser *>(parser);
2703
2731
      (yyval.element) = makeId(p->defaultNamespace(), p->getLocalNameId(domString((yyvsp[(1) - (1)].string))));
2704
 
    ;}
 
2732
    }
2705
2733
    break;
2706
2734
 
2707
2735
  case 112:
2708
2736
 
2709
2737
    {
2710
2738
        (yyval.element) = makeId(static_cast<CSSParser*>(parser)->defaultNamespace(), anyLocalName);
2711
 
    ;}
 
2739
    }
2712
2740
    break;
2713
2741
 
2714
2742
  case 113:
2715
2743
 
2716
2744
    {
2717
2745
        (yyval.selector) = (yyvsp[(1) - (1)].selector);
2718
 
    ;}
 
2746
    }
2719
2747
    break;
2720
2748
 
2721
2749
  case 114:
2729
2757
            end->relation = CSSSelector::SubSelector;
2730
2758
            end->tagHistory = (yyvsp[(2) - (2)].selector);
2731
2759
        }
2732
 
    ;}
 
2760
    }
2733
2761
    break;
2734
2762
 
2735
2763
  case 115:
2737
2765
    {
2738
2766
        delete (yyvsp[(1) - (2)].selector);
2739
2767
        (yyval.selector) = 0;
2740
 
    ;}
 
2768
    }
2741
2769
    break;
2742
2770
 
2743
2771
  case 116:
2755
2783
            (yyval.selector)->value = domString((yyvsp[(1) - (1)].string));
2756
2784
        else
2757
2785
            (yyval.selector)->value = domString((yyvsp[(1) - (1)].string)).lower();
2758
 
    ;}
 
2786
    }
2759
2787
    break;
2760
2788
 
2761
2789
  case 120:
2773
2801
            (yyval.selector)->value = domString((yyvsp[(2) - (2)].string));
2774
2802
        else
2775
2803
            (yyval.selector)->value = domString((yyvsp[(2) - (2)].string)).lower();
2776
 
    ;}
 
2804
    }
2777
2805
    break;
2778
2806
 
2779
2807
  case 121:
2781
2809
    {
2782
2810
      CSSParser *p = static_cast<CSSParser *>(parser);
2783
2811
      (yyval.attribute) = makeId(emptyNamespace, p->getLocalNameId(domString((yyvsp[(1) - (2)].string))));
2784
 
    ;}
 
2812
    }
2785
2813
    break;
2786
2814
 
2787
2815
  case 122:
2791
2819
        (yyval.selector)->attrLocalName = LocalName::fromId(localNamePart((yyvsp[(3) - (4)].attribute)));
2792
2820
        (yyval.selector)->attrNamespace = NamespaceName::fromId(namespacePart((yyvsp[(3) - (4)].attribute)));
2793
2821
        (yyval.selector)->match = CSSSelector::Set;
2794
 
    ;}
 
2822
    }
2795
2823
    break;
2796
2824
 
2797
2825
  case 123:
2802
2830
        (yyval.selector)->attrNamespace = NamespaceName::fromId(namespacePart((yyvsp[(3) - (8)].attribute)));
2803
2831
        (yyval.selector)->match = (yyvsp[(4) - (8)].match);
2804
2832
        (yyval.selector)->value = domString((yyvsp[(6) - (8)].string));
2805
 
    ;}
 
2833
    }
2806
2834
    break;
2807
2835
 
2808
2836
  case 124:
2815
2843
        CSSParser *p = static_cast<CSSParser *>(parser);
2816
2844
        if (p->styleElement && p->styleElement->isCSSStyleSheet())
2817
2845
            static_cast<CSSStyleSheetImpl*>(p->styleElement)->determineNamespace((yyval.selector)->attrNamespace, domString((yyvsp[(3) - (5)].string)));
2818
 
    ;}
 
2846
    }
2819
2847
    break;
2820
2848
 
2821
2849
  case 125:
2829
2857
        CSSParser *p = static_cast<CSSParser *>(parser);
2830
2858
        if (p->styleElement && p->styleElement->isCSSStyleSheet())
2831
2859
            static_cast<CSSStyleSheetImpl*>(p->styleElement)->determineNamespace((yyval.selector)->attrNamespace, domString((yyvsp[(3) - (9)].string)));
2832
 
   ;}
 
2860
   }
2833
2861
    break;
2834
2862
 
2835
2863
  case 126:
2836
2864
 
2837
2865
    {
2838
2866
        (yyval.match) = CSSSelector::Exact;
2839
 
    ;}
 
2867
    }
2840
2868
    break;
2841
2869
 
2842
2870
  case 127:
2843
2871
 
2844
2872
    {
2845
2873
        (yyval.match) = CSSSelector::List;
2846
 
    ;}
 
2874
    }
2847
2875
    break;
2848
2876
 
2849
2877
  case 128:
2850
2878
 
2851
2879
    {
2852
2880
        (yyval.match) = CSSSelector::Hyphen;
2853
 
    ;}
 
2881
    }
2854
2882
    break;
2855
2883
 
2856
2884
  case 129:
2857
2885
 
2858
2886
    {
2859
2887
        (yyval.match) = CSSSelector::Begin;
2860
 
    ;}
 
2888
    }
2861
2889
    break;
2862
2890
 
2863
2891
  case 130:
2864
2892
 
2865
2893
    {
2866
2894
        (yyval.match) = CSSSelector::End;
2867
 
    ;}
 
2895
    }
2868
2896
    break;
2869
2897
 
2870
2898
  case 131:
2871
2899
 
2872
2900
    {
2873
2901
        (yyval.match) = CSSSelector::Contain;
2874
 
    ;}
 
2902
    }
2875
2903
    break;
2876
2904
 
2877
2905
  case 134:
2880
2908
        (yyval.selector) = new CSSSelector();
2881
2909
        (yyval.selector)->match = CSSSelector::PseudoClass;
2882
2910
        (yyval.selector)->value = domString((yyvsp[(2) - (2)].string));
2883
 
    ;}
 
2911
    }
2884
2912
    break;
2885
2913
 
2886
2914
  case 135:
2889
2917
        (yyval.selector) = new CSSSelector();
2890
2918
        (yyval.selector)->match = CSSSelector::PseudoElement;
2891
2919
        (yyval.selector)->value = domString((yyvsp[(3) - (3)].string));
2892
 
    ;}
 
2920
    }
2893
2921
    break;
2894
2922
 
2895
2923
  case 136:
2899
2927
        (yyval.selector)->match = CSSSelector::PseudoClass;
2900
2928
        (yyval.selector)->string_arg = domString((yyvsp[(4) - (6)].string));
2901
2929
        (yyval.selector)->value = domString((yyvsp[(2) - (6)].string));
2902
 
    ;}
 
2930
    }
2903
2931
    break;
2904
2932
 
2905
2933
  case 137:
2909
2937
        (yyval.selector)->match = CSSSelector::PseudoClass;
2910
2938
        (yyval.selector)->string_arg = QString::number((yyvsp[(5) - (7)].val));
2911
2939
        (yyval.selector)->value = domString((yyvsp[(2) - (7)].string));
2912
 
    ;}
 
2940
    }
2913
2941
    break;
2914
2942
 
2915
2943
  case 138:
2919
2947
        (yyval.selector)->match = CSSSelector::PseudoClass;
2920
2948
        (yyval.selector)->string_arg = domString((yyvsp[(4) - (6)].string));
2921
2949
        (yyval.selector)->value = domString((yyvsp[(2) - (6)].string));
2922
 
    ;}
 
2950
    }
2923
2951
    break;
2924
2952
 
2925
2953
  case 139:
2929
2957
        (yyval.selector)->match = CSSSelector::PseudoClass;
2930
2958
        (yyval.selector)->string_arg = domString((yyvsp[(4) - (6)].string));
2931
2959
        (yyval.selector)->value = domString((yyvsp[(2) - (6)].string));
2932
 
    ;}
 
2960
    }
2933
2961
    break;
2934
2962
 
2935
2963
  case 140:
2939
2967
        (yyval.selector)->match = CSSSelector::PseudoClass;
2940
2968
        (yyval.selector)->simpleSelector = (yyvsp[(4) - (6)].selector);
2941
2969
        (yyval.selector)->value = domString((yyvsp[(2) - (6)].string));
2942
 
    ;}
 
2970
    }
2943
2971
    break;
2944
2972
 
2945
2973
  case 141:
2946
2974
 
2947
2975
    {
2948
2976
        (yyval.ok) = (yyvsp[(3) - (4)].ok);
2949
 
    ;}
 
2977
    }
2950
2978
    break;
2951
2979
 
2952
2980
  case 142:
2953
2981
 
2954
2982
    {
2955
2983
        (yyval.ok) = false;
2956
 
    ;}
 
2984
    }
2957
2985
    break;
2958
2986
 
2959
2987
  case 143:
2960
2988
 
2961
2989
    {
2962
2990
        (yyval.ok) = (yyvsp[(3) - (4)].ok);
2963
 
    ;}
 
2991
    }
2964
2992
    break;
2965
2993
 
2966
2994
  case 144:
2969
2997
        (yyval.ok) = (yyvsp[(3) - (5)].ok);
2970
2998
        if ( (yyvsp[(4) - (5)].ok) )
2971
2999
            (yyval.ok) = (yyvsp[(4) - (5)].ok);
2972
 
    ;}
 
3000
    }
2973
3001
    break;
2974
3002
 
2975
3003
  case 145:
2976
3004
 
2977
3005
    {
2978
3006
        (yyval.ok) = (yyvsp[(3) - (5)].ok);
2979
 
    ;}
 
3007
    }
2980
3008
    break;
2981
3009
 
2982
3010
  case 146:
2983
3011
 
2984
3012
    {
2985
3013
        (yyval.ok) = (yyvsp[(1) - (3)].ok);
2986
 
    ;}
 
3014
    }
2987
3015
    break;
2988
3016
 
2989
3017
  case 147:
2990
3018
 
2991
3019
    {
2992
3020
        (yyval.ok) = false;
2993
 
    ;}
 
3021
    }
2994
3022
    break;
2995
3023
 
2996
3024
  case 148:
2999
3027
        (yyval.ok) = (yyvsp[(1) - (4)].ok);
3000
3028
        if ( (yyvsp[(2) - (4)].ok) )
3001
3029
            (yyval.ok) = (yyvsp[(2) - (4)].ok);
3002
 
    ;}
 
3030
    }
3003
3031
    break;
3004
3032
 
3005
3033
  case 149:
3006
3034
 
3007
3035
    {
3008
3036
        (yyval.ok) = (yyvsp[(1) - (4)].ok);
3009
 
    ;}
 
3037
    }
3010
3038
    break;
3011
3039
 
3012
3040
  case 150:
3032
3060
        }
3033
3061
        delete p->valueList;
3034
3062
        p->valueList = 0;
3035
 
    ;}
 
3063
    }
3036
3064
    break;
3037
3065
 
3038
3066
  case 151:
3039
3067
 
3040
3068
    {
3041
3069
        (yyval.ok) = false;
3042
 
    ;}
 
3070
    }
3043
3071
    break;
3044
3072
 
3045
3073
  case 152:
3062
3090
        } else {
3063
3091
            (yyval.prop_id) = getPropertyID( str.toLatin1(), str.length() );
3064
3092
        }
3065
 
    ;}
 
3093
    }
3066
3094
    break;
3067
3095
 
3068
3096
  case 153:
3069
3097
 
3070
 
    { (yyval.b) = true; ;}
 
3098
    { (yyval.b) = true; }
3071
3099
    break;
3072
3100
 
3073
3101
  case 154:
3074
3102
 
3075
 
    { (yyval.b) = false; ;}
 
3103
    { (yyval.b) = false; }
3076
3104
    break;
3077
3105
 
3078
3106
  case 155:
3080
3108
    {
3081
3109
        (yyval.valueList) = new ValueList;
3082
3110
        (yyval.valueList)->addValue( (yyvsp[(1) - (1)].value) );
3083
 
    ;}
 
3111
    }
3084
3112
    break;
3085
3113
 
3086
3114
  case 156:
3097
3125
            }
3098
3126
            (yyval.valueList)->addValue( (yyvsp[(3) - (3)].value) );
3099
3127
        }
3100
 
    ;}
 
3128
    }
3101
3129
    break;
3102
3130
 
3103
3131
  case 157:
3104
3132
 
3105
3133
    {
3106
3134
        (yyval.tok) = '/';
3107
 
    ;}
 
3135
    }
3108
3136
    break;
3109
3137
 
3110
3138
  case 158:
3111
3139
 
3112
3140
    {
3113
3141
        (yyval.tok) = ',';
3114
 
    ;}
 
3142
    }
3115
3143
    break;
3116
3144
 
3117
3145
  case 159:
3118
3146
 
3119
3147
    {
3120
3148
        (yyval.tok) = 0;
3121
 
  ;}
 
3149
  }
3122
3150
    break;
3123
3151
 
3124
3152
  case 160:
3125
3153
 
3126
 
    { (yyval.value) = (yyvsp[(1) - (1)].value); ;}
 
3154
    { (yyval.value) = (yyvsp[(1) - (1)].value); }
3127
3155
    break;
3128
3156
 
3129
3157
  case 161:
3130
3158
 
3131
 
    { (yyval.value) = (yyvsp[(2) - (2)].value); (yyval.value).fValue *= (yyvsp[(1) - (2)].val); ;}
 
3159
    { (yyval.value) = (yyvsp[(2) - (2)].value); (yyval.value).fValue *= (yyvsp[(1) - (2)].val); }
3132
3160
    break;
3133
3161
 
3134
3162
  case 162:
3135
3163
 
3136
 
    { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_DIMENSION; ;}
 
3164
    { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_DIMENSION; }
3137
3165
    break;
3138
3166
 
3139
3167
  case 163:
3140
3168
 
3141
 
    { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_STRING; ;}
 
3169
    { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_STRING; }
3142
3170
    break;
3143
3171
 
3144
3172
  case 164:
3148
3176
      (yyval.value).id = getValueID( str.toLower().toLatin1(), str.length() );
3149
3177
      (yyval.value).unit = CSSPrimitiveValue::CSS_IDENT;
3150
3178
      (yyval.value).string = (yyvsp[(1) - (2)].string);
3151
 
  ;}
 
3179
  }
3152
3180
    break;
3153
3181
 
3154
3182
  case 165:
3155
3183
 
3156
 
    { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_URI; ;}
 
3184
    { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (2)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_URI; }
3157
3185
    break;
3158
3186
 
3159
3187
  case 166:
3160
3188
 
3161
 
    { (yyval.value).id = 0; (yyval.value).iValue = 0; (yyval.value).unit = CSSPrimitiveValue::CSS_UNKNOWN;/* ### */ ;}
 
3189
    { (yyval.value).id = 0; (yyval.value).iValue = 0; (yyval.value).unit = CSSPrimitiveValue::CSS_UNKNOWN;/* ### */ }
3162
3190
    break;
3163
3191
 
3164
3192
  case 167:
3165
3193
 
3166
 
    { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (1)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_RGBCOLOR; ;}
 
3194
    { (yyval.value).id = 0; (yyval.value).string = (yyvsp[(1) - (1)].string); (yyval.value).unit = CSSPrimitiveValue::CSS_RGBCOLOR; }
3167
3195
    break;
3168
3196
 
3169
3197
  case 168:
3170
3198
 
3171
3199
    {
3172
3200
      (yyval.value) = (yyvsp[(1) - (1)].value);
3173
 
  ;}
 
3201
  }
3174
3202
    break;
3175
3203
 
3176
3204
  case 169:
3177
3205
 
3178
 
    { (yyval.value).id = 0; (yyval.value).isInt = true; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_NUMBER; ;}
 
3206
    { (yyval.value).id = 0; (yyval.value).isInt = true; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_NUMBER; }
3179
3207
    break;
3180
3208
 
3181
3209
  case 170:
3182
3210
 
3183
 
    { (yyval.value).id = 0; (yyval.value).isInt = false; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_NUMBER; ;}
 
3211
    { (yyval.value).id = 0; (yyval.value).isInt = false; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_NUMBER; }
3184
3212
    break;
3185
3213
 
3186
3214
  case 171:
3187
3215
 
3188
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_PERCENTAGE; ;}
 
3216
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_PERCENTAGE; }
3189
3217
    break;
3190
3218
 
3191
3219
  case 172:
3192
3220
 
3193
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_PX; ;}
 
3221
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_PX; }
3194
3222
    break;
3195
3223
 
3196
3224
  case 173:
3197
3225
 
3198
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_CM; ;}
 
3226
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_CM; }
3199
3227
    break;
3200
3228
 
3201
3229
  case 174:
3202
3230
 
3203
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_MM; ;}
 
3231
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_MM; }
3204
3232
    break;
3205
3233
 
3206
3234
  case 175:
3207
3235
 
3208
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_IN; ;}
 
3236
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_IN; }
3209
3237
    break;
3210
3238
 
3211
3239
  case 176:
3212
3240
 
3213
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_PT; ;}
 
3241
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_PT; }
3214
3242
    break;
3215
3243
 
3216
3244
  case 177:
3217
3245
 
3218
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_PC; ;}
 
3246
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_PC; }
3219
3247
    break;
3220
3248
 
3221
3249
  case 178:
3222
3250
 
3223
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_DEG; ;}
 
3251
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_DEG; }
3224
3252
    break;
3225
3253
 
3226
3254
  case 179:
3227
3255
 
3228
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_RAD; ;}
 
3256
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_RAD; }
3229
3257
    break;
3230
3258
 
3231
3259
  case 180:
3232
3260
 
3233
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_GRAD; ;}
 
3261
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_GRAD; }
3234
3262
    break;
3235
3263
 
3236
3264
  case 181:
3237
3265
 
3238
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_MS; ;}
 
3266
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_MS; }
3239
3267
    break;
3240
3268
 
3241
3269
  case 182:
3242
3270
 
3243
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_S; ;}
 
3271
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_S; }
3244
3272
    break;
3245
3273
 
3246
3274
  case 183:
3247
3275
 
3248
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_HZ; ;}
 
3276
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_HZ; }
3249
3277
    break;
3250
3278
 
3251
3279
  case 184:
3252
3280
 
3253
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_KHZ; ;}
 
3281
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_KHZ; }
3254
3282
    break;
3255
3283
 
3256
3284
  case 185:
3257
3285
 
3258
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_EMS; ;}
 
3286
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_EMS; }
3259
3287
    break;
3260
3288
 
3261
3289
  case 186:
3262
3290
 
3263
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = Value::Q_EMS; ;}
 
3291
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = Value::Q_EMS; }
3264
3292
    break;
3265
3293
 
3266
3294
  case 187:
3267
3295
 
3268
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_EXS; ;}
 
3296
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_EXS; }
3269
3297
    break;
3270
3298
 
3271
3299
  case 188:
3272
3300
 
3273
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_DPI; ;}
 
3301
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_DPI; }
3274
3302
    break;
3275
3303
 
3276
3304
  case 189:
3277
3305
 
3278
 
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_DPCM; ;}
 
3306
    { (yyval.value).id = 0; (yyval.value).fValue = (yyvsp[(1) - (2)].val); (yyval.value).unit = CSSPrimitiveValue::CSS_DPCM; }
3279
3307
    break;
3280
3308
 
3281
3309
  case 190:
3287
3315
      (yyval.value).id = 0;
3288
3316
      (yyval.value).unit = Value::Function;
3289
3317
      (yyval.value).function = f;
3290
 
  ;}
 
3318
  }
3291
3319
    break;
3292
3320
 
3293
3321
  case 191:
3299
3327
      (yyval.value).id = 0;
3300
3328
      (yyval.value).unit = Value::Function;
3301
3329
      (yyval.value).function = f;
3302
 
  ;}
 
3330
  }
3303
3331
    break;
3304
3332
 
3305
3333
  case 192:
3306
3334
 
3307
 
    { (yyval.string) = (yyvsp[(1) - (2)].string); ;}
 
3335
    { (yyval.string) = (yyvsp[(1) - (2)].string); }
3308
3336
    break;
3309
3337
 
3310
3338
  case 193:
3314
3342
#ifdef CSS_DEBUG
3315
3343
        kDebug( 6080 ) << "skipped invalid @-rule";
3316
3344
#endif
3317
 
    ;}
 
3345
    }
3318
3346
    break;
3319
3347
 
3320
3348
  case 194:
3324
3352
#ifdef CSS_DEBUG
3325
3353
        kDebug( 6080 ) << "skipped invalid @-rule";
3326
3354
#endif
3327
 
    ;}
 
3355
    }
3328
3356
    break;
3329
3357
 
3330
3358
  case 195:
3334
3362
#ifdef CSS_DEBUG
3335
3363
        kDebug( 6080 ) << "skipped invalid rule";
3336
3364
#endif
3337
 
    ;}
 
3365
    }
3338
3366
    break;
3339
3367
 
3340
3368
 
3341
3369
 
3342
3370
      default: break;
3343
3371
    }
 
3372
  /* User semantic actions sometimes alter yychar, and that requires
 
3373
     that yytoken be updated with the new translation.  We take the
 
3374
     approach of translating immediately before every use of yytoken.
 
3375
     One alternative is translating here after every semantic action,
 
3376
     but that translation would be missed if the semantic action invokes
 
3377
     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
 
3378
     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
 
3379
     incorrect destructor might then be invoked immediately.  In the
 
3380
     case of YYERROR or YYBACKUP, subsequent parser actions might lead
 
3381
     to an incorrect destructor call or verbose syntax error message
 
3382
     before the lookahead is translated.  */
3344
3383
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
3345
3384
 
3346
3385
  YYPOPSTACK (yylen);
3368
3407
| yyerrlab -- here on detecting error |
3369
3408
`------------------------------------*/
3370
3409
yyerrlab:
 
3410
  /* Make sure we have latest lookahead translation.  See comments at
 
3411
     user semantic actions for why this is necessary.  */
 
3412
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
 
3413
 
3371
3414
  /* If not already recovering from an error, report this error.  */
3372
3415
  if (!yyerrstatus)
3373
3416
    {
3375
3418
#if ! YYERROR_VERBOSE
3376
3419
      yyerror (YY_("syntax error"));
3377
3420
#else
 
3421
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
 
3422
                                        yyssp, yytoken)
3378
3423
      {
3379
 
        YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
3380
 
        if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
3381
 
          {
3382
 
            YYSIZE_T yyalloc = 2 * yysize;
3383
 
            if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
3384
 
              yyalloc = YYSTACK_ALLOC_MAXIMUM;
3385
 
            if (yymsg != yymsgbuf)
3386
 
              YYSTACK_FREE (yymsg);
3387
 
            yymsg = (char *) YYSTACK_ALLOC (yyalloc);
3388
 
            if (yymsg)
3389
 
              yymsg_alloc = yyalloc;
3390
 
            else
3391
 
              {
3392
 
                yymsg = yymsgbuf;
3393
 
                yymsg_alloc = sizeof yymsgbuf;
3394
 
              }
3395
 
          }
3396
 
 
3397
 
        if (0 < yysize && yysize <= yymsg_alloc)
3398
 
          {
3399
 
            (void) yysyntax_error (yymsg, yystate, yychar);
3400
 
            yyerror (yymsg);
3401
 
          }
3402
 
        else
3403
 
          {
3404
 
            yyerror (YY_("syntax error"));
3405
 
            if (yysize != 0)
3406
 
              goto yyexhaustedlab;
3407
 
          }
 
3424
        char const *yymsgp = YY_("syntax error");
 
3425
        int yysyntax_error_status;
 
3426
        yysyntax_error_status = YYSYNTAX_ERROR;
 
3427
        if (yysyntax_error_status == 0)
 
3428
          yymsgp = yymsg;
 
3429
        else if (yysyntax_error_status == 1)
 
3430
          {
 
3431
            if (yymsg != yymsgbuf)
 
3432
              YYSTACK_FREE (yymsg);
 
3433
            yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
 
3434
            if (!yymsg)
 
3435
              {
 
3436
                yymsg = yymsgbuf;
 
3437
                yymsg_alloc = sizeof yymsgbuf;
 
3438
                yysyntax_error_status = 2;
 
3439
              }
 
3440
            else
 
3441
              {
 
3442
                yysyntax_error_status = YYSYNTAX_ERROR;
 
3443
                yymsgp = yymsg;
 
3444
              }
 
3445
          }
 
3446
        yyerror (yymsgp);
 
3447
        if (yysyntax_error_status == 2)
 
3448
          goto yyexhaustedlab;
3408
3449
      }
 
3450
# undef YYSYNTAX_ERROR
3409
3451
#endif
3410
3452
    }
3411
3453
 
3464
3506
  for (;;)
3465
3507
    {
3466
3508
      yyn = yypact[yystate];
3467
 
      if (yyn != YYPACT_NINF)
 
3509
      if (!yypact_value_is_default (yyn))
3468
3510
        {
3469
3511
          yyn += YYTERROR;
3470
3512
          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
3523
3565
 
3524
3566
yyreturn:
3525
3567
  if (yychar != YYEMPTY)
3526
 
     yydestruct ("Cleanup: discarding lookahead",
3527
 
                 yytoken, &yylval);
 
3568
    {
 
3569
      /* Make sure we have latest lookahead translation.  See comments at
 
3570
         user semantic actions for why this is necessary.  */
 
3571
      yytoken = YYTRANSLATE (yychar);
 
3572
      yydestruct ("Cleanup: discarding lookahead",
 
3573
                  yytoken, &yylval);
 
3574
    }
3528
3575
  /* Do not reclaim the symbols of the rule which action triggered
3529
3576
     this YYABORT or YYACCEPT.  */
3530
3577
  YYPOPSTACK (yylen);