Add built local::lib
[catagits/Gitalist.git] / local-lib5 / lib / perl5 / i486-linux-gnu-thread-multi / Template / Grammar.pm
1 #============================================================= -*-Perl-*-
2 #
3 # Template::Grammar
4 #
5 # DESCRIPTION
6 #   Grammar file for the Template Toolkit language containing token
7 #   definitions and parser state/rules tables generated by Parse::Yapp.
8 #
9 # AUTHOR
10 #   Andy Wardley   <abw@wardley.org>
11 #
12 # COPYRIGHT
13 #   Copyright (C) 1996-2006 Andy Wardley.  All Rights Reserved.
14 #   Copyright (C) 1998-2000 Canon Research Centre Europe Ltd.
15 #
16 #   This module is free software; you can redistribute it and/or
17 #   modify it under the same terms as Perl itself.
18 #
19 # REVISION
20 #   $Id: Grammar.pm 1243 2009-07-04 15:32:19Z abw $
21 #
22 # IMPORTANT NOTE
23 #   This module is constructed from the parser/Grammar.pm.skel file by
24 #   running the parser/yc script.  You only need to do this if # you
25 #   have modified the grammar in the parser/Parser.yp file and need #
26 #   to-recompile it.  See the README in the 'parser' directory for
27 #   more information (sub-directory of the Template distribution).
28 #
29 #========================================================================
30
31 package Template::Grammar;
32
33 use strict;
34 use warnings;
35
36 our $VERSION  = 2.25;
37
38 my (@RESERVED, %CMPOP, $LEXTABLE, $RULES, $STATES);
39 my ($factory, $rawstart);
40
41
42 #========================================================================
43
44 # Reserved words, comparison and binary operators
45 #========================================================================
46
47 @RESERVED = qw( 
48         GET CALL SET DEFAULT INSERT INCLUDE PROCESS WRAPPER BLOCK END
49         USE PLUGIN FILTER MACRO PERL RAWPERL TO STEP AND OR NOT DIV MOD
50         IF UNLESS ELSE ELSIF FOR NEXT WHILE SWITCH CASE META IN
51         TRY THROW CATCH FINAL LAST RETURN STOP CLEAR VIEW DEBUG
52     );
53
54 # for historical reasons, != and == are converted to ne and eq to perform 
55 # stringwise comparison (mainly because it doesn't generate "non-numerical 
56 # comparison" warnings which != and == can) but the others (e.g. < > <= >=)
57 # are not converted to their stringwise equivalents.  I added 'gt' et al, 
58 # briefly for v2.04d and then took them out again in 2.04e.
59
60
61 %CMPOP = qw( 
62     != ne
63     == eq
64     <  <
65     >  >
66     >= >=
67     <= <=
68 );
69
70 #    eq eq  # add these lines to the above to 
71 #    lt lt  # enable the eq, lt and gt operators      
72 #    gt gt
73
74 #========================================================================
75 # Lexer Token Table
76 #========================================================================
77
78 # lookup table used by lexer is initialised with special-cases
79 $LEXTABLE = {
80     'FOREACH' => 'FOR',
81     'BREAK'   => 'LAST',
82     '&&'      => 'AND',
83     '||'      => 'OR',
84     '!'       => 'NOT',
85     '|'       => 'FILTER',
86     '.'       => 'DOT',
87     '_'       => 'CAT',
88     '..'      => 'TO',
89 #    ':'       => 'MACRO',
90     '='       => 'ASSIGN',
91     '=>'      => 'ASSIGN',
92 #    '->'      => 'ARROW',
93     ','       => 'COMMA',
94     '\\'      => 'REF',
95     'and'     => 'AND',         # explicitly specified so that qw( and or
96     'or'      => 'OR',          # not ) can always be used in lower case, 
97     'not'     => 'NOT',         # regardless of ANYCASE flag
98     'mod'     => 'MOD',
99     'div'     => 'DIV',
100 };
101
102 # localise the temporary variables needed to complete lexer table
103
104 #    my @tokens = qw< ( ) [ ] { } ${ $ / ; : ? >;
105     my @tokens = qw< ( ) [ ] { } ${ $ + / ; : ? >;
106     my @cmpop  = keys %CMPOP;
107 #    my @binop  = qw( + - * % );              # '/' above, in @tokens
108     my @binop  = qw( - * % );              # '+' and '/' above, in @tokens
109
110     # fill lexer table, slice by slice, with reserved words and operators
111     @$LEXTABLE{ @RESERVED, @cmpop, @binop, @tokens } 
112         = ( @RESERVED, ('CMPOP') x @cmpop, ('BINOP') x @binop, @tokens );
113 }
114
115
116 #========================================================================
117 # CLASS METHODS
118 #========================================================================
119
120 sub new {
121     my $class = shift;
122     bless {
123         LEXTABLE => $LEXTABLE,
124         STATES   => $STATES,
125         RULES    => $RULES,
126     }, $class;
127 }
128
129 # update method to set package-scoped $factory lexical 
130 sub install_factory {
131     my ($self, $new_factory) = @_;
132     $factory = $new_factory;
133 }
134
135
136 #========================================================================
137 # States
138 #========================================================================
139
140 $STATES = [
141         {#State 0
142                 ACTIONS => {
143                         'SET' => 1,
144                         'PERL' => 40,
145                         'NOT' => 38,
146                         'IDENT' => 2,
147                         'CLEAR' => 41,
148                         'UNLESS' => 3,
149                         'IF' => 44,
150                         "\$" => 43,
151                         'STOP' => 6,
152                         'CALL' => 45,
153                         'THROW' => 8,
154                         'GET' => 47,
155                         "[" => 9,
156                         'TRY' => 10,
157                         'LAST' => 49,
158                         'DEBUG' => 51,
159                         'RAWPERL' => 13,
160                         'META' => 15,
161                         'INCLUDE' => 17,
162                         "(" => 53,
163                         'SWITCH' => 54,
164                         'MACRO' => 18,
165                         'WRAPPER' => 55,
166                         ";" => -18,
167                         'FOR' => 21,
168                         'LITERAL' => 57,
169                         'NEXT' => 22,
170                         "\"" => 60,
171                         'TEXT' => 24,
172                         'PROCESS' => 61,
173                         'RETURN' => 64,
174                         'FILTER' => 25,
175                         'INSERT' => 65,
176                         'NUMBER' => 26,
177                         'REF' => 27,
178                         'WHILE' => 67,
179                         'BLOCK' => 28,
180                         'DEFAULT' => 69,
181                         "{" => 30,
182                         'USE' => 32,
183                         'VIEW' => 36,
184                         "\${" => 37
185                 },
186                 DEFAULT => -3,
187                 GOTOS => {
188                         'item' => 39,
189                         'loop' => 4,
190                         'capture' => 42,
191                         'statement' => 5,
192                         'view' => 7,
193                         'wrapper' => 46,
194                         'atomexpr' => 48,
195                         'chunk' => 11,
196                         'atomdir' => 12,
197                         'anonblock' => 50,
198                         'template' => 52,
199                         'defblockname' => 14,
200                         'ident' => 16,
201                         'assign' => 19,
202                         'macro' => 20,
203                         'lterm' => 56,
204                         'node' => 23,
205                         'term' => 58,
206                         'rawperl' => 59,
207                         'expr' => 62,
208                         'use' => 63,
209                         'defblock' => 66,
210                         'filter' => 29,
211                         'sterm' => 68,
212                         'perl' => 31,
213                         'chunks' => 33,
214                         'setlist' => 70,
215                         'try' => 35,
216                         'switch' => 34,
217                         'directive' => 71,
218                         'block' => 72,
219                         'condition' => 73
220                 }
221         },
222         {#State 1
223                 ACTIONS => {
224                         "\$" => 43,
225                         'LITERAL' => 75,
226                         'IDENT' => 2,
227                         "\${" => 37
228                 },
229                 GOTOS => {
230                         'setlist' => 76,
231                         'item' => 39,
232                         'assign' => 19,
233                         'node' => 23,
234                         'ident' => 74
235                 }
236         },
237         {#State 2
238                 DEFAULT => -130
239         },
240         {#State 3
241                 ACTIONS => {
242                         'NOT' => 38,
243                         "{" => 30,
244                         'LITERAL' => 78,
245                         'IDENT' => 2,
246                         "\"" => 60,
247                         "(" => 53,
248                         "\$" => 43,
249                         "[" => 9,
250                         'NUMBER' => 26,
251                         'REF' => 27,
252                         "\${" => 37
253                 },
254                 GOTOS => {
255                         'expr' => 79,
256                         'sterm' => 68,
257                         'item' => 39,
258                         'node' => 23,
259                         'ident' => 77,
260                         'term' => 58,
261                         'lterm' => 56
262                 }
263         },
264         {#State 4
265                 DEFAULT => -23
266         },
267         {#State 5
268                 ACTIONS => {
269                         ";" => 80
270                 }
271         },
272         {#State 6
273                 DEFAULT => -37
274         },
275         {#State 7
276                 DEFAULT => -14
277         },
278         {#State 8
279                 ACTIONS => {
280                         "\"" => 89,
281                         "\$" => 86,
282                         'LITERAL' => 88,
283                         'FILENAME' => 83,
284                         'IDENT' => 81,
285                         'NUMBER' => 84
286                 },
287                 GOTOS => {
288                         'filepart' => 87,
289                         'names' => 91,
290                         'nameargs' => 90,
291                         'filename' => 85,
292                         'name' => 82
293                 }
294         },
295         {#State 9
296                 ACTIONS => {
297                         "{" => 30,
298                         'LITERAL' => 78,
299                         'IDENT' => 2,
300                         "\"" => 60,
301                         "\$" => 43,
302                         "[" => 9,
303                         'NUMBER' => 26,
304                         'REF' => 27,
305                         "]" => 94,
306                         "\${" => 37
307                 },
308                 GOTOS => {
309                         'sterm' => 96,
310                         'item' => 39,
311                         'range' => 93,
312                         'node' => 23,
313                         'ident' => 77,
314                         'term' => 95,
315                         'lterm' => 56,
316                         'list' => 92
317                 }
318         },
319         {#State 10
320                 ACTIONS => {
321                         ";" => 97
322                 }
323         },
324         {#State 11
325                 DEFAULT => -5
326         },
327         {#State 12
328                 ACTIONS => {
329                         ";" => -20
330                 },
331                 DEFAULT => -27
332         },
333         {#State 13
334                 DEFAULT => -78,
335                 GOTOS => {
336                         '@5-1' => 98
337                 }
338         },
339         {#State 14
340                 ACTIONS => {
341                         'IDENT' => 99
342                 },
343                 DEFAULT => -87,
344                 GOTOS => {
345                         'blockargs' => 102,
346                         'metadata' => 101,
347                         'meta' => 100
348                 }
349         },
350         {#State 15
351                 ACTIONS => {
352                         'IDENT' => 99
353                 },
354                 GOTOS => {
355                         'metadata' => 103,
356                         'meta' => 100
357                 }
358         },
359         {#State 16
360                 ACTIONS => {
361                         'DOT' => 104,
362                         'ASSIGN' => 105
363                 },
364                 DEFAULT => -109
365         },
366         {#State 17
367                 ACTIONS => {
368                         "\"" => 89,
369                         "\$" => 86,
370                         'LITERAL' => 88,
371                         'FILENAME' => 83,
372                         'IDENT' => 81,
373                         'NUMBER' => 84
374                 },
375                 GOTOS => {
376                         'filepart' => 87,
377                         'names' => 91,
378                         'nameargs' => 106,
379                         'filename' => 85,
380                         'name' => 82
381                 }
382         },
383         {#State 18
384                 ACTIONS => {
385                         'IDENT' => 107
386                 }
387         },
388         {#State 19
389                 DEFAULT => -149
390         },
391         {#State 20
392                 DEFAULT => -12
393         },
394         {#State 21
395                 ACTIONS => {
396                         "{" => 30,
397                         'LITERAL' => 78,
398                         'IDENT' => 108,
399                         "\"" => 60,
400                         "\$" => 43,
401                         "[" => 9,
402                         'NUMBER' => 26,
403                         'REF' => 27,
404                         "\${" => 37
405                 },
406                 GOTOS => {
407                         'sterm' => 68,
408                         'item' => 39,
409                         'loopvar' => 110,
410                         'node' => 23,
411                         'ident' => 77,
412                         'term' => 109,
413                         'lterm' => 56
414                 }
415         },
416         {#State 22
417                 DEFAULT => -40
418         },
419         {#State 23
420                 DEFAULT => -127
421         },
422         {#State 24
423                 DEFAULT => -6
424         },
425         {#State 25
426                 ACTIONS => {
427                         "\"" => 117,
428                         "\$" => 114,
429                         'LITERAL' => 116,
430                         'FILENAME' => 83,
431                         'IDENT' => 111,
432                         'NUMBER' => 84,
433                         "\${" => 37
434                 },
435                 GOTOS => {
436                         'names' => 91,
437                         'lvalue' => 112,
438                         'item' => 113,
439                         'name' => 82,
440                         'filepart' => 87,
441                         'filename' => 85,
442                         'nameargs' => 118,
443                         'lnameargs' => 115
444                 }
445         },
446         {#State 26
447                 DEFAULT => -113
448         },
449         {#State 27
450                 ACTIONS => {
451                         "\$" => 43,
452                         'IDENT' => 2,
453                         "\${" => 37
454                 },
455                 GOTOS => {
456                         'item' => 39,
457                         'node' => 23,
458                         'ident' => 119
459                 }
460         },
461         {#State 28
462                 ACTIONS => {
463                         'LITERAL' => 124,
464                         'FILENAME' => 83,
465                         'IDENT' => 120,
466                         'NUMBER' => 84
467                 },
468                 DEFAULT => -87,
469                 GOTOS => {
470                         'blockargs' => 123,
471                         'filepart' => 87,
472                         'filename' => 122,
473                         'blockname' => 121,
474                         'metadata' => 101,
475                         'meta' => 100
476                 }
477         },
478         {#State 29
479                 DEFAULT => -43
480         },
481         {#State 30
482                 ACTIONS => {
483                         "\$" => 43,
484                         'LITERAL' => 129,
485                         'IDENT' => 2,
486                         "\${" => 37
487                 },
488                 DEFAULT => -119,
489                 GOTOS => {
490                         'params' => 128,
491                         'hash' => 125,
492                         'item' => 126,
493                         'param' => 127
494                 }
495         },
496         {#State 31
497                 DEFAULT => -25
498         },
499         {#State 32
500                 ACTIONS => {
501                         "\"" => 117,
502                         "\$" => 114,
503                         'LITERAL' => 116,
504                         'FILENAME' => 83,
505                         'IDENT' => 111,
506                         'NUMBER' => 84,
507                         "\${" => 37
508                 },
509                 GOTOS => {
510                         'names' => 91,
511                         'lvalue' => 112,
512                         'item' => 113,
513                         'name' => 82,
514                         'filepart' => 87,
515                         'filename' => 85,
516                         'nameargs' => 118,
517                         'lnameargs' => 130
518                 }
519         },
520         {#State 33
521                 ACTIONS => {
522                         'SET' => 1,
523                         'PERL' => 40,
524                         'NOT' => 38,
525                         'IDENT' => 2,
526                         'CLEAR' => 41,
527                         'UNLESS' => 3,
528                         'IF' => 44,
529                         "\$" => 43,
530                         'STOP' => 6,
531                         'CALL' => 45,
532                         'THROW' => 8,
533                         'GET' => 47,
534                         "[" => 9,
535                         'TRY' => 10,
536                         'LAST' => 49,
537                         'DEBUG' => 51,
538                         'RAWPERL' => 13,
539                         'META' => 15,
540                         'INCLUDE' => 17,
541                         "(" => 53,
542                         'SWITCH' => 54,
543                         'MACRO' => 18,
544                         'WRAPPER' => 55,
545                         ";" => -18,
546                         'FOR' => 21,
547                         'LITERAL' => 57,
548                         'NEXT' => 22,
549                         "\"" => 60,
550                         'TEXT' => 24,
551                         'PROCESS' => 61,
552                         'RETURN' => 64,
553                         'FILTER' => 25,
554                         'INSERT' => 65,
555                         'NUMBER' => 26,
556                         'REF' => 27,
557                         'WHILE' => 67,
558                         'BLOCK' => 28,
559                         'DEFAULT' => 69,
560                         "{" => 30,
561                         'USE' => 32,
562                         'VIEW' => 36,
563                         "\${" => 37
564                 },
565                 DEFAULT => -2,
566                 GOTOS => {
567                         'item' => 39,
568                         'node' => 23,
569                         'rawperl' => 59,
570                         'term' => 58,
571                         'loop' => 4,
572                         'use' => 63,
573                         'expr' => 62,
574                         'capture' => 42,
575                         'statement' => 5,
576                         'view' => 7,
577                         'wrapper' => 46,
578                         'atomexpr' => 48,
579                         'chunk' => 131,
580                         'defblock' => 66,
581                         'atomdir' => 12,
582                         'anonblock' => 50,
583                         'sterm' => 68,
584                         'defblockname' => 14,
585                         'filter' => 29,
586                         'ident' => 16,
587                         'perl' => 31,
588                         'setlist' => 70,
589                         'try' => 35,
590                         'switch' => 34,
591                         'assign' => 19,
592                         'directive' => 71,
593                         'macro' => 20,
594                         'condition' => 73,
595                         'lterm' => 56
596                 }
597         },
598         {#State 34
599                 DEFAULT => -22
600         },
601         {#State 35
602                 DEFAULT => -24
603         },
604         {#State 36
605                 ACTIONS => {
606                         "\"" => 89,
607                         "\$" => 86,
608                         'LITERAL' => 88,
609                         'FILENAME' => 83,
610                         'IDENT' => 81,
611                         'NUMBER' => 84
612                 },
613                 GOTOS => {
614                         'filepart' => 87,
615                         'names' => 91,
616                         'nameargs' => 132,
617                         'filename' => 85,
618                         'name' => 82
619                 }
620         },
621         {#State 37
622                 ACTIONS => {
623                         "\"" => 60,
624                         "\$" => 43,
625                         'LITERAL' => 78,
626                         'IDENT' => 2,
627                         'REF' => 27,
628                         'NUMBER' => 26,
629                         "\${" => 37
630                 },
631                 GOTOS => {
632                         'sterm' => 133,
633                         'item' => 39,
634                         'node' => 23,
635                         'ident' => 77
636                 }
637         },
638         {#State 38
639                 ACTIONS => {
640                         'NOT' => 38,
641                         "{" => 30,
642                         'LITERAL' => 78,
643                         'IDENT' => 2,
644                         "\"" => 60,
645                         "(" => 53,
646                         "\$" => 43,
647                         "[" => 9,
648                         'NUMBER' => 26,
649                         'REF' => 27,
650                         "\${" => 37
651                 },
652                 GOTOS => {
653                         'expr' => 134,
654                         'sterm' => 68,
655                         'item' => 39,
656                         'node' => 23,
657                         'ident' => 77,
658                         'term' => 58,
659                         'lterm' => 56
660                 }
661         },
662         {#State 39
663                 ACTIONS => {
664                         "(" => 135
665                 },
666                 DEFAULT => -128
667         },
668         {#State 40
669                 ACTIONS => {
670                         ";" => 136
671                 }
672         },
673         {#State 41
674                 DEFAULT => -38
675         },
676         {#State 42
677                 DEFAULT => -11
678         },
679         {#State 43
680                 ACTIONS => {
681                         'IDENT' => 137
682                 }
683         },
684         {#State 44
685                 ACTIONS => {
686                         'NOT' => 38,
687                         "{" => 30,
688                         'LITERAL' => 78,
689                         'IDENT' => 2,
690                         "\"" => 60,
691                         "(" => 53,
692                         "\$" => 43,
693                         "[" => 9,
694                         'NUMBER' => 26,
695                         'REF' => 27,
696                         "\${" => 37
697                 },
698                 GOTOS => {
699                         'expr' => 138,
700                         'sterm' => 68,
701                         'item' => 39,
702                         'node' => 23,
703                         'ident' => 77,
704                         'term' => 58,
705                         'lterm' => 56
706                 }
707         },
708         {#State 45
709                 ACTIONS => {
710                         'NOT' => 38,
711                         "{" => 30,
712                         'LITERAL' => 78,
713                         'IDENT' => 2,
714                         "\"" => 60,
715                         "(" => 53,
716                         "\$" => 43,
717                         "[" => 9,
718                         'NUMBER' => 26,
719                         'REF' => 27,
720                         "\${" => 37
721                 },
722                 GOTOS => {
723                         'expr' => 139,
724                         'sterm' => 68,
725                         'item' => 39,
726                         'node' => 23,
727                         'ident' => 77,
728                         'term' => 58,
729                         'lterm' => 56
730                 }
731         },
732         {#State 46
733                 DEFAULT => -42
734         },
735         {#State 47
736                 ACTIONS => {
737                         'NOT' => 38,
738                         "{" => 30,
739                         'LITERAL' => 78,
740                         'IDENT' => 2,
741                         "\"" => 60,
742                         "(" => 53,
743                         "\$" => 43,
744                         "[" => 9,
745                         'NUMBER' => 26,
746                         'REF' => 27,
747                         "\${" => 37
748                 },
749                 GOTOS => {
750                         'expr' => 140,
751                         'sterm' => 68,
752                         'item' => 39,
753                         'node' => 23,
754                         'ident' => 77,
755                         'term' => 58,
756                         'lterm' => 56
757                 }
758         },
759         {#State 48
760                 ACTIONS => {
761                         'IF' => 144,
762                         'FILTER' => 143,
763                         'FOR' => 142,
764                         'WHILE' => 146,
765                         'WRAPPER' => 145,
766                         'UNLESS' => 141
767                 }
768         },
769         {#State 49
770                 DEFAULT => -39
771         },
772         {#State 50
773                 DEFAULT => -10
774         },
775         {#State 51
776                 ACTIONS => {
777                         "\"" => 89,
778                         "\$" => 86,
779                         'LITERAL' => 88,
780                         'FILENAME' => 83,
781                         'IDENT' => 81,
782                         'NUMBER' => 84
783                 },
784                 GOTOS => {
785                         'filepart' => 87,
786                         'names' => 91,
787                         'nameargs' => 147,
788                         'filename' => 85,
789                         'name' => 82
790                 }
791         },
792         {#State 52
793                 ACTIONS => {
794                         '' => 148
795                 }
796         },
797         {#State 53
798                 ACTIONS => {
799                         'NOT' => 38,
800                         "{" => 30,
801                         'LITERAL' => 57,
802                         'IDENT' => 2,
803                         "\"" => 60,
804                         "(" => 53,
805                         "\$" => 43,
806                         "[" => 9,
807                         'NUMBER' => 26,
808                         'REF' => 27,
809                         "\${" => 37
810                 },
811                 GOTOS => {
812                         'expr' => 151,
813                         'sterm' => 68,
814                         'item' => 39,
815                         'assign' => 150,
816                         'node' => 23,
817                         'ident' => 149,
818                         'term' => 58,
819                         'lterm' => 56
820                 }
821         },
822         {#State 54
823                 ACTIONS => {
824                         'NOT' => 38,
825                         "{" => 30,
826                         'LITERAL' => 78,
827                         'IDENT' => 2,
828                         "\"" => 60,
829                         "(" => 53,
830                         "\$" => 43,
831                         "[" => 9,
832                         'NUMBER' => 26,
833                         'REF' => 27,
834                         "\${" => 37
835                 },
836                 GOTOS => {
837                         'expr' => 152,
838                         'sterm' => 68,
839                         'item' => 39,
840                         'node' => 23,
841                         'ident' => 77,
842                         'term' => 58,
843                         'lterm' => 56
844                 }
845         },
846         {#State 55
847                 ACTIONS => {
848                         "\"" => 89,
849                         "\$" => 86,
850                         'LITERAL' => 88,
851                         'FILENAME' => 83,
852                         'IDENT' => 81,
853                         'NUMBER' => 84
854                 },
855                 GOTOS => {
856                         'filepart' => 87,
857                         'names' => 91,
858                         'nameargs' => 153,
859                         'filename' => 85,
860                         'name' => 82
861                 }
862         },
863         {#State 56
864                 DEFAULT => -103
865         },
866         {#State 57
867                 ACTIONS => {
868                         'ASSIGN' => 154
869                 },
870                 DEFAULT => -112
871         },
872         {#State 58
873                 DEFAULT => -146
874         },
875         {#State 59
876                 DEFAULT => -15
877         },
878         {#State 60
879                 DEFAULT => -176,
880                 GOTOS => {
881                         'quoted' => 155
882                 }
883         },
884         {#State 61
885                 ACTIONS => {
886                         "\"" => 89,
887                         "\$" => 86,
888                         'LITERAL' => 88,
889                         'FILENAME' => 83,
890                         'IDENT' => 81,
891                         'NUMBER' => 84
892                 },
893                 GOTOS => {
894                         'filepart' => 87,
895                         'names' => 91,
896                         'nameargs' => 156,
897                         'filename' => 85,
898                         'name' => 82
899                 }
900         },
901         {#State 62
902                 ACTIONS => {
903                         ";" => -16,
904                         "+" => 157,
905                         'CAT' => 163,
906                         'CMPOP' => 164,
907                         "?" => 158,
908                         'DIV' => 159,
909                         'MOD' => 165,
910                         "/" => 166,
911                         'AND' => 160,
912                         'BINOP' => 161,
913                         'OR' => 162
914                 },
915                 DEFAULT => -26
916         },
917         {#State 63
918                 DEFAULT => -13
919         },
920         {#State 64
921                 DEFAULT => -36
922         },
923         {#State 65
924                 ACTIONS => {
925                         "\"" => 89,
926                         "\$" => 86,
927                         'LITERAL' => 88,
928                         'FILENAME' => 83,
929                         'IDENT' => 81,
930                         'NUMBER' => 84
931                 },
932                 GOTOS => {
933                         'filepart' => 87,
934                         'names' => 91,
935                         'nameargs' => 167,
936                         'filename' => 85,
937                         'name' => 82
938                 }
939         },
940         {#State 66
941                 DEFAULT => -9
942         },
943         {#State 67
944                 ACTIONS => {
945                         'NOT' => 38,
946                         "{" => 30,
947                         'LITERAL' => 78,
948                         'IDENT' => 2,
949                         "\"" => 60,
950                         "(" => 53,
951                         "\$" => 43,
952                         "[" => 9,
953                         'NUMBER' => 26,
954                         'REF' => 27,
955                         "\${" => 37
956                 },
957                 GOTOS => {
958                         'expr' => 168,
959                         'sterm' => 68,
960                         'item' => 39,
961                         'node' => 23,
962                         'ident' => 77,
963                         'term' => 58,
964                         'lterm' => 56
965                 }
966         },
967         {#State 68
968                 DEFAULT => -104
969         },
970         {#State 69
971                 ACTIONS => {
972                         "\$" => 43,
973                         'LITERAL' => 75,
974                         'IDENT' => 2,
975                         "\${" => 37
976                 },
977                 GOTOS => {
978                         'setlist' => 169,
979                         'item' => 39,
980                         'assign' => 19,
981                         'node' => 23,
982                         'ident' => 74
983                 }
984         },
985         {#State 70
986                 ACTIONS => {
987                         "\$" => 43,
988                         'COMMA' => 171,
989                         'LITERAL' => 75,
990                         'IDENT' => 2,
991                         "\${" => 37
992                 },
993                 DEFAULT => -19,
994                 GOTOS => {
995                         'item' => 39,
996                         'assign' => 170,
997                         'node' => 23,
998                         'ident' => 74
999                 }
1000         },
1001         {#State 71
1002                 DEFAULT => -8
1003         },
1004         {#State 72
1005                 DEFAULT => -1
1006         },
1007         {#State 73
1008                 DEFAULT => -21
1009         },
1010         {#State 74
1011                 ACTIONS => {
1012                         'ASSIGN' => 172,
1013                         'DOT' => 104
1014                 }
1015         },
1016         {#State 75
1017                 ACTIONS => {
1018                         'ASSIGN' => 154
1019                 }
1020         },
1021         {#State 76
1022                 ACTIONS => {
1023                         'COMMA' => 171,
1024                         'LITERAL' => 75,
1025                         'IDENT' => 2,
1026                         "\$" => 43,
1027                         "\${" => 37
1028                 },
1029                 DEFAULT => -30,
1030                 GOTOS => {
1031                         'item' => 39,
1032                         'assign' => 170,
1033                         'node' => 23,
1034                         'ident' => 74
1035                 }
1036         },
1037         {#State 77
1038                 ACTIONS => {
1039                         'DOT' => 104
1040                 },
1041                 DEFAULT => -109
1042         },
1043         {#State 78
1044                 DEFAULT => -112
1045         },
1046         {#State 79
1047                 ACTIONS => {
1048                         'CMPOP' => 164,
1049                         "?" => 158,
1050                         ";" => 173,
1051                         "+" => 157,
1052                         'MOD' => 165,
1053                         'DIV' => 159,
1054                         "/" => 166,
1055                         'AND' => 160,
1056                         'CAT' => 163,
1057                         'BINOP' => 161,
1058                         'OR' => 162
1059                 }
1060         },
1061         {#State 80
1062                 DEFAULT => -7
1063         },
1064         {#State 81
1065                 DEFAULT => -173
1066         },
1067         {#State 82
1068                 DEFAULT => -166
1069         },
1070         {#State 83
1071                 DEFAULT => -172
1072         },
1073         {#State 84
1074                 DEFAULT => -174
1075         },
1076         {#State 85
1077                 ACTIONS => {
1078                         'DOT' => 174
1079                 },
1080                 DEFAULT => -168
1081         },
1082         {#State 86
1083                 ACTIONS => {
1084                         "\$" => 43,
1085                         'IDENT' => 2,
1086                         "\${" => 37
1087                 },
1088                 GOTOS => {
1089                         'item' => 39,
1090                         'node' => 23,
1091                         'ident' => 175
1092                 }
1093         },
1094         {#State 87
1095                 DEFAULT => -171
1096         },
1097         {#State 88
1098                 DEFAULT => -169
1099         },
1100         {#State 89
1101                 DEFAULT => -176,
1102                 GOTOS => {
1103                         'quoted' => 176
1104                 }
1105         },
1106         {#State 90
1107                 DEFAULT => -35
1108         },
1109         {#State 91
1110                 ACTIONS => {
1111                         "+" => 177,
1112                         "(" => 178
1113                 },
1114                 DEFAULT => -156,
1115                 GOTOS => {
1116                         'args' => 179
1117                 }
1118         },
1119         {#State 92
1120                 ACTIONS => {
1121                         "{" => 30,
1122                         'COMMA' => 182,
1123                         'LITERAL' => 78,
1124                         'IDENT' => 2,
1125                         "\"" => 60,
1126                         "\$" => 43,
1127                         "[" => 9,
1128                         'NUMBER' => 26,
1129                         'REF' => 27,
1130                         "]" => 180,
1131                         "\${" => 37
1132                 },
1133                 GOTOS => {
1134                         'sterm' => 68,
1135                         'item' => 39,
1136                         'node' => 23,
1137                         'ident' => 77,
1138                         'term' => 181,
1139                         'lterm' => 56
1140                 }
1141         },
1142         {#State 93
1143                 ACTIONS => {
1144                         "]" => 183
1145                 }
1146         },
1147         {#State 94
1148                 DEFAULT => -107
1149         },
1150         {#State 95
1151                 DEFAULT => -116
1152         },
1153         {#State 96
1154                 ACTIONS => {
1155                         'TO' => 184
1156                 },
1157                 DEFAULT => -104
1158         },
1159         {#State 97
1160                 ACTIONS => {
1161                         'SET' => 1,
1162                         'PERL' => 40,
1163                         'NOT' => 38,
1164                         'IDENT' => 2,
1165                         'CLEAR' => 41,
1166                         'UNLESS' => 3,
1167                         'IF' => 44,
1168                         "\$" => 43,
1169                         'STOP' => 6,
1170                         'CALL' => 45,
1171                         'THROW' => 8,
1172                         'GET' => 47,
1173                         "[" => 9,
1174                         'TRY' => 10,
1175                         'LAST' => 49,
1176                         'DEBUG' => 51,
1177                         'RAWPERL' => 13,
1178                         'META' => 15,
1179                         'INCLUDE' => 17,
1180                         "(" => 53,
1181                         'SWITCH' => 54,
1182                         'MACRO' => 18,
1183                         'WRAPPER' => 55,
1184                         ";" => -18,
1185                         'FOR' => 21,
1186                         'LITERAL' => 57,
1187                         'NEXT' => 22,
1188                         "\"" => 60,
1189                         'TEXT' => 24,
1190                         'PROCESS' => 61,
1191                         'RETURN' => 64,
1192                         'FILTER' => 25,
1193                         'INSERT' => 65,
1194                         'NUMBER' => 26,
1195                         'REF' => 27,
1196                         'WHILE' => 67,
1197                         'BLOCK' => 28,
1198                         'DEFAULT' => 69,
1199                         "{" => 30,
1200                         'USE' => 32,
1201                         'VIEW' => 36,
1202                         "\${" => 37
1203                 },
1204                 DEFAULT => -3,
1205                 GOTOS => {
1206                         'item' => 39,
1207                         'node' => 23,
1208                         'rawperl' => 59,
1209                         'term' => 58,
1210                         'loop' => 4,
1211                         'use' => 63,
1212                         'expr' => 62,
1213                         'capture' => 42,
1214                         'statement' => 5,
1215                         'view' => 7,
1216                         'wrapper' => 46,
1217                         'atomexpr' => 48,
1218                         'chunk' => 11,
1219                         'defblock' => 66,
1220                         'atomdir' => 12,
1221                         'anonblock' => 50,
1222                         'sterm' => 68,
1223                         'defblockname' => 14,
1224                         'filter' => 29,
1225                         'ident' => 16,
1226                         'perl' => 31,
1227                         'setlist' => 70,
1228                         'chunks' => 33,
1229                         'try' => 35,
1230                         'switch' => 34,
1231                         'assign' => 19,
1232                         'block' => 185,
1233                         'directive' => 71,
1234                         'macro' => 20,
1235                         'condition' => 73,
1236                         'lterm' => 56
1237                 }
1238         },
1239         {#State 98
1240                 ACTIONS => {
1241                         ";" => 186
1242                 }
1243         },
1244         {#State 99
1245                 ACTIONS => {
1246                         'ASSIGN' => 187
1247                 }
1248         },
1249         {#State 100
1250                 DEFAULT => -99
1251         },
1252         {#State 101
1253                 ACTIONS => {
1254                         'COMMA' => 189,
1255                         'IDENT' => 99
1256                 },
1257                 DEFAULT => -86,
1258                 GOTOS => {
1259                         'meta' => 188
1260                 }
1261         },
1262         {#State 102
1263                 ACTIONS => {
1264                         ";" => 190
1265                 }
1266         },
1267         {#State 103
1268                 ACTIONS => {
1269                         'COMMA' => 189,
1270                         'IDENT' => 99
1271                 },
1272                 DEFAULT => -17,
1273                 GOTOS => {
1274                         'meta' => 188
1275                 }
1276         },
1277         {#State 104
1278                 ACTIONS => {
1279                         "\$" => 43,
1280                         'IDENT' => 2,
1281                         'NUMBER' => 192,
1282                         "\${" => 37
1283                 },
1284                 GOTOS => {
1285                         'item' => 39,
1286                         'node' => 191
1287                 }
1288         },
1289         {#State 105
1290                 ACTIONS => {
1291                         'SET' => 1,
1292                         'PERL' => 40,
1293                         'NOT' => 38,
1294                         'IDENT' => 2,
1295                         'CLEAR' => 41,
1296                         'UNLESS' => 3,
1297                         'IF' => 44,
1298                         "\$" => 43,
1299                         'STOP' => 6,
1300                         'CALL' => 45,
1301                         'THROW' => 8,
1302                         'GET' => 47,
1303                         "[" => 9,
1304                         'TRY' => 10,
1305                         'LAST' => 49,
1306                         'DEBUG' => 51,
1307                         'INCLUDE' => 17,
1308                         "(" => 53,
1309                         'SWITCH' => 54,
1310                         'WRAPPER' => 55,
1311                         'FOR' => 21,
1312                         'NEXT' => 22,
1313                         'LITERAL' => 57,
1314                         "\"" => 60,
1315                         'PROCESS' => 61,
1316                         'FILTER' => 25,
1317                         'RETURN' => 64,
1318                         'INSERT' => 65,
1319                         'NUMBER' => 26,
1320                         'REF' => 27,
1321                         'WHILE' => 67,
1322                         'BLOCK' => 193,
1323                         'DEFAULT' => 69,
1324                         "{" => 30,
1325                         "\${" => 37
1326                 },
1327                 GOTOS => {
1328                         'item' => 39,
1329                         'node' => 23,
1330                         'term' => 58,
1331                         'loop' => 4,
1332                         'expr' => 195,
1333                         'wrapper' => 46,
1334                         'atomexpr' => 48,
1335                         'atomdir' => 12,
1336                         'mdir' => 194,
1337                         'filter' => 29,
1338                         'sterm' => 68,
1339                         'ident' => 149,
1340                         'perl' => 31,
1341                         'setlist' => 70,
1342                         'try' => 35,
1343                         'switch' => 34,
1344                         'assign' => 19,
1345                         'directive' => 196,
1346                         'condition' => 73,
1347                         'lterm' => 56
1348                 }
1349         },
1350         {#State 106
1351                 DEFAULT => -33
1352         },
1353         {#State 107
1354                 ACTIONS => {
1355                         'SET' => 1,
1356                         'PERL' => 40,
1357                         'NOT' => 38,
1358                         'IDENT' => 2,
1359                         'CLEAR' => 41,
1360                         'UNLESS' => 3,
1361                         'IF' => 44,
1362                         "\$" => 43,
1363                         'STOP' => 6,
1364                         'CALL' => 45,
1365                         'THROW' => 8,
1366                         'GET' => 47,
1367                         "[" => 9,
1368                         'TRY' => 10,
1369                         'LAST' => 49,
1370                         'DEBUG' => 51,
1371                         'INCLUDE' => 17,
1372                         "(" => 198,
1373                         'SWITCH' => 54,
1374                         'WRAPPER' => 55,
1375                         'FOR' => 21,
1376                         'NEXT' => 22,
1377                         'LITERAL' => 57,
1378                         "\"" => 60,
1379                         'PROCESS' => 61,
1380                         'FILTER' => 25,
1381                         'RETURN' => 64,
1382                         'INSERT' => 65,
1383                         'NUMBER' => 26,
1384                         'REF' => 27,
1385                         'WHILE' => 67,
1386                         'BLOCK' => 193,
1387                         'DEFAULT' => 69,
1388                         "{" => 30,
1389                         "\${" => 37
1390                 },
1391                 GOTOS => {
1392                         'item' => 39,
1393                         'node' => 23,
1394                         'term' => 58,
1395                         'loop' => 4,
1396                         'expr' => 199,
1397                         'wrapper' => 46,
1398                         'atomexpr' => 48,
1399                         'atomdir' => 12,
1400                         'mdir' => 197,
1401                         'filter' => 29,
1402                         'sterm' => 68,
1403                         'ident' => 149,
1404                         'perl' => 31,
1405                         'setlist' => 70,
1406                         'try' => 35,
1407                         'switch' => 34,
1408                         'assign' => 19,
1409                         'directive' => 196,
1410                         'condition' => 73,
1411                         'lterm' => 56
1412                 }
1413         },
1414         {#State 108
1415                 ACTIONS => {
1416                         'IN' => 201,
1417                         'ASSIGN' => 200
1418                 },
1419                 DEFAULT => -130
1420         },
1421         {#State 109
1422                 DEFAULT => -156,
1423                 GOTOS => {
1424                         'args' => 202
1425                 }
1426         },
1427         {#State 110
1428                 ACTIONS => {
1429                         ";" => 203
1430                 }
1431         },
1432         {#State 111
1433                 ACTIONS => {
1434                         'ASSIGN' => -130
1435                 },
1436                 DEFAULT => -173
1437         },
1438         {#State 112
1439                 ACTIONS => {
1440                         'ASSIGN' => 204
1441                 }
1442         },
1443         {#State 113
1444                 DEFAULT => -159
1445         },
1446         {#State 114
1447                 ACTIONS => {
1448                         "\$" => 43,
1449                         'IDENT' => 205,
1450                         "\${" => 37
1451                 },
1452                 GOTOS => {
1453                         'item' => 39,
1454                         'node' => 23,
1455                         'ident' => 175
1456                 }
1457         },
1458         {#State 115
1459                 ACTIONS => {
1460                         ";" => 206
1461                 }
1462         },
1463         {#State 116
1464                 ACTIONS => {
1465                         'ASSIGN' => -161
1466                 },
1467                 DEFAULT => -169
1468         },
1469         {#State 117
1470                 DEFAULT => -176,
1471                 GOTOS => {
1472                         'quoted' => 207
1473                 }
1474         },
1475         {#State 118
1476                 DEFAULT => -158
1477         },
1478         {#State 119
1479                 ACTIONS => {
1480                         'DOT' => 104
1481                 },
1482                 DEFAULT => -110
1483         },
1484         {#State 120
1485                 ACTIONS => {
1486                         'ASSIGN' => 187
1487                 },
1488                 DEFAULT => -173
1489         },
1490         {#State 121
1491                 DEFAULT => -83
1492         },
1493         {#State 122
1494                 ACTIONS => {
1495                         'DOT' => 174
1496                 },
1497                 DEFAULT => -84
1498         },
1499         {#State 123
1500                 ACTIONS => {
1501                         ";" => 208
1502                 }
1503         },
1504         {#State 124
1505                 DEFAULT => -85
1506         },
1507         {#State 125
1508                 ACTIONS => {
1509                         "}" => 209
1510                 }
1511         },
1512         {#State 126
1513                 ACTIONS => {
1514                         'ASSIGN' => 210
1515                 }
1516         },
1517         {#State 127
1518                 DEFAULT => -122
1519         },
1520         {#State 128
1521                 ACTIONS => {
1522                         "\$" => 43,
1523                         'COMMA' => 212,
1524                         'LITERAL' => 129,
1525                         'IDENT' => 2,
1526                         "\${" => 37
1527                 },
1528                 DEFAULT => -118,
1529                 GOTOS => {
1530                         'item' => 126,
1531                         'param' => 211
1532                 }
1533         },
1534         {#State 129
1535                 ACTIONS => {
1536                         'ASSIGN' => 213
1537                 }
1538         },
1539         {#State 130
1540                 DEFAULT => -73
1541         },
1542         {#State 131
1543                 DEFAULT => -4
1544         },
1545         {#State 132
1546                 ACTIONS => {
1547                         ";" => 214
1548                 }
1549         },
1550         {#State 133
1551                 ACTIONS => {
1552                         "}" => 215
1553                 }
1554         },
1555         {#State 134
1556                 ACTIONS => {
1557                         'DIV' => 159,
1558                         'BINOP' => 161,
1559                         "+" => 157,
1560                         'CAT' => 163,
1561                         'CMPOP' => 164,
1562                         'MOD' => 165,
1563                         "/" => 166
1564                 },
1565                 DEFAULT => -142
1566         },
1567         {#State 135
1568                 DEFAULT => -156,
1569                 GOTOS => {
1570                         'args' => 216
1571                 }
1572         },
1573         {#State 136
1574                 DEFAULT => -76,
1575                 GOTOS => {
1576                         '@4-2' => 217
1577                 }
1578         },
1579         {#State 137
1580                 DEFAULT => -132
1581         },
1582         {#State 138
1583                 ACTIONS => {
1584                         'CMPOP' => 164,
1585                         "?" => 158,
1586                         ";" => 218,
1587                         "+" => 157,
1588                         'MOD' => 165,
1589                         'DIV' => 159,
1590                         "/" => 166,
1591                         'AND' => 160,
1592                         'CAT' => 163,
1593                         'BINOP' => 161,
1594                         'OR' => 162
1595                 }
1596         },
1597         {#State 139
1598                 ACTIONS => {
1599                         "+" => 157,
1600                         'CAT' => 163,
1601                         'CMPOP' => 164,
1602                         "?" => 158,
1603                         'DIV' => 159,
1604                         'MOD' => 165,
1605                         "/" => 166,
1606                         'AND' => 160,
1607                         'BINOP' => 161,
1608                         'OR' => 162
1609                 },
1610                 DEFAULT => -29
1611         },
1612         {#State 140
1613                 ACTIONS => {
1614                         "+" => 157,
1615                         'CAT' => 163,
1616                         'CMPOP' => 164,
1617                         "?" => 158,
1618                         'DIV' => 159,
1619                         'MOD' => 165,
1620                         "/" => 166,
1621                         'AND' => 160,
1622                         'BINOP' => 161,
1623                         'OR' => 162
1624                 },
1625                 DEFAULT => -28
1626         },
1627         {#State 141
1628                 ACTIONS => {
1629                         'NOT' => 38,
1630                         "{" => 30,
1631                         'LITERAL' => 78,
1632                         'IDENT' => 2,
1633                         "\"" => 60,
1634                         "(" => 53,
1635                         "\$" => 43,
1636                         "[" => 9,
1637                         'NUMBER' => 26,
1638                         'REF' => 27,
1639                         "\${" => 37
1640                 },
1641                 GOTOS => {
1642                         'expr' => 219,
1643                         'sterm' => 68,
1644                         'item' => 39,
1645                         'node' => 23,
1646                         'ident' => 77,
1647                         'term' => 58,
1648                         'lterm' => 56
1649                 }
1650         },
1651         {#State 142
1652                 ACTIONS => {
1653                         "{" => 30,
1654                         'LITERAL' => 78,
1655                         'IDENT' => 108,
1656                         "\"" => 60,
1657                         "\$" => 43,
1658                         "[" => 9,
1659                         'NUMBER' => 26,
1660                         'REF' => 27,
1661                         "\${" => 37
1662                 },
1663                 GOTOS => {
1664                         'sterm' => 68,
1665                         'item' => 39,
1666                         'loopvar' => 220,
1667                         'node' => 23,
1668                         'ident' => 77,
1669                         'term' => 109,
1670                         'lterm' => 56
1671                 }
1672         },
1673         {#State 143
1674                 ACTIONS => {
1675                         "\"" => 117,
1676                         "\$" => 114,
1677                         'LITERAL' => 116,
1678                         'FILENAME' => 83,
1679                         'IDENT' => 111,
1680                         'NUMBER' => 84,
1681                         "\${" => 37
1682                 },
1683                 GOTOS => {
1684                         'names' => 91,
1685                         'lvalue' => 112,
1686                         'item' => 113,
1687                         'name' => 82,
1688                         'filepart' => 87,
1689                         'filename' => 85,
1690                         'nameargs' => 118,
1691                         'lnameargs' => 221
1692                 }
1693         },
1694         {#State 144
1695                 ACTIONS => {
1696                         'NOT' => 38,
1697                         "{" => 30,
1698                         'LITERAL' => 78,
1699                         'IDENT' => 2,
1700                         "\"" => 60,
1701                         "(" => 53,
1702                         "\$" => 43,
1703                         "[" => 9,
1704                         'NUMBER' => 26,
1705                         'REF' => 27,
1706                         "\${" => 37
1707                 },
1708                 GOTOS => {
1709                         'expr' => 222,
1710                         'sterm' => 68,
1711                         'item' => 39,
1712                         'node' => 23,
1713                         'ident' => 77,
1714                         'term' => 58,
1715                         'lterm' => 56
1716                 }
1717         },
1718         {#State 145
1719                 ACTIONS => {
1720                         "\"" => 89,
1721                         "\$" => 86,
1722                         'LITERAL' => 88,
1723                         'FILENAME' => 83,
1724                         'IDENT' => 81,
1725                         'NUMBER' => 84
1726                 },
1727                 GOTOS => {
1728                         'filepart' => 87,
1729                         'names' => 91,
1730                         'nameargs' => 223,
1731                         'filename' => 85,
1732                         'name' => 82
1733                 }
1734         },
1735         {#State 146
1736                 ACTIONS => {
1737                         'NOT' => 38,
1738                         "{" => 30,
1739                         'LITERAL' => 78,
1740                         'IDENT' => 2,
1741                         "\"" => 60,
1742                         "(" => 53,
1743                         "\$" => 43,
1744                         "[" => 9,
1745                         'NUMBER' => 26,
1746                         'REF' => 27,
1747                         "\${" => 37
1748                 },
1749                 GOTOS => {
1750                         'expr' => 224,
1751                         'sterm' => 68,
1752                         'item' => 39,
1753                         'node' => 23,
1754                         'ident' => 77,
1755                         'term' => 58,
1756                         'lterm' => 56
1757                 }
1758         },
1759         {#State 147
1760                 DEFAULT => -41
1761         },
1762         {#State 148
1763                 DEFAULT => 0
1764         },
1765         {#State 149
1766                 ACTIONS => {
1767                         'DOT' => 104,
1768                         'ASSIGN' => 172
1769                 },
1770                 DEFAULT => -109
1771         },
1772         {#State 150
1773                 ACTIONS => {
1774                         ")" => 225
1775                 }
1776         },
1777         {#State 151
1778                 ACTIONS => {
1779                         'CMPOP' => 164,
1780                         "?" => 158,
1781                         "+" => 157,
1782                         'MOD' => 165,
1783                         'DIV' => 159,
1784                         "/" => 166,
1785                         'AND' => 160,
1786                         'CAT' => 163,
1787                         'BINOP' => 161,
1788                         ")" => 226,
1789                         'OR' => 162
1790                 }
1791         },
1792         {#State 152
1793                 ACTIONS => {
1794                         'CMPOP' => 164,
1795                         "?" => 158,
1796                         ";" => 227,
1797                         "+" => 157,
1798                         'MOD' => 165,
1799                         'DIV' => 159,
1800                         "/" => 166,
1801                         'AND' => 160,
1802                         'CAT' => 163,
1803                         'BINOP' => 161,
1804                         'OR' => 162
1805                 }
1806         },
1807         {#State 153
1808                 ACTIONS => {
1809                         ";" => 228
1810                 }
1811         },
1812         {#State 154
1813                 ACTIONS => {
1814                         'NOT' => 38,
1815                         "{" => 30,
1816                         'LITERAL' => 78,
1817                         'IDENT' => 2,
1818                         "\"" => 60,
1819                         "(" => 53,
1820                         "\$" => 43,
1821                         "[" => 9,
1822                         'NUMBER' => 26,
1823                         'REF' => 27,
1824                         "\${" => 37
1825                 },
1826                 GOTOS => {
1827                         'expr' => 229,
1828                         'sterm' => 68,
1829                         'item' => 39,
1830                         'node' => 23,
1831                         'ident' => 77,
1832                         'term' => 58,
1833                         'lterm' => 56
1834                 }
1835         },
1836         {#State 155
1837                 ACTIONS => {
1838                         "\"" => 234,
1839                         'TEXT' => 231,
1840                         ";" => 233,
1841                         "\$" => 43,
1842                         'IDENT' => 2,
1843                         "\${" => 37
1844                 },
1845                 GOTOS => {
1846                         'item' => 39,
1847                         'node' => 23,
1848                         'ident' => 230,
1849                         'quotable' => 232
1850                 }
1851         },
1852         {#State 156
1853                 DEFAULT => -34
1854         },
1855         {#State 157
1856                 ACTIONS => {
1857                         'NOT' => 38,
1858                         "{" => 30,
1859                         'LITERAL' => 78,
1860                         'IDENT' => 2,
1861                         "\"" => 60,
1862                         "(" => 53,
1863                         "\$" => 43,
1864                         "[" => 9,
1865                         'NUMBER' => 26,
1866                         'REF' => 27,
1867                         "\${" => 37
1868                 },
1869                 GOTOS => {
1870                         'expr' => 235,
1871                         'sterm' => 68,
1872                         'item' => 39,
1873                         'node' => 23,
1874                         'ident' => 77,
1875                         'term' => 58,
1876                         'lterm' => 56
1877                 }
1878         },
1879         {#State 158
1880                 ACTIONS => {
1881                         'NOT' => 38,
1882                         "{" => 30,
1883                         'LITERAL' => 78,
1884                         'IDENT' => 2,
1885                         "\"" => 60,
1886                         "(" => 53,
1887                         "\$" => 43,
1888                         "[" => 9,
1889                         'NUMBER' => 26,
1890                         'REF' => 27,
1891                         "\${" => 37
1892                 },
1893                 GOTOS => {
1894                         'expr' => 236,
1895                         'sterm' => 68,
1896                         'item' => 39,
1897                         'node' => 23,
1898                         'ident' => 77,
1899                         'term' => 58,
1900                         'lterm' => 56
1901                 }
1902         },
1903         {#State 159
1904                 ACTIONS => {
1905                         'NOT' => 38,
1906                         "{" => 30,
1907                         'LITERAL' => 78,
1908                         'IDENT' => 2,
1909                         "\"" => 60,
1910                         "(" => 53,
1911                         "\$" => 43,
1912                         "[" => 9,
1913                         'NUMBER' => 26,
1914                         'REF' => 27,
1915                         "\${" => 37
1916                 },
1917                 GOTOS => {
1918                         'expr' => 237,
1919                         'sterm' => 68,
1920                         'item' => 39,
1921                         'node' => 23,
1922                         'ident' => 77,
1923                         'term' => 58,
1924                         'lterm' => 56
1925                 }
1926         },
1927         {#State 160
1928                 ACTIONS => {
1929                         'NOT' => 38,
1930                         "{" => 30,
1931                         'LITERAL' => 78,
1932                         'IDENT' => 2,
1933                         "\"" => 60,
1934                         "(" => 53,
1935                         "\$" => 43,
1936                         "[" => 9,
1937                         'NUMBER' => 26,
1938                         'REF' => 27,
1939                         "\${" => 37
1940                 },
1941                 GOTOS => {
1942                         'expr' => 238,
1943                         'sterm' => 68,
1944                         'item' => 39,
1945                         'node' => 23,
1946                         'ident' => 77,
1947                         'term' => 58,
1948                         'lterm' => 56
1949                 }
1950         },
1951         {#State 161
1952                 ACTIONS => {
1953                         'NOT' => 38,
1954                         "{" => 30,
1955                         'LITERAL' => 78,
1956                         'IDENT' => 2,
1957                         "\"" => 60,
1958                         "(" => 53,
1959                         "\$" => 43,
1960                         "[" => 9,
1961                         'NUMBER' => 26,
1962                         'REF' => 27,
1963                         "\${" => 37
1964                 },
1965                 GOTOS => {
1966                         'expr' => 239,
1967                         'sterm' => 68,
1968                         'item' => 39,
1969                         'node' => 23,
1970                         'ident' => 77,
1971                         'term' => 58,
1972                         'lterm' => 56
1973                 }
1974         },
1975         {#State 162
1976                 ACTIONS => {
1977                         'NOT' => 38,
1978                         "{" => 30,
1979                         'LITERAL' => 78,
1980                         'IDENT' => 2,
1981                         "\"" => 60,
1982                         "(" => 53,
1983                         "\$" => 43,
1984                         "[" => 9,
1985                         'NUMBER' => 26,
1986                         'REF' => 27,
1987                         "\${" => 37
1988                 },
1989                 GOTOS => {
1990                         'expr' => 240,
1991                         'sterm' => 68,
1992                         'item' => 39,
1993                         'node' => 23,
1994                         'ident' => 77,
1995                         'term' => 58,
1996                         'lterm' => 56
1997                 }
1998         },
1999         {#State 163
2000                 ACTIONS => {
2001                         'NOT' => 38,
2002                         "{" => 30,
2003                         'LITERAL' => 78,
2004                         'IDENT' => 2,
2005                         "\"" => 60,
2006                         "(" => 53,
2007                         "\$" => 43,
2008                         "[" => 9,
2009                         'NUMBER' => 26,
2010                         'REF' => 27,
2011                         "\${" => 37
2012                 },
2013                 GOTOS => {
2014                         'expr' => 241,
2015                         'sterm' => 68,
2016                         'item' => 39,
2017                         'node' => 23,
2018                         'ident' => 77,
2019                         'term' => 58,
2020                         'lterm' => 56
2021                 }
2022         },
2023         {#State 164
2024                 ACTIONS => {
2025                         'NOT' => 38,
2026                         "{" => 30,
2027                         'LITERAL' => 78,
2028                         'IDENT' => 2,
2029                         "\"" => 60,
2030                         "(" => 53,
2031                         "\$" => 43,
2032                         "[" => 9,
2033                         'NUMBER' => 26,
2034                         'REF' => 27,
2035                         "\${" => 37
2036                 },
2037                 GOTOS => {
2038                         'expr' => 242,
2039                         'sterm' => 68,
2040                         'item' => 39,
2041                         'node' => 23,
2042                         'ident' => 77,
2043                         'term' => 58,
2044                         'lterm' => 56
2045                 }
2046         },
2047         {#State 165
2048                 ACTIONS => {
2049                         'NOT' => 38,
2050                         "{" => 30,
2051                         'LITERAL' => 78,
2052                         'IDENT' => 2,
2053                         "\"" => 60,
2054                         "(" => 53,
2055                         "\$" => 43,
2056                         "[" => 9,
2057                         'NUMBER' => 26,
2058                         'REF' => 27,
2059                         "\${" => 37
2060                 },
2061                 GOTOS => {
2062                         'expr' => 243,
2063                         'sterm' => 68,
2064                         'item' => 39,
2065                         'node' => 23,
2066                         'ident' => 77,
2067                         'term' => 58,
2068                         'lterm' => 56
2069                 }
2070         },
2071         {#State 166
2072                 ACTIONS => {
2073                         'NOT' => 38,
2074                         "{" => 30,
2075                         'LITERAL' => 78,
2076                         'IDENT' => 2,
2077                         "\"" => 60,
2078                         "(" => 53,
2079                         "\$" => 43,
2080                         "[" => 9,
2081                         'NUMBER' => 26,
2082                         'REF' => 27,
2083                         "\${" => 37
2084                 },
2085                 GOTOS => {
2086                         'expr' => 244,
2087                         'sterm' => 68,
2088                         'item' => 39,
2089                         'node' => 23,
2090                         'ident' => 77,
2091                         'term' => 58,
2092                         'lterm' => 56
2093                 }
2094         },
2095         {#State 167
2096                 DEFAULT => -32
2097         },
2098         {#State 168
2099                 ACTIONS => {
2100                         'CMPOP' => 164,
2101                         "?" => 158,
2102                         ";" => 245,
2103                         "+" => 157,
2104                         'MOD' => 165,
2105                         'DIV' => 159,
2106                         "/" => 166,
2107                         'AND' => 160,
2108                         'CAT' => 163,
2109                         'BINOP' => 161,
2110                         'OR' => 162
2111                 }
2112         },
2113         {#State 169
2114                 ACTIONS => {
2115                         'COMMA' => 171,
2116                         'LITERAL' => 75,
2117                         'IDENT' => 2,
2118                         "\$" => 43,
2119                         "\${" => 37
2120                 },
2121                 DEFAULT => -31,
2122                 GOTOS => {
2123                         'item' => 39,
2124                         'assign' => 170,
2125                         'node' => 23,
2126                         'ident' => 74
2127                 }
2128         },
2129         {#State 170
2130                 DEFAULT => -147
2131         },
2132         {#State 171
2133                 DEFAULT => -148
2134         },
2135         {#State 172
2136                 ACTIONS => {
2137                         'NOT' => 38,
2138                         "{" => 30,
2139                         'LITERAL' => 78,
2140                         'IDENT' => 2,
2141                         "\"" => 60,
2142                         "(" => 53,
2143                         "\$" => 43,
2144                         "[" => 9,
2145                         'NUMBER' => 26,
2146                         'REF' => 27,
2147                         "\${" => 37
2148                 },
2149                 GOTOS => {
2150                         'expr' => 246,
2151                         'sterm' => 68,
2152                         'item' => 39,
2153                         'node' => 23,
2154                         'ident' => 77,
2155                         'term' => 58,
2156                         'lterm' => 56
2157                 }
2158         },
2159         {#State 173
2160                 ACTIONS => {
2161                         'SET' => 1,
2162                         'PERL' => 40,
2163                         'NOT' => 38,
2164                         'IDENT' => 2,
2165                         'CLEAR' => 41,
2166                         'UNLESS' => 3,
2167                         'IF' => 44,
2168                         "\$" => 43,
2169                         'STOP' => 6,
2170                         'CALL' => 45,
2171                         'THROW' => 8,
2172                         'GET' => 47,
2173                         "[" => 9,
2174                         'TRY' => 10,
2175                         'LAST' => 49,
2176                         'DEBUG' => 51,
2177                         'RAWPERL' => 13,
2178                         'META' => 15,
2179                         'INCLUDE' => 17,
2180                         "(" => 53,
2181                         'SWITCH' => 54,
2182                         'MACRO' => 18,
2183                         'WRAPPER' => 55,
2184                         ";" => -18,
2185                         'FOR' => 21,
2186                         'LITERAL' => 57,
2187                         'NEXT' => 22,
2188                         "\"" => 60,
2189                         'TEXT' => 24,
2190                         'PROCESS' => 61,
2191                         'RETURN' => 64,
2192                         'FILTER' => 25,
2193                         'INSERT' => 65,
2194                         'NUMBER' => 26,
2195                         'REF' => 27,
2196                         'WHILE' => 67,
2197                         'BLOCK' => 28,
2198                         'DEFAULT' => 69,
2199                         "{" => 30,
2200                         'USE' => 32,
2201                         'VIEW' => 36,
2202                         "\${" => 37
2203                 },
2204                 DEFAULT => -3,
2205                 GOTOS => {
2206                         'item' => 39,
2207                         'node' => 23,
2208                         'rawperl' => 59,
2209                         'term' => 58,
2210                         'loop' => 4,
2211                         'use' => 63,
2212                         'expr' => 62,
2213                         'capture' => 42,
2214                         'statement' => 5,
2215                         'view' => 7,
2216                         'wrapper' => 46,
2217                         'atomexpr' => 48,
2218                         'chunk' => 11,
2219                         'defblock' => 66,
2220                         'atomdir' => 12,
2221                         'anonblock' => 50,
2222                         'sterm' => 68,
2223                         'defblockname' => 14,
2224                         'filter' => 29,
2225                         'ident' => 16,
2226                         'perl' => 31,
2227                         'setlist' => 70,
2228                         'chunks' => 33,
2229                         'try' => 35,
2230                         'switch' => 34,
2231                         'assign' => 19,
2232                         'block' => 247,
2233                         'directive' => 71,
2234                         'macro' => 20,
2235                         'condition' => 73,
2236                         'lterm' => 56
2237                 }
2238         },
2239         {#State 174
2240                 ACTIONS => {
2241                         'FILENAME' => 83,
2242                         'IDENT' => 81,
2243                         'NUMBER' => 84
2244                 },
2245                 GOTOS => {
2246                         'filepart' => 248
2247                 }
2248         },
2249         {#State 175
2250                 ACTIONS => {
2251                         'DOT' => 104
2252                 },
2253                 DEFAULT => -156,
2254                 GOTOS => {
2255                         'args' => 249
2256                 }
2257         },
2258         {#State 176
2259                 ACTIONS => {
2260                         "\"" => 250,
2261                         'TEXT' => 231,
2262                         ";" => 233,
2263                         "\$" => 43,
2264                         'IDENT' => 2,
2265                         "\${" => 37
2266                 },
2267                 GOTOS => {
2268                         'item' => 39,
2269                         'node' => 23,
2270                         'ident' => 230,
2271                         'quotable' => 232
2272                 }
2273         },
2274         {#State 177
2275                 ACTIONS => {
2276                         "\"" => 89,
2277                         'LITERAL' => 88,
2278                         'FILENAME' => 83,
2279                         'IDENT' => 81,
2280                         'NUMBER' => 84
2281                 },
2282                 GOTOS => {
2283                         'filepart' => 87,
2284                         'filename' => 85,
2285                         'name' => 251
2286                 }
2287         },
2288         {#State 178
2289                 DEFAULT => -156,
2290                 GOTOS => {
2291                         'args' => 252
2292                 }
2293         },
2294         {#State 179
2295                 ACTIONS => {
2296                         'NOT' => 38,
2297                         'LITERAL' => 256,
2298                         'IDENT' => 2,
2299                         "\"" => 60,
2300                         "\$" => 43,
2301                         "[" => 9,
2302                         'NUMBER' => 26,
2303                         'REF' => 27,
2304                         "{" => 30,
2305                         'COMMA' => 258,
2306                         "(" => 53,
2307                         "\${" => 37
2308                 },
2309                 DEFAULT => -163,
2310                 GOTOS => {
2311                         'expr' => 257,
2312                         'sterm' => 68,
2313                         'item' => 254,
2314                         'param' => 255,
2315                         'node' => 23,
2316                         'ident' => 253,
2317                         'term' => 58,
2318                         'lterm' => 56
2319                 }
2320         },
2321         {#State 180
2322                 DEFAULT => -105
2323         },
2324         {#State 181
2325                 DEFAULT => -114
2326         },
2327         {#State 182
2328                 DEFAULT => -115
2329         },
2330         {#State 183
2331                 DEFAULT => -106
2332         },
2333         {#State 184
2334                 ACTIONS => {
2335                         "\"" => 60,
2336                         "\$" => 43,
2337                         'LITERAL' => 78,
2338                         'IDENT' => 2,
2339                         'REF' => 27,
2340                         'NUMBER' => 26,
2341                         "\${" => 37
2342                 },
2343                 GOTOS => {
2344                         'sterm' => 259,
2345                         'item' => 39,
2346                         'node' => 23,
2347                         'ident' => 77
2348                 }
2349         },
2350         {#State 185
2351                 ACTIONS => {
2352                         'FINAL' => 260,
2353                         'CATCH' => 262
2354                 },
2355                 DEFAULT => -72,
2356                 GOTOS => {
2357                         'final' => 261
2358                 }
2359         },
2360         {#State 186
2361                 ACTIONS => {
2362                         'TEXT' => 263
2363                 }
2364         },
2365         {#State 187
2366                 ACTIONS => {
2367                         "\"" => 266,
2368                         'LITERAL' => 265,
2369                         'NUMBER' => 264
2370                 }
2371         },
2372         {#State 188
2373                 DEFAULT => -97
2374         },
2375         {#State 189
2376                 DEFAULT => -98
2377         },
2378         {#State 190
2379                 ACTIONS => {
2380                         'SET' => 1,
2381                         'PERL' => 40,
2382                         'NOT' => 38,
2383                         'IDENT' => 2,
2384                         'CLEAR' => 41,
2385                         'UNLESS' => 3,
2386                         'IF' => 44,
2387                         "\$" => 43,
2388                         'STOP' => 6,
2389                         'CALL' => 45,
2390                         'THROW' => 8,
2391                         'GET' => 47,
2392                         "[" => 9,
2393                         'TRY' => 10,
2394                         'LAST' => 49,
2395                         'DEBUG' => 51,
2396                         'RAWPERL' => 13,
2397                         'META' => 15,
2398                         'INCLUDE' => 17,
2399                         "(" => 53,
2400                         'SWITCH' => 54,
2401                         'MACRO' => 18,
2402                         'WRAPPER' => 55,
2403                         ";" => -18,
2404                         'FOR' => 21,
2405                         'LITERAL' => 57,
2406                         'NEXT' => 22,
2407                         "\"" => 60,
2408                         'TEXT' => 24,
2409                         'PROCESS' => 61,
2410                         'RETURN' => 64,
2411                         'FILTER' => 25,
2412                         'INSERT' => 65,
2413                         'NUMBER' => 26,
2414                         'REF' => 27,
2415                         'WHILE' => 67,
2416                         'BLOCK' => 28,
2417                         'DEFAULT' => 69,
2418                         "{" => 30,
2419                         'USE' => 32,
2420                         'VIEW' => 36,
2421                         "\${" => 37
2422                 },
2423                 DEFAULT => -3,
2424                 GOTOS => {
2425                         'item' => 39,
2426                         'loop' => 4,
2427                         'capture' => 42,
2428                         'statement' => 5,
2429                         'view' => 7,
2430                         'wrapper' => 46,
2431                         'atomexpr' => 48,
2432                         'chunk' => 11,
2433                         'atomdir' => 12,
2434                         'anonblock' => 50,
2435                         'template' => 267,
2436                         'defblockname' => 14,
2437                         'ident' => 16,
2438                         'assign' => 19,
2439                         'macro' => 20,
2440                         'lterm' => 56,
2441                         'node' => 23,
2442                         'term' => 58,
2443                         'rawperl' => 59,
2444                         'expr' => 62,
2445                         'use' => 63,
2446                         'defblock' => 66,
2447                         'filter' => 29,
2448                         'sterm' => 68,
2449                         'perl' => 31,
2450                         'chunks' => 33,
2451                         'setlist' => 70,
2452                         'switch' => 34,
2453                         'try' => 35,
2454                         'directive' => 71,
2455                         'block' => 72,
2456                         'condition' => 73
2457                 }
2458         },
2459         {#State 191
2460                 DEFAULT => -125
2461         },
2462         {#State 192
2463                 DEFAULT => -126
2464         },
2465         {#State 193
2466                 ACTIONS => {
2467                         ";" => 268
2468                 }
2469         },
2470         {#State 194
2471                 DEFAULT => -89
2472         },
2473         {#State 195
2474                 ACTIONS => {
2475                         ";" => -150,
2476                         "+" => 157,
2477                         'LITERAL' => -150,
2478                         'IDENT' => -150,
2479                         'CAT' => 163,
2480                         "\$" => -150,
2481                         'CMPOP' => 164,
2482                         "?" => 158,
2483                         'DIV' => 159,
2484                         'MOD' => 165,
2485                         'COMMA' => -150,
2486                         "/" => 166,
2487                         'AND' => 160,
2488                         'BINOP' => 161,
2489                         'OR' => 162,
2490                         "\${" => -150
2491                 },
2492                 DEFAULT => -26
2493         },
2494         {#State 196
2495                 DEFAULT => -92
2496         },
2497         {#State 197
2498                 DEFAULT => -91
2499         },
2500         {#State 198
2501                 ACTIONS => {
2502                         'NOT' => 38,
2503                         "{" => 30,
2504                         'LITERAL' => 57,
2505                         'IDENT' => 269,
2506                         "\"" => 60,
2507                         "(" => 53,
2508                         "\$" => 43,
2509                         "[" => 9,
2510                         'NUMBER' => 26,
2511                         'REF' => 27,
2512                         "\${" => 37
2513                 },
2514                 GOTOS => {
2515                         'expr' => 151,
2516                         'sterm' => 68,
2517                         'item' => 39,
2518                         'assign' => 150,
2519                         'margs' => 270,
2520                         'node' => 23,
2521                         'ident' => 149,
2522                         'term' => 58,
2523                         'lterm' => 56
2524                 }
2525         },
2526         {#State 199
2527                 ACTIONS => {
2528                         "+" => 157,
2529                         'CAT' => 163,
2530                         'CMPOP' => 164,
2531                         "?" => 158,
2532                         'DIV' => 159,
2533                         'MOD' => 165,
2534                         "/" => 166,
2535                         'AND' => 160,
2536                         'BINOP' => 161,
2537                         'OR' => 162
2538                 },
2539                 DEFAULT => -26
2540         },
2541         {#State 200
2542                 ACTIONS => {
2543                         "{" => 30,
2544                         'LITERAL' => 78,
2545                         'IDENT' => 2,
2546                         "\"" => 60,
2547                         "\$" => 43,
2548                         "[" => 9,
2549                         'NUMBER' => 26,
2550                         'REF' => 27,
2551                         "\${" => 37
2552                 },
2553                 GOTOS => {
2554                         'sterm' => 68,
2555                         'item' => 39,
2556                         'node' => 23,
2557                         'ident' => 77,
2558                         'term' => 271,
2559                         'lterm' => 56
2560                 }
2561         },
2562         {#State 201
2563                 ACTIONS => {
2564                         "{" => 30,
2565                         'LITERAL' => 78,
2566                         'IDENT' => 2,
2567                         "\"" => 60,
2568                         "\$" => 43,
2569                         "[" => 9,
2570                         'NUMBER' => 26,
2571                         'REF' => 27,
2572                         "\${" => 37
2573                 },
2574                 GOTOS => {
2575                         'sterm' => 68,
2576                         'item' => 39,
2577                         'node' => 23,
2578                         'ident' => 77,
2579                         'term' => 272,
2580                         'lterm' => 56
2581                 }
2582         },
2583         {#State 202
2584                 ACTIONS => {
2585                         'NOT' => 38,
2586                         "{" => 30,
2587                         'COMMA' => 258,
2588                         'LITERAL' => 256,
2589                         'IDENT' => 2,
2590                         "\"" => 60,
2591                         "(" => 53,
2592                         "\$" => 43,
2593                         "[" => 9,
2594                         'NUMBER' => 26,
2595                         'REF' => 27,
2596                         "\${" => 37
2597                 },
2598                 DEFAULT => -64,
2599                 GOTOS => {
2600                         'expr' => 257,
2601                         'sterm' => 68,
2602                         'item' => 254,
2603                         'param' => 255,
2604                         'node' => 23,
2605                         'ident' => 253,
2606                         'term' => 58,
2607                         'lterm' => 56
2608                 }
2609         },
2610         {#State 203
2611                 DEFAULT => -56,
2612                 GOTOS => {
2613                         '@1-3' => 273
2614                 }
2615         },
2616         {#State 204
2617                 ACTIONS => {
2618                         "\"" => 89,
2619                         "\$" => 86,
2620                         'LITERAL' => 88,
2621                         'FILENAME' => 83,
2622                         'IDENT' => 81,
2623                         'NUMBER' => 84
2624                 },
2625                 GOTOS => {
2626                         'filepart' => 87,
2627                         'names' => 91,
2628                         'nameargs' => 274,
2629                         'filename' => 85,
2630                         'name' => 82
2631                 }
2632         },
2633         {#State 205
2634                 ACTIONS => {
2635                         'ASSIGN' => -132
2636                 },
2637                 DEFAULT => -130
2638         },
2639         {#State 206
2640                 ACTIONS => {
2641                         'SET' => 1,
2642                         'PERL' => 40,
2643                         'NOT' => 38,
2644                         'IDENT' => 2,
2645                         'CLEAR' => 41,
2646                         'UNLESS' => 3,
2647                         'IF' => 44,
2648                         "\$" => 43,
2649                         'STOP' => 6,
2650                         'CALL' => 45,
2651                         'THROW' => 8,
2652                         'GET' => 47,
2653                         "[" => 9,
2654                         'TRY' => 10,
2655                         'LAST' => 49,
2656                         'DEBUG' => 51,
2657                         'RAWPERL' => 13,
2658                         'META' => 15,
2659                         'INCLUDE' => 17,
2660                         "(" => 53,
2661                         'SWITCH' => 54,
2662                         'MACRO' => 18,
2663                         'WRAPPER' => 55,
2664                         ";" => -18,
2665                         'FOR' => 21,
2666                         'LITERAL' => 57,
2667                         'NEXT' => 22,
2668                         "\"" => 60,
2669                         'TEXT' => 24,
2670                         'PROCESS' => 61,
2671                         'RETURN' => 64,
2672                         'FILTER' => 25,
2673                         'INSERT' => 65,
2674                         'NUMBER' => 26,
2675                         'REF' => 27,
2676                         'WHILE' => 67,
2677                         'BLOCK' => 28,
2678                         'DEFAULT' => 69,
2679                         "{" => 30,
2680                         'USE' => 32,
2681                         'VIEW' => 36,
2682                         "\${" => 37
2683                 },
2684                 DEFAULT => -3,
2685                 GOTOS => {
2686                         'item' => 39,
2687                         'node' => 23,
2688                         'rawperl' => 59,
2689                         'term' => 58,
2690                         'loop' => 4,
2691                         'use' => 63,
2692                         'expr' => 62,
2693                         'capture' => 42,
2694                         'statement' => 5,
2695                         'view' => 7,
2696                         'wrapper' => 46,
2697                         'atomexpr' => 48,
2698                         'chunk' => 11,
2699                         'defblock' => 66,
2700                         'atomdir' => 12,
2701                         'anonblock' => 50,
2702                         'sterm' => 68,
2703                         'defblockname' => 14,
2704                         'filter' => 29,
2705                         'ident' => 16,
2706                         'perl' => 31,
2707                         'setlist' => 70,
2708                         'chunks' => 33,
2709                         'try' => 35,
2710                         'switch' => 34,
2711                         'assign' => 19,
2712                         'block' => 275,
2713                         'directive' => 71,
2714                         'macro' => 20,
2715                         'condition' => 73,
2716                         'lterm' => 56
2717                 }
2718         },
2719         {#State 207
2720                 ACTIONS => {
2721                         "\"" => 276,
2722                         'TEXT' => 231,
2723                         ";" => 233,
2724                         "\$" => 43,
2725                         'IDENT' => 2,
2726                         "\${" => 37
2727                 },
2728                 GOTOS => {
2729                         'item' => 39,
2730                         'node' => 23,
2731                         'ident' => 230,
2732                         'quotable' => 232
2733                 }
2734         },
2735         {#State 208
2736                 ACTIONS => {
2737                         'SET' => 1,
2738                         'PERL' => 40,
2739                         'NOT' => 38,
2740                         'IDENT' => 2,
2741                         'CLEAR' => 41,
2742                         'UNLESS' => 3,
2743                         'IF' => 44,
2744                         "\$" => 43,
2745                         'STOP' => 6,
2746                         'CALL' => 45,
2747                         'THROW' => 8,
2748                         'GET' => 47,
2749                         "[" => 9,
2750                         'TRY' => 10,
2751                         'LAST' => 49,
2752                         'DEBUG' => 51,
2753                         'RAWPERL' => 13,
2754                         'META' => 15,
2755                         'INCLUDE' => 17,
2756                         "(" => 53,
2757                         'SWITCH' => 54,
2758                         'MACRO' => 18,
2759                         'WRAPPER' => 55,
2760                         ";" => -18,
2761                         'FOR' => 21,
2762                         'LITERAL' => 57,
2763                         'NEXT' => 22,
2764                         "\"" => 60,
2765                         'TEXT' => 24,
2766                         'PROCESS' => 61,
2767                         'RETURN' => 64,
2768                         'FILTER' => 25,
2769                         'INSERT' => 65,
2770                         'NUMBER' => 26,
2771                         'REF' => 27,
2772                         'WHILE' => 67,
2773                         'BLOCK' => 28,
2774                         'DEFAULT' => 69,
2775                         "{" => 30,
2776                         'USE' => 32,
2777                         'VIEW' => 36,
2778                         "\${" => 37
2779                 },
2780                 DEFAULT => -3,
2781                 GOTOS => {
2782                         'item' => 39,
2783                         'node' => 23,
2784                         'rawperl' => 59,
2785                         'term' => 58,
2786                         'loop' => 4,
2787                         'use' => 63,
2788                         'expr' => 62,
2789                         'capture' => 42,
2790                         'statement' => 5,
2791                         'view' => 7,
2792                         'wrapper' => 46,
2793                         'atomexpr' => 48,
2794                         'chunk' => 11,
2795                         'defblock' => 66,
2796                         'atomdir' => 12,
2797                         'anonblock' => 50,
2798                         'sterm' => 68,
2799                         'defblockname' => 14,
2800                         'filter' => 29,
2801                         'ident' => 16,
2802                         'perl' => 31,
2803                         'setlist' => 70,
2804                         'chunks' => 33,
2805                         'try' => 35,
2806                         'switch' => 34,
2807                         'assign' => 19,
2808                         'block' => 277,
2809                         'directive' => 71,
2810                         'macro' => 20,
2811                         'condition' => 73,
2812                         'lterm' => 56
2813                 }
2814         },
2815         {#State 209
2816                 DEFAULT => -108
2817         },
2818         {#State 210
2819                 ACTIONS => {
2820                         'NOT' => 38,
2821                         "{" => 30,
2822                         'LITERAL' => 78,
2823                         'IDENT' => 2,
2824                         "\"" => 60,
2825                         "(" => 53,
2826                         "\$" => 43,
2827                         "[" => 9,
2828                         'NUMBER' => 26,
2829                         'REF' => 27,
2830                         "\${" => 37
2831                 },
2832                 GOTOS => {
2833                         'expr' => 278,
2834                         'sterm' => 68,
2835                         'item' => 39,
2836                         'node' => 23,
2837                         'ident' => 77,
2838                         'term' => 58,
2839                         'lterm' => 56
2840                 }
2841         },
2842         {#State 211
2843                 DEFAULT => -120
2844         },
2845         {#State 212
2846                 DEFAULT => -121
2847         },
2848         {#State 213
2849                 ACTIONS => {
2850                         'NOT' => 38,
2851                         "{" => 30,
2852                         'LITERAL' => 78,
2853                         'IDENT' => 2,
2854                         "\"" => 60,
2855                         "(" => 53,
2856                         "\$" => 43,
2857                         "[" => 9,
2858                         'NUMBER' => 26,
2859                         'REF' => 27,
2860                         "\${" => 37
2861                 },
2862                 GOTOS => {
2863                         'expr' => 279,
2864                         'sterm' => 68,
2865                         'item' => 39,
2866                         'node' => 23,
2867                         'ident' => 77,
2868                         'term' => 58,
2869                         'lterm' => 56
2870                 }
2871         },
2872         {#State 214
2873                 DEFAULT => -74,
2874                 GOTOS => {
2875                         '@3-3' => 280
2876                 }
2877         },
2878         {#State 215
2879                 DEFAULT => -131
2880         },
2881         {#State 216
2882                 ACTIONS => {
2883                         'NOT' => 38,
2884                         "{" => 30,
2885                         'COMMA' => 258,
2886                         'LITERAL' => 256,
2887                         'IDENT' => 2,
2888                         "\"" => 60,
2889                         "(" => 53,
2890                         "\$" => 43,
2891                         "[" => 9,
2892                         'NUMBER' => 26,
2893                         'REF' => 27,
2894                         ")" => 281,
2895                         "\${" => 37
2896                 },
2897                 GOTOS => {
2898                         'expr' => 257,
2899                         'sterm' => 68,
2900                         'item' => 254,
2901                         'param' => 255,
2902                         'node' => 23,
2903                         'ident' => 253,
2904                         'term' => 58,
2905                         'lterm' => 56
2906                 }
2907         },
2908         {#State 217
2909                 ACTIONS => {
2910                         'SET' => 1,
2911                         'PERL' => 40,
2912                         'NOT' => 38,
2913                         'IDENT' => 2,
2914                         'CLEAR' => 41,
2915                         'UNLESS' => 3,
2916                         'IF' => 44,
2917                         "\$" => 43,
2918                         'STOP' => 6,
2919                         'CALL' => 45,
2920                         'THROW' => 8,
2921                         'GET' => 47,
2922                         "[" => 9,
2923                         'TRY' => 10,
2924                         'LAST' => 49,
2925                         'DEBUG' => 51,
2926                         'RAWPERL' => 13,
2927                         'META' => 15,
2928                         'INCLUDE' => 17,
2929                         "(" => 53,
2930                         'SWITCH' => 54,
2931                         'MACRO' => 18,
2932                         'WRAPPER' => 55,
2933                         ";" => -18,
2934                         'FOR' => 21,
2935                         'LITERAL' => 57,
2936                         'NEXT' => 22,
2937                         "\"" => 60,
2938                         'TEXT' => 24,
2939                         'PROCESS' => 61,
2940                         'RETURN' => 64,
2941                         'FILTER' => 25,
2942                         'INSERT' => 65,
2943                         'NUMBER' => 26,
2944                         'REF' => 27,
2945                         'WHILE' => 67,
2946                         'BLOCK' => 28,
2947                         'DEFAULT' => 69,
2948                         "{" => 30,
2949                         'USE' => 32,
2950                         'VIEW' => 36,
2951                         "\${" => 37
2952                 },
2953                 DEFAULT => -3,
2954                 GOTOS => {
2955                         'item' => 39,
2956                         'node' => 23,
2957                         'rawperl' => 59,
2958                         'term' => 58,
2959                         'loop' => 4,
2960                         'use' => 63,
2961                         'expr' => 62,
2962                         'capture' => 42,
2963                         'statement' => 5,
2964                         'view' => 7,
2965                         'wrapper' => 46,
2966                         'atomexpr' => 48,
2967                         'chunk' => 11,
2968                         'defblock' => 66,
2969                         'atomdir' => 12,
2970                         'anonblock' => 50,
2971                         'sterm' => 68,
2972                         'defblockname' => 14,
2973                         'filter' => 29,
2974                         'ident' => 16,
2975                         'perl' => 31,
2976                         'setlist' => 70,
2977                         'chunks' => 33,
2978                         'try' => 35,
2979                         'switch' => 34,
2980                         'assign' => 19,
2981                         'block' => 282,
2982                         'directive' => 71,
2983                         'macro' => 20,
2984                         'condition' => 73,
2985                         'lterm' => 56
2986                 }
2987         },
2988         {#State 218
2989                 ACTIONS => {
2990                         'SET' => 1,
2991                         'PERL' => 40,
2992                         'NOT' => 38,
2993                         'IDENT' => 2,
2994                         'CLEAR' => 41,
2995                         'UNLESS' => 3,
2996                         'IF' => 44,
2997                         "\$" => 43,
2998                         'STOP' => 6,
2999                         'CALL' => 45,
3000                         'THROW' => 8,
3001                         'GET' => 47,
3002                         "[" => 9,
3003                         'TRY' => 10,
3004                         'LAST' => 49,
3005                         'DEBUG' => 51,
3006                         'RAWPERL' => 13,
3007                         'META' => 15,
3008                         'INCLUDE' => 17,
3009                         "(" => 53,
3010                         'SWITCH' => 54,
3011                         'MACRO' => 18,
3012                         'WRAPPER' => 55,
3013                         ";" => -18,
3014                         'FOR' => 21,
3015                         'LITERAL' => 57,
3016                         'NEXT' => 22,
3017                         "\"" => 60,
3018                         'TEXT' => 24,
3019                         'PROCESS' => 61,
3020                         'RETURN' => 64,
3021                         'FILTER' => 25,
3022                         'INSERT' => 65,
3023                         'NUMBER' => 26,
3024                         'REF' => 27,
3025                         'WHILE' => 67,
3026                         'BLOCK' => 28,
3027                         'DEFAULT' => 69,
3028                         "{" => 30,
3029                         'USE' => 32,
3030                         'VIEW' => 36,
3031                         "\${" => 37
3032                 },
3033                 DEFAULT => -3,
3034                 GOTOS => {
3035                         'item' => 39,
3036                         'node' => 23,
3037                         'rawperl' => 59,
3038                         'term' => 58,
3039                         'loop' => 4,
3040                         'use' => 63,
3041                         'expr' => 62,
3042                         'capture' => 42,
3043                         'statement' => 5,
3044                         'view' => 7,
3045                         'wrapper' => 46,
3046                         'atomexpr' => 48,
3047                         'chunk' => 11,
3048                         'defblock' => 66,
3049                         'atomdir' => 12,
3050                         'anonblock' => 50,
3051                         'sterm' => 68,
3052                         'defblockname' => 14,
3053                         'filter' => 29,
3054                         'ident' => 16,
3055                         'perl' => 31,
3056                         'setlist' => 70,
3057                         'chunks' => 33,
3058                         'try' => 35,
3059                         'switch' => 34,
3060                         'assign' => 19,
3061                         'block' => 283,
3062                         'directive' => 71,
3063                         'macro' => 20,
3064                         'condition' => 73,
3065                         'lterm' => 56
3066                 }
3067         },
3068         {#State 219
3069                 ACTIONS => {
3070                         'CMPOP' => 164,
3071                         "?" => 158,
3072                         "+" => 157,
3073                         'MOD' => 165,
3074                         'DIV' => 159,
3075                         "/" => 166,
3076                         'AND' => 160,
3077                         'CAT' => 163,
3078                         'BINOP' => 161,
3079                         'OR' => 162
3080                 },
3081                 DEFAULT => -47
3082         },
3083         {#State 220
3084                 DEFAULT => -58
3085         },
3086         {#State 221
3087                 DEFAULT => -81
3088         },
3089         {#State 222
3090                 ACTIONS => {
3091                         'CMPOP' => 164,
3092                         "?" => 158,
3093                         "+" => 157,
3094                         'MOD' => 165,
3095                         'DIV' => 159,
3096                         "/" => 166,
3097                         'AND' => 160,
3098                         'CAT' => 163,
3099                         'BINOP' => 161,
3100                         'OR' => 162
3101                 },
3102                 DEFAULT => -45
3103         },
3104         {#State 223
3105                 DEFAULT => -66
3106         },
3107         {#State 224
3108                 ACTIONS => {
3109                         'CMPOP' => 164,
3110                         "?" => 158,
3111                         "+" => 157,
3112                         'MOD' => 165,
3113                         'DIV' => 159,
3114                         "/" => 166,
3115                         'AND' => 160,
3116                         'CAT' => 163,
3117                         'BINOP' => 161,
3118                         'OR' => 162
3119                 },
3120                 DEFAULT => -61
3121         },
3122         {#State 225
3123                 DEFAULT => -144
3124         },
3125         {#State 226
3126                 DEFAULT => -145
3127         },
3128         {#State 227
3129                 ACTIONS => {
3130                         'SET' => 1,
3131                         'PERL' => 40,
3132                         'NOT' => 38,
3133                         'IDENT' => 2,
3134                         'CLEAR' => 41,
3135                         'UNLESS' => 3,
3136                         'IF' => 44,
3137                         "\$" => 43,
3138                         'STOP' => 6,
3139                         'CALL' => 45,
3140                         'THROW' => 8,
3141                         'GET' => 47,
3142                         "[" => 9,
3143                         'TRY' => 10,
3144                         'LAST' => 49,
3145                         'DEBUG' => 51,
3146                         'RAWPERL' => 13,
3147                         'META' => 15,
3148                         'INCLUDE' => 17,
3149                         "(" => 53,
3150                         'SWITCH' => 54,
3151                         'MACRO' => 18,
3152                         'WRAPPER' => 55,
3153                         ";" => -18,
3154                         'FOR' => 21,
3155                         'LITERAL' => 57,
3156                         'NEXT' => 22,
3157                         "\"" => 60,
3158                         'TEXT' => 24,
3159                         'PROCESS' => 61,
3160                         'RETURN' => 64,
3161                         'FILTER' => 25,
3162                         'INSERT' => 65,
3163                         'NUMBER' => 26,
3164                         'REF' => 27,
3165                         'WHILE' => 67,
3166                         'BLOCK' => 28,
3167                         'DEFAULT' => 69,
3168                         "{" => 30,
3169                         'USE' => 32,
3170                         'VIEW' => 36,
3171                         "\${" => 37
3172                 },
3173                 DEFAULT => -3,
3174                 GOTOS => {
3175                         'item' => 39,
3176                         'node' => 23,
3177                         'rawperl' => 59,
3178                         'term' => 58,
3179                         'loop' => 4,
3180                         'use' => 63,
3181                         'expr' => 62,
3182                         'capture' => 42,
3183                         'statement' => 5,
3184                         'view' => 7,
3185                         'wrapper' => 46,
3186                         'atomexpr' => 48,
3187                         'chunk' => 11,
3188                         'defblock' => 66,
3189                         'atomdir' => 12,
3190                         'anonblock' => 50,
3191                         'sterm' => 68,
3192                         'defblockname' => 14,
3193                         'filter' => 29,
3194                         'ident' => 16,
3195                         'perl' => 31,
3196                         'setlist' => 70,
3197                         'chunks' => 33,
3198                         'try' => 35,
3199                         'switch' => 34,
3200                         'assign' => 19,
3201                         'block' => 284,
3202                         'directive' => 71,
3203                         'macro' => 20,
3204                         'condition' => 73,
3205                         'lterm' => 56
3206                 }
3207         },
3208         {#State 228
3209                 ACTIONS => {
3210                         'SET' => 1,
3211                         'PERL' => 40,
3212                         'NOT' => 38,
3213                         'IDENT' => 2,
3214                         'CLEAR' => 41,
3215                         'UNLESS' => 3,
3216                         'IF' => 44,
3217                         "\$" => 43,
3218                         'STOP' => 6,
3219                         'CALL' => 45,
3220                         'THROW' => 8,
3221                         'GET' => 47,
3222                         "[" => 9,
3223                         'TRY' => 10,
3224                         'LAST' => 49,
3225                         'DEBUG' => 51,
3226                         'RAWPERL' => 13,
3227                         'META' => 15,
3228                         'INCLUDE' => 17,
3229                         "(" => 53,
3230                         'SWITCH' => 54,
3231                         'MACRO' => 18,
3232                         'WRAPPER' => 55,
3233                         ";" => -18,
3234                         'FOR' => 21,
3235                         'LITERAL' => 57,
3236                         'NEXT' => 22,
3237                         "\"" => 60,
3238                         'TEXT' => 24,
3239                         'PROCESS' => 61,
3240                         'RETURN' => 64,
3241                         'FILTER' => 25,
3242                         'INSERT' => 65,
3243                         'NUMBER' => 26,
3244                         'REF' => 27,
3245                         'WHILE' => 67,
3246                         'BLOCK' => 28,
3247                         'DEFAULT' => 69,
3248                         "{" => 30,
3249                         'USE' => 32,
3250                         'VIEW' => 36,
3251                         "\${" => 37
3252                 },
3253                 DEFAULT => -3,
3254                 GOTOS => {
3255                         'item' => 39,
3256                         'node' => 23,
3257                         'rawperl' => 59,
3258                         'term' => 58,
3259                         'loop' => 4,
3260                         'use' => 63,
3261                         'expr' => 62,
3262                         'capture' => 42,
3263                         'statement' => 5,
3264                         'view' => 7,
3265                         'wrapper' => 46,
3266                         'atomexpr' => 48,
3267                         'chunk' => 11,
3268                         'defblock' => 66,
3269                         'atomdir' => 12,
3270                         'anonblock' => 50,
3271                         'sterm' => 68,
3272                         'defblockname' => 14,
3273                         'filter' => 29,
3274                         'ident' => 16,
3275                         'perl' => 31,
3276                         'setlist' => 70,
3277                         'chunks' => 33,
3278                         'try' => 35,
3279                         'switch' => 34,
3280                         'assign' => 19,
3281                         'block' => 285,
3282                         'directive' => 71,
3283                         'macro' => 20,
3284                         'condition' => 73,
3285                         'lterm' => 56
3286                 }
3287         },
3288         {#State 229
3289                 ACTIONS => {
3290                         "+" => 157,
3291                         'CAT' => 163,
3292                         'CMPOP' => 164,
3293                         "?" => 158,
3294                         'DIV' => 159,
3295                         'MOD' => 165,
3296                         "/" => 166,
3297                         'AND' => 160,
3298                         'BINOP' => 161,
3299                         'OR' => 162
3300                 },
3301                 DEFAULT => -151
3302         },
3303         {#State 230
3304                 ACTIONS => {
3305                         'DOT' => 104
3306                 },
3307                 DEFAULT => -177
3308         },
3309         {#State 231
3310                 DEFAULT => -178
3311         },
3312         {#State 232
3313                 DEFAULT => -175
3314         },
3315         {#State 233
3316                 DEFAULT => -179
3317         },
3318         {#State 234
3319                 DEFAULT => -111
3320         },
3321         {#State 235
3322                 ACTIONS => {
3323                         'DIV' => 159,
3324                         'MOD' => 165,
3325                         "/" => 166
3326                 },
3327                 DEFAULT => -135
3328         },
3329         {#State 236
3330                 ACTIONS => {
3331                         ":" => 286,
3332                         'CMPOP' => 164,
3333                         "?" => 158,
3334                         "+" => 157,
3335                         'MOD' => 165,
3336                         'DIV' => 159,
3337                         "/" => 166,
3338                         'AND' => 160,
3339                         'CAT' => 163,
3340                         'BINOP' => 161,
3341                         'OR' => 162
3342                 }
3343         },
3344         {#State 237
3345                 ACTIONS => {
3346                         'MOD' => 165
3347                 },
3348                 DEFAULT => -136
3349         },
3350         {#State 238
3351                 ACTIONS => {
3352                         'DIV' => 159,
3353                         'BINOP' => 161,
3354                         "+" => 157,
3355                         'CAT' => 163,
3356                         'CMPOP' => 164,
3357                         'MOD' => 165,
3358                         "/" => 166
3359                 },
3360                 DEFAULT => -140
3361         },
3362         {#State 239
3363                 ACTIONS => {
3364                         'DIV' => 159,
3365                         "+" => 157,
3366                         'MOD' => 165,
3367                         "/" => 166
3368                 },
3369                 DEFAULT => -133
3370         },
3371         {#State 240
3372                 ACTIONS => {
3373                         'DIV' => 159,
3374                         'BINOP' => 161,
3375                         "+" => 157,
3376                         'CAT' => 163,
3377                         'CMPOP' => 164,
3378                         'MOD' => 165,
3379                         "/" => 166
3380                 },
3381                 DEFAULT => -141
3382         },
3383         {#State 241
3384                 ACTIONS => {
3385                         'DIV' => 159,
3386                         'BINOP' => 161,
3387                         "+" => 157,
3388                         'CMPOP' => 164,
3389                         'MOD' => 165,
3390                         "/" => 166
3391                 },
3392                 DEFAULT => -139
3393         },
3394         {#State 242
3395                 ACTIONS => {
3396                         'DIV' => 159,
3397                         'BINOP' => 161,
3398                         "+" => 157,
3399                         'MOD' => 165,
3400                         "/" => 166
3401                 },
3402                 DEFAULT => -138
3403         },
3404         {#State 243
3405                 DEFAULT => -137
3406         },
3407         {#State 244
3408                 ACTIONS => {
3409                         'DIV' => 159,
3410                         'MOD' => 165
3411                 },
3412                 DEFAULT => -134
3413         },
3414         {#State 245
3415                 DEFAULT => -59,
3416                 GOTOS => {
3417                         '@2-3' => 287
3418                 }
3419         },
3420         {#State 246
3421                 ACTIONS => {
3422                         "+" => 157,
3423                         'CAT' => 163,
3424                         'CMPOP' => 164,
3425                         "?" => 158,
3426                         'DIV' => 159,
3427                         'MOD' => 165,
3428                         "/" => 166,
3429                         'AND' => 160,
3430                         'BINOP' => 161,
3431                         'OR' => 162
3432                 },
3433                 DEFAULT => -150
3434         },
3435         {#State 247
3436                 ACTIONS => {
3437                         'ELSIF' => 290,
3438                         'ELSE' => 288
3439                 },
3440                 DEFAULT => -50,
3441                 GOTOS => {
3442                         'else' => 289
3443                 }
3444         },
3445         {#State 248
3446                 DEFAULT => -170
3447         },
3448         {#State 249
3449                 ACTIONS => {
3450                         'NOT' => 38,
3451                         'LITERAL' => 256,
3452                         'IDENT' => 2,
3453                         "\"" => 60,
3454                         "\$" => 43,
3455                         "[" => 9,
3456                         'NUMBER' => 26,
3457                         'REF' => 27,
3458                         "{" => 30,
3459                         'COMMA' => 258,
3460                         "(" => 53,
3461                         "\${" => 37
3462                 },
3463                 DEFAULT => -162,
3464                 GOTOS => {
3465                         'expr' => 257,
3466                         'sterm' => 68,
3467                         'item' => 254,
3468                         'param' => 255,
3469                         'node' => 23,
3470                         'ident' => 253,
3471                         'term' => 58,
3472                         'lterm' => 56
3473                 }
3474         },
3475         {#State 250
3476                 DEFAULT => -167
3477         },
3478         {#State 251
3479                 DEFAULT => -165
3480         },
3481         {#State 252
3482                 ACTIONS => {
3483                         'NOT' => 38,
3484                         "{" => 30,
3485                         'COMMA' => 258,
3486                         'LITERAL' => 256,
3487                         'IDENT' => 2,
3488                         "\"" => 60,
3489                         "(" => 53,
3490                         "\$" => 43,
3491                         "[" => 9,
3492                         'NUMBER' => 26,
3493                         'REF' => 27,
3494                         ")" => 291,
3495                         "\${" => 37
3496                 },
3497                 GOTOS => {
3498                         'expr' => 257,
3499                         'sterm' => 68,
3500                         'item' => 254,
3501                         'param' => 255,
3502                         'node' => 23,
3503                         'ident' => 253,
3504                         'term' => 58,
3505                         'lterm' => 56
3506                 }
3507         },
3508         {#State 253
3509                 ACTIONS => {
3510                         'DOT' => 104,
3511                         'ASSIGN' => 292
3512                 },
3513                 DEFAULT => -109
3514         },
3515         {#State 254
3516                 ACTIONS => {
3517                         "(" => 135,
3518                         'ASSIGN' => 210
3519                 },
3520                 DEFAULT => -128
3521         },
3522         {#State 255
3523                 DEFAULT => -153
3524         },
3525         {#State 256
3526                 ACTIONS => {
3527                         'ASSIGN' => 213
3528                 },
3529                 DEFAULT => -112
3530         },
3531         {#State 257
3532                 ACTIONS => {
3533                         "+" => 157,
3534                         'CAT' => 163,
3535                         'CMPOP' => 164,
3536                         "?" => 158,
3537                         'DIV' => 159,
3538                         'MOD' => 165,
3539                         "/" => 166,
3540                         'AND' => 160,
3541                         'BINOP' => 161,
3542                         'OR' => 162
3543                 },
3544                 DEFAULT => -152
3545         },
3546         {#State 258
3547                 DEFAULT => -155
3548         },
3549         {#State 259
3550                 DEFAULT => -117
3551         },
3552         {#State 260
3553                 ACTIONS => {
3554                         ";" => 293
3555                 }
3556         },
3557         {#State 261
3558                 ACTIONS => {
3559                         'END' => 294
3560                 }
3561         },
3562         {#State 262
3563                 ACTIONS => {
3564                         ";" => 296,
3565                         'DEFAULT' => 297,
3566                         'FILENAME' => 83,
3567                         'IDENT' => 81,
3568                         'NUMBER' => 84
3569                 },
3570                 GOTOS => {
3571                         'filepart' => 87,
3572                         'filename' => 295
3573                 }
3574         },
3575         {#State 263
3576                 ACTIONS => {
3577                         'END' => 298
3578                 }
3579         },
3580         {#State 264
3581                 DEFAULT => -102
3582         },
3583         {#State 265
3584                 DEFAULT => -100
3585         },
3586         {#State 266
3587                 ACTIONS => {
3588                         'TEXT' => 299
3589                 }
3590         },
3591         {#State 267
3592                 ACTIONS => {
3593                         'END' => 300
3594                 }
3595         },
3596         {#State 268
3597                 ACTIONS => {
3598                         'SET' => 1,
3599                         'PERL' => 40,
3600                         'NOT' => 38,
3601                         'IDENT' => 2,
3602                         'CLEAR' => 41,
3603                         'UNLESS' => 3,
3604                         'IF' => 44,
3605                         "\$" => 43,
3606                         'STOP' => 6,
3607                         'CALL' => 45,
3608                         'THROW' => 8,
3609                         'GET' => 47,
3610                         "[" => 9,
3611                         'TRY' => 10,
3612                         'LAST' => 49,
3613                         'DEBUG' => 51,
3614                         'RAWPERL' => 13,
3615                         'META' => 15,
3616                         'INCLUDE' => 17,
3617                         "(" => 53,
3618                         'SWITCH' => 54,
3619                         'MACRO' => 18,
3620                         'WRAPPER' => 55,
3621                         ";" => -18,
3622                         'FOR' => 21,
3623                         'LITERAL' => 57,
3624                         'NEXT' => 22,
3625                         "\"" => 60,
3626                         'TEXT' => 24,
3627                         'PROCESS' => 61,
3628                         'RETURN' => 64,
3629                         'FILTER' => 25,
3630                         'INSERT' => 65,
3631                         'NUMBER' => 26,
3632                         'REF' => 27,
3633                         'WHILE' => 67,
3634                         'BLOCK' => 28,
3635                         'DEFAULT' => 69,
3636                         "{" => 30,
3637                         'USE' => 32,
3638                         'VIEW' => 36,
3639                         "\${" => 37
3640                 },
3641                 DEFAULT => -3,
3642                 GOTOS => {
3643                         'item' => 39,
3644                         'node' => 23,
3645                         'rawperl' => 59,
3646                         'term' => 58,
3647                         'loop' => 4,
3648                         'use' => 63,
3649                         'expr' => 62,
3650                         'capture' => 42,
3651                         'statement' => 5,
3652                         'view' => 7,
3653                         'wrapper' => 46,
3654                         'atomexpr' => 48,
3655                         'chunk' => 11,
3656                         'defblock' => 66,
3657                         'atomdir' => 12,
3658                         'anonblock' => 50,
3659                         'sterm' => 68,
3660                         'defblockname' => 14,
3661                         'filter' => 29,
3662                         'ident' => 16,
3663                         'perl' => 31,
3664                         'setlist' => 70,
3665                         'chunks' => 33,
3666                         'try' => 35,
3667                         'switch' => 34,
3668                         'assign' => 19,
3669                         'block' => 301,
3670                         'directive' => 71,
3671                         'macro' => 20,
3672                         'condition' => 73,
3673                         'lterm' => 56
3674                 }
3675         },
3676         {#State 269
3677                 ACTIONS => {
3678                         'IDENT' => -96,
3679                         ")" => -96,
3680                         'COMMA' => -96
3681                 },
3682                 DEFAULT => -130
3683         },
3684         {#State 270
3685                 ACTIONS => {
3686                         'COMMA' => 304,
3687                         'IDENT' => 302,
3688                         ")" => 303
3689                 }
3690         },
3691         {#State 271
3692                 DEFAULT => -156,
3693                 GOTOS => {
3694                         'args' => 305
3695                 }
3696         },
3697         {#State 272
3698                 DEFAULT => -156,
3699                 GOTOS => {
3700                         'args' => 306
3701                 }
3702         },
3703         {#State 273
3704                 ACTIONS => {
3705                         'SET' => 1,
3706                         'PERL' => 40,
3707                         'NOT' => 38,
3708                         'IDENT' => 2,
3709                         'CLEAR' => 41,
3710                         'UNLESS' => 3,
3711                         'IF' => 44,
3712                         "\$" => 43,
3713                         'STOP' => 6,
3714                         'CALL' => 45,
3715                         'THROW' => 8,
3716                         'GET' => 47,
3717                         "[" => 9,
3718                         'TRY' => 10,
3719                         'LAST' => 49,
3720                         'DEBUG' => 51,
3721                         'RAWPERL' => 13,
3722                         'META' => 15,
3723                         'INCLUDE' => 17,
3724                         "(" => 53,
3725                         'SWITCH' => 54,
3726                         'MACRO' => 18,
3727                         'WRAPPER' => 55,
3728                         ";" => -18,
3729                         'FOR' => 21,
3730                         'LITERAL' => 57,
3731                         'NEXT' => 22,
3732                         "\"" => 60,
3733                         'TEXT' => 24,
3734                         'PROCESS' => 61,
3735                         'RETURN' => 64,
3736                         'FILTER' => 25,
3737                         'INSERT' => 65,
3738                         'NUMBER' => 26,
3739                         'REF' => 27,
3740                         'WHILE' => 67,
3741                         'BLOCK' => 28,
3742                         'DEFAULT' => 69,
3743                         "{" => 30,
3744                         'USE' => 32,
3745                         'VIEW' => 36,
3746                         "\${" => 37
3747                 },
3748                 DEFAULT => -3,
3749                 GOTOS => {
3750                         'item' => 39,
3751                         'node' => 23,
3752                         'rawperl' => 59,
3753                         'term' => 58,
3754                         'loop' => 4,
3755                         'use' => 63,
3756                         'expr' => 62,
3757                         'capture' => 42,
3758                         'statement' => 5,
3759                         'view' => 7,
3760                         'wrapper' => 46,
3761                         'atomexpr' => 48,
3762                         'chunk' => 11,
3763                         'defblock' => 66,
3764                         'atomdir' => 12,
3765                         'anonblock' => 50,
3766                         'sterm' => 68,
3767                         'defblockname' => 14,
3768                         'filter' => 29,
3769                         'ident' => 16,
3770                         'perl' => 31,
3771                         'setlist' => 70,
3772                         'chunks' => 33,
3773                         'try' => 35,
3774                         'switch' => 34,
3775                         'assign' => 19,
3776                         'block' => 307,
3777                         'directive' => 71,
3778                         'macro' => 20,
3779                         'condition' => 73,
3780                         'lterm' => 56
3781                 }
3782         },
3783         {#State 274
3784                 DEFAULT => -157
3785         },
3786         {#State 275
3787                 ACTIONS => {
3788                         'END' => 308
3789                 }
3790         },
3791         {#State 276
3792                 ACTIONS => {
3793                         'ASSIGN' => -160
3794                 },
3795                 DEFAULT => -167
3796         },
3797         {#State 277
3798                 ACTIONS => {
3799                         'END' => 309
3800                 }
3801         },
3802         {#State 278
3803                 ACTIONS => {
3804                         'DIV' => 159,
3805                         'AND' => 160,
3806                         'BINOP' => 161,
3807                         'OR' => 162,
3808                         "+" => 157,
3809                         'CAT' => 163,
3810                         'CMPOP' => 164,
3811                         "?" => 158,
3812                         'MOD' => 165,
3813                         "/" => 166
3814                 },
3815                 DEFAULT => -124
3816         },
3817         {#State 279
3818                 ACTIONS => {
3819                         'DIV' => 159,
3820                         'AND' => 160,
3821                         'BINOP' => 161,
3822                         'OR' => 162,
3823                         "+" => 157,
3824                         'CAT' => 163,
3825                         'CMPOP' => 164,
3826                         "?" => 158,
3827                         'MOD' => 165,
3828                         "/" => 166
3829                 },
3830                 DEFAULT => -123
3831         },
3832         {#State 280
3833                 ACTIONS => {
3834                         'SET' => 1,
3835                         'PERL' => 40,
3836                         'NOT' => 38,
3837                         'IDENT' => 2,
3838                         'CLEAR' => 41,
3839                         'UNLESS' => 3,
3840                         'IF' => 44,
3841                         "\$" => 43,
3842                         'STOP' => 6,
3843                         'CALL' => 45,
3844                         'THROW' => 8,
3845                         'GET' => 47,
3846                         "[" => 9,
3847                         'TRY' => 10,
3848                         'LAST' => 49,
3849                         'DEBUG' => 51,
3850                         'RAWPERL' => 13,
3851                         'META' => 15,
3852                         'INCLUDE' => 17,
3853                         "(" => 53,
3854                         'SWITCH' => 54,
3855                         'MACRO' => 18,
3856                         'WRAPPER' => 55,
3857                         ";" => -18,
3858                         'FOR' => 21,
3859                         'LITERAL' => 57,
3860                         'NEXT' => 22,
3861                         "\"" => 60,
3862                         'TEXT' => 24,
3863                         'PROCESS' => 61,
3864                         'RETURN' => 64,
3865                         'FILTER' => 25,
3866                         'INSERT' => 65,
3867                         'NUMBER' => 26,
3868                         'REF' => 27,
3869                         'WHILE' => 67,
3870                         'BLOCK' => 28,
3871                         'DEFAULT' => 69,
3872                         "{" => 30,
3873                         'USE' => 32,
3874                         'VIEW' => 36,
3875                         "\${" => 37
3876                 },
3877                 DEFAULT => -3,
3878                 GOTOS => {
3879                         'item' => 39,
3880                         'node' => 23,
3881                         'rawperl' => 59,
3882                         'term' => 58,
3883                         'loop' => 4,
3884                         'use' => 63,
3885                         'expr' => 62,
3886                         'capture' => 42,
3887                         'statement' => 5,
3888                         'view' => 7,
3889                         'wrapper' => 46,
3890                         'atomexpr' => 48,
3891                         'chunk' => 11,
3892                         'defblock' => 66,
3893                         'atomdir' => 12,
3894                         'anonblock' => 50,
3895                         'sterm' => 68,
3896                         'defblockname' => 14,
3897                         'filter' => 29,
3898                         'ident' => 16,
3899                         'perl' => 31,
3900                         'setlist' => 70,
3901                         'chunks' => 33,
3902                         'try' => 35,
3903                         'switch' => 34,
3904                         'assign' => 19,
3905                         'block' => 310,
3906                         'directive' => 71,
3907                         'macro' => 20,
3908                         'condition' => 73,
3909                         'lterm' => 56
3910                 }
3911         },
3912         {#State 281
3913                 DEFAULT => -129
3914         },
3915         {#State 282
3916                 ACTIONS => {
3917                         'END' => 311
3918                 }
3919         },
3920         {#State 283
3921                 ACTIONS => {
3922                         'ELSIF' => 290,
3923                         'ELSE' => 288
3924                 },
3925                 DEFAULT => -50,
3926                 GOTOS => {
3927                         'else' => 312
3928                 }
3929         },
3930         {#State 284
3931                 ACTIONS => {
3932                         'CASE' => 313
3933                 },
3934                 DEFAULT => -55,
3935                 GOTOS => {
3936                         'case' => 314
3937                 }
3938         },
3939         {#State 285
3940                 ACTIONS => {
3941                         'END' => 315
3942                 }
3943         },
3944         {#State 286
3945                 ACTIONS => {
3946                         'NOT' => 38,
3947                         "{" => 30,
3948                         'LITERAL' => 78,
3949                         'IDENT' => 2,
3950                         "\"" => 60,
3951                         "(" => 53,
3952                         "\$" => 43,
3953                         "[" => 9,
3954                         'NUMBER' => 26,
3955                         'REF' => 27,
3956                         "\${" => 37
3957                 },
3958                 GOTOS => {
3959                         'expr' => 316,
3960                         'sterm' => 68,
3961                         'item' => 39,
3962                         'node' => 23,
3963                         'ident' => 77,
3964                         'term' => 58,
3965                         'lterm' => 56
3966                 }
3967         },
3968         {#State 287
3969                 ACTIONS => {
3970                         'SET' => 1,
3971                         'PERL' => 40,
3972                         'NOT' => 38,
3973                         'IDENT' => 2,
3974                         'CLEAR' => 41,
3975                         'UNLESS' => 3,
3976                         'IF' => 44,
3977                         "\$" => 43,
3978                         'STOP' => 6,
3979                         'CALL' => 45,
3980                         'THROW' => 8,
3981                         'GET' => 47,
3982                         "[" => 9,
3983                         'TRY' => 10,
3984                         'LAST' => 49,
3985                         'DEBUG' => 51,
3986                         'RAWPERL' => 13,
3987                         'META' => 15,
3988                         'INCLUDE' => 17,
3989                         "(" => 53,
3990                         'SWITCH' => 54,
3991                         'MACRO' => 18,
3992                         'WRAPPER' => 55,
3993                         ";" => -18,
3994                         'FOR' => 21,
3995                         'LITERAL' => 57,
3996                         'NEXT' => 22,
3997                         "\"" => 60,
3998                         'TEXT' => 24,
3999                         'PROCESS' => 61,
4000                         'RETURN' => 64,
4001                         'FILTER' => 25,
4002                         'INSERT' => 65,
4003                         'NUMBER' => 26,
4004                         'REF' => 27,
4005                         'WHILE' => 67,
4006                         'BLOCK' => 28,
4007                         'DEFAULT' => 69,
4008                         "{" => 30,
4009                         'USE' => 32,
4010                         'VIEW' => 36,
4011                         "\${" => 37
4012                 },
4013                 DEFAULT => -3,
4014                 GOTOS => {
4015                         'item' => 39,
4016                         'node' => 23,
4017                         'rawperl' => 59,
4018                         'term' => 58,
4019                         'loop' => 4,
4020                         'use' => 63,
4021                         'expr' => 62,
4022                         'capture' => 42,
4023                         'statement' => 5,
4024                         'view' => 7,
4025                         'wrapper' => 46,
4026                         'atomexpr' => 48,
4027                         'chunk' => 11,
4028                         'defblock' => 66,
4029                         'atomdir' => 12,
4030                         'anonblock' => 50,
4031                         'sterm' => 68,
4032                         'defblockname' => 14,
4033                         'filter' => 29,
4034                         'ident' => 16,
4035                         'perl' => 31,
4036                         'setlist' => 70,
4037                         'chunks' => 33,
4038                         'try' => 35,
4039                         'switch' => 34,
4040                         'assign' => 19,
4041                         'block' => 317,
4042                         'directive' => 71,
4043                         'macro' => 20,
4044                         'condition' => 73,
4045                         'lterm' => 56
4046                 }
4047         },
4048         {#State 288
4049                 ACTIONS => {
4050                         ";" => 318
4051                 }
4052         },
4053         {#State 289
4054                 ACTIONS => {
4055                         'END' => 319
4056                 }
4057         },
4058         {#State 290
4059                 ACTIONS => {
4060                         'NOT' => 38,
4061                         "{" => 30,
4062                         'LITERAL' => 78,
4063                         'IDENT' => 2,
4064                         "\"" => 60,
4065                         "(" => 53,
4066                         "\$" => 43,
4067                         "[" => 9,
4068                         'NUMBER' => 26,
4069                         'REF' => 27,
4070                         "\${" => 37
4071                 },
4072                 GOTOS => {
4073                         'expr' => 320,
4074                         'sterm' => 68,
4075                         'item' => 39,
4076                         'node' => 23,
4077                         'ident' => 77,
4078                         'term' => 58,
4079                         'lterm' => 56
4080                 }
4081         },
4082         {#State 291
4083                 DEFAULT => -164
4084         },
4085         {#State 292
4086                 ACTIONS => {
4087                         'NOT' => 38,
4088                         "{" => 30,
4089                         'LITERAL' => 78,
4090                         'IDENT' => 2,
4091                         "\"" => 60,
4092                         "(" => 53,
4093                         "\$" => 43,
4094                         "[" => 9,
4095                         'NUMBER' => 26,
4096                         'REF' => 27,
4097                         "\${" => 37
4098                 },
4099                 GOTOS => {
4100                         'expr' => 321,
4101                         'sterm' => 68,
4102                         'item' => 39,
4103                         'node' => 23,
4104                         'ident' => 77,
4105                         'term' => 58,
4106                         'lterm' => 56
4107                 }
4108         },
4109         {#State 293
4110                 ACTIONS => {
4111                         'SET' => 1,
4112                         'PERL' => 40,
4113                         'NOT' => 38,
4114                         'IDENT' => 2,
4115                         'CLEAR' => 41,
4116                         'UNLESS' => 3,
4117                         'IF' => 44,
4118                         "\$" => 43,
4119                         'STOP' => 6,
4120                         'CALL' => 45,
4121                         'THROW' => 8,
4122                         'GET' => 47,
4123                         "[" => 9,
4124                         'TRY' => 10,
4125                         'LAST' => 49,
4126                         'DEBUG' => 51,
4127                         'RAWPERL' => 13,
4128                         'META' => 15,
4129                         'INCLUDE' => 17,
4130                         "(" => 53,
4131                         'SWITCH' => 54,
4132                         'MACRO' => 18,
4133                         'WRAPPER' => 55,
4134                         ";" => -18,
4135                         'FOR' => 21,
4136                         'LITERAL' => 57,
4137                         'NEXT' => 22,
4138                         "\"" => 60,
4139                         'TEXT' => 24,
4140                         'PROCESS' => 61,
4141                         'RETURN' => 64,
4142                         'FILTER' => 25,
4143                         'INSERT' => 65,
4144                         'NUMBER' => 26,
4145                         'REF' => 27,
4146                         'WHILE' => 67,
4147                         'BLOCK' => 28,
4148                         'DEFAULT' => 69,
4149                         "{" => 30,
4150                         'USE' => 32,
4151                         'VIEW' => 36,
4152                         "\${" => 37
4153                 },
4154                 DEFAULT => -3,
4155                 GOTOS => {
4156                         'item' => 39,
4157                         'node' => 23,
4158                         'rawperl' => 59,
4159                         'term' => 58,
4160                         'loop' => 4,
4161                         'use' => 63,
4162                         'expr' => 62,
4163                         'capture' => 42,
4164                         'statement' => 5,
4165                         'view' => 7,
4166                         'wrapper' => 46,
4167                         'atomexpr' => 48,
4168                         'chunk' => 11,
4169                         'defblock' => 66,
4170                         'atomdir' => 12,
4171                         'anonblock' => 50,
4172                         'sterm' => 68,
4173                         'defblockname' => 14,
4174                         'filter' => 29,
4175                         'ident' => 16,
4176                         'perl' => 31,
4177                         'setlist' => 70,
4178                         'chunks' => 33,
4179                         'try' => 35,
4180                         'switch' => 34,
4181                         'assign' => 19,
4182                         'block' => 322,
4183                         'directive' => 71,
4184                         'macro' => 20,
4185                         'condition' => 73,
4186                         'lterm' => 56
4187                 }
4188         },
4189         {#State 294
4190                 DEFAULT => -67
4191         },
4192         {#State 295
4193                 ACTIONS => {
4194                         'DOT' => 174,
4195                         ";" => 323
4196                 }
4197         },
4198         {#State 296
4199                 ACTIONS => {
4200                         'SET' => 1,
4201                         'PERL' => 40,
4202                         'NOT' => 38,
4203                         'IDENT' => 2,
4204                         'CLEAR' => 41,
4205                         'UNLESS' => 3,
4206                         'IF' => 44,
4207                         "\$" => 43,
4208                         'STOP' => 6,
4209                         'CALL' => 45,
4210                         'THROW' => 8,
4211                         'GET' => 47,
4212                         "[" => 9,
4213                         'TRY' => 10,
4214                         'LAST' => 49,
4215                         'DEBUG' => 51,
4216                         'RAWPERL' => 13,
4217                         'META' => 15,
4218                         'INCLUDE' => 17,
4219                         "(" => 53,
4220                         'SWITCH' => 54,
4221                         'MACRO' => 18,
4222                         'WRAPPER' => 55,
4223                         ";" => -18,
4224                         'FOR' => 21,
4225                         'LITERAL' => 57,
4226                         'NEXT' => 22,
4227                         "\"" => 60,
4228                         'TEXT' => 24,
4229                         'PROCESS' => 61,
4230                         'RETURN' => 64,
4231                         'FILTER' => 25,
4232                         'INSERT' => 65,
4233                         'NUMBER' => 26,
4234                         'REF' => 27,
4235                         'WHILE' => 67,
4236                         'BLOCK' => 28,
4237                         'DEFAULT' => 69,
4238                         "{" => 30,
4239                         'USE' => 32,
4240                         'VIEW' => 36,
4241                         "\${" => 37
4242                 },
4243                 DEFAULT => -3,
4244                 GOTOS => {
4245                         'item' => 39,
4246                         'node' => 23,
4247                         'rawperl' => 59,
4248                         'term' => 58,
4249                         'loop' => 4,
4250                         'use' => 63,
4251                         'expr' => 62,
4252                         'capture' => 42,
4253                         'statement' => 5,
4254                         'view' => 7,
4255                         'wrapper' => 46,
4256                         'atomexpr' => 48,
4257                         'chunk' => 11,
4258                         'defblock' => 66,
4259                         'atomdir' => 12,
4260                         'anonblock' => 50,
4261                         'sterm' => 68,
4262                         'defblockname' => 14,
4263                         'filter' => 29,
4264                         'ident' => 16,
4265                         'perl' => 31,
4266                         'setlist' => 70,
4267                         'chunks' => 33,
4268                         'try' => 35,
4269                         'switch' => 34,
4270                         'assign' => 19,
4271                         'block' => 324,
4272                         'directive' => 71,
4273                         'macro' => 20,
4274                         'condition' => 73,
4275                         'lterm' => 56
4276                 }
4277         },
4278         {#State 297
4279                 ACTIONS => {
4280                         ";" => 325
4281                 }
4282         },
4283         {#State 298
4284                 DEFAULT => -79
4285         },
4286         {#State 299
4287                 ACTIONS => {
4288                         "\"" => 326
4289                 }
4290         },
4291         {#State 300
4292                 DEFAULT => -82
4293         },
4294         {#State 301
4295                 ACTIONS => {
4296                         'END' => 327
4297                 }
4298         },
4299         {#State 302
4300                 DEFAULT => -94
4301         },
4302         {#State 303
4303                 ACTIONS => {
4304                         'SET' => 1,
4305                         'PERL' => 40,
4306                         'NOT' => 38,
4307                         'IDENT' => 2,
4308                         'CLEAR' => 41,
4309                         'UNLESS' => 3,
4310                         'IF' => 44,
4311                         "\$" => 43,
4312                         'STOP' => 6,
4313                         'CALL' => 45,
4314                         'THROW' => 8,
4315                         'GET' => 47,
4316                         "[" => 9,
4317                         'TRY' => 10,
4318                         'LAST' => 49,
4319                         'DEBUG' => 51,
4320                         'INCLUDE' => 17,
4321                         "(" => 53,
4322                         'SWITCH' => 54,
4323                         'WRAPPER' => 55,
4324                         'FOR' => 21,
4325                         'NEXT' => 22,
4326                         'LITERAL' => 57,
4327                         "\"" => 60,
4328                         'PROCESS' => 61,
4329                         'FILTER' => 25,
4330                         'RETURN' => 64,
4331                         'INSERT' => 65,
4332                         'NUMBER' => 26,
4333                         'REF' => 27,
4334                         'WHILE' => 67,
4335                         'BLOCK' => 193,
4336                         'DEFAULT' => 69,
4337                         "{" => 30,
4338                         "\${" => 37
4339                 },
4340                 GOTOS => {
4341                         'item' => 39,
4342                         'node' => 23,
4343                         'term' => 58,
4344                         'loop' => 4,
4345                         'expr' => 199,
4346                         'wrapper' => 46,
4347                         'atomexpr' => 48,
4348                         'atomdir' => 12,
4349                         'mdir' => 328,
4350                         'filter' => 29,
4351                         'sterm' => 68,
4352                         'ident' => 149,
4353                         'perl' => 31,
4354                         'setlist' => 70,
4355                         'try' => 35,
4356                         'switch' => 34,
4357                         'assign' => 19,
4358                         'directive' => 196,
4359                         'condition' => 73,
4360                         'lterm' => 56
4361                 }
4362         },
4363         {#State 304
4364                 DEFAULT => -95
4365         },
4366         {#State 305
4367                 ACTIONS => {
4368                         'NOT' => 38,
4369                         "{" => 30,
4370                         'COMMA' => 258,
4371                         'LITERAL' => 256,
4372                         'IDENT' => 2,
4373                         "\"" => 60,
4374                         "(" => 53,
4375                         "\$" => 43,
4376                         "[" => 9,
4377                         'NUMBER' => 26,
4378                         'REF' => 27,
4379                         "\${" => 37
4380                 },
4381                 DEFAULT => -62,
4382                 GOTOS => {
4383                         'expr' => 257,
4384                         'sterm' => 68,
4385                         'item' => 254,
4386                         'param' => 255,
4387                         'node' => 23,
4388                         'ident' => 253,
4389                         'term' => 58,
4390                         'lterm' => 56
4391                 }
4392         },
4393         {#State 306
4394                 ACTIONS => {
4395                         'NOT' => 38,
4396                         "{" => 30,
4397                         'COMMA' => 258,
4398                         'LITERAL' => 256,
4399                         'IDENT' => 2,
4400                         "\"" => 60,
4401                         "(" => 53,
4402                         "\$" => 43,
4403                         "[" => 9,
4404                         'NUMBER' => 26,
4405                         'REF' => 27,
4406                         "\${" => 37
4407                 },
4408                 DEFAULT => -63,
4409                 GOTOS => {
4410                         'expr' => 257,
4411                         'sterm' => 68,
4412                         'item' => 254,
4413                         'param' => 255,
4414                         'node' => 23,
4415                         'ident' => 253,
4416                         'term' => 58,
4417                         'lterm' => 56
4418                 }
4419         },
4420         {#State 307
4421                 ACTIONS => {
4422                         'END' => 329
4423                 }
4424         },
4425         {#State 308
4426                 DEFAULT => -80
4427         },
4428         {#State 309
4429                 DEFAULT => -88
4430         },
4431         {#State 310
4432                 ACTIONS => {
4433                         'END' => 330
4434                 }
4435         },
4436         {#State 311
4437                 DEFAULT => -77
4438         },
4439         {#State 312
4440                 ACTIONS => {
4441                         'END' => 331
4442                 }
4443         },
4444         {#State 313
4445                 ACTIONS => {
4446                         ";" => 332,
4447                         'DEFAULT' => 334,
4448                         "{" => 30,
4449                         'LITERAL' => 78,
4450                         'IDENT' => 2,
4451                         "\"" => 60,
4452                         "\$" => 43,
4453                         "[" => 9,
4454                         'NUMBER' => 26,
4455                         'REF' => 27,
4456                         "\${" => 37
4457                 },
4458                 GOTOS => {
4459                         'sterm' => 68,
4460                         'item' => 39,
4461                         'node' => 23,
4462                         'ident' => 77,
4463                         'term' => 333,
4464                         'lterm' => 56
4465                 }
4466         },
4467         {#State 314
4468                 ACTIONS => {
4469                         'END' => 335
4470                 }
4471         },
4472         {#State 315
4473                 DEFAULT => -65
4474         },
4475         {#State 316
4476                 ACTIONS => {
4477                         'DIV' => 159,
4478                         'AND' => 160,
4479                         'BINOP' => 161,
4480                         'OR' => 162,
4481                         "+" => 157,
4482                         'CAT' => 163,
4483                         'CMPOP' => 164,
4484                         "?" => 158,
4485                         'MOD' => 165,
4486                         "/" => 166
4487                 },
4488                 DEFAULT => -143
4489         },
4490         {#State 317
4491                 ACTIONS => {
4492                         'END' => 336
4493                 }
4494         },
4495         {#State 318
4496                 ACTIONS => {
4497                         'SET' => 1,
4498                         'PERL' => 40,
4499                         'NOT' => 38,
4500                         'IDENT' => 2,
4501                         'CLEAR' => 41,
4502                         'UNLESS' => 3,
4503                         'IF' => 44,
4504                         "\$" => 43,
4505                         'STOP' => 6,
4506                         'CALL' => 45,
4507                         'THROW' => 8,
4508                         'GET' => 47,
4509                         "[" => 9,
4510                         'TRY' => 10,
4511                         'LAST' => 49,
4512                         'DEBUG' => 51,
4513                         'RAWPERL' => 13,
4514                         'META' => 15,
4515                         'INCLUDE' => 17,
4516                         "(" => 53,
4517                         'SWITCH' => 54,
4518                         'MACRO' => 18,
4519                         'WRAPPER' => 55,
4520                         ";" => -18,
4521                         'FOR' => 21,
4522                         'LITERAL' => 57,
4523                         'NEXT' => 22,
4524                         "\"" => 60,
4525                         'TEXT' => 24,
4526                         'PROCESS' => 61,
4527                         'RETURN' => 64,
4528                         'FILTER' => 25,
4529                         'INSERT' => 65,
4530                         'NUMBER' => 26,
4531                         'REF' => 27,
4532                         'WHILE' => 67,
4533                         'BLOCK' => 28,
4534                         'DEFAULT' => 69,
4535                         "{" => 30,
4536                         'USE' => 32,
4537                         'VIEW' => 36,
4538                         "\${" => 37
4539                 },
4540                 DEFAULT => -3,
4541                 GOTOS => {
4542                         'item' => 39,
4543                         'node' => 23,
4544                         'rawperl' => 59,
4545                         'term' => 58,
4546                         'loop' => 4,
4547                         'use' => 63,
4548                         'expr' => 62,
4549                         'capture' => 42,
4550                         'statement' => 5,
4551                         'view' => 7,
4552                         'wrapper' => 46,
4553                         'atomexpr' => 48,
4554                         'chunk' => 11,
4555                         'defblock' => 66,
4556                         'atomdir' => 12,
4557                         'anonblock' => 50,
4558                         'sterm' => 68,
4559                         'defblockname' => 14,
4560                         'filter' => 29,
4561                         'ident' => 16,
4562                         'perl' => 31,
4563                         'setlist' => 70,
4564                         'chunks' => 33,
4565                         'try' => 35,
4566                         'switch' => 34,
4567                         'assign' => 19,
4568                         'block' => 337,
4569                         'directive' => 71,
4570                         'macro' => 20,
4571                         'condition' => 73,
4572                         'lterm' => 56
4573                 }
4574         },
4575         {#State 319
4576                 DEFAULT => -46
4577         },
4578         {#State 320
4579                 ACTIONS => {
4580                         'CMPOP' => 164,
4581                         "?" => 158,
4582                         ";" => 338,
4583                         "+" => 157,
4584                         'MOD' => 165,
4585                         'DIV' => 159,
4586                         "/" => 166,
4587                         'AND' => 160,
4588                         'CAT' => 163,
4589                         'BINOP' => 161,
4590                         'OR' => 162
4591                 }
4592         },
4593         {#State 321
4594                 ACTIONS => {
4595                         "+" => 157,
4596                         'CAT' => 163,
4597                         'CMPOP' => 164,
4598                         "?" => 158,
4599                         'DIV' => 159,
4600                         'MOD' => 165,
4601                         "/" => 166,
4602                         'AND' => 160,
4603                         'BINOP' => 161,
4604                         'OR' => 162
4605                 },
4606                 DEFAULT => -154
4607         },
4608         {#State 322
4609                 DEFAULT => -71
4610         },
4611         {#State 323
4612                 ACTIONS => {
4613                         'SET' => 1,
4614                         'PERL' => 40,
4615                         'NOT' => 38,
4616                         'IDENT' => 2,
4617                         'CLEAR' => 41,
4618                         'UNLESS' => 3,
4619                         'IF' => 44,
4620                         "\$" => 43,
4621                         'STOP' => 6,
4622                         'CALL' => 45,
4623                         'THROW' => 8,
4624                         'GET' => 47,
4625                         "[" => 9,
4626                         'TRY' => 10,
4627                         'LAST' => 49,
4628                         'DEBUG' => 51,
4629                         'RAWPERL' => 13,
4630                         'META' => 15,
4631                         'INCLUDE' => 17,
4632                         "(" => 53,
4633                         'SWITCH' => 54,
4634                         'MACRO' => 18,
4635                         'WRAPPER' => 55,
4636                         ";" => -18,
4637                         'FOR' => 21,
4638                         'LITERAL' => 57,
4639                         'NEXT' => 22,
4640                         "\"" => 60,
4641                         'TEXT' => 24,
4642                         'PROCESS' => 61,
4643                         'RETURN' => 64,
4644                         'FILTER' => 25,
4645                         'INSERT' => 65,
4646                         'NUMBER' => 26,
4647                         'REF' => 27,
4648                         'WHILE' => 67,
4649                         'BLOCK' => 28,
4650                         'DEFAULT' => 69,
4651                         "{" => 30,
4652                         'USE' => 32,
4653                         'VIEW' => 36,
4654                         "\${" => 37
4655                 },
4656                 DEFAULT => -3,
4657                 GOTOS => {
4658                         'item' => 39,
4659                         'node' => 23,
4660                         'rawperl' => 59,
4661                         'term' => 58,
4662                         'loop' => 4,
4663                         'use' => 63,
4664                         'expr' => 62,
4665                         'capture' => 42,
4666                         'statement' => 5,
4667                         'view' => 7,
4668                         'wrapper' => 46,
4669                         'atomexpr' => 48,
4670                         'chunk' => 11,
4671                         'defblock' => 66,
4672                         'atomdir' => 12,
4673                         'anonblock' => 50,
4674                         'sterm' => 68,
4675                         'defblockname' => 14,
4676                         'filter' => 29,
4677                         'ident' => 16,
4678                         'perl' => 31,
4679                         'setlist' => 70,
4680                         'chunks' => 33,
4681                         'try' => 35,
4682                         'switch' => 34,
4683                         'assign' => 19,
4684                         'block' => 339,
4685                         'directive' => 71,
4686                         'macro' => 20,
4687                         'condition' => 73,
4688                         'lterm' => 56
4689                 }
4690         },
4691         {#State 324
4692                 ACTIONS => {
4693                         'FINAL' => 260,
4694                         'CATCH' => 262
4695                 },
4696                 DEFAULT => -72,
4697                 GOTOS => {
4698                         'final' => 340
4699                 }
4700         },
4701         {#State 325
4702                 ACTIONS => {
4703                         'SET' => 1,
4704                         'PERL' => 40,
4705                         'NOT' => 38,
4706                         'IDENT' => 2,
4707                         'CLEAR' => 41,
4708                         'UNLESS' => 3,
4709                         'IF' => 44,
4710                         "\$" => 43,
4711                         'STOP' => 6,
4712                         'CALL' => 45,
4713                         'THROW' => 8,
4714                         'GET' => 47,
4715                         "[" => 9,
4716                         'TRY' => 10,
4717                         'LAST' => 49,
4718                         'DEBUG' => 51,
4719                         'RAWPERL' => 13,
4720                         'META' => 15,
4721                         'INCLUDE' => 17,
4722                         "(" => 53,
4723                         'SWITCH' => 54,
4724                         'MACRO' => 18,
4725                         'WRAPPER' => 55,
4726                         ";" => -18,
4727                         'FOR' => 21,
4728                         'LITERAL' => 57,
4729                         'NEXT' => 22,
4730                         "\"" => 60,
4731                         'TEXT' => 24,
4732                         'PROCESS' => 61,
4733                         'RETURN' => 64,
4734                         'FILTER' => 25,
4735                         'INSERT' => 65,
4736                         'NUMBER' => 26,
4737                         'REF' => 27,
4738                         'WHILE' => 67,
4739                         'BLOCK' => 28,
4740                         'DEFAULT' => 69,
4741                         "{" => 30,
4742                         'USE' => 32,
4743                         'VIEW' => 36,
4744                         "\${" => 37
4745                 },
4746                 DEFAULT => -3,
4747                 GOTOS => {
4748                         'item' => 39,
4749                         'node' => 23,
4750                         'rawperl' => 59,
4751                         'term' => 58,
4752                         'loop' => 4,
4753                         'use' => 63,
4754                         'expr' => 62,
4755                         'capture' => 42,
4756                         'statement' => 5,
4757                         'view' => 7,
4758                         'wrapper' => 46,
4759                         'atomexpr' => 48,
4760                         'chunk' => 11,
4761                         'defblock' => 66,
4762                         'atomdir' => 12,
4763                         'anonblock' => 50,
4764                         'sterm' => 68,
4765                         'defblockname' => 14,
4766                         'filter' => 29,
4767                         'ident' => 16,
4768                         'perl' => 31,
4769                         'setlist' => 70,
4770                         'chunks' => 33,
4771                         'try' => 35,
4772                         'switch' => 34,
4773                         'assign' => 19,
4774                         'block' => 341,
4775                         'directive' => 71,
4776                         'macro' => 20,
4777                         'condition' => 73,
4778                         'lterm' => 56
4779                 }
4780         },
4781         {#State 326
4782                 DEFAULT => -101
4783         },
4784         {#State 327
4785                 DEFAULT => -93
4786         },
4787         {#State 328
4788                 DEFAULT => -90
4789         },
4790         {#State 329
4791                 DEFAULT => -57
4792         },
4793         {#State 330
4794                 DEFAULT => -75
4795         },
4796         {#State 331
4797                 DEFAULT => -44
4798         },
4799         {#State 332
4800                 ACTIONS => {
4801                         'SET' => 1,
4802                         'PERL' => 40,
4803                         'NOT' => 38,
4804                         'IDENT' => 2,
4805                         'CLEAR' => 41,
4806                         'UNLESS' => 3,
4807                         'IF' => 44,
4808                         "\$" => 43,
4809                         'STOP' => 6,
4810                         'CALL' => 45,
4811                         'THROW' => 8,
4812                         'GET' => 47,
4813                         "[" => 9,
4814                         'TRY' => 10,
4815                         'LAST' => 49,
4816                         'DEBUG' => 51,
4817                         'RAWPERL' => 13,
4818                         'META' => 15,
4819                         'INCLUDE' => 17,
4820                         "(" => 53,
4821                         'SWITCH' => 54,
4822                         'MACRO' => 18,
4823                         'WRAPPER' => 55,
4824                         ";" => -18,
4825                         'FOR' => 21,
4826                         'LITERAL' => 57,
4827                         'NEXT' => 22,
4828                         "\"" => 60,
4829                         'TEXT' => 24,
4830                         'PROCESS' => 61,
4831                         'RETURN' => 64,
4832                         'FILTER' => 25,
4833                         'INSERT' => 65,
4834                         'NUMBER' => 26,
4835                         'REF' => 27,
4836                         'WHILE' => 67,
4837                         'BLOCK' => 28,
4838                         'DEFAULT' => 69,
4839                         "{" => 30,
4840                         'USE' => 32,
4841                         'VIEW' => 36,
4842                         "\${" => 37
4843                 },
4844                 DEFAULT => -3,
4845                 GOTOS => {
4846                         'item' => 39,
4847                         'node' => 23,
4848                         'rawperl' => 59,
4849                         'term' => 58,
4850                         'loop' => 4,
4851                         'use' => 63,
4852                         'expr' => 62,
4853                         'capture' => 42,
4854                         'statement' => 5,
4855                         'view' => 7,
4856                         'wrapper' => 46,
4857                         'atomexpr' => 48,
4858                         'chunk' => 11,
4859                         'defblock' => 66,
4860                         'atomdir' => 12,
4861                         'anonblock' => 50,
4862                         'sterm' => 68,
4863                         'defblockname' => 14,
4864                         'filter' => 29,
4865                         'ident' => 16,
4866                         'perl' => 31,
4867                         'setlist' => 70,
4868                         'chunks' => 33,
4869                         'try' => 35,
4870                         'switch' => 34,
4871                         'assign' => 19,
4872                         'block' => 342,
4873                         'directive' => 71,
4874                         'macro' => 20,
4875                         'condition' => 73,
4876                         'lterm' => 56
4877                 }
4878         },
4879         {#State 333
4880                 ACTIONS => {
4881                         ";" => 343
4882                 }
4883         },
4884         {#State 334
4885                 ACTIONS => {
4886                         ";" => 344
4887                 }
4888         },
4889         {#State 335
4890                 DEFAULT => -51
4891         },
4892         {#State 336
4893                 DEFAULT => -60
4894         },
4895         {#State 337
4896                 DEFAULT => -49
4897         },
4898         {#State 338
4899                 ACTIONS => {
4900                         'SET' => 1,
4901                         'PERL' => 40,
4902                         'NOT' => 38,
4903                         'IDENT' => 2,
4904                         'CLEAR' => 41,
4905                         'UNLESS' => 3,
4906                         'IF' => 44,
4907                         "\$" => 43,
4908                         'STOP' => 6,
4909                         'CALL' => 45,
4910                         'THROW' => 8,
4911                         'GET' => 47,
4912                         "[" => 9,
4913                         'TRY' => 10,
4914                         'LAST' => 49,
4915                         'DEBUG' => 51,
4916                         'RAWPERL' => 13,
4917                         'META' => 15,
4918                         'INCLUDE' => 17,
4919                         "(" => 53,
4920                         'SWITCH' => 54,
4921                         'MACRO' => 18,
4922                         'WRAPPER' => 55,
4923                         ";" => -18,
4924                         'FOR' => 21,
4925                         'LITERAL' => 57,
4926                         'NEXT' => 22,
4927                         "\"" => 60,
4928                         'TEXT' => 24,
4929                         'PROCESS' => 61,
4930                         'RETURN' => 64,
4931                         'FILTER' => 25,
4932                         'INSERT' => 65,
4933                         'NUMBER' => 26,
4934                         'REF' => 27,
4935                         'WHILE' => 67,
4936                         'BLOCK' => 28,
4937                         'DEFAULT' => 69,
4938                         "{" => 30,
4939                         'USE' => 32,
4940                         'VIEW' => 36,
4941                         "\${" => 37
4942                 },
4943                 DEFAULT => -3,
4944                 GOTOS => {
4945                         'item' => 39,
4946                         'node' => 23,
4947                         'rawperl' => 59,
4948                         'term' => 58,
4949                         'loop' => 4,
4950                         'use' => 63,
4951                         'expr' => 62,
4952                         'capture' => 42,
4953                         'statement' => 5,
4954                         'view' => 7,
4955                         'wrapper' => 46,
4956                         'atomexpr' => 48,
4957                         'chunk' => 11,
4958                         'defblock' => 66,
4959                         'atomdir' => 12,
4960                         'anonblock' => 50,
4961                         'sterm' => 68,
4962                         'defblockname' => 14,
4963                         'filter' => 29,
4964                         'ident' => 16,
4965                         'perl' => 31,
4966                         'setlist' => 70,
4967                         'chunks' => 33,
4968                         'try' => 35,
4969                         'switch' => 34,
4970                         'assign' => 19,
4971                         'block' => 345,
4972                         'directive' => 71,
4973                         'macro' => 20,
4974                         'condition' => 73,
4975                         'lterm' => 56
4976                 }
4977         },
4978         {#State 339
4979                 ACTIONS => {
4980                         'FINAL' => 260,
4981                         'CATCH' => 262
4982                 },
4983                 DEFAULT => -72,
4984                 GOTOS => {
4985                         'final' => 346
4986                 }
4987         },
4988         {#State 340
4989                 DEFAULT => -70
4990         },
4991         {#State 341
4992                 ACTIONS => {
4993                         'FINAL' => 260,
4994                         'CATCH' => 262
4995                 },
4996                 DEFAULT => -72,
4997                 GOTOS => {
4998                         'final' => 347
4999                 }
5000         },
5001         {#State 342
5002                 DEFAULT => -54
5003         },
5004         {#State 343
5005                 ACTIONS => {
5006                         'SET' => 1,
5007                         'PERL' => 40,
5008                         'NOT' => 38,
5009                         'IDENT' => 2,
5010                         'CLEAR' => 41,
5011                         'UNLESS' => 3,
5012                         'IF' => 44,
5013                         "\$" => 43,
5014                         'STOP' => 6,
5015                         'CALL' => 45,
5016                         'THROW' => 8,
5017                         'GET' => 47,
5018                         "[" => 9,
5019                         'TRY' => 10,
5020                         'LAST' => 49,
5021                         'DEBUG' => 51,
5022                         'RAWPERL' => 13,
5023                         'META' => 15,
5024                         'INCLUDE' => 17,
5025                         "(" => 53,
5026                         'SWITCH' => 54,
5027                         'MACRO' => 18,
5028                         'WRAPPER' => 55,
5029                         ";" => -18,
5030                         'FOR' => 21,
5031                         'LITERAL' => 57,
5032                         'NEXT' => 22,
5033                         "\"" => 60,
5034                         'TEXT' => 24,
5035                         'PROCESS' => 61,
5036                         'RETURN' => 64,
5037                         'FILTER' => 25,
5038                         'INSERT' => 65,
5039                         'NUMBER' => 26,
5040                         'REF' => 27,
5041                         'WHILE' => 67,
5042                         'BLOCK' => 28,
5043                         'DEFAULT' => 69,
5044                         "{" => 30,
5045                         'USE' => 32,
5046                         'VIEW' => 36,
5047                         "\${" => 37
5048                 },
5049                 DEFAULT => -3,
5050                 GOTOS => {
5051                         'item' => 39,
5052                         'node' => 23,
5053                         'rawperl' => 59,
5054                         'term' => 58,
5055                         'loop' => 4,
5056                         'use' => 63,
5057                         'expr' => 62,
5058                         'capture' => 42,
5059                         'statement' => 5,
5060                         'view' => 7,
5061                         'wrapper' => 46,
5062                         'atomexpr' => 48,
5063                         'chunk' => 11,
5064                         'defblock' => 66,
5065                         'atomdir' => 12,
5066                         'anonblock' => 50,
5067                         'sterm' => 68,
5068                         'defblockname' => 14,
5069                         'filter' => 29,
5070                         'ident' => 16,
5071                         'perl' => 31,
5072                         'setlist' => 70,
5073                         'chunks' => 33,
5074                         'try' => 35,
5075                         'switch' => 34,
5076                         'assign' => 19,
5077                         'block' => 348,
5078                         'directive' => 71,
5079                         'macro' => 20,
5080                         'condition' => 73,
5081                         'lterm' => 56
5082                 }
5083         },
5084         {#State 344
5085                 ACTIONS => {
5086                         'SET' => 1,
5087                         'PERL' => 40,
5088                         'NOT' => 38,
5089                         'IDENT' => 2,
5090                         'CLEAR' => 41,
5091                         'UNLESS' => 3,
5092                         'IF' => 44,
5093                         "\$" => 43,
5094                         'STOP' => 6,
5095                         'CALL' => 45,
5096                         'THROW' => 8,
5097                         'GET' => 47,
5098                         "[" => 9,
5099                         'TRY' => 10,
5100                         'LAST' => 49,
5101                         'DEBUG' => 51,
5102                         'RAWPERL' => 13,
5103                         'META' => 15,
5104                         'INCLUDE' => 17,
5105                         "(" => 53,
5106                         'SWITCH' => 54,
5107                         'MACRO' => 18,
5108                         'WRAPPER' => 55,
5109                         ";" => -18,
5110                         'FOR' => 21,
5111                         'LITERAL' => 57,
5112                         'NEXT' => 22,
5113                         "\"" => 60,
5114                         'TEXT' => 24,
5115                         'PROCESS' => 61,
5116                         'RETURN' => 64,
5117                         'FILTER' => 25,
5118                         'INSERT' => 65,
5119                         'NUMBER' => 26,
5120                         'REF' => 27,
5121                         'WHILE' => 67,
5122                         'BLOCK' => 28,
5123                         'DEFAULT' => 69,
5124                         "{" => 30,
5125                         'USE' => 32,
5126                         'VIEW' => 36,
5127                         "\${" => 37
5128                 },
5129                 DEFAULT => -3,
5130                 GOTOS => {
5131                         'item' => 39,
5132                         'node' => 23,
5133                         'rawperl' => 59,
5134                         'term' => 58,
5135                         'loop' => 4,
5136                         'use' => 63,
5137                         'expr' => 62,
5138                         'capture' => 42,
5139                         'statement' => 5,
5140                         'view' => 7,
5141                         'wrapper' => 46,
5142                         'atomexpr' => 48,
5143                         'chunk' => 11,
5144                         'defblock' => 66,
5145                         'atomdir' => 12,
5146                         'anonblock' => 50,
5147                         'sterm' => 68,
5148                         'defblockname' => 14,
5149                         'filter' => 29,
5150                         'ident' => 16,
5151                         'perl' => 31,
5152                         'setlist' => 70,
5153                         'chunks' => 33,
5154                         'try' => 35,
5155                         'switch' => 34,
5156                         'assign' => 19,
5157                         'block' => 349,
5158                         'directive' => 71,
5159                         'macro' => 20,
5160                         'condition' => 73,
5161                         'lterm' => 56
5162                 }
5163         },
5164         {#State 345
5165                 ACTIONS => {
5166                         'ELSIF' => 290,
5167                         'ELSE' => 288
5168                 },
5169                 DEFAULT => -50,
5170                 GOTOS => {
5171                         'else' => 350
5172                 }
5173         },
5174         {#State 346
5175                 DEFAULT => -68
5176         },
5177         {#State 347
5178                 DEFAULT => -69
5179         },
5180         {#State 348
5181                 ACTIONS => {
5182                         'CASE' => 313
5183                 },
5184                 DEFAULT => -55,
5185                 GOTOS => {
5186                         'case' => 351
5187                 }
5188         },
5189         {#State 349
5190                 DEFAULT => -53
5191         },
5192         {#State 350
5193                 DEFAULT => -48
5194         },
5195         {#State 351
5196                 DEFAULT => -52
5197         }
5198 ]; 
5199
5200
5201 #========================================================================
5202 # Rules
5203 #========================================================================
5204
5205 $RULES = [
5206         [#Rule 0
5207                  '$start', 2, undef
5208         ],
5209         [#Rule 1
5210                  'template', 1,
5211 sub
5212 #line 64 "Parser.yp"
5213 { $factory->template($_[1])           }
5214         ],
5215         [#Rule 2
5216                  'block', 1,
5217 sub
5218 #line 67 "Parser.yp"
5219 { $factory->block($_[1])              }
5220         ],
5221         [#Rule 3
5222                  'block', 0,
5223 sub
5224 #line 68 "Parser.yp"
5225 { $factory->block()                   }
5226         ],
5227         [#Rule 4
5228                  'chunks', 2,
5229 sub
5230 #line 71 "Parser.yp"
5231 { push(@{$_[1]}, $_[2]) 
5232                                         if defined $_[2]; $_[1]           }
5233         ],
5234         [#Rule 5
5235                  'chunks', 1,
5236 sub
5237 #line 73 "Parser.yp"
5238 { defined $_[1] ? [ $_[1] ] : [ ]     }
5239         ],
5240         [#Rule 6
5241                  'chunk', 1,
5242 sub
5243 #line 76 "Parser.yp"
5244 { $factory->textblock($_[1])          }
5245         ],
5246         [#Rule 7
5247                  'chunk', 2,
5248 sub
5249 #line 77 "Parser.yp"
5250 { return '' unless $_[1];
5251                                       $_[0]->location() . $_[1];
5252                                     }
5253         ],
5254         [#Rule 8
5255                  'statement', 1, undef
5256         ],
5257         [#Rule 9
5258                  'statement', 1, undef
5259         ],
5260         [#Rule 10
5261                  'statement', 1, undef
5262         ],
5263         [#Rule 11
5264                  'statement', 1, undef
5265         ],
5266         [#Rule 12
5267                  'statement', 1, undef
5268         ],
5269         [#Rule 13
5270                  'statement', 1, undef
5271         ],
5272         [#Rule 14
5273                  'statement', 1, undef
5274         ],
5275         [#Rule 15
5276                  'statement', 1, undef
5277         ],
5278         [#Rule 16
5279                  'statement', 1,
5280 sub
5281 #line 90 "Parser.yp"
5282 { $factory->get($_[1])                }
5283         ],
5284         [#Rule 17
5285                  'statement', 2,
5286 sub
5287 #line 91 "Parser.yp"
5288 { $_[0]->add_metadata($_[2]);         }
5289         ],
5290         [#Rule 18
5291                  'statement', 0, undef
5292         ],
5293         [#Rule 19
5294                  'directive', 1,
5295 sub
5296 #line 95 "Parser.yp"
5297 { $factory->set($_[1])                }
5298         ],
5299         [#Rule 20
5300                  'directive', 1, undef
5301         ],
5302         [#Rule 21
5303                  'directive', 1, undef
5304         ],
5305         [#Rule 22
5306                  'directive', 1, undef
5307         ],
5308         [#Rule 23
5309                  'directive', 1, undef
5310         ],
5311         [#Rule 24
5312                  'directive', 1, undef
5313         ],
5314         [#Rule 25
5315                  'directive', 1, undef
5316         ],
5317         [#Rule 26
5318                  'atomexpr', 1,
5319 sub
5320 #line 109 "Parser.yp"
5321 { $factory->get($_[1])                }
5322         ],
5323         [#Rule 27
5324                  'atomexpr', 1, undef
5325         ],
5326         [#Rule 28
5327                  'atomdir', 2,
5328 sub
5329 #line 113 "Parser.yp"
5330 { $factory->get($_[2])                }
5331         ],
5332         [#Rule 29
5333                  'atomdir', 2,
5334 sub
5335 #line 114 "Parser.yp"
5336 { $factory->call($_[2])               }
5337         ],
5338         [#Rule 30
5339                  'atomdir', 2,
5340 sub
5341 #line 115 "Parser.yp"
5342 { $factory->set($_[2])                }
5343         ],
5344         [#Rule 31
5345                  'atomdir', 2,
5346 sub
5347 #line 116 "Parser.yp"
5348 { $factory->default($_[2])            }
5349         ],
5350         [#Rule 32
5351                  'atomdir', 2,
5352 sub
5353 #line 117 "Parser.yp"
5354 { $factory->insert($_[2])             }
5355         ],
5356         [#Rule 33
5357                  'atomdir', 2,
5358 sub
5359 #line 118 "Parser.yp"
5360 { $factory->include($_[2])            }
5361         ],
5362         [#Rule 34
5363                  'atomdir', 2,
5364 sub
5365 #line 119 "Parser.yp"
5366 { $factory->process($_[2])            }
5367         ],
5368         [#Rule 35
5369                  'atomdir', 2,
5370 sub
5371 #line 120 "Parser.yp"
5372 { $factory->throw($_[2])              }
5373         ],
5374         [#Rule 36
5375                  'atomdir', 1,
5376 sub
5377 #line 121 "Parser.yp"
5378 { $factory->return()                  }
5379         ],
5380         [#Rule 37
5381                  'atomdir', 1,
5382 sub
5383 #line 122 "Parser.yp"
5384 { $factory->stop()                    }
5385         ],
5386         [#Rule 38
5387                  'atomdir', 1,
5388 sub
5389 #line 123 "Parser.yp"
5390 { "\$output = '';";                   }
5391         ],
5392         [#Rule 39
5393                  'atomdir', 1,
5394 sub
5395 #line 124 "Parser.yp"
5396 { $_[0]->block_label('last ', ';')    }
5397         ],
5398         [#Rule 40
5399                  'atomdir', 1,
5400 sub
5401 #line 125 "Parser.yp"
5402 { $_[0]->in_block('FOR')
5403                                         ? $factory->next($_[0]->block_label)
5404                                         : $_[0]->block_label('next ', ';') }
5405         ],
5406         [#Rule 41
5407                  'atomdir', 2,
5408 sub
5409 #line 128 "Parser.yp"
5410 { if ($_[2]->[0]->[0] =~ /^'(on|off)'$/) {
5411                                           $_[0]->{ DEBUG_DIRS } = ($1 eq 'on');
5412                                           $factory->debug($_[2]);
5413                                       }
5414                                       else {
5415                                           $_[0]->{ DEBUG_DIRS } ? $factory->debug($_[2]) : '';
5416                                       }
5417                                     }
5418         ],
5419         [#Rule 42
5420                  'atomdir', 1, undef
5421         ],
5422         [#Rule 43
5423                  'atomdir', 1, undef
5424         ],
5425         [#Rule 44
5426                  'condition', 6,
5427 sub
5428 #line 141 "Parser.yp"
5429 { $factory->if(@_[2, 4, 5])           }
5430         ],
5431         [#Rule 45
5432                  'condition', 3,
5433 sub
5434 #line 142 "Parser.yp"
5435 { $factory->if(@_[3, 1])              }
5436         ],
5437         [#Rule 46
5438                  'condition', 6,
5439 sub
5440 #line 144 "Parser.yp"
5441 { $factory->if("!($_[2])", @_[4, 5])  }
5442         ],
5443         [#Rule 47
5444                  'condition', 3,
5445 sub
5446 #line 145 "Parser.yp"
5447 { $factory->if("!($_[3])", $_[1])     }
5448         ],
5449         [#Rule 48
5450                  'else', 5,
5451 sub
5452 #line 149 "Parser.yp"
5453 { unshift(@{$_[5]}, [ @_[2, 4] ]);
5454                                       $_[5];                              }
5455         ],
5456         [#Rule 49
5457                  'else', 3,
5458 sub
5459 #line 151 "Parser.yp"
5460 { [ $_[3] ]                           }
5461         ],
5462         [#Rule 50
5463                  'else', 0,
5464 sub
5465 #line 152 "Parser.yp"
5466 { [ undef ]                           }
5467         ],
5468         [#Rule 51
5469                  'switch', 6,
5470 sub
5471 #line 156 "Parser.yp"
5472 { $factory->switch(@_[2, 5])          }
5473         ],
5474         [#Rule 52
5475                  'case', 5,
5476 sub
5477 #line 160 "Parser.yp"
5478 { unshift(@{$_[5]}, [ @_[2, 4] ]); 
5479                                       $_[5];                              }
5480         ],
5481         [#Rule 53
5482                  'case', 4,
5483 sub
5484 #line 162 "Parser.yp"
5485 { [ $_[4] ]                           }
5486         ],
5487         [#Rule 54
5488                  'case', 3,
5489 sub
5490 #line 163 "Parser.yp"
5491 { [ $_[3] ]                           }
5492         ],
5493         [#Rule 55
5494                  'case', 0,
5495 sub
5496 #line 164 "Parser.yp"
5497 { [ undef ]                           }
5498         ],
5499         [#Rule 56
5500                  '@1-3', 0,
5501 sub
5502 #line 167 "Parser.yp"
5503 { $_[0]->enter_block('FOR')           }
5504         ],
5505         [#Rule 57
5506                  'loop', 6,
5507 sub
5508 #line 168 "Parser.yp"
5509 { $factory->foreach(@{$_[2]}, $_[5], $_[0]->leave_block)  }
5510         ],
5511         [#Rule 58
5512                  'loop', 3,
5513 sub
5514 #line 169 "Parser.yp"
5515 { $factory->foreach(@{$_[3]}, $_[1])  }
5516         ],
5517         [#Rule 59
5518                  '@2-3', 0,
5519 sub
5520 #line 170 "Parser.yp"
5521 { $_[0]->enter_block('WHILE')         }
5522         ],
5523         [#Rule 60
5524                  'loop', 6,
5525 sub
5526 #line 171 "Parser.yp"
5527 { $factory->while(@_[2, 5], $_[0]->leave_block) }
5528         ],
5529         [#Rule 61
5530                  'loop', 3,
5531 sub
5532 #line 172 "Parser.yp"
5533 { $factory->while(@_[3, 1]) }
5534         ],
5535         [#Rule 62
5536                  'loopvar', 4,
5537 sub
5538 #line 175 "Parser.yp"
5539 { [ @_[1, 3, 4] ]                     }
5540         ],
5541         [#Rule 63
5542                  'loopvar', 4,
5543 sub
5544 #line 176 "Parser.yp"
5545 { [ @_[1, 3, 4] ]                     }
5546         ],
5547         [#Rule 64
5548                  'loopvar', 2,
5549 sub
5550 #line 177 "Parser.yp"
5551 { [ 0, @_[1, 2] ]                     }
5552         ],
5553         [#Rule 65
5554                  'wrapper', 5,
5555 sub
5556 #line 181 "Parser.yp"
5557 { $factory->wrapper(@_[2, 4])         }
5558         ],
5559         [#Rule 66
5560                  'wrapper', 3,
5561 sub
5562 #line 183 "Parser.yp"
5563 { $factory->wrapper(@_[3, 1])         }
5564         ],
5565         [#Rule 67
5566                  'try', 5,
5567 sub
5568 #line 187 "Parser.yp"
5569 { $factory->try(@_[3, 4])             }
5570         ],
5571         [#Rule 68
5572                  'final', 5,
5573 sub
5574 #line 191 "Parser.yp"
5575 { unshift(@{$_[5]}, [ @_[2,4] ]);
5576                                       $_[5];                              }
5577         ],
5578         [#Rule 69
5579                  'final', 5,
5580 sub
5581 #line 194 "Parser.yp"
5582 { unshift(@{$_[5]}, [ undef, $_[4] ]);
5583                                       $_[5];                              }
5584         ],
5585         [#Rule 70
5586                  'final', 4,
5587 sub
5588 #line 197 "Parser.yp"
5589 { unshift(@{$_[4]}, [ undef, $_[3] ]);
5590                                       $_[4];                              }
5591         ],
5592         [#Rule 71
5593                  'final', 3,
5594 sub
5595 #line 199 "Parser.yp"
5596 { [ $_[3] ]                           }
5597         ],
5598         [#Rule 72
5599                  'final', 0,
5600 sub
5601 #line 200 "Parser.yp"
5602 { [ 0 ] }
5603         ],
5604         [#Rule 73
5605                  'use', 2,
5606 sub
5607 #line 203 "Parser.yp"
5608 { $factory->use($_[2])                }
5609         ],
5610         [#Rule 74
5611                  '@3-3', 0,
5612 sub
5613 #line 206 "Parser.yp"
5614 { $_[0]->push_defblock();             }
5615         ],
5616         [#Rule 75
5617                  'view', 6,
5618 sub
5619 #line 207 "Parser.yp"
5620 { $factory->view(@_[2,5], 
5621                                                      $_[0]->pop_defblock) }
5622         ],
5623         [#Rule 76
5624                  '@4-2', 0,
5625 sub
5626 #line 211 "Parser.yp"
5627 { ${$_[0]->{ INPERL }}++;             }
5628         ],
5629         [#Rule 77
5630                  'perl', 5,
5631 sub
5632 #line 212 "Parser.yp"
5633 { ${$_[0]->{ INPERL }}--;
5634                                       $_[0]->{ EVAL_PERL } 
5635                                       ? $factory->perl($_[4])             
5636                                       : $factory->no_perl();              }
5637         ],
5638         [#Rule 78
5639                  '@5-1', 0,
5640 sub
5641 #line 218 "Parser.yp"
5642 { ${$_[0]->{ INPERL }}++; 
5643                                       $rawstart = ${$_[0]->{'LINE'}};     }
5644         ],
5645         [#Rule 79
5646                  'rawperl', 5,
5647 sub
5648 #line 220 "Parser.yp"
5649 { ${$_[0]->{ INPERL }}--;
5650                                       $_[0]->{ EVAL_PERL } 
5651                                       ? $factory->rawperl($_[4], $rawstart)
5652                                       : $factory->no_perl();              }
5653         ],
5654         [#Rule 80
5655                  'filter', 5,
5656 sub
5657 #line 227 "Parser.yp"
5658 { $factory->filter(@_[2,4])           }
5659         ],
5660         [#Rule 81
5661                  'filter', 3,
5662 sub
5663 #line 229 "Parser.yp"
5664 { $factory->filter(@_[3,1])           }
5665         ],
5666         [#Rule 82
5667                  'defblock', 5,
5668 sub
5669 #line 234 "Parser.yp"
5670 { my $name = join('/', @{ $_[0]->{ DEFBLOCKS } });
5671                                       pop(@{ $_[0]->{ DEFBLOCKS } });
5672                                       $_[0]->define_block($name, $_[4]); 
5673                                       undef
5674                                     }
5675         ],
5676         [#Rule 83
5677                  'defblockname', 2,
5678 sub
5679 #line 241 "Parser.yp"
5680 { push(@{ $_[0]->{ DEFBLOCKS } }, $_[2]);
5681                                       $_[2];
5682                                     }
5683         ],
5684         [#Rule 84
5685                  'blockname', 1, undef
5686         ],
5687         [#Rule 85
5688                  'blockname', 1,
5689 sub
5690 #line 247 "Parser.yp"
5691 { $_[1] =~ s/^'(.*)'$/$1/; $_[1]      }
5692         ],
5693         [#Rule 86
5694                  'blockargs', 1, undef
5695         ],
5696         [#Rule 87
5697                  'blockargs', 0, undef
5698         ],
5699         [#Rule 88
5700                  'anonblock', 5,
5701 sub
5702 #line 255 "Parser.yp"
5703 { local $" = ', ';
5704                                       print STDERR "experimental block args: [@{ $_[2] }]\n"
5705                                           if $_[2];
5706                                       $factory->anon_block($_[4])         }
5707         ],
5708         [#Rule 89
5709                  'capture', 3,
5710 sub
5711 #line 261 "Parser.yp"
5712 { $factory->capture(@_[1, 3])         }
5713         ],
5714         [#Rule 90
5715                  'macro', 6,
5716 sub
5717 #line 265 "Parser.yp"
5718 { $factory->macro(@_[2, 6, 4])        }
5719         ],
5720         [#Rule 91
5721                  'macro', 3,
5722 sub
5723 #line 266 "Parser.yp"
5724 { $factory->macro(@_[2, 3])           }
5725         ],
5726         [#Rule 92
5727                  'mdir', 1, undef
5728         ],
5729         [#Rule 93
5730                  'mdir', 4,
5731 sub
5732 #line 270 "Parser.yp"
5733 { $_[3]                               }
5734         ],
5735         [#Rule 94
5736                  'margs', 2,
5737 sub
5738 #line 273 "Parser.yp"
5739 { push(@{$_[1]}, $_[2]); $_[1]        }
5740         ],
5741         [#Rule 95
5742                  'margs', 2,
5743 sub
5744 #line 274 "Parser.yp"
5745 { $_[1]                               }
5746         ],
5747         [#Rule 96
5748                  'margs', 1,
5749 sub
5750 #line 275 "Parser.yp"
5751 { [ $_[1] ]                           }
5752         ],
5753         [#Rule 97
5754                  'metadata', 2,
5755 sub
5756 #line 278 "Parser.yp"
5757 { push(@{$_[1]}, @{$_[2]}); $_[1]     }
5758         ],
5759         [#Rule 98
5760                  'metadata', 2, undef
5761         ],
5762         [#Rule 99
5763                  'metadata', 1, undef
5764         ],
5765         [#Rule 100
5766                  'meta', 3,
5767 sub
5768 #line 283 "Parser.yp"
5769 { for ($_[3]) { s/^'//; s/'$//; 
5770                                                        s/\\'/'/g  }; 
5771                                          [ @_[1,3] ] }
5772         ],
5773         [#Rule 101
5774                  'meta', 5,
5775 sub
5776 #line 286 "Parser.yp"
5777 { [ @_[1,4] ] }
5778         ],
5779         [#Rule 102
5780                  'meta', 3,
5781 sub
5782 #line 287 "Parser.yp"
5783 { [ @_[1,3] ] }
5784         ],
5785         [#Rule 103
5786                  'term', 1, undef
5787         ],
5788         [#Rule 104
5789                  'term', 1, undef
5790         ],
5791         [#Rule 105
5792                  'lterm', 3,
5793 sub
5794 #line 299 "Parser.yp"
5795 { "[ $_[2] ]"                         }
5796         ],
5797         [#Rule 106
5798                  'lterm', 3,
5799 sub
5800 #line 300 "Parser.yp"
5801 { "[ $_[2] ]"                         }
5802         ],
5803         [#Rule 107
5804                  'lterm', 2,
5805 sub
5806 #line 301 "Parser.yp"
5807 { "[ ]"                               }
5808         ],
5809         [#Rule 108
5810                  'lterm', 3,
5811 sub
5812 #line 302 "Parser.yp"
5813 { "{ $_[2]  }"                        }
5814         ],
5815         [#Rule 109
5816                  'sterm', 1,
5817 sub
5818 #line 305 "Parser.yp"
5819 { $factory->ident($_[1])              }
5820         ],
5821         [#Rule 110
5822                  'sterm', 2,
5823 sub
5824 #line 306 "Parser.yp"
5825 { $factory->identref($_[2])           }
5826         ],
5827         [#Rule 111
5828                  'sterm', 3,
5829 sub
5830 #line 307 "Parser.yp"
5831 { $factory->quoted($_[2])             }
5832         ],
5833         [#Rule 112
5834                  'sterm', 1, undef
5835         ],
5836         [#Rule 113
5837                  'sterm', 1, undef
5838         ],
5839         [#Rule 114
5840                  'list', 2,
5841 sub
5842 #line 312 "Parser.yp"
5843 { "$_[1], $_[2]"                      }
5844         ],
5845         [#Rule 115
5846                  'list', 2, undef
5847         ],
5848         [#Rule 116
5849                  'list', 1, undef
5850         ],
5851         [#Rule 117
5852                  'range', 3,
5853 sub
5854 #line 317 "Parser.yp"
5855 { $_[1] . '..' . $_[3]                }
5856         ],
5857         [#Rule 118
5858                  'hash', 1, undef
5859         ],
5860         [#Rule 119
5861                  'hash', 0,
5862 sub
5863 #line 322 "Parser.yp"
5864 { "" }
5865         ],
5866         [#Rule 120
5867                  'params', 2,
5868 sub
5869 #line 325 "Parser.yp"
5870 { "$_[1], $_[2]"                      }
5871         ],
5872         [#Rule 121
5873                  'params', 2, undef
5874         ],
5875         [#Rule 122
5876                  'params', 1, undef
5877         ],
5878         [#Rule 123
5879                  'param', 3,
5880 sub
5881 #line 330 "Parser.yp"
5882 { "$_[1] => $_[3]"                    }
5883         ],
5884         [#Rule 124
5885                  'param', 3,
5886 sub
5887 #line 331 "Parser.yp"
5888 { "$_[1] => $_[3]"                    }
5889         ],
5890         [#Rule 125
5891                  'ident', 3,
5892 sub
5893 #line 334 "Parser.yp"
5894 { push(@{$_[1]}, @{$_[3]}); $_[1]     }
5895         ],
5896         [#Rule 126
5897                  'ident', 3,
5898 sub
5899 #line 335 "Parser.yp"
5900 { push(@{$_[1]}, 
5901                                            map {($_, 0)} split(/\./, $_[3]));
5902                                       $_[1];                              }
5903         ],
5904         [#Rule 127
5905                  'ident', 1, undef
5906         ],
5907         [#Rule 128
5908                  'node', 1,
5909 sub
5910 #line 341 "Parser.yp"
5911 { [ $_[1], 0 ]                        }
5912         ],
5913         [#Rule 129
5914                  'node', 4,
5915 sub
5916 #line 342 "Parser.yp"
5917 { [ $_[1], $factory->args($_[3]) ]    }
5918         ],
5919         [#Rule 130
5920                  'item', 1,
5921 sub
5922 #line 345 "Parser.yp"
5923 { "'$_[1]'"                           }
5924         ],
5925         [#Rule 131
5926                  'item', 3,
5927 sub
5928 #line 346 "Parser.yp"
5929 { $_[2]                               }
5930         ],
5931         [#Rule 132
5932                  'item', 2,
5933 sub
5934 #line 347 "Parser.yp"
5935 { $_[0]->{ V1DOLLAR }
5936                                        ? "'$_[2]'" 
5937                                        : $factory->ident(["'$_[2]'", 0])  }
5938         ],
5939         [#Rule 133
5940                  'expr', 3,
5941 sub
5942 #line 352 "Parser.yp"
5943 { "$_[1] $_[2] $_[3]"                 }
5944         ],
5945         [#Rule 134
5946                  'expr', 3,
5947 sub
5948 #line 353 "Parser.yp"
5949 { "$_[1] $_[2] $_[3]"                 }
5950         ],
5951         [#Rule 135
5952                  'expr', 3,
5953 sub
5954 #line 354 "Parser.yp"
5955 { "$_[1] $_[2] $_[3]"                 }
5956         ],
5957         [#Rule 136
5958                  'expr', 3,
5959 sub
5960 #line 355 "Parser.yp"
5961 { "int($_[1] / $_[3])"                }
5962         ],
5963         [#Rule 137
5964                  'expr', 3,
5965 sub
5966 #line 356 "Parser.yp"
5967 { "$_[1] % $_[3]"                     }
5968         ],
5969         [#Rule 138
5970                  'expr', 3,
5971 sub
5972 #line 357 "Parser.yp"
5973 { "$_[1] $CMPOP{ $_[2] } $_[3]"       }
5974         ],
5975         [#Rule 139
5976                  'expr', 3,
5977 sub
5978 #line 358 "Parser.yp"
5979 { "$_[1]  . $_[3]"                    }
5980         ],
5981         [#Rule 140
5982                  'expr', 3,
5983 sub
5984 #line 359 "Parser.yp"
5985 { "$_[1] && $_[3]"                    }
5986         ],
5987         [#Rule 141
5988                  'expr', 3,
5989 sub
5990 #line 360 "Parser.yp"
5991 { "$_[1] || $_[3]"                    }
5992         ],
5993         [#Rule 142
5994                  'expr', 2,
5995 sub
5996 #line 361 "Parser.yp"
5997 { "! $_[2]"                           }
5998         ],
5999         [#Rule 143
6000                  'expr', 5,
6001 sub
6002 #line 362 "Parser.yp"
6003 { "$_[1] ? $_[3] : $_[5]"             }
6004         ],
6005         [#Rule 144
6006                  'expr', 3,
6007 sub
6008 #line 363 "Parser.yp"
6009 { $factory->assign(@{$_[2]})          }
6010         ],
6011         [#Rule 145
6012                  'expr', 3,
6013 sub
6014 #line 364 "Parser.yp"
6015 { "($_[2])"                           }
6016         ],
6017         [#Rule 146
6018                  'expr', 1, undef
6019         ],
6020         [#Rule 147
6021                  'setlist', 2,
6022 sub
6023 #line 368 "Parser.yp"
6024 { push(@{$_[1]}, @{$_[2]}); $_[1]     }
6025         ],
6026         [#Rule 148
6027                  'setlist', 2, undef
6028         ],
6029         [#Rule 149
6030                  'setlist', 1, undef
6031         ],
6032         [#Rule 150
6033                  'assign', 3,
6034 sub
6035 #line 374 "Parser.yp"
6036 { [ $_[1], $_[3] ]                    }
6037         ],
6038         [#Rule 151
6039                  'assign', 3,
6040 sub
6041 #line 375 "Parser.yp"
6042 { [ @_[1,3] ]                         }
6043         ],
6044         [#Rule 152
6045                  'args', 2,
6046 sub
6047 #line 382 "Parser.yp"
6048 { push(@{$_[1]}, $_[2]); $_[1]        }
6049         ],
6050         [#Rule 153
6051                  'args', 2,
6052 sub
6053 #line 383 "Parser.yp"
6054 { push(@{$_[1]->[0]}, $_[2]); $_[1]   }
6055         ],
6056         [#Rule 154
6057                  'args', 4,
6058 sub
6059 #line 384 "Parser.yp"
6060 { push(@{$_[1]->[0]}, "'', " . 
6061                                       $factory->assign(@_[2,4])); $_[1]  }
6062         ],
6063         [#Rule 155
6064                  'args', 2,
6065 sub
6066 #line 386 "Parser.yp"
6067 { $_[1]                               }
6068         ],
6069         [#Rule 156
6070                  'args', 0,
6071 sub
6072 #line 387 "Parser.yp"
6073 { [ [ ] ]                             }
6074         ],
6075         [#Rule 157
6076                  'lnameargs', 3,
6077 sub
6078 #line 397 "Parser.yp"
6079 { push(@{$_[3]}, $_[1]); $_[3]        }
6080         ],
6081         [#Rule 158
6082                  'lnameargs', 1, undef
6083         ],
6084         [#Rule 159
6085                  'lvalue', 1, undef
6086         ],
6087         [#Rule 160
6088                  'lvalue', 3,
6089 sub
6090 #line 402 "Parser.yp"
6091 { $factory->quoted($_[2])             }
6092         ],
6093         [#Rule 161
6094                  'lvalue', 1, undef
6095         ],
6096         [#Rule 162
6097                  'nameargs', 3,
6098 sub
6099 #line 406 "Parser.yp"
6100 { [ [$factory->ident($_[2])], $_[3] ]   }
6101         ],
6102         [#Rule 163
6103                  'nameargs', 2,
6104 sub
6105 #line 407 "Parser.yp"
6106 { [ @_[1,2] ] }
6107         ],
6108         [#Rule 164
6109                  'nameargs', 4,
6110 sub
6111 #line 408 "Parser.yp"
6112 { [ @_[1,3] ] }
6113         ],
6114         [#Rule 165
6115                  'names', 3,
6116 sub
6117 #line 411 "Parser.yp"
6118 { push(@{$_[1]}, $_[3]); $_[1] }
6119         ],
6120         [#Rule 166
6121                  'names', 1,
6122 sub
6123 #line 412 "Parser.yp"
6124 { [ $_[1] ]                    }
6125         ],
6126         [#Rule 167
6127                  'name', 3,
6128 sub
6129 #line 415 "Parser.yp"
6130 { $factory->quoted($_[2])  }
6131         ],
6132         [#Rule 168
6133                  'name', 1,
6134 sub
6135 #line 416 "Parser.yp"
6136 { "'$_[1]'" }
6137         ],
6138         [#Rule 169
6139                  'name', 1, undef
6140         ],
6141         [#Rule 170
6142                  'filename', 3,
6143 sub
6144 #line 420 "Parser.yp"
6145 { "$_[1].$_[3]" }
6146         ],
6147         [#Rule 171
6148                  'filename', 1, undef
6149         ],
6150         [#Rule 172
6151                  'filepart', 1, undef
6152         ],
6153         [#Rule 173
6154                  'filepart', 1, undef
6155         ],
6156         [#Rule 174
6157                  'filepart', 1, undef
6158         ],
6159         [#Rule 175
6160                  'quoted', 2,
6161 sub
6162 #line 434 "Parser.yp"
6163 { push(@{$_[1]}, $_[2]) 
6164                                           if defined $_[2]; $_[1]         }
6165         ],
6166         [#Rule 176
6167                  'quoted', 0,
6168 sub
6169 #line 436 "Parser.yp"
6170 { [ ]                                 }
6171         ],
6172         [#Rule 177
6173                  'quotable', 1,
6174 sub
6175 #line 439 "Parser.yp"
6176 { $factory->ident($_[1])              }
6177         ],
6178         [#Rule 178
6179                  'quotable', 1,
6180 sub
6181 #line 440 "Parser.yp"
6182 { $factory->text($_[1])               }
6183         ],
6184         [#Rule 179
6185                  'quotable', 1,
6186 sub
6187 #line 441 "Parser.yp"
6188 { undef                               }
6189         ]
6190 ];
6191
6192
6193
6194 1;
6195
6196 __END__
6197
6198 =head1 NAME
6199
6200 Template::Grammar - Parser state/rule tables for the TT grammar
6201
6202 =head1 SYNOPSIS
6203
6204     # no user serviceable parts inside
6205
6206 =head1 DESCRIPTION
6207
6208 This module defines the state and rule tables that the L<Template::Parser>
6209 module uses to parse templates.  It is generated from a YACC-like grammar
6210 using the C<Parse::Yapp> module.  The F<parser> sub-directory of the 
6211 Template Toolkit source distribution contains the grammar and other 
6212 files required to generate this module.
6213
6214 But you don't need to worry about any of that unless you're planning to 
6215 modify the Template Toolkit language.
6216
6217 =head1 AUTHOR
6218
6219 Andy Wardley E<lt>abw@wardley.orgE<gt>
6220
6221 L<http://wardley.org/>
6222
6223 =head1 COPYRIGHT
6224
6225 Copyright (C) 1996-2007 Andy Wardley.  All Rights Reserved.
6226
6227 This module is free software; you can redistribute it and/or
6228 modify it under the same terms as Perl itself.
6229
6230 =head1 SEE ALSO
6231
6232 L<Template::Parser>
6233
6234 =cut
6235
6236 # Local Variables:
6237 # mode: perl
6238 # perl-indent-level: 4
6239 # indent-tabs-mode: nil
6240 # End:
6241 #
6242 # vim: expandtab shiftwidth=4:
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252