PEEL Shopping
Open source ecommerce : PEEL Shopping
smarty_internal_templateparser.php
Go to the documentation of this file.
1 <?php
12 class TP_yyToken implements ArrayAccess
13 {
14  public $string = '';
15  public $metadata = array();
16 
17  function __construct($s, $m = array())
18  {
19  if ($s instanceof TP_yyToken) {
20  $this->string = $s->string;
21  $this->metadata = $s->metadata;
22  } else {
23  $this->string = (string) $s;
24  if ($m instanceof TP_yyToken) {
25  $this->metadata = $m->metadata;
26  } elseif (is_array($m)) {
27  $this->metadata = $m;
28  }
29  }
30  }
31 
32  function __toString()
33  {
34  return $this->_string;
35  }
36 
37  function offsetExists($offset)
38  {
39  return isset($this->metadata[$offset]);
40  }
41 
42  function offsetGet($offset)
43  {
44  return $this->metadata[$offset];
45  }
46 
47  function offsetSet($offset, $value)
48  {
49  if ($offset === null) {
50  if (isset($value[0])) {
51  $x = ($value instanceof TP_yyToken) ?
52  $value->metadata : $value;
53  $this->metadata = array_merge($this->metadata, $x);
54  return;
55  }
56  $offset = count($this->metadata);
57  }
58  if ($value === null) {
59  return;
60  }
61  if ($value instanceof TP_yyToken) {
62  if ($value->metadata) {
63  $this->metadata[$offset] = $value->metadata;
64  }
65  } elseif ($value) {
66  $this->metadata[$offset] = $value;
67  }
68  }
69 
70  function offsetUnset($offset)
71  {
72  unset($this->metadata[$offset]);
73  }
74 }
75 
77 {
78  public $stateno; /* The state-number */
79  public $major; /* The major token value. This is the code
80  ** number for the token at this stack level */
81  public $minor; /* The user-supplied minor token value. This
82  ** is the value of the token */
83 };
84 
85 
86 #line 12 "smarty_internal_templateparser.y"
87 class Smarty_Internal_Templateparser#line 79 "smarty_internal_templateparser.php"
88 {
89 #line 14 "smarty_internal_templateparser.y"
90 
91  const Err1 = "Security error: Call to private object member not allowed";
92  const Err2 = "Security error: Call to dynamic object member not allowed";
93  const Err3 = "PHP in template not allowed. Use SmartyBC to enable it";
94  // states whether the parse was successful or not
95  public $successful = true;
96  public $retvalue = 0;
97  private $lex;
98  private $internalError = false;
99  private $strip = false;
100 
101  function __construct($lex, $compiler) {
102  $this->lex = $lex;
103  $this->compiler = $compiler;
104  $this->smarty = $this->compiler->smarty;
105  $this->template = $this->compiler->template;
106  $this->compiler->has_variable_string = false;
107  $this->compiler->prefix_code = array();
108  $this->prefix_number = 0;
109  $this->block_nesting_level = 0;
110  if ($this->security = isset($this->smarty->security_policy)) {
111  $this->php_handling = $this->smarty->security_policy->php_handling;
112  } else {
113  $this->php_handling = $this->smarty->php_handling;
114  }
115  $this->is_xml = false;
116  $this->asp_tags = (ini_get('asp_tags') != '0');
117  $this->current_buffer = $this->root_buffer = new _smarty_template_buffer($this);
118  }
119 
120  public static function escape_start_tag($tag_text) {
121  $tag = preg_replace('/\A<\?(.*)\z/', '<<?php ?>?\1', $tag_text, -1 , $count); //Escape tag
122  return $tag;
123  }
124 
125  public static function escape_end_tag($tag_text) {
126  return '?<?php ?>>';
127  }
128 
129  public function compileVariable($variable) {
130  if (strpos($variable,'(') == 0) {
131  // not a variable variable
132  $var = trim($variable,'\'');
133  $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable($var, null, true, false)->nocache;
134  $this->template->properties['variables'][$var] = $this->compiler->tag_nocache|$this->compiler->nocache;
135  }
136 // return '(isset($_smarty_tpl->tpl_vars['. $variable .'])?$_smarty_tpl->tpl_vars['. $variable .']->value:$_smarty_tpl->getVariable('. $variable .')->value)';
137  return '$_smarty_tpl->tpl_vars['. $variable .']->value';
138  }
139 #line 132 "smarty_internal_templateparser.php"
140 
141  const TP_VERT = 1;
142  const TP_COLON = 2;
143  const TP_COMMENT = 3;
144  const TP_PHPSTARTTAG = 4;
145  const TP_PHPENDTAG = 5;
146  const TP_ASPSTARTTAG = 6;
147  const TP_ASPENDTAG = 7;
149  const TP_XMLTAG = 9;
150  const TP_TEXT = 10;
151  const TP_STRIPON = 11;
152  const TP_STRIPOFF = 12;
153  const TP_LITERALSTART = 13;
154  const TP_LITERALEND = 14;
155  const TP_LITERAL = 15;
156  const TP_LDEL = 16;
157  const TP_RDEL = 17;
158  const TP_DOLLAR = 18;
159  const TP_ID = 19;
160  const TP_EQUAL = 20;
161  const TP_PTR = 21;
162  const TP_LDELIF = 22;
163  const TP_LDELFOR = 23;
164  const TP_SEMICOLON = 24;
165  const TP_INCDEC = 25;
166  const TP_TO = 26;
167  const TP_STEP = 27;
168  const TP_LDELFOREACH = 28;
169  const TP_SPACE = 29;
170  const TP_AS = 30;
171  const TP_APTR = 31;
172  const TP_LDELSETFILTER = 32;
174  const TP_LDELSLASH = 34;
175  const TP_ATTR = 35;
176  const TP_INTEGER = 36;
177  const TP_COMMA = 37;
178  const TP_OPENP = 38;
179  const TP_CLOSEP = 39;
180  const TP_MATH = 40;
181  const TP_UNIMATH = 41;
182  const TP_ANDSYM = 42;
183  const TP_ISIN = 43;
184  const TP_ISDIVBY = 44;
185  const TP_ISNOTDIVBY = 45;
186  const TP_ISEVEN = 46;
187  const TP_ISNOTEVEN = 47;
188  const TP_ISEVENBY = 48;
189  const TP_ISNOTEVENBY = 49;
190  const TP_ISODD = 50;
191  const TP_ISNOTODD = 51;
192  const TP_ISODDBY = 52;
193  const TP_ISNOTODDBY = 53;
194  const TP_INSTANCEOF = 54;
195  const TP_QMARK = 55;
196  const TP_NOT = 56;
197  const TP_TYPECAST = 57;
198  const TP_HEX = 58;
199  const TP_DOT = 59;
201  const TP_DOUBLECOLON = 61;
202  const TP_AT = 62;
203  const TP_HATCH = 63;
204  const TP_OPENB = 64;
205  const TP_CLOSEB = 65;
206  const TP_EQUALS = 66;
207  const TP_NOTEQUALS = 67;
208  const TP_GREATERTHAN = 68;
209  const TP_LESSTHAN = 69;
210  const TP_GREATEREQUAL = 70;
211  const TP_LESSEQUAL = 71;
212  const TP_IDENTITY = 72;
213  const TP_NONEIDENTITY = 73;
214  const TP_MOD = 74;
215  const TP_LAND = 75;
216  const TP_LOR = 76;
217  const TP_LXOR = 77;
218  const TP_QUOTE = 78;
219  const TP_BACKTICK = 79;
220  const TP_DOLLARID = 80;
221  const YY_NO_ACTION = 597;
222  const YY_ACCEPT_ACTION = 596;
223  const YY_ERROR_ACTION = 595;
224 
225  const YY_SZ_ACTTAB = 2383;
226 static public $yy_action = array(
227  /* 0 */ 225, 275, 263, 276, 259, 257, 260, 390, 356, 359,
228  /* 10 */ 353, 193, 18, 127, 42, 317, 381, 351, 196, 350,
229  /* 20 */ 6, 108, 24, 98, 128, 190, 134, 318, 41, 41,
230  /* 30 */ 249, 329, 231, 18, 43, 43, 317, 26, 298, 50,
231  /* 40 */ 47, 48, 44, 10, 13, 305, 306, 12, 11, 340,
232  /* 50 */ 341, 40, 20, 387, 308, 307, 309, 374, 254, 248,
233  /* 60 */ 252, 217, 193, 385, 291, 375, 376, 377, 373, 372,
234  /* 70 */ 368, 367, 369, 370, 371, 378, 379, 225, 312, 255,
235  /* 80 */ 225, 225, 118, 2, 207, 76, 135, 596, 95, 281,
236  /* 90 */ 271, 264, 2, 366, 315, 386, 461, 383, 232, 294,
237  /* 100 */ 303, 388, 313, 389, 227, 41, 144, 225, 461, 245,
238  /* 110 */ 282, 43, 218, 358, 461, 144, 50, 47, 48, 44,
239  /* 120 */ 10, 13, 305, 306, 12, 11, 340, 341, 40, 20,
240  /* 130 */ 105, 177, 522, 46, 46, 41, 19, 522, 143, 297,
241  /* 140 */ 325, 43, 375, 376, 377, 373, 372, 368, 367, 369,
242  /* 150 */ 370, 371, 378, 379, 225, 312, 293, 206, 225, 141,
243  /* 160 */ 124, 225, 54, 119, 123, 225, 459, 38, 173, 246,
244  /* 170 */ 319, 315, 386, 347, 455, 232, 294, 303, 459, 313,
245  /* 180 */ 139, 321, 41, 31, 459, 41, 41, 2, 43, 188,
246  /* 190 */ 2, 43, 43, 50, 47, 48, 44, 10, 13, 305,
247  /* 200 */ 306, 12, 11, 340, 341, 40, 20, 225, 136, 301,
248  /* 210 */ 144, 194, 350, 144, 46, 202, 206, 328, 198, 375,
249  /* 220 */ 376, 377, 373, 372, 368, 367, 369, 370, 371, 378,
250  /* 230 */ 379, 21, 9, 28, 185, 41, 318, 225, 265, 271,
251  /* 240 */ 264, 43, 206, 27, 173, 206, 50, 47, 48, 44,
252  /* 250 */ 10, 13, 305, 306, 12, 11, 340, 341, 40, 20,
253  /* 260 */ 225, 178, 18, 212, 330, 317, 17, 32, 8, 14,
254  /* 270 */ 325, 267, 375, 376, 377, 373, 372, 368, 367, 369,
255  /* 280 */ 370, 371, 378, 379, 136, 363, 363, 207, 41, 4,
256  /* 290 */ 46, 5, 131, 233, 43, 25, 186, 289, 318, 50,
257  /* 300 */ 47, 48, 44, 10, 13, 305, 306, 12, 11, 340,
258  /* 310 */ 341, 40, 20, 225, 100, 161, 18, 355, 361, 317,
259  /* 320 */ 26, 109, 360, 346, 325, 375, 376, 377, 373, 372,
260  /* 330 */ 368, 367, 369, 370, 371, 378, 379, 106, 201, 172,
261  /* 340 */ 25, 206, 288, 25, 18, 261, 181, 317, 325, 45,
262  /* 350 */ 339, 129, 50, 47, 48, 44, 10, 13, 305, 306,
263  /* 360 */ 12, 11, 340, 341, 40, 20, 225, 104, 162, 18,
264  /* 370 */ 16, 205, 317, 206, 248, 238, 43, 325, 375, 376,
265  /* 380 */ 377, 373, 372, 368, 367, 369, 370, 371, 378, 379,
266  /* 390 */ 255, 354, 243, 229, 206, 342, 18, 239, 242, 241,
267  /* 400 */ 248, 266, 300, 330, 240, 50, 47, 48, 44, 10,
268  /* 410 */ 13, 305, 306, 12, 11, 340, 341, 40, 20, 225,
269  /* 420 */ 165, 176, 184, 18, 18, 18, 253, 215, 251, 325,
270  /* 430 */ 325, 375, 376, 377, 373, 372, 368, 367, 369, 370,
271  /* 440 */ 371, 378, 379, 304, 268, 159, 207, 207, 247, 206,
272  /* 450 */ 148, 41, 195, 350, 325, 27, 33, 43, 50, 47,
273  /* 460 */ 48, 44, 10, 13, 305, 306, 12, 11, 340, 341,
274  /* 470 */ 40, 20, 163, 225, 328, 199, 133, 29, 187, 23,
275  /* 480 */ 250, 325, 101, 225, 375, 376, 377, 373, 372, 368,
276  /* 490 */ 367, 369, 370, 371, 378, 379, 225, 298, 207, 334,
277  /* 500 */ 225, 45, 312, 103, 299, 192, 154, 364, 18, 302,
278  /* 510 */ 135, 317, 285, 35, 173, 203, 320, 3, 236, 6,
279  /* 520 */ 108, 41, 232, 294, 303, 134, 313, 43, 130, 249,
280  /* 530 */ 329, 231, 250, 225, 280, 50, 47, 48, 44, 10,
281  /* 540 */ 13, 305, 306, 12, 11, 340, 341, 40, 20, 336,
282  /* 550 */ 36, 166, 212, 230, 332, 228, 338, 8, 132, 330,
283  /* 560 */ 325, 375, 376, 377, 373, 372, 368, 367, 369, 370,
284  /* 570 */ 371, 378, 379, 225, 312, 345, 37, 362, 141, 312,
285  /* 580 */ 94, 77, 135, 156, 236, 182, 173, 135, 122, 204,
286  /* 590 */ 315, 386, 365, 225, 232, 294, 303, 137, 313, 232,
287  /* 600 */ 294, 303, 125, 313, 41, 222, 333, 180, 277, 337,
288  /* 610 */ 43, 225, 50, 47, 48, 44, 10, 13, 305, 306,
289  /* 620 */ 12, 11, 340, 341, 40, 20, 136, 335, 316, 5,
290  /* 630 */ 22, 197, 269, 34, 173, 148, 126, 116, 375, 376,
291  /* 640 */ 377, 373, 372, 368, 367, 369, 370, 371, 378, 379,
292  /* 650 */ 225, 312, 298, 225, 292, 141, 312, 258, 77, 135,
293  /* 660 */ 153, 183, 318, 301, 135, 175, 284, 315, 386, 461,
294  /* 670 */ 117, 232, 294, 303, 325, 313, 232, 294, 303, 382,
295  /* 680 */ 313, 461, 220, 110, 329, 298, 318, 461, 329, 50,
296  /* 690 */ 47, 48, 44, 10, 13, 305, 306, 12, 11, 340,
297  /* 700 */ 341, 40, 20, 225, 30, 191, 46, 189, 314, 107,
298  /* 710 */ 329, 329, 146, 97, 102, 375, 376, 377, 373, 372,
299  /* 720 */ 368, 367, 369, 370, 371, 378, 379, 298, 298, 298,
300  /* 730 */ 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
301  /* 740 */ 329, 329, 50, 47, 48, 44, 10, 13, 305, 306,
302  /* 750 */ 12, 11, 340, 341, 40, 20, 225, 329, 329, 329,
303  /* 760 */ 329, 329, 329, 329, 329, 114, 160, 115, 375, 376,
304  /* 770 */ 377, 373, 372, 368, 367, 369, 370, 371, 378, 379,
305  /* 780 */ 298, 298, 298, 329, 329, 329, 329, 329, 329, 329,
306  /* 790 */ 329, 329, 329, 329, 283, 50, 47, 48, 44, 10,
307  /* 800 */ 13, 305, 306, 12, 11, 340, 341, 40, 20, 329,
308  /* 810 */ 225, 329, 329, 329, 329, 329, 329, 329, 329, 329,
309  /* 820 */ 329, 375, 376, 377, 373, 372, 368, 367, 369, 370,
310  /* 830 */ 371, 378, 379, 200, 329, 329, 329, 329, 329, 329,
311  /* 840 */ 329, 329, 329, 329, 329, 329, 329, 329, 329, 50,
312  /* 850 */ 47, 48, 44, 10, 13, 305, 306, 12, 11, 340,
313  /* 860 */ 341, 40, 20, 225, 329, 329, 329, 329, 329, 329,
314  /* 870 */ 329, 329, 329, 329, 329, 375, 376, 377, 373, 372,
315  /* 880 */ 368, 367, 369, 370, 371, 378, 379, 329, 329, 329,
316  /* 890 */ 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
317  /* 900 */ 329, 329, 50, 47, 48, 44, 10, 13, 305, 306,
318  /* 910 */ 12, 11, 340, 341, 40, 20, 329, 329, 329, 329,
319  /* 920 */ 329, 329, 329, 329, 329, 329, 329, 290, 375, 376,
320  /* 930 */ 377, 373, 372, 368, 367, 369, 370, 371, 378, 379,
321  /* 940 */ 225, 312, 329, 225, 329, 141, 312, 329, 77, 135,
322  /* 950 */ 152, 329, 329, 329, 135, 158, 208, 315, 386, 458,
323  /* 960 */ 329, 232, 294, 303, 325, 313, 232, 294, 303, 329,
324  /* 970 */ 313, 458, 223, 329, 329, 329, 318, 458, 329, 50,
325  /* 980 */ 47, 48, 44, 10, 13, 305, 306, 12, 11, 340,
326  /* 990 */ 341, 40, 20, 225, 329, 329, 46, 329, 329, 329,
327  /* 1000 */ 329, 329, 329, 329, 329, 375, 376, 377, 373, 372,
328  /* 1010 */ 368, 367, 369, 370, 371, 378, 379, 329, 329, 329,
329  /* 1020 */ 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
330  /* 1030 */ 329, 329, 50, 47, 48, 44, 10, 13, 305, 306,
331  /* 1040 */ 12, 11, 340, 341, 40, 20, 329, 329, 329, 329,
332  /* 1050 */ 329, 329, 329, 329, 329, 329, 329, 329, 375, 376,
333  /* 1060 */ 377, 373, 372, 368, 367, 369, 370, 371, 378, 379,
334  /* 1070 */ 329, 329, 329, 50, 47, 48, 44, 10, 13, 305,
335  /* 1080 */ 306, 12, 11, 340, 341, 40, 20, 329, 329, 329,
336  /* 1090 */ 329, 329, 329, 329, 329, 329, 329, 329, 329, 375,
337  /* 1100 */ 376, 377, 373, 372, 368, 367, 369, 370, 371, 378,
338  /* 1110 */ 379, 329, 329, 329, 329, 329, 42, 329, 145, 211,
339  /* 1120 */ 329, 329, 6, 108, 329, 279, 329, 312, 134, 329,
340  /* 1130 */ 329, 150, 249, 329, 231, 135, 235, 41, 39, 329,
341  /* 1140 */ 329, 52, 329, 43, 311, 329, 312, 232, 294, 303,
342  /* 1150 */ 147, 313, 329, 170, 135, 329, 51, 49, 331, 237,
343  /* 1160 */ 296, 329, 325, 106, 1, 278, 232, 294, 303, 329,
344  /* 1170 */ 313, 155, 329, 42, 318, 145, 216, 329, 96, 6,
345  /* 1180 */ 108, 18, 329, 226, 317, 134, 329, 313, 329, 249,
346  /* 1190 */ 329, 231, 329, 235, 41, 39, 256, 329, 52, 329,
347  /* 1200 */ 43, 329, 312, 329, 329, 329, 141, 329, 329, 66,
348  /* 1210 */ 119, 238, 329, 51, 49, 331, 237, 296, 315, 386,
349  /* 1220 */ 106, 1, 232, 294, 303, 329, 313, 270, 329, 329,
350  /* 1230 */ 42, 329, 140, 92, 329, 96, 6, 108, 18, 41,
351  /* 1240 */ 169, 317, 134, 329, 273, 43, 249, 329, 231, 325,
352  /* 1250 */ 235, 41, 39, 244, 329, 52, 41, 43, 329, 312,
353  /* 1260 */ 329, 318, 43, 141, 329, 329, 67, 135, 225, 329,
354  /* 1270 */ 51, 49, 331, 237, 296, 315, 386, 106, 1, 224,
355  /* 1280 */ 294, 303, 329, 313, 310, 329, 329, 42, 329, 145,
356  /* 1290 */ 213, 329, 96, 6, 108, 329, 41, 329, 329, 134,
357  /* 1300 */ 329, 323, 43, 249, 329, 231, 329, 235, 329, 39,
358  /* 1310 */ 329, 329, 52, 41, 329, 329, 312, 329, 329, 43,
359  /* 1320 */ 141, 46, 329, 86, 135, 329, 329, 51, 49, 331,
360  /* 1330 */ 237, 296, 315, 386, 106, 1, 232, 294, 303, 329,
361  /* 1340 */ 313, 274, 329, 329, 42, 329, 142, 216, 329, 96,
362  /* 1350 */ 6, 108, 329, 41, 329, 329, 134, 329, 348, 43,
363  /* 1360 */ 249, 329, 231, 329, 235, 329, 7, 329, 329, 52,
364  /* 1370 */ 41, 329, 329, 312, 329, 329, 43, 141, 329, 329,
365  /* 1380 */ 90, 135, 329, 329, 51, 49, 331, 237, 296, 315,
366  /* 1390 */ 386, 106, 1, 232, 294, 303, 329, 313, 295, 329,
367  /* 1400 */ 329, 42, 329, 138, 216, 329, 96, 6, 108, 329,
368  /* 1410 */ 41, 329, 329, 134, 329, 322, 43, 249, 329, 231,
369  /* 1420 */ 329, 235, 329, 39, 329, 329, 52, 41, 329, 329,
370  /* 1430 */ 312, 329, 329, 43, 141, 329, 329, 87, 135, 329,
371  /* 1440 */ 329, 51, 49, 331, 237, 296, 315, 386, 106, 1,
372  /* 1450 */ 232, 294, 303, 329, 313, 384, 329, 329, 42, 329,
373  /* 1460 */ 131, 216, 329, 96, 6, 108, 329, 41, 329, 329,
374  /* 1470 */ 134, 329, 380, 43, 249, 329, 231, 329, 235, 329,
375  /* 1480 */ 15, 329, 329, 52, 41, 329, 329, 312, 329, 329,
376  /* 1490 */ 43, 141, 329, 329, 79, 135, 329, 329, 51, 49,
377  /* 1500 */ 331, 237, 296, 315, 386, 106, 1, 232, 294, 303,
378  /* 1510 */ 329, 313, 272, 329, 329, 42, 329, 145, 210, 329,
379  /* 1520 */ 96, 6, 108, 329, 41, 329, 329, 134, 329, 349,
380  /* 1530 */ 43, 249, 329, 231, 329, 221, 329, 39, 329, 329,
381  /* 1540 */ 52, 41, 329, 329, 312, 329, 329, 43, 141, 329,
382  /* 1550 */ 329, 70, 135, 329, 329, 51, 49, 331, 237, 296,
383  /* 1560 */ 315, 386, 106, 1, 232, 294, 303, 329, 313, 324,
384  /* 1570 */ 329, 329, 42, 329, 145, 209, 329, 96, 6, 108,
385  /* 1580 */ 329, 41, 329, 329, 134, 329, 326, 43, 249, 329,
386  /* 1590 */ 231, 329, 235, 329, 39, 329, 329, 52, 41, 329,
387  /* 1600 */ 329, 312, 329, 329, 43, 141, 329, 329, 74, 135,
388  /* 1610 */ 329, 329, 51, 49, 331, 237, 296, 315, 386, 106,
389  /* 1620 */ 1, 232, 294, 303, 329, 313, 262, 329, 329, 42,
390  /* 1630 */ 329, 131, 214, 329, 96, 6, 108, 329, 41, 329,
391  /* 1640 */ 329, 134, 329, 327, 43, 249, 329, 231, 329, 235,
392  /* 1650 */ 329, 15, 329, 329, 52, 41, 329, 329, 312, 329,
393  /* 1660 */ 329, 43, 141, 329, 329, 53, 135, 329, 329, 51,
394  /* 1670 */ 49, 331, 237, 296, 315, 386, 106, 329, 232, 294,
395  /* 1680 */ 303, 329, 313, 286, 329, 329, 42, 329, 131, 216,
396  /* 1690 */ 329, 96, 6, 108, 329, 41, 329, 329, 134, 329,
397  /* 1700 */ 343, 43, 249, 329, 231, 329, 235, 329, 15, 329,
398  /* 1710 */ 329, 52, 41, 329, 329, 312, 329, 329, 43, 118,
399  /* 1720 */ 329, 329, 76, 135, 329, 329, 51, 49, 331, 237,
400  /* 1730 */ 296, 315, 386, 106, 329, 232, 294, 303, 329, 313,
401  /* 1740 */ 329, 329, 329, 329, 504, 329, 329, 329, 96, 329,
402  /* 1750 */ 357, 504, 329, 504, 504, 364, 504, 504, 329, 329,
403  /* 1760 */ 329, 35, 504, 329, 504, 2, 504, 6, 108, 329,
404  /* 1770 */ 198, 174, 329, 134, 329, 329, 329, 249, 329, 231,
405  /* 1780 */ 325, 504, 329, 21, 9, 329, 329, 329, 144, 329,
406  /* 1790 */ 329, 329, 504, 329, 312, 99, 179, 206, 141, 329,
407  /* 1800 */ 329, 58, 135, 329, 329, 325, 504, 329, 21, 9,
408  /* 1810 */ 315, 386, 329, 312, 232, 294, 303, 141, 313, 329,
409  /* 1820 */ 71, 135, 206, 344, 37, 362, 329, 329, 329, 315,
410  /* 1830 */ 386, 329, 329, 232, 294, 303, 312, 313, 329, 329,
411  /* 1840 */ 141, 329, 329, 72, 135, 329, 329, 312, 329, 329,
412  /* 1850 */ 329, 141, 315, 386, 65, 135, 232, 294, 303, 329,
413  /* 1860 */ 313, 329, 329, 315, 386, 329, 329, 232, 294, 303,
414  /* 1870 */ 329, 313, 329, 329, 312, 198, 167, 329, 141, 329,
415  /* 1880 */ 329, 69, 135, 329, 329, 325, 329, 329, 21, 9,
416  /* 1890 */ 315, 386, 329, 329, 232, 294, 303, 312, 313, 329,
417  /* 1900 */ 329, 141, 206, 329, 85, 135, 329, 312, 329, 329,
418  /* 1910 */ 329, 149, 329, 315, 386, 135, 312, 232, 294, 303,
419  /* 1920 */ 141, 313, 329, 81, 135, 329, 329, 232, 294, 303,
420  /* 1930 */ 329, 313, 315, 386, 329, 329, 232, 294, 303, 312,
421  /* 1940 */ 313, 329, 329, 141, 329, 329, 82, 135, 329, 329,
422  /* 1950 */ 312, 329, 329, 329, 141, 315, 386, 63, 135, 232,
423  /* 1960 */ 294, 303, 329, 313, 329, 329, 315, 386, 329, 329,
424  /* 1970 */ 232, 294, 303, 329, 313, 329, 312, 329, 329, 329,
425  /* 1980 */ 141, 329, 329, 73, 135, 329, 329, 312, 329, 329,
426  /* 1990 */ 329, 141, 315, 386, 83, 135, 232, 294, 303, 329,
427  /* 2000 */ 313, 329, 329, 315, 386, 329, 312, 232, 294, 303,
428  /* 2010 */ 141, 313, 329, 89, 135, 329, 329, 329, 329, 329,
429  /* 2020 */ 329, 329, 315, 386, 329, 312, 232, 294, 303, 111,
430  /* 2030 */ 313, 329, 68, 135, 329, 329, 312, 329, 329, 329,
431  /* 2040 */ 141, 315, 386, 62, 135, 232, 294, 303, 329, 313,
432  /* 2050 */ 329, 329, 315, 386, 329, 329, 232, 294, 303, 329,
433  /* 2060 */ 313, 329, 312, 329, 329, 329, 141, 329, 329, 61,
434  /* 2070 */ 135, 329, 329, 312, 329, 329, 329, 141, 315, 386,
435  /* 2080 */ 91, 135, 232, 294, 303, 329, 313, 329, 329, 315,
436  /* 2090 */ 386, 329, 312, 232, 294, 303, 141, 313, 329, 78,
437  /* 2100 */ 135, 329, 329, 329, 329, 329, 329, 329, 315, 386,
438  /* 2110 */ 329, 312, 232, 294, 303, 141, 313, 329, 66, 135,
439  /* 2120 */ 329, 329, 312, 329, 329, 329, 141, 315, 386, 80,
440  /* 2130 */ 135, 232, 294, 303, 329, 313, 329, 329, 315, 386,
441  /* 2140 */ 329, 329, 232, 294, 303, 329, 313, 329, 312, 329,
442  /* 2150 */ 329, 329, 113, 329, 329, 88, 135, 329, 329, 312,
443  /* 2160 */ 329, 329, 329, 112, 315, 386, 84, 135, 232, 294,
444  /* 2170 */ 303, 329, 313, 329, 329, 315, 386, 329, 312, 232,
445  /* 2180 */ 294, 303, 141, 313, 329, 57, 135, 329, 329, 329,
446  /* 2190 */ 329, 329, 329, 329, 315, 386, 329, 312, 232, 294,
447  /* 2200 */ 303, 93, 313, 329, 59, 121, 329, 329, 312, 329,
448  /* 2210 */ 329, 329, 141, 315, 386, 75, 135, 232, 294, 303,
449  /* 2220 */ 329, 313, 329, 329, 315, 386, 329, 329, 232, 294,
450  /* 2230 */ 303, 329, 313, 329, 312, 329, 329, 329, 141, 329,
451  /* 2240 */ 329, 60, 135, 329, 329, 312, 329, 329, 329, 141,
452  /* 2250 */ 315, 386, 64, 135, 232, 294, 303, 329, 313, 329,
453  /* 2260 */ 329, 315, 386, 329, 312, 232, 294, 303, 120, 313,
454  /* 2270 */ 329, 55, 135, 329, 329, 329, 329, 329, 329, 329,
455  /* 2280 */ 315, 386, 329, 312, 232, 294, 303, 93, 313, 329,
456  /* 2290 */ 56, 121, 225, 329, 312, 329, 198, 164, 157, 315,
457  /* 2300 */ 386, 329, 135, 219, 294, 303, 325, 313, 352, 21,
458  /* 2310 */ 9, 287, 234, 329, 232, 294, 303, 329, 313, 329,
459  /* 2320 */ 41, 329, 329, 206, 312, 329, 43, 329, 151, 2,
460  /* 2330 */ 329, 329, 135, 329, 329, 329, 329, 329, 329, 329,
461  /* 2340 */ 198, 168, 329, 329, 232, 294, 303, 329, 313, 329,
462  /* 2350 */ 325, 329, 144, 21, 9, 198, 171, 329, 329, 329,
463  /* 2360 */ 329, 329, 329, 329, 329, 325, 329, 206, 21, 9,
464  /* 2370 */ 329, 329, 329, 329, 329, 329, 329, 329, 329, 329,
465  /* 2380 */ 329, 329, 206,
466  );
467  static public $yy_lookahead = array(
468  /* 0 */ 1, 3, 4, 5, 6, 7, 8, 9, 10, 11,
469  /* 10 */ 12, 13, 16, 98, 16, 19, 17, 17, 113, 114,
470  /* 20 */ 22, 23, 16, 97, 18, 19, 28, 112, 29, 29,
471  /* 30 */ 32, 33, 34, 16, 35, 35, 19, 20, 112, 40,
472  /* 40 */ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
473  /* 50 */ 51, 52, 53, 4, 5, 6, 7, 8, 62, 93,
474  /* 60 */ 94, 95, 13, 14, 15, 66, 67, 68, 69, 70,
475  /* 70 */ 71, 72, 73, 74, 75, 76, 77, 1, 85, 62,
476  /* 80 */ 1, 1, 89, 38, 117, 92, 93, 82, 83, 84,
477  /* 90 */ 85, 86, 38, 17, 101, 102, 17, 17, 105, 106,
478  /* 100 */ 107, 86, 109, 88, 59, 29, 61, 1, 29, 30,
479  /* 110 */ 65, 35, 119, 120, 35, 61, 40, 41, 42, 43,
480  /* 120 */ 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
481  /* 130 */ 90, 91, 59, 54, 54, 29, 16, 64, 18, 19,
482  /* 140 */ 100, 35, 66, 67, 68, 69, 70, 71, 72, 73,
483  /* 150 */ 74, 75, 76, 77, 1, 85, 36, 117, 1, 89,
484  /* 160 */ 18, 1, 92, 93, 94, 1, 17, 20, 21, 20,
485  /* 170 */ 17, 101, 102, 17, 17, 105, 106, 107, 29, 109,
486  /* 180 */ 38, 17, 29, 31, 35, 29, 29, 38, 35, 90,
487  /* 190 */ 38, 35, 35, 40, 41, 42, 43, 44, 45, 46,
488  /* 200 */ 47, 48, 49, 50, 51, 52, 53, 1, 61, 111,
489  /* 210 */ 61, 113, 114, 61, 54, 90, 117, 118, 90, 66,
490  /* 220 */ 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
491  /* 230 */ 77, 103, 104, 27, 110, 29, 112, 1, 84, 85,
492  /* 240 */ 86, 35, 117, 20, 21, 117, 40, 41, 42, 43,
493  /* 250 */ 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
494  /* 260 */ 1, 91, 16, 59, 25, 19, 20, 31, 64, 16,
495  /* 270 */ 100, 25, 66, 67, 68, 69, 70, 71, 72, 73,
496  /* 280 */ 74, 75, 76, 77, 61, 85, 85, 117, 29, 37,
497  /* 290 */ 54, 38, 18, 19, 35, 37, 110, 39, 112, 40,
498  /* 300 */ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
499  /* 310 */ 51, 52, 53, 1, 90, 91, 16, 65, 79, 19,
500  /* 320 */ 20, 121, 122, 122, 100, 66, 67, 68, 69, 70,
501  /* 330 */ 71, 72, 73, 74, 75, 76, 77, 63, 24, 91,
502  /* 340 */ 37, 117, 39, 37, 16, 39, 90, 19, 100, 2,
503  /* 350 */ 19, 37, 40, 41, 42, 43, 44, 45, 46, 47,
504  /* 360 */ 48, 49, 50, 51, 52, 53, 1, 90, 91, 16,
505  /* 370 */ 29, 19, 19, 117, 93, 94, 35, 100, 66, 67,
506  /* 380 */ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
507  /* 390 */ 62, 79, 96, 62, 117, 17, 16, 18, 19, 19,
508  /* 400 */ 93, 94, 19, 25, 39, 40, 41, 42, 43, 44,
509  /* 410 */ 45, 46, 47, 48, 49, 50, 51, 52, 53, 1,
510  /* 420 */ 91, 91, 90, 16, 16, 16, 19, 19, 19, 100,
511  /* 430 */ 100, 66, 67, 68, 69, 70, 71, 72, 73, 74,
512  /* 440 */ 75, 76, 77, 108, 29, 91, 117, 117, 30, 117,
513  /* 450 */ 115, 29, 113, 114, 100, 20, 96, 35, 40, 41,
514  /* 460 */ 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
515  /* 470 */ 52, 53, 91, 1, 118, 99, 18, 26, 110, 20,
516  /* 480 */ 2, 100, 97, 1, 66, 67, 68, 69, 70, 71,
517  /* 490 */ 72, 73, 74, 75, 76, 77, 1, 112, 117, 17,
518  /* 500 */ 1, 2, 85, 99, 19, 110, 89, 10, 16, 19,
519  /* 510 */ 93, 19, 17, 16, 21, 99, 17, 38, 59, 22,
520  /* 520 */ 23, 29, 105, 106, 107, 28, 109, 35, 18, 32,
521  /* 530 */ 33, 34, 2, 1, 65, 40, 41, 42, 43, 44,
522  /* 540 */ 45, 46, 47, 48, 49, 50, 51, 52, 53, 17,
523  /* 550 */ 20, 91, 59, 21, 36, 19, 19, 64, 19, 25,
524  /* 560 */ 100, 66, 67, 68, 69, 70, 71, 72, 73, 74,
525  /* 570 */ 75, 76, 77, 1, 85, 78, 79, 80, 89, 85,
526  /* 580 */ 19, 92, 93, 89, 59, 63, 21, 93, 19, 17,
527  /* 590 */ 101, 102, 17, 1, 105, 106, 107, 18, 109, 105,
528  /* 600 */ 106, 107, 18, 109, 29, 116, 36, 63, 19, 17,
529  /* 610 */ 35, 1, 40, 41, 42, 43, 44, 45, 46, 47,
530  /* 620 */ 48, 49, 50, 51, 52, 53, 61, 17, 108, 38,
531  /* 630 */ 2, 19, 39, 55, 21, 115, 18, 97, 66, 67,
532  /* 640 */ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
533  /* 650 */ 1, 85, 112, 1, 100, 89, 85, 115, 92, 93,
534  /* 660 */ 89, 110, 112, 111, 93, 91, 17, 101, 102, 17,
535  /* 670 */ 97, 105, 106, 107, 100, 109, 105, 106, 107, 14,
536  /* 680 */ 109, 29, 116, 87, 123, 112, 112, 35, 123, 40,
537  /* 690 */ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
538  /* 700 */ 51, 52, 53, 1, 2, 110, 54, 110, 114, 110,
539  /* 710 */ 123, 123, 97, 97, 97, 66, 67, 68, 69, 70,
540  /* 720 */ 71, 72, 73, 74, 75, 76, 77, 112, 112, 112,
541  /* 730 */ 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
542  /* 740 */ 123, 123, 40, 41, 42, 43, 44, 45, 46, 47,
543  /* 750 */ 48, 49, 50, 51, 52, 53, 1, 123, 123, 123,
544  /* 760 */ 123, 123, 123, 123, 123, 97, 97, 97, 66, 67,
545  /* 770 */ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
546  /* 780 */ 112, 112, 112, 123, 123, 123, 123, 123, 123, 123,
547  /* 790 */ 123, 123, 123, 123, 39, 40, 41, 42, 43, 44,
548  /* 800 */ 45, 46, 47, 48, 49, 50, 51, 52, 53, 123,
549  /* 810 */ 1, 123, 123, 123, 123, 123, 123, 123, 123, 123,
550  /* 820 */ 123, 66, 67, 68, 69, 70, 71, 72, 73, 74,
551  /* 830 */ 75, 76, 77, 24, 123, 123, 123, 123, 123, 123,
552  /* 840 */ 123, 123, 123, 123, 123, 123, 123, 123, 123, 40,
553  /* 850 */ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
554  /* 860 */ 51, 52, 53, 1, 123, 123, 123, 123, 123, 123,
555  /* 870 */ 123, 123, 123, 123, 123, 66, 67, 68, 69, 70,
556  /* 880 */ 71, 72, 73, 74, 75, 76, 77, 123, 123, 123,
557  /* 890 */ 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
558  /* 900 */ 123, 123, 40, 41, 42, 43, 44, 45, 46, 47,
559  /* 910 */ 48, 49, 50, 51, 52, 53, 123, 123, 123, 123,
560  /* 920 */ 123, 123, 123, 123, 123, 123, 123, 65, 66, 67,
561  /* 930 */ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
562  /* 940 */ 1, 85, 123, 1, 123, 89, 85, 123, 92, 93,
563  /* 950 */ 89, 123, 123, 123, 93, 91, 17, 101, 102, 17,
564  /* 960 */ 123, 105, 106, 107, 100, 109, 105, 106, 107, 123,
565  /* 970 */ 109, 29, 116, 123, 123, 123, 112, 35, 123, 40,
566  /* 980 */ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
567  /* 990 */ 51, 52, 53, 1, 123, 123, 54, 123, 123, 123,
568  /* 1000 */ 123, 123, 123, 123, 123, 66, 67, 68, 69, 70,
569  /* 1010 */ 71, 72, 73, 74, 75, 76, 77, 123, 123, 123,
570  /* 1020 */ 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
571  /* 1030 */ 123, 123, 40, 41, 42, 43, 44, 45, 46, 47,
572  /* 1040 */ 48, 49, 50, 51, 52, 53, 123, 123, 123, 123,
573  /* 1050 */ 123, 123, 123, 123, 123, 123, 123, 123, 66, 67,
574  /* 1060 */ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
575  /* 1070 */ 123, 123, 123, 40, 41, 42, 43, 44, 45, 46,
576  /* 1080 */ 47, 48, 49, 50, 51, 52, 53, 123, 123, 123,
577  /* 1090 */ 123, 123, 123, 123, 123, 123, 123, 123, 123, 66,
578  /* 1100 */ 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
579  /* 1110 */ 77, 123, 123, 123, 123, 123, 16, 123, 18, 19,
580  /* 1120 */ 123, 123, 22, 23, 123, 17, 123, 85, 28, 123,
581  /* 1130 */ 123, 89, 32, 33, 34, 93, 36, 29, 38, 123,
582  /* 1140 */ 123, 41, 123, 35, 102, 123, 85, 105, 106, 107,
583  /* 1150 */ 89, 109, 123, 91, 93, 123, 56, 57, 58, 59,
584  /* 1160 */ 60, 123, 100, 63, 64, 65, 105, 106, 107, 123,
585  /* 1170 */ 109, 93, 123, 16, 112, 18, 19, 123, 78, 22,
586  /* 1180 */ 23, 16, 123, 105, 19, 28, 123, 109, 123, 32,
587  /* 1190 */ 33, 34, 123, 36, 29, 38, 31, 123, 41, 123,
588  /* 1200 */ 35, 123, 85, 123, 123, 123, 89, 123, 123, 92,
589  /* 1210 */ 93, 94, 123, 56, 57, 58, 59, 60, 101, 102,
590  /* 1220 */ 63, 64, 105, 106, 107, 123, 109, 17, 123, 123,
591  /* 1230 */ 16, 123, 18, 19, 123, 78, 22, 23, 16, 29,
592  /* 1240 */ 91, 19, 28, 123, 17, 35, 32, 33, 34, 100,
593  /* 1250 */ 36, 29, 38, 31, 123, 41, 29, 35, 123, 85,
594  /* 1260 */ 123, 112, 35, 89, 123, 123, 92, 93, 1, 123,
595  /* 1270 */ 56, 57, 58, 59, 60, 101, 102, 63, 64, 105,
596  /* 1280 */ 106, 107, 123, 109, 17, 123, 123, 16, 123, 18,
597  /* 1290 */ 19, 123, 78, 22, 23, 123, 29, 123, 123, 28,
598  /* 1300 */ 123, 17, 35, 32, 33, 34, 123, 36, 123, 38,
599  /* 1310 */ 123, 123, 41, 29, 123, 123, 85, 123, 123, 35,
600  /* 1320 */ 89, 54, 123, 92, 93, 123, 123, 56, 57, 58,
601  /* 1330 */ 59, 60, 101, 102, 63, 64, 105, 106, 107, 123,
602  /* 1340 */ 109, 17, 123, 123, 16, 123, 18, 19, 123, 78,
603  /* 1350 */ 22, 23, 123, 29, 123, 123, 28, 123, 17, 35,
604  /* 1360 */ 32, 33, 34, 123, 36, 123, 38, 123, 123, 41,
605  /* 1370 */ 29, 123, 123, 85, 123, 123, 35, 89, 123, 123,
606  /* 1380 */ 92, 93, 123, 123, 56, 57, 58, 59, 60, 101,
607  /* 1390 */ 102, 63, 64, 105, 106, 107, 123, 109, 17, 123,
608  /* 1400 */ 123, 16, 123, 18, 19, 123, 78, 22, 23, 123,
609  /* 1410 */ 29, 123, 123, 28, 123, 17, 35, 32, 33, 34,
610  /* 1420 */ 123, 36, 123, 38, 123, 123, 41, 29, 123, 123,
611  /* 1430 */ 85, 123, 123, 35, 89, 123, 123, 92, 93, 123,
612  /* 1440 */ 123, 56, 57, 58, 59, 60, 101, 102, 63, 64,
613  /* 1450 */ 105, 106, 107, 123, 109, 17, 123, 123, 16, 123,
614  /* 1460 */ 18, 19, 123, 78, 22, 23, 123, 29, 123, 123,
615  /* 1470 */ 28, 123, 17, 35, 32, 33, 34, 123, 36, 123,
616  /* 1480 */ 38, 123, 123, 41, 29, 123, 123, 85, 123, 123,
617  /* 1490 */ 35, 89, 123, 123, 92, 93, 123, 123, 56, 57,
618  /* 1500 */ 58, 59, 60, 101, 102, 63, 64, 105, 106, 107,
619  /* 1510 */ 123, 109, 17, 123, 123, 16, 123, 18, 19, 123,
620  /* 1520 */ 78, 22, 23, 123, 29, 123, 123, 28, 123, 17,
621  /* 1530 */ 35, 32, 33, 34, 123, 36, 123, 38, 123, 123,
622  /* 1540 */ 41, 29, 123, 123, 85, 123, 123, 35, 89, 123,
623  /* 1550 */ 123, 92, 93, 123, 123, 56, 57, 58, 59, 60,
624  /* 1560 */ 101, 102, 63, 64, 105, 106, 107, 123, 109, 17,
625  /* 1570 */ 123, 123, 16, 123, 18, 19, 123, 78, 22, 23,
626  /* 1580 */ 123, 29, 123, 123, 28, 123, 17, 35, 32, 33,
627  /* 1590 */ 34, 123, 36, 123, 38, 123, 123, 41, 29, 123,
628  /* 1600 */ 123, 85, 123, 123, 35, 89, 123, 123, 92, 93,
629  /* 1610 */ 123, 123, 56, 57, 58, 59, 60, 101, 102, 63,
630  /* 1620 */ 64, 105, 106, 107, 123, 109, 17, 123, 123, 16,
631  /* 1630 */ 123, 18, 19, 123, 78, 22, 23, 123, 29, 123,
632  /* 1640 */ 123, 28, 123, 17, 35, 32, 33, 34, 123, 36,
633  /* 1650 */ 123, 38, 123, 123, 41, 29, 123, 123, 85, 123,
634  /* 1660 */ 123, 35, 89, 123, 123, 92, 93, 123, 123, 56,
635  /* 1670 */ 57, 58, 59, 60, 101, 102, 63, 123, 105, 106,
636  /* 1680 */ 107, 123, 109, 17, 123, 123, 16, 123, 18, 19,
637  /* 1690 */ 123, 78, 22, 23, 123, 29, 123, 123, 28, 123,
638  /* 1700 */ 17, 35, 32, 33, 34, 123, 36, 123, 38, 123,
639  /* 1710 */ 123, 41, 29, 123, 123, 85, 123, 123, 35, 89,
640  /* 1720 */ 123, 123, 92, 93, 123, 123, 56, 57, 58, 59,
641  /* 1730 */ 60, 101, 102, 63, 123, 105, 106, 107, 123, 109,
642  /* 1740 */ 123, 123, 123, 123, 17, 123, 123, 123, 78, 123,
643  /* 1750 */ 120, 24, 123, 26, 27, 10, 29, 30, 123, 123,
644  /* 1760 */ 123, 16, 35, 123, 37, 38, 39, 22, 23, 123,
645  /* 1770 */ 90, 91, 123, 28, 123, 123, 123, 32, 33, 34,
646  /* 1780 */ 100, 54, 123, 103, 104, 123, 123, 123, 61, 123,
647  /* 1790 */ 123, 123, 65, 123, 85, 90, 91, 117, 89, 123,
648  /* 1800 */ 123, 92, 93, 123, 123, 100, 79, 123, 103, 104,
649  /* 1810 */ 101, 102, 123, 85, 105, 106, 107, 89, 109, 123,
650  /* 1820 */ 92, 93, 117, 78, 79, 80, 123, 123, 123, 101,
651  /* 1830 */ 102, 123, 123, 105, 106, 107, 85, 109, 123, 123,
652  /* 1840 */ 89, 123, 123, 92, 93, 123, 123, 85, 123, 123,
653  /* 1850 */ 123, 89, 101, 102, 92, 93, 105, 106, 107, 123,
654  /* 1860 */ 109, 123, 123, 101, 102, 123, 123, 105, 106, 107,
655  /* 1870 */ 123, 109, 123, 123, 85, 90, 91, 123, 89, 123,
656  /* 1880 */ 123, 92, 93, 123, 123, 100, 123, 123, 103, 104,
657  /* 1890 */ 101, 102, 123, 123, 105, 106, 107, 85, 109, 123,
658  /* 1900 */ 123, 89, 117, 123, 92, 93, 123, 85, 123, 123,
659  /* 1910 */ 123, 89, 123, 101, 102, 93, 85, 105, 106, 107,
660  /* 1920 */ 89, 109, 123, 92, 93, 123, 123, 105, 106, 107,
661  /* 1930 */ 123, 109, 101, 102, 123, 123, 105, 106, 107, 85,
662  /* 1940 */ 109, 123, 123, 89, 123, 123, 92, 93, 123, 123,
663  /* 1950 */ 85, 123, 123, 123, 89, 101, 102, 92, 93, 105,
664  /* 1960 */ 106, 107, 123, 109, 123, 123, 101, 102, 123, 123,
665  /* 1970 */ 105, 106, 107, 123, 109, 123, 85, 123, 123, 123,
666  /* 1980 */ 89, 123, 123, 92, 93, 123, 123, 85, 123, 123,
667  /* 1990 */ 123, 89, 101, 102, 92, 93, 105, 106, 107, 123,
668  /* 2000 */ 109, 123, 123, 101, 102, 123, 85, 105, 106, 107,
669  /* 2010 */ 89, 109, 123, 92, 93, 123, 123, 123, 123, 123,
670  /* 2020 */ 123, 123, 101, 102, 123, 85, 105, 106, 107, 89,
671  /* 2030 */ 109, 123, 92, 93, 123, 123, 85, 123, 123, 123,
672  /* 2040 */ 89, 101, 102, 92, 93, 105, 106, 107, 123, 109,
673  /* 2050 */ 123, 123, 101, 102, 123, 123, 105, 106, 107, 123,
674  /* 2060 */ 109, 123, 85, 123, 123, 123, 89, 123, 123, 92,
675  /* 2070 */ 93, 123, 123, 85, 123, 123, 123, 89, 101, 102,
676  /* 2080 */ 92, 93, 105, 106, 107, 123, 109, 123, 123, 101,
677  /* 2090 */ 102, 123, 85, 105, 106, 107, 89, 109, 123, 92,
678  /* 2100 */ 93, 123, 123, 123, 123, 123, 123, 123, 101, 102,
679  /* 2110 */ 123, 85, 105, 106, 107, 89, 109, 123, 92, 93,
680  /* 2120 */ 123, 123, 85, 123, 123, 123, 89, 101, 102, 92,
681  /* 2130 */ 93, 105, 106, 107, 123, 109, 123, 123, 101, 102,
682  /* 2140 */ 123, 123, 105, 106, 107, 123, 109, 123, 85, 123,
683  /* 2150 */ 123, 123, 89, 123, 123, 92, 93, 123, 123, 85,
684  /* 2160 */ 123, 123, 123, 89, 101, 102, 92, 93, 105, 106,
685  /* 2170 */ 107, 123, 109, 123, 123, 101, 102, 123, 85, 105,
686  /* 2180 */ 106, 107, 89, 109, 123, 92, 93, 123, 123, 123,
687  /* 2190 */ 123, 123, 123, 123, 101, 102, 123, 85, 105, 106,
688  /* 2200 */ 107, 89, 109, 123, 92, 93, 123, 123, 85, 123,
689  /* 2210 */ 123, 123, 89, 101, 102, 92, 93, 105, 106, 107,
690  /* 2220 */ 123, 109, 123, 123, 101, 102, 123, 123, 105, 106,
691  /* 2230 */ 107, 123, 109, 123, 85, 123, 123, 123, 89, 123,
692  /* 2240 */ 123, 92, 93, 123, 123, 85, 123, 123, 123, 89,
693  /* 2250 */ 101, 102, 92, 93, 105, 106, 107, 123, 109, 123,
694  /* 2260 */ 123, 101, 102, 123, 85, 105, 106, 107, 89, 109,
695  /* 2270 */ 123, 92, 93, 123, 123, 123, 123, 123, 123, 123,
696  /* 2280 */ 101, 102, 123, 85, 105, 106, 107, 89, 109, 123,
697  /* 2290 */ 92, 93, 1, 123, 85, 123, 90, 91, 89, 101,
698  /* 2300 */ 102, 123, 93, 105, 106, 107, 100, 109, 17, 103,
699  /* 2310 */ 104, 102, 21, 123, 105, 106, 107, 123, 109, 123,
700  /* 2320 */ 29, 123, 123, 117, 85, 123, 35, 123, 89, 38,
701  /* 2330 */ 123, 123, 93, 123, 123, 123, 123, 123, 123, 123,
702  /* 2340 */ 90, 91, 123, 123, 105, 106, 107, 123, 109, 123,
703  /* 2350 */ 100, 123, 61, 103, 104, 90, 91, 123, 123, 123,
704  /* 2360 */ 123, 123, 123, 123, 123, 100, 123, 117, 103, 104,
705  /* 2370 */ 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
706  /* 2380 */ 123, 123, 117,
707 );
708  const YY_SHIFT_USE_DFLT = -5;
709  const YY_SHIFT_MAX = 256;
710  static public $yy_shift_ofst = array(
711  /* 0 */ -2, 1271, 1157, 1157, 1271, 1157, 1328, 1328, 1100, 1157,
712  /* 10 */ 1157, 1157, 1157, 1157, 1157, 1157, 1499, 1157, 1157, 1157,
713  /* 20 */ 1157, 1157, 1556, 1157, 1157, 1157, 1157, 1157, 1157, 1157,
714  /* 30 */ 1157, 1157, 1157, 1157, 1385, 1214, 1157, 1157, 1157, 1157,
715  /* 40 */ 1157, 1499, 1214, 1157, 1442, 1442, 1613, 1670, 1670, 1670,
716  /* 50 */ 1670, 1670, 1670, 206, 153, 76, -1, 259, 259, 259,
717  /* 60 */ 809, 939, 755, 862, 702, 649, 365, 312, 418, 495,
718  /* 70 */ 572, 992, 992, 992, 992, 992, 992, 992, 992, 992,
719  /* 80 */ 992, 992, 992, 992, 992, 992, 992, 992, 992, 992,
720  /* 90 */ 1033, 1033, 2291, 1267, 106, -2, 1745, 1222, 1165, 157,
721  /* 100 */ 157, 492, 492, 499, 106, 106, 274, 493, 142, 497,
722  /* 110 */ 49, 79, 942, 652, 246, 17, 328, 300, 236, 223,
723  /* 120 */ 80, 147, 532, 1227, 353, 353, 353, 422, 407, 142,
724  /* 130 */ 353, 353, 610, 353, 341, 565, 379, 353, 380, 142,
725  /* 140 */ 408, 160, 409, 353, 379, 409, 353, 472, 613, 472,
726  /* 150 */ 472, 472, 472, 472, 472, 613, 472, -5, 1284, 1210,
727  /* 160 */ -4, 1108, 0, 156, 575, 1683, 1552, 1512, 1569, 1609,
728  /* 170 */ 1666, 1324, 1626, 6, 1495, 1398, 1381, 1341, 1438, 1455,
729  /* 180 */ 73, 482, 73, 204, 592, 204, 204, 204, 164, 204,
730  /* 190 */ 253, 204, 204, 665, 613, 613, 613, 479, 472, 347,
731  /* 200 */ 415, 415, 472, 347, -5, -5, -5, -5, -5, 1727,
732  /* 210 */ 149, 45, 120, 152, 54, 530, 54, 314, 252, 378,
733  /* 220 */ 306, 459, 258, 303, 239, 331, 522, 536, 469, 537,
734  /* 230 */ 539, 569, 534, 544, 561, 525, 518, 570, 593, 612,
735  /* 240 */ 578, 628, 591, 579, 510, 584, 589, 458, 435, 352,
736  /* 250 */ 485, 478, 451, 479, 490, 383, 618,
737 );
738  const YY_REDUCE_USE_DFLT = -96;
739  const YY_REDUCE_MAX = 208;
740  static public $yy_reduce_ofst = array(
741  /* 0 */ 5, -7, 489, 566, 1630, 856, 70, 1117, 1865, 1854,
742  /* 10 */ 1831, 1812, 1891, 1902, 1977, 1951, 1940, 1921, 1789, 1762,
743  /* 20 */ 1402, 1345, 1288, 1231, 1459, 1516, 1751, 1728, 1709, 1573,
744  /* 30 */ 1988, 2007, 2123, 2149, 2160, 2198, 2179, 1174, 2093, 2026,
745  /* 40 */ 2037, 2063, 2112, 2074, 1042, 2209, 1822, 2239, 1061, 861,
746  /* 50 */ 494, 417, 571, 2265, 2250, 2206, 1705, 1785, 1680, 1705,
747  /* 60 */ 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
748  /* 70 */ 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
749  /* 80 */ 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
750  /* 90 */ 128, 128, 277, 224, 40, 154, 200, 864, 1062, 170,
751  /* 100 */ 330, 574, 1149, 99, 329, 381, 1078, 98, -34, 201,
752  /* 110 */ 15, 125, 125, 125, -85, 124, 124, 124, 125, -95,
753  /* 120 */ 125, -95, 332, 354, 573, 616, 617, 460, 615, 307,
754  /* 130 */ 385, 540, 256, -74, 248, -95, 335, 668, 540, 281,
755  /* 140 */ 540, 125, 670, 669, 520, 540, 186, 125, 339, 125,
756  /* 150 */ 125, 125, 125, 125, 125, -95, 125, 125, 554, 554,
757  /* 160 */ 550, 554, 554, 554, 554, 554, 554, 554, 554, 554,
758  /* 170 */ 554, 554, 554, 542, 554, 554, 554, 554, 554, 554,
759  /* 180 */ 595, -33, 551, 552, -33, 552, 552, 552, -33, 552,
760  /* 190 */ 597, 552, 552, 596, 594, 594, 594, 599, -33, 356,
761  /* 200 */ 296, 360, -33, 356, 395, 404, 376, 416, 368,
762 );
763  static public $yyExpectedTokens = array(
764  /* 0 */ array(3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 16, 22, 23, 28, 32, 33, 34, ),
765  /* 1 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
766  /* 2 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
767  /* 3 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
768  /* 4 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
769  /* 5 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
770  /* 6 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
771  /* 7 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
772  /* 8 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 65, 78, ),
773  /* 9 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
774  /* 10 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
775  /* 11 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
776  /* 12 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
777  /* 13 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
778  /* 14 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
779  /* 15 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
780  /* 16 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
781  /* 17 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
782  /* 18 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
783  /* 19 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
784  /* 20 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
785  /* 21 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
786  /* 22 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
787  /* 23 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
788  /* 24 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
789  /* 25 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
790  /* 26 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
791  /* 27 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
792  /* 28 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
793  /* 29 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
794  /* 30 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
795  /* 31 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
796  /* 32 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
797  /* 33 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
798  /* 34 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
799  /* 35 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
800  /* 36 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
801  /* 37 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
802  /* 38 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
803  /* 39 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
804  /* 40 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
805  /* 41 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
806  /* 42 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
807  /* 43 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
808  /* 44 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
809  /* 45 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 64, 78, ),
810  /* 46 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 78, ),
811  /* 47 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 78, ),
812  /* 48 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 78, ),
813  /* 49 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 78, ),
814  /* 50 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 78, ),
815  /* 51 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 78, ),
816  /* 52 */ array(16, 18, 19, 22, 23, 28, 32, 33, 34, 36, 38, 41, 56, 57, 58, 59, 60, 63, 78, ),
817  /* 53 */ array(1, 27, 29, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
818  /* 54 */ array(1, 17, 29, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
819  /* 55 */ array(1, 17, 29, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
820  /* 56 */ array(1, 17, 29, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
821  /* 57 */ array(1, 29, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
822  /* 58 */ array(1, 29, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
823  /* 59 */ array(1, 29, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
824  /* 60 */ array(1, 24, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
825  /* 61 */ array(1, 17, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
826  /* 62 */ array(1, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
827  /* 63 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
828  /* 64 */ array(1, 2, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
829  /* 65 */ array(1, 17, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
830  /* 66 */ array(1, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
831  /* 67 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 79, ),
832  /* 68 */ array(1, 30, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
833  /* 69 */ array(1, 17, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
834  /* 70 */ array(1, 17, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
835  /* 71 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
836  /* 72 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
837  /* 73 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
838  /* 74 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
839  /* 75 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
840  /* 76 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
841  /* 77 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
842  /* 78 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
843  /* 79 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
844  /* 80 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
845  /* 81 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
846  /* 82 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
847  /* 83 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
848  /* 84 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
849  /* 85 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
850  /* 86 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
851  /* 87 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
852  /* 88 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
853  /* 89 */ array(1, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
854  /* 90 */ array(40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
855  /* 91 */ array(40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, ),
856  /* 92 */ array(1, 17, 21, 29, 35, 38, 61, ),
857  /* 93 */ array(1, 17, 29, 35, 54, ),
858  /* 94 */ array(1, 29, 35, ),
859  /* 95 */ array(3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 16, 22, 23, 28, 32, 33, 34, ),
860  /* 96 */ array(10, 16, 22, 23, 28, 32, 33, 34, 78, 79, 80, ),
861  /* 97 */ array(16, 19, 29, 31, 35, ),
862  /* 98 */ array(16, 19, 29, 31, 35, ),
863  /* 99 */ array(1, 17, 29, 35, ),
864  /* 100 */ array(1, 17, 29, 35, ),
865  /* 101 */ array(16, 19, 29, 35, ),
866  /* 102 */ array(16, 19, 29, 35, ),
867  /* 103 */ array(1, 2, 17, ),
868  /* 104 */ array(1, 29, 35, ),
869  /* 105 */ array(1, 29, 35, ),
870  /* 106 */ array(18, 19, 63, ),
871  /* 107 */ array(21, 59, 64, ),
872  /* 108 */ array(18, 38, ),
873  /* 109 */ array(10, 16, 22, 23, 28, 32, 33, 34, 78, 79, 80, ),
874  /* 110 */ array(4, 5, 6, 7, 8, 13, 14, 15, ),
875  /* 111 */ array(1, 17, 29, 30, 35, 54, ),
876  /* 112 */ array(1, 17, 29, 35, 54, ),
877  /* 113 */ array(1, 17, 29, 35, 54, ),
878  /* 114 */ array(16, 19, 20, 25, ),
879  /* 115 */ array(16, 19, 20, 62, ),
880  /* 116 */ array(16, 19, 62, ),
881  /* 117 */ array(16, 19, 20, ),
882  /* 118 */ array(1, 31, 54, ),
883  /* 119 */ array(20, 21, 61, ),
884  /* 120 */ array(1, 17, 54, ),
885  /* 121 */ array(20, 21, 61, ),
886  /* 122 */ array(1, 17, 21, ),
887  /* 123 */ array(17, 29, 35, ),
888  /* 124 */ array(16, 19, ),
889  /* 125 */ array(16, 19, ),
890  /* 126 */ array(16, 19, ),
891  /* 127 */ array(29, 35, ),
892  /* 128 */ array(16, 19, ),
893  /* 129 */ array(18, 38, ),
894  /* 130 */ array(16, 19, ),
895  /* 131 */ array(16, 19, ),
896  /* 132 */ array(1, 17, ),
897  /* 133 */ array(16, 19, ),
898  /* 134 */ array(29, 35, ),
899  /* 135 */ array(21, 61, ),
900  /* 136 */ array(18, 19, ),
901  /* 137 */ array(16, 19, ),
902  /* 138 */ array(16, 19, ),
903  /* 139 */ array(18, 38, ),
904  /* 140 */ array(16, 19, ),
905  /* 141 */ array(1, 54, ),
906  /* 142 */ array(16, 19, ),
907  /* 143 */ array(16, 19, ),
908  /* 144 */ array(18, 19, ),
909  /* 145 */ array(16, 19, ),
910  /* 146 */ array(16, 19, ),
911  /* 147 */ array(1, ),
912  /* 148 */ array(21, ),
913  /* 149 */ array(1, ),
914  /* 150 */ array(1, ),
915  /* 151 */ array(1, ),
916  /* 152 */ array(1, ),
917  /* 153 */ array(1, ),
918  /* 154 */ array(1, ),
919  /* 155 */ array(21, ),
920  /* 156 */ array(1, ),
921  /* 157 */ array(),
922  /* 158 */ array(17, 29, 35, ),
923  /* 159 */ array(17, 29, 35, ),
924  /* 160 */ array(16, 19, 62, ),
925  /* 161 */ array(17, 29, 35, ),
926  /* 162 */ array(17, 29, 35, ),
927  /* 163 */ array(17, 29, 35, ),
928  /* 164 */ array(17, 29, 35, ),
929  /* 165 */ array(17, 29, 35, ),
930  /* 166 */ array(17, 29, 35, ),
931  /* 167 */ array(17, 29, 35, ),
932  /* 168 */ array(17, 29, 35, ),
933  /* 169 */ array(17, 29, 35, ),
934  /* 170 */ array(17, 29, 35, ),
935  /* 171 */ array(17, 29, 35, ),
936  /* 172 */ array(17, 29, 35, ),
937  /* 173 */ array(16, 18, 19, ),
938  /* 174 */ array(17, 29, 35, ),
939  /* 175 */ array(17, 29, 35, ),
940  /* 176 */ array(17, 29, 35, ),
941  /* 177 */ array(17, 29, 35, ),
942  /* 178 */ array(17, 29, 35, ),
943  /* 179 */ array(17, 29, 35, ),
944  /* 180 */ array(59, 64, ),
945  /* 181 */ array(1, 17, ),
946  /* 182 */ array(59, 64, ),
947  /* 183 */ array(59, 64, ),
948  /* 184 */ array(1, 17, ),
949  /* 185 */ array(59, 64, ),
950  /* 186 */ array(59, 64, ),
951  /* 187 */ array(59, 64, ),
952  /* 188 */ array(1, 17, ),
953  /* 189 */ array(59, 64, ),
954  /* 190 */ array(16, 38, ),
955  /* 191 */ array(59, 64, ),
956  /* 192 */ array(59, 64, ),
957  /* 193 */ array(14, ),
958  /* 194 */ array(21, ),
959  /* 195 */ array(21, ),
960  /* 196 */ array(21, ),
961  /* 197 */ array(38, ),
962  /* 198 */ array(1, ),
963  /* 199 */ array(2, ),
964  /* 200 */ array(29, ),
965  /* 201 */ array(29, ),
966  /* 202 */ array(1, ),
967  /* 203 */ array(2, ),
968  /* 204 */ array(),
969  /* 205 */ array(),
970  /* 206 */ array(),
971  /* 207 */ array(),
972  /* 208 */ array(),
973  /* 209 */ array(17, 24, 26, 27, 29, 30, 35, 37, 38, 39, 54, 61, 65, 79, ),
974  /* 210 */ array(17, 20, 29, 35, 38, 61, ),
975  /* 211 */ array(38, 59, 61, 65, ),
976  /* 212 */ array(16, 18, 19, 36, ),
977  /* 213 */ array(31, 38, 61, ),
978  /* 214 */ array(38, 61, ),
979  /* 215 */ array(2, 20, ),
980  /* 216 */ array(38, 61, ),
981  /* 217 */ array(24, 37, ),
982  /* 218 */ array(37, 65, ),
983  /* 219 */ array(17, 25, ),
984  /* 220 */ array(37, 39, ),
985  /* 221 */ array(20, 59, ),
986  /* 222 */ array(37, 39, ),
987  /* 223 */ array(37, 39, ),
988  /* 224 */ array(25, 79, ),
989  /* 225 */ array(19, 62, ),
990  /* 226 */ array(63, ),
991  /* 227 */ array(19, ),
992  /* 228 */ array(65, ),
993  /* 229 */ array(19, ),
994  /* 230 */ array(19, ),
995  /* 231 */ array(19, ),
996  /* 232 */ array(25, ),
997  /* 233 */ array(63, ),
998  /* 234 */ array(19, ),
999  /* 235 */ array(59, ),
1000  /* 236 */ array(36, ),
1001  /* 237 */ array(36, ),
1002  /* 238 */ array(39, ),
1003  /* 239 */ array(19, ),
1004  /* 240 */ array(55, ),
1005  /* 241 */ array(2, ),
1006  /* 242 */ array(38, ),
1007  /* 243 */ array(18, ),
1008  /* 244 */ array(18, ),
1009  /* 245 */ array(18, ),
1010  /* 246 */ array(19, ),
1011  /* 247 */ array(18, ),
1012  /* 248 */ array(20, ),
1013  /* 249 */ array(19, ),
1014  /* 250 */ array(19, ),
1015  /* 251 */ array(2, ),
1016  /* 252 */ array(26, ),
1017  /* 253 */ array(38, ),
1018  /* 254 */ array(19, ),
1019  /* 255 */ array(19, ),
1020  /* 256 */ array(18, ),
1021  /* 257 */ array(),
1022  /* 258 */ array(),
1023  /* 259 */ array(),
1024  /* 260 */ array(),
1025  /* 261 */ array(),
1026  /* 262 */ array(),
1027  /* 263 */ array(),
1028  /* 264 */ array(),
1029  /* 265 */ array(),
1030  /* 266 */ array(),
1031  /* 267 */ array(),
1032  /* 268 */ array(),
1033  /* 269 */ array(),
1034  /* 270 */ array(),
1035  /* 271 */ array(),
1036  /* 272 */ array(),
1037  /* 273 */ array(),
1038  /* 274 */ array(),
1039  /* 275 */ array(),
1040  /* 276 */ array(),
1041  /* 277 */ array(),
1042  /* 278 */ array(),
1043  /* 279 */ array(),
1044  /* 280 */ array(),
1045  /* 281 */ array(),
1046  /* 282 */ array(),
1047  /* 283 */ array(),
1048  /* 284 */ array(),
1049  /* 285 */ array(),
1050  /* 286 */ array(),
1051  /* 287 */ array(),
1052  /* 288 */ array(),
1053  /* 289 */ array(),
1054  /* 290 */ array(),
1055  /* 291 */ array(),
1056  /* 292 */ array(),
1057  /* 293 */ array(),
1058  /* 294 */ array(),
1059  /* 295 */ array(),
1060  /* 296 */ array(),
1061  /* 297 */ array(),
1062  /* 298 */ array(),
1063  /* 299 */ array(),
1064  /* 300 */ array(),
1065  /* 301 */ array(),
1066  /* 302 */ array(),
1067  /* 303 */ array(),
1068  /* 304 */ array(),
1069  /* 305 */ array(),
1070  /* 306 */ array(),
1071  /* 307 */ array(),
1072  /* 308 */ array(),
1073  /* 309 */ array(),
1074  /* 310 */ array(),
1075  /* 311 */ array(),
1076  /* 312 */ array(),
1077  /* 313 */ array(),
1078  /* 314 */ array(),
1079  /* 315 */ array(),
1080  /* 316 */ array(),
1081  /* 317 */ array(),
1082  /* 318 */ array(),
1083  /* 319 */ array(),
1084  /* 320 */ array(),
1085  /* 321 */ array(),
1086  /* 322 */ array(),
1087  /* 323 */ array(),
1088  /* 324 */ array(),
1089  /* 325 */ array(),
1090  /* 326 */ array(),
1091  /* 327 */ array(),
1092  /* 328 */ array(),
1093  /* 329 */ array(),
1094  /* 330 */ array(),
1095  /* 331 */ array(),
1096  /* 332 */ array(),
1097  /* 333 */ array(),
1098  /* 334 */ array(),
1099  /* 335 */ array(),
1100  /* 336 */ array(),
1101  /* 337 */ array(),
1102  /* 338 */ array(),
1103  /* 339 */ array(),
1104  /* 340 */ array(),
1105  /* 341 */ array(),
1106  /* 342 */ array(),
1107  /* 343 */ array(),
1108  /* 344 */ array(),
1109  /* 345 */ array(),
1110  /* 346 */ array(),
1111  /* 347 */ array(),
1112  /* 348 */ array(),
1113  /* 349 */ array(),
1114  /* 350 */ array(),
1115  /* 351 */ array(),
1116  /* 352 */ array(),
1117  /* 353 */ array(),
1118  /* 354 */ array(),
1119  /* 355 */ array(),
1120  /* 356 */ array(),
1121  /* 357 */ array(),
1122  /* 358 */ array(),
1123  /* 359 */ array(),
1124  /* 360 */ array(),
1125  /* 361 */ array(),
1126  /* 362 */ array(),
1127  /* 363 */ array(),
1128  /* 364 */ array(),
1129  /* 365 */ array(),
1130  /* 366 */ array(),
1131  /* 367 */ array(),
1132  /* 368 */ array(),
1133  /* 369 */ array(),
1134  /* 370 */ array(),
1135  /* 371 */ array(),
1136  /* 372 */ array(),
1137  /* 373 */ array(),
1138  /* 374 */ array(),
1139  /* 375 */ array(),
1140  /* 376 */ array(),
1141  /* 377 */ array(),
1142  /* 378 */ array(),
1143  /* 379 */ array(),
1144  /* 380 */ array(),
1145  /* 381 */ array(),
1146  /* 382 */ array(),
1147  /* 383 */ array(),
1148  /* 384 */ array(),
1149  /* 385 */ array(),
1150  /* 386 */ array(),
1151  /* 387 */ array(),
1152  /* 388 */ array(),
1153  /* 389 */ array(),
1154  /* 390 */ array(),
1155 );
1156  static public $yy_default = array(
1157  /* 0 */ 394, 578, 549, 549, 595, 549, 595, 595, 595, 595,
1158  /* 10 */ 595, 595, 595, 595, 595, 595, 595, 595, 595, 595,
1159  /* 20 */ 595, 595, 595, 595, 595, 595, 595, 595, 595, 595,
1160  /* 30 */ 595, 595, 595, 595, 595, 595, 595, 595, 595, 595,
1161  /* 40 */ 595, 595, 595, 595, 595, 595, 595, 595, 595, 595,
1162  /* 50 */ 595, 595, 595, 455, 595, 595, 595, 455, 455, 455,
1163  /* 60 */ 595, 595, 595, 595, 595, 595, 595, 595, 460, 595,
1164  /* 70 */ 595, 466, 465, 484, 547, 579, 581, 548, 580, 489,
1165  /* 80 */ 488, 480, 479, 481, 457, 485, 462, 476, 460, 437,
1166  /* 90 */ 492, 493, 504, 468, 455, 391, 595, 455, 455, 475,
1167  /* 100 */ 512, 455, 455, 595, 455, 455, 595, 561, 595, 595,
1168  /* 110 */ 595, 468, 468, 468, 595, 522, 522, 522, 468, 513,
1169  /* 120 */ 468, 513, 595, 595, 595, 595, 595, 455, 595, 595,
1170  /* 130 */ 595, 595, 595, 595, 455, 513, 595, 595, 595, 595,
1171  /* 140 */ 595, 468, 595, 595, 595, 595, 522, 473, 558, 491,
1172  /* 150 */ 478, 472, 497, 495, 496, 513, 471, 556, 595, 595,
1173  /* 160 */ 523, 595, 595, 595, 595, 595, 595, 595, 595, 595,
1174  /* 170 */ 595, 595, 595, 595, 595, 595, 595, 595, 595, 595,
1175  /* 180 */ 516, 595, 518, 519, 595, 520, 540, 542, 595, 539,
1176  /* 190 */ 522, 517, 541, 410, 562, 559, 536, 522, 475, 551,
1177  /* 200 */ 594, 594, 512, 550, 522, 555, 555, 555, 522, 470,
1178  /* 210 */ 504, 504, 595, 504, 490, 534, 504, 595, 595, 494,
1179  /* 220 */ 595, 500, 595, 595, 494, 595, 595, 595, 595, 595,
1180  /* 230 */ 595, 595, 494, 595, 595, 500, 502, 595, 595, 595,
1181  /* 240 */ 506, 534, 560, 595, 595, 595, 595, 595, 595, 595,
1182  /* 250 */ 595, 534, 463, 534, 595, 595, 595, 401, 543, 400,
1183  /* 260 */ 402, 546, 445, 398, 397, 393, 464, 438, 593, 467,
1184  /* 270 */ 435, 395, 440, 434, 439, 396, 399, 456, 531, 420,
1185  /* 280 */ 529, 392, 528, 506, 527, 535, 444, 557, 545, 544,
1186  /* 290 */ 530, 412, 453, 526, 505, 419, 507, 525, 532, 470,
1187  /* 300 */ 514, 521, 524, 508, 510, 482, 483, 416, 415, 417,
1188  /* 310 */ 418, 477, 511, 515, 538, 469, 509, 534, 533, 432,
1189  /* 320 */ 446, 447, 443, 442, 436, 454, 433, 441, 554, 448,
1190  /* 330 */ 498, 499, 501, 503, 452, 451, 449, 450, 552, 553,
1191  /* 340 */ 486, 487, 589, 430, 582, 583, 584, 431, 429, 426,
1192  /* 350 */ 537, 427, 428, 406, 587, 575, 404, 577, 576, 405,
1193  /* 360 */ 585, 586, 588, 591, 592, 425, 424, 569, 568, 570,
1194  /* 370 */ 571, 572, 567, 566, 414, 563, 564, 565, 573, 574,
1195  /* 380 */ 422, 590, 407, 423, 421, 408, 474, 413, 411, 409,
1196  /* 390 */ 403,
1197 );
1198  const YYNOCODE = 124;
1199  const YYSTACKDEPTH = 100;
1200  const YYNSTATE = 391;
1201  const YYNRULE = 204;
1202  const YYERRORSYMBOL = 81;
1203  const YYERRSYMDT = 'yy0';
1204  const YYFALLBACK = 0;
1205  static public $yyFallback = array(
1206  );
1207  static function Trace($TraceFILE, $zTracePrompt)
1208  {
1209  if (!$TraceFILE) {
1210  $zTracePrompt = 0;
1211  } elseif (!$zTracePrompt) {
1212  $TraceFILE = 0;
1213  }
1214  self::$yyTraceFILE = $TraceFILE;
1215  self::$yyTracePrompt = $zTracePrompt;
1216  }
1217 
1218  static function PrintTrace()
1219  {
1220  self::$yyTraceFILE = fopen('php://output', 'w');
1221  self::$yyTracePrompt = '<br>';
1222  }
1223 
1224  static public $yyTraceFILE;
1225  static public $yyTracePrompt;
1226  public $yyidx; /* Index of top element in stack */
1227  public $yyerrcnt; /* Shifts left before out of the error */
1228  public $yystack = array(); /* The parser's stack */
1229 
1230  public $yyTokenName = array(
1231  '$', 'VERT', 'COLON', 'COMMENT',
1232  'PHPSTARTTAG', 'PHPENDTAG', 'ASPSTARTTAG', 'ASPENDTAG',
1233  'FAKEPHPSTARTTAG', 'XMLTAG', 'TEXT', 'STRIPON',
1234  'STRIPOFF', 'LITERALSTART', 'LITERALEND', 'LITERAL',
1235  'LDEL', 'RDEL', 'DOLLAR', 'ID',
1236  'EQUAL', 'PTR', 'LDELIF', 'LDELFOR',
1237  'SEMICOLON', 'INCDEC', 'TO', 'STEP',
1238  'LDELFOREACH', 'SPACE', 'AS', 'APTR',
1239  'LDELSETFILTER', 'SMARTYBLOCKCHILD', 'LDELSLASH', 'ATTR',
1240  'INTEGER', 'COMMA', 'OPENP', 'CLOSEP',
1241  'MATH', 'UNIMATH', 'ANDSYM', 'ISIN',
1242  'ISDIVBY', 'ISNOTDIVBY', 'ISEVEN', 'ISNOTEVEN',
1243  'ISEVENBY', 'ISNOTEVENBY', 'ISODD', 'ISNOTODD',
1244  'ISODDBY', 'ISNOTODDBY', 'INSTANCEOF', 'QMARK',
1245  'NOT', 'TYPECAST', 'HEX', 'DOT',
1246  'SINGLEQUOTESTRING', 'DOUBLECOLON', 'AT', 'HATCH',
1247  'OPENB', 'CLOSEB', 'EQUALS', 'NOTEQUALS',
1248  'GREATERTHAN', 'LESSTHAN', 'GREATEREQUAL', 'LESSEQUAL',
1249  'IDENTITY', 'NONEIDENTITY', 'MOD', 'LAND',
1250  'LOR', 'LXOR', 'QUOTE', 'BACKTICK',
1251  'DOLLARID', 'error', 'start', 'template',
1252  'template_element', 'smartytag', 'literal', 'literal_elements',
1253  'literal_element', 'value', 'modifierlist', 'attributes',
1254  'expr', 'varindexed', 'statement', 'statements',
1255  'optspace', 'varvar', 'foraction', 'modparameters',
1256  'attribute', 'ternary', 'array', 'ifcond',
1257  'lop', 'variable', 'function', 'doublequoted_with_quotes',
1258  'static_class_access', 'object', 'arrayindex', 'indexdef',
1259  'varvarele', 'objectchain', 'objectelement', 'method',
1260  'params', 'modifier', 'modparameter', 'arrayelements',
1261  'arrayelement', 'doublequoted', 'doublequotedcontent',
1262  );
1263 
1264  static public $yyRuleName = array(
1265  /* 0 */ "start ::= template",
1266  /* 1 */ "template ::= template_element",
1267  /* 2 */ "template ::= template template_element",
1268  /* 3 */ "template ::=",
1269  /* 4 */ "template_element ::= smartytag",
1270  /* 5 */ "template_element ::= COMMENT",
1271  /* 6 */ "template_element ::= literal",
1272  /* 7 */ "template_element ::= PHPSTARTTAG",
1273  /* 8 */ "template_element ::= PHPENDTAG",
1274  /* 9 */ "template_element ::= ASPSTARTTAG",
1275  /* 10 */ "template_element ::= ASPENDTAG",
1276  /* 11 */ "template_element ::= FAKEPHPSTARTTAG",
1277  /* 12 */ "template_element ::= XMLTAG",
1278  /* 13 */ "template_element ::= TEXT",
1279  /* 14 */ "template_element ::= STRIPON",
1280  /* 15 */ "template_element ::= STRIPOFF",
1281  /* 16 */ "literal ::= LITERALSTART LITERALEND",
1282  /* 17 */ "literal ::= LITERALSTART literal_elements LITERALEND",
1283  /* 18 */ "literal_elements ::= literal_elements literal_element",
1284  /* 19 */ "literal_elements ::=",
1285  /* 20 */ "literal_element ::= literal",
1286  /* 21 */ "literal_element ::= LITERAL",
1287  /* 22 */ "literal_element ::= PHPSTARTTAG",
1288  /* 23 */ "literal_element ::= FAKEPHPSTARTTAG",
1289  /* 24 */ "literal_element ::= PHPENDTAG",
1290  /* 25 */ "literal_element ::= ASPSTARTTAG",
1291  /* 26 */ "literal_element ::= ASPENDTAG",
1292  /* 27 */ "smartytag ::= LDEL value RDEL",
1293  /* 28 */ "smartytag ::= LDEL value modifierlist attributes RDEL",
1294  /* 29 */ "smartytag ::= LDEL value attributes RDEL",
1295  /* 30 */ "smartytag ::= LDEL expr modifierlist attributes RDEL",
1296  /* 31 */ "smartytag ::= LDEL expr attributes RDEL",
1297  /* 32 */ "smartytag ::= LDEL DOLLAR ID EQUAL value RDEL",
1298  /* 33 */ "smartytag ::= LDEL DOLLAR ID EQUAL expr RDEL",
1299  /* 34 */ "smartytag ::= LDEL DOLLAR ID EQUAL expr attributes RDEL",
1300  /* 35 */ "smartytag ::= LDEL varindexed EQUAL expr attributes RDEL",
1301  /* 36 */ "smartytag ::= LDEL ID attributes RDEL",
1302  /* 37 */ "smartytag ::= LDEL ID RDEL",
1303  /* 38 */ "smartytag ::= LDEL ID PTR ID attributes RDEL",
1304  /* 39 */ "smartytag ::= LDEL ID modifierlist attributes RDEL",
1305  /* 40 */ "smartytag ::= LDEL ID PTR ID modifierlist attributes RDEL",
1306  /* 41 */ "smartytag ::= LDELIF expr RDEL",
1307  /* 42 */ "smartytag ::= LDELIF expr attributes RDEL",
1308  /* 43 */ "smartytag ::= LDELIF statement RDEL",
1309  /* 44 */ "smartytag ::= LDELIF statement attributes RDEL",
1310  /* 45 */ "smartytag ::= LDELFOR statements SEMICOLON optspace expr SEMICOLON optspace DOLLAR varvar foraction attributes RDEL",
1311  /* 46 */ "foraction ::= EQUAL expr",
1312  /* 47 */ "foraction ::= INCDEC",
1313  /* 48 */ "smartytag ::= LDELFOR statement TO expr attributes RDEL",
1314  /* 49 */ "smartytag ::= LDELFOR statement TO expr STEP expr attributes RDEL",
1315  /* 50 */ "smartytag ::= LDELFOREACH attributes RDEL",
1316  /* 51 */ "smartytag ::= LDELFOREACH SPACE value AS DOLLAR varvar attributes RDEL",
1317  /* 52 */ "smartytag ::= LDELFOREACH SPACE value AS DOLLAR varvar APTR DOLLAR varvar attributes RDEL",
1318  /* 53 */ "smartytag ::= LDELFOREACH SPACE expr AS DOLLAR varvar attributes RDEL",
1319  /* 54 */ "smartytag ::= LDELFOREACH SPACE expr AS DOLLAR varvar APTR DOLLAR varvar attributes RDEL",
1320  /* 55 */ "smartytag ::= LDELSETFILTER ID modparameters RDEL",
1321  /* 56 */ "smartytag ::= LDELSETFILTER ID modparameters modifierlist RDEL",
1322  /* 57 */ "smartytag ::= SMARTYBLOCKCHILD",
1323  /* 58 */ "smartytag ::= LDELSLASH ID RDEL",
1324  /* 59 */ "smartytag ::= LDELSLASH ID modifierlist RDEL",
1325  /* 60 */ "smartytag ::= LDELSLASH ID PTR ID RDEL",
1326  /* 61 */ "smartytag ::= LDELSLASH ID PTR ID modifierlist RDEL",
1327  /* 62 */ "attributes ::= attributes attribute",
1328  /* 63 */ "attributes ::= attribute",
1329  /* 64 */ "attributes ::=",
1330  /* 65 */ "attribute ::= SPACE ID EQUAL ID",
1331  /* 66 */ "attribute ::= ATTR expr",
1332  /* 67 */ "attribute ::= ATTR value",
1333  /* 68 */ "attribute ::= SPACE ID",
1334  /* 69 */ "attribute ::= SPACE expr",
1335  /* 70 */ "attribute ::= SPACE value",
1336  /* 71 */ "attribute ::= SPACE INTEGER EQUAL expr",
1337  /* 72 */ "statements ::= statement",
1338  /* 73 */ "statements ::= statements COMMA statement",
1339  /* 74 */ "statement ::= DOLLAR varvar EQUAL expr",
1340  /* 75 */ "statement ::= varindexed EQUAL expr",
1341  /* 76 */ "statement ::= OPENP statement CLOSEP",
1342  /* 77 */ "expr ::= value",
1343  /* 78 */ "expr ::= ternary",
1344  /* 79 */ "expr ::= DOLLAR ID COLON ID",
1345  /* 80 */ "expr ::= expr MATH value",
1346  /* 81 */ "expr ::= expr UNIMATH value",
1347  /* 82 */ "expr ::= expr ANDSYM value",
1348  /* 83 */ "expr ::= array",
1349  /* 84 */ "expr ::= expr modifierlist",
1350  /* 85 */ "expr ::= expr ifcond expr",
1351  /* 86 */ "expr ::= expr ISIN array",
1352  /* 87 */ "expr ::= expr ISIN value",
1353  /* 88 */ "expr ::= expr lop expr",
1354  /* 89 */ "expr ::= expr ISDIVBY expr",
1355  /* 90 */ "expr ::= expr ISNOTDIVBY expr",
1356  /* 91 */ "expr ::= expr ISEVEN",
1357  /* 92 */ "expr ::= expr ISNOTEVEN",
1358  /* 93 */ "expr ::= expr ISEVENBY expr",
1359  /* 94 */ "expr ::= expr ISNOTEVENBY expr",
1360  /* 95 */ "expr ::= expr ISODD",
1361  /* 96 */ "expr ::= expr ISNOTODD",
1362  /* 97 */ "expr ::= expr ISODDBY expr",
1363  /* 98 */ "expr ::= expr ISNOTODDBY expr",
1364  /* 99 */ "expr ::= value INSTANCEOF ID",
1365  /* 100 */ "expr ::= value INSTANCEOF value",
1366  /* 101 */ "ternary ::= OPENP expr CLOSEP QMARK DOLLAR ID COLON expr",
1367  /* 102 */ "ternary ::= OPENP expr CLOSEP QMARK expr COLON expr",
1368  /* 103 */ "value ::= variable",
1369  /* 104 */ "value ::= UNIMATH value",
1370  /* 105 */ "value ::= NOT value",
1371  /* 106 */ "value ::= TYPECAST value",
1372  /* 107 */ "value ::= variable INCDEC",
1373  /* 108 */ "value ::= HEX",
1374  /* 109 */ "value ::= INTEGER",
1375  /* 110 */ "value ::= INTEGER DOT INTEGER",
1376  /* 111 */ "value ::= INTEGER DOT",
1377  /* 112 */ "value ::= DOT INTEGER",
1378  /* 113 */ "value ::= ID",
1379  /* 114 */ "value ::= function",
1380  /* 115 */ "value ::= OPENP expr CLOSEP",
1381  /* 116 */ "value ::= SINGLEQUOTESTRING",
1382  /* 117 */ "value ::= doublequoted_with_quotes",
1383  /* 118 */ "value ::= ID DOUBLECOLON static_class_access",
1384  /* 119 */ "value ::= varindexed DOUBLECOLON static_class_access",
1385  /* 120 */ "value ::= smartytag",
1386  /* 121 */ "value ::= value modifierlist",
1387  /* 122 */ "variable ::= varindexed",
1388  /* 123 */ "variable ::= DOLLAR varvar AT ID",
1389  /* 124 */ "variable ::= object",
1390  /* 125 */ "variable ::= HATCH ID HATCH",
1391  /* 126 */ "variable ::= HATCH ID HATCH arrayindex",
1392  /* 127 */ "variable ::= HATCH variable HATCH",
1393  /* 128 */ "variable ::= HATCH variable HATCH arrayindex",
1394  /* 129 */ "varindexed ::= DOLLAR varvar arrayindex",
1395  /* 130 */ "arrayindex ::= arrayindex indexdef",
1396  /* 131 */ "arrayindex ::=",
1397  /* 132 */ "indexdef ::= DOT DOLLAR varvar",
1398  /* 133 */ "indexdef ::= DOT DOLLAR varvar AT ID",
1399  /* 134 */ "indexdef ::= DOT ID",
1400  /* 135 */ "indexdef ::= DOT INTEGER",
1401  /* 136 */ "indexdef ::= DOT LDEL expr RDEL",
1402  /* 137 */ "indexdef ::= OPENB ID CLOSEB",
1403  /* 138 */ "indexdef ::= OPENB ID DOT ID CLOSEB",
1404  /* 139 */ "indexdef ::= OPENB expr CLOSEB",
1405  /* 140 */ "indexdef ::= OPENB CLOSEB",
1406  /* 141 */ "varvar ::= varvarele",
1407  /* 142 */ "varvar ::= varvar varvarele",
1408  /* 143 */ "varvarele ::= ID",
1409  /* 144 */ "varvarele ::= LDEL expr RDEL",
1410  /* 145 */ "object ::= varindexed objectchain",
1411  /* 146 */ "objectchain ::= objectelement",
1412  /* 147 */ "objectchain ::= objectchain objectelement",
1413  /* 148 */ "objectelement ::= PTR ID arrayindex",
1414  /* 149 */ "objectelement ::= PTR DOLLAR varvar arrayindex",
1415  /* 150 */ "objectelement ::= PTR LDEL expr RDEL arrayindex",
1416  /* 151 */ "objectelement ::= PTR ID LDEL expr RDEL arrayindex",
1417  /* 152 */ "objectelement ::= PTR method",
1418  /* 153 */ "function ::= ID OPENP params CLOSEP",
1419  /* 154 */ "method ::= ID OPENP params CLOSEP",
1420  /* 155 */ "method ::= DOLLAR ID OPENP params CLOSEP",
1421  /* 156 */ "params ::= params COMMA expr",
1422  /* 157 */ "params ::= expr",
1423  /* 158 */ "params ::=",
1424  /* 159 */ "modifierlist ::= modifierlist modifier modparameters",
1425  /* 160 */ "modifierlist ::= modifier modparameters",
1426  /* 161 */ "modifier ::= VERT AT ID",
1427  /* 162 */ "modifier ::= VERT ID",
1428  /* 163 */ "modparameters ::= modparameters modparameter",
1429  /* 164 */ "modparameters ::=",
1430  /* 165 */ "modparameter ::= COLON value",
1431  /* 166 */ "modparameter ::= COLON array",
1432  /* 167 */ "static_class_access ::= method",
1433  /* 168 */ "static_class_access ::= method objectchain",
1434  /* 169 */ "static_class_access ::= ID",
1435  /* 170 */ "static_class_access ::= DOLLAR ID arrayindex",
1436  /* 171 */ "static_class_access ::= DOLLAR ID arrayindex objectchain",
1437  /* 172 */ "ifcond ::= EQUALS",
1438  /* 173 */ "ifcond ::= NOTEQUALS",
1439  /* 174 */ "ifcond ::= GREATERTHAN",
1440  /* 175 */ "ifcond ::= LESSTHAN",
1441  /* 176 */ "ifcond ::= GREATEREQUAL",
1442  /* 177 */ "ifcond ::= LESSEQUAL",
1443  /* 178 */ "ifcond ::= IDENTITY",
1444  /* 179 */ "ifcond ::= NONEIDENTITY",
1445  /* 180 */ "ifcond ::= MOD",
1446  /* 181 */ "lop ::= LAND",
1447  /* 182 */ "lop ::= LOR",
1448  /* 183 */ "lop ::= LXOR",
1449  /* 184 */ "array ::= OPENB arrayelements CLOSEB",
1450  /* 185 */ "arrayelements ::= arrayelement",
1451  /* 186 */ "arrayelements ::= arrayelements COMMA arrayelement",
1452  /* 187 */ "arrayelements ::=",
1453  /* 188 */ "arrayelement ::= value APTR expr",
1454  /* 189 */ "arrayelement ::= ID APTR expr",
1455  /* 190 */ "arrayelement ::= expr",
1456  /* 191 */ "doublequoted_with_quotes ::= QUOTE QUOTE",
1457  /* 192 */ "doublequoted_with_quotes ::= QUOTE doublequoted QUOTE",
1458  /* 193 */ "doublequoted ::= doublequoted doublequotedcontent",
1459  /* 194 */ "doublequoted ::= doublequotedcontent",
1460  /* 195 */ "doublequotedcontent ::= BACKTICK variable BACKTICK",
1461  /* 196 */ "doublequotedcontent ::= BACKTICK expr BACKTICK",
1462  /* 197 */ "doublequotedcontent ::= DOLLARID",
1463  /* 198 */ "doublequotedcontent ::= LDEL variable RDEL",
1464  /* 199 */ "doublequotedcontent ::= LDEL expr RDEL",
1465  /* 200 */ "doublequotedcontent ::= smartytag",
1466  /* 201 */ "doublequotedcontent ::= TEXT",
1467  /* 202 */ "optspace ::= SPACE",
1468  /* 203 */ "optspace ::=",
1469  );
1470 
1471  function tokenName($tokenType)
1472  {
1473  if ($tokenType === 0) {
1474  return 'End of Input';
1475  }
1476  if ($tokenType > 0 && $tokenType < count($this->yyTokenName)) {
1477  return $this->yyTokenName[$tokenType];
1478  } else {
1479  return "Unknown";
1480  }
1481  }
1482 
1483  static function yy_destructor($yymajor, $yypminor)
1484  {
1485  switch ($yymajor) {
1486  default: break; /* If no destructor action specified: do nothing */
1487  }
1488  }
1489 
1491  {
1492  if (!count($this->yystack)) {
1493  return;
1494  }
1495  $yytos = array_pop($this->yystack);
1496  if (self::$yyTraceFILE && $this->yyidx >= 0) {
1497  fwrite(self::$yyTraceFILE,
1498  self::$yyTracePrompt . 'Popping ' . $this->yyTokenName[$yytos->major] .
1499  "\n");
1500  }
1501  $yymajor = $yytos->major;
1502  self::yy_destructor($yymajor, $yytos->minor);
1503  $this->yyidx--;
1504  return $yymajor;
1505  }
1506 
1507  function __destruct()
1508  {
1509  while ($this->yystack !== Array()) {
1510  $this->yy_pop_parser_stack();
1511  }
1512  if (is_resource(self::$yyTraceFILE)) {
1513  fclose(self::$yyTraceFILE);
1514  }
1515  }
1516 
1517  function yy_get_expected_tokens($token)
1518  {
1519  $state = $this->yystack[$this->yyidx]->stateno;
1520  $expected = self::$yyExpectedTokens[$state];
1521  if (in_array($token, self::$yyExpectedTokens[$state], true)) {
1522  return $expected;
1523  }
1524  $stack = $this->yystack;
1525  $yyidx = $this->yyidx;
1526  do {
1527  $yyact = $this->yy_find_shift_action($token);
1528  if ($yyact >= self::YYNSTATE && $yyact < self::YYNSTATE + self::YYNRULE) {
1529  // reduce action
1530  $done = 0;
1531  do {
1532  if ($done++ == 100) {
1533  $this->yyidx = $yyidx;
1534  $this->yystack = $stack;
1535  // too much recursion prevents proper detection
1536  // so give up
1537  return array_unique($expected);
1538  }
1539  $yyruleno = $yyact - self::YYNSTATE;
1540  $this->yyidx -= self::$yyRuleInfo[$yyruleno]['rhs'];
1541  $nextstate = $this->yy_find_reduce_action(
1542  $this->yystack[$this->yyidx]->stateno,
1543  self::$yyRuleInfo[$yyruleno]['lhs']);
1544  if (isset(self::$yyExpectedTokens[$nextstate])) {
1545  $expected = array_merge($expected, self::$yyExpectedTokens[$nextstate]);
1546  if (in_array($token,
1547  self::$yyExpectedTokens[$nextstate], true)) {
1548  $this->yyidx = $yyidx;
1549  $this->yystack = $stack;
1550  return array_unique($expected);
1551  }
1552  }
1553  if ($nextstate < self::YYNSTATE) {
1554  // we need to shift a non-terminal
1555  $this->yyidx++;
1556  $x = new TP_yyStackEntry;
1557  $x->stateno = $nextstate;
1558  $x->major = self::$yyRuleInfo[$yyruleno]['lhs'];
1559  $this->yystack[$this->yyidx] = $x;
1560  continue 2;
1561  } elseif ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
1562  $this->yyidx = $yyidx;
1563  $this->yystack = $stack;
1564  // the last token was just ignored, we can't accept
1565  // by ignoring input, this is in essence ignoring a
1566  // syntax error!
1567  return array_unique($expected);
1568  } elseif ($nextstate === self::YY_NO_ACTION) {
1569  $this->yyidx = $yyidx;
1570  $this->yystack = $stack;
1571  // input accepted, but not shifted (I guess)
1572  return $expected;
1573  } else {
1574  $yyact = $nextstate;
1575  }
1576  } while (true);
1577  }
1578  break;
1579  } while (true);
1580  $this->yyidx = $yyidx;
1581  $this->yystack = $stack;
1582  return array_unique($expected);
1583  }
1584 
1585  function yy_is_expected_token($token)
1586  {
1587  if ($token === 0) {
1588  return true; // 0 is not part of this
1589  }
1590  $state = $this->yystack[$this->yyidx]->stateno;
1591  if (in_array($token, self::$yyExpectedTokens[$state], true)) {
1592  return true;
1593  }
1594  $stack = $this->yystack;
1595  $yyidx = $this->yyidx;
1596  do {
1597  $yyact = $this->yy_find_shift_action($token);
1598  if ($yyact >= self::YYNSTATE && $yyact < self::YYNSTATE + self::YYNRULE) {
1599  // reduce action
1600  $done = 0;
1601  do {
1602  if ($done++ == 100) {
1603  $this->yyidx = $yyidx;
1604  $this->yystack = $stack;
1605  // too much recursion prevents proper detection
1606  // so give up
1607  return true;
1608  }
1609  $yyruleno = $yyact - self::YYNSTATE;
1610  $this->yyidx -= self::$yyRuleInfo[$yyruleno]['rhs'];
1611  $nextstate = $this->yy_find_reduce_action(
1612  $this->yystack[$this->yyidx]->stateno,
1613  self::$yyRuleInfo[$yyruleno]['lhs']);
1614  if (isset(self::$yyExpectedTokens[$nextstate]) &&
1615  in_array($token, self::$yyExpectedTokens[$nextstate], true)) {
1616  $this->yyidx = $yyidx;
1617  $this->yystack = $stack;
1618  return true;
1619  }
1620  if ($nextstate < self::YYNSTATE) {
1621  // we need to shift a non-terminal
1622  $this->yyidx++;
1623  $x = new TP_yyStackEntry;
1624  $x->stateno = $nextstate;
1625  $x->major = self::$yyRuleInfo[$yyruleno]['lhs'];
1626  $this->yystack[$this->yyidx] = $x;
1627  continue 2;
1628  } elseif ($nextstate == self::YYNSTATE + self::YYNRULE + 1) {
1629  $this->yyidx = $yyidx;
1630  $this->yystack = $stack;
1631  if (!$token) {
1632  // end of input: this is valid
1633  return true;
1634  }
1635  // the last token was just ignored, we can't accept
1636  // by ignoring input, this is in essence ignoring a
1637  // syntax error!
1638  return false;
1639  } elseif ($nextstate === self::YY_NO_ACTION) {
1640  $this->yyidx = $yyidx;
1641  $this->yystack = $stack;
1642  // input accepted, but not shifted (I guess)
1643  return true;
1644  } else {
1645  $yyact = $nextstate;
1646  }
1647  } while (true);
1648  }
1649  break;
1650  } while (true);
1651  $this->yyidx = $yyidx;
1652  $this->yystack = $stack;
1653  return true;
1654  }
1655 
1656  function yy_find_shift_action($iLookAhead)
1657  {
1658  $stateno = $this->yystack[$this->yyidx]->stateno;
1659 
1660  /* if ($this->yyidx < 0) return self::YY_NO_ACTION; */
1661  if (!isset(self::$yy_shift_ofst[$stateno])) {
1662  // no shift actions
1663  return self::$yy_default[$stateno];
1664  }
1665  $i = self::$yy_shift_ofst[$stateno];
1666  if ($i === self::YY_SHIFT_USE_DFLT) {
1667  return self::$yy_default[$stateno];
1668  }
1669  if ($iLookAhead == self::YYNOCODE) {
1670  return self::YY_NO_ACTION;
1671  }
1672  $i += $iLookAhead;
1673  if ($i < 0 || $i >= self::YY_SZ_ACTTAB ||
1674  self::$yy_lookahead[$i] != $iLookAhead) {
1675  if (count(self::$yyFallback) && $iLookAhead < count(self::$yyFallback)
1676  && ($iFallback = self::$yyFallback[$iLookAhead]) != 0) {
1677  if (self::$yyTraceFILE) {
1678  fwrite(self::$yyTraceFILE, self::$yyTracePrompt . "FALLBACK " .
1679  $this->yyTokenName[$iLookAhead] . " => " .
1680  $this->yyTokenName[$iFallback] . "\n");
1681  }
1682  return $this->yy_find_shift_action($iFallback);
1683  }
1684  return self::$yy_default[$stateno];
1685  } else {
1686  return self::$yy_action[$i];
1687  }
1688  }
1689 
1690  function yy_find_reduce_action($stateno, $iLookAhead)
1691  {
1692  /* $stateno = $this->yystack[$this->yyidx]->stateno; */
1693 
1694  if (!isset(self::$yy_reduce_ofst[$stateno])) {
1695  return self::$yy_default[$stateno];
1696  }
1697  $i = self::$yy_reduce_ofst[$stateno];
1698  if ($i == self::YY_REDUCE_USE_DFLT) {
1699  return self::$yy_default[$stateno];
1700  }
1701  if ($iLookAhead == self::YYNOCODE) {
1702  return self::YY_NO_ACTION;
1703  }
1704  $i += $iLookAhead;
1705  if ($i < 0 || $i >= self::YY_SZ_ACTTAB ||
1706  self::$yy_lookahead[$i] != $iLookAhead) {
1707  return self::$yy_default[$stateno];
1708  } else {
1709  return self::$yy_action[$i];
1710  }
1711  }
1712 
1713  function yy_shift($yyNewState, $yyMajor, $yypMinor)
1714  {
1715  $this->yyidx++;
1716  if ($this->yyidx >= self::YYSTACKDEPTH) {
1717  $this->yyidx--;
1718  if (self::$yyTraceFILE) {
1719  fprintf(self::$yyTraceFILE, "%sStack Overflow!\n", self::$yyTracePrompt);
1720  }
1721  while ($this->yyidx >= 0) {
1722  $this->yy_pop_parser_stack();
1723  }
1724 #line 84 "smarty_internal_templateparser.y"
1725 
1726  $this->internalError = true;
1727  $this->compiler->trigger_template_error("Stack overflow in template parser");
1728 #line 1724 "smarty_internal_templateparser.php"
1729  return;
1730  }
1731  $yytos = new TP_yyStackEntry;
1732  $yytos->stateno = $yyNewState;
1733  $yytos->major = $yyMajor;
1734  $yytos->minor = $yypMinor;
1735  array_push($this->yystack, $yytos);
1736  if (self::$yyTraceFILE && $this->yyidx > 0) {
1737  fprintf(self::$yyTraceFILE, "%sShift %d\n", self::$yyTracePrompt,
1738  $yyNewState);
1739  fprintf(self::$yyTraceFILE, "%sStack:", self::$yyTracePrompt);
1740  for($i = 1; $i <= $this->yyidx; $i++) {
1741  fprintf(self::$yyTraceFILE, " %s",
1742  $this->yyTokenName[$this->yystack[$i]->major]);
1743  }
1744  fwrite(self::$yyTraceFILE,"\n");
1745  }
1746  }
1747 
1748  static public $yyRuleInfo = array(
1749  array( 'lhs' => 82, 'rhs' => 1 ),
1750  array( 'lhs' => 83, 'rhs' => 1 ),
1751  array( 'lhs' => 83, 'rhs' => 2 ),
1752  array( 'lhs' => 83, 'rhs' => 0 ),
1753  array( 'lhs' => 84, 'rhs' => 1 ),
1754  array( 'lhs' => 84, 'rhs' => 1 ),
1755  array( 'lhs' => 84, 'rhs' => 1 ),
1756  array( 'lhs' => 84, 'rhs' => 1 ),
1757  array( 'lhs' => 84, 'rhs' => 1 ),
1758  array( 'lhs' => 84, 'rhs' => 1 ),
1759  array( 'lhs' => 84, 'rhs' => 1 ),
1760  array( 'lhs' => 84, 'rhs' => 1 ),
1761  array( 'lhs' => 84, 'rhs' => 1 ),
1762  array( 'lhs' => 84, 'rhs' => 1 ),
1763  array( 'lhs' => 84, 'rhs' => 1 ),
1764  array( 'lhs' => 84, 'rhs' => 1 ),
1765  array( 'lhs' => 86, 'rhs' => 2 ),
1766  array( 'lhs' => 86, 'rhs' => 3 ),
1767  array( 'lhs' => 87, 'rhs' => 2 ),
1768  array( 'lhs' => 87, 'rhs' => 0 ),
1769  array( 'lhs' => 88, 'rhs' => 1 ),
1770  array( 'lhs' => 88, 'rhs' => 1 ),
1771  array( 'lhs' => 88, 'rhs' => 1 ),
1772  array( 'lhs' => 88, 'rhs' => 1 ),
1773  array( 'lhs' => 88, 'rhs' => 1 ),
1774  array( 'lhs' => 88, 'rhs' => 1 ),
1775  array( 'lhs' => 88, 'rhs' => 1 ),
1776  array( 'lhs' => 85, 'rhs' => 3 ),
1777  array( 'lhs' => 85, 'rhs' => 5 ),
1778  array( 'lhs' => 85, 'rhs' => 4 ),
1779  array( 'lhs' => 85, 'rhs' => 5 ),
1780  array( 'lhs' => 85, 'rhs' => 4 ),
1781  array( 'lhs' => 85, 'rhs' => 6 ),
1782  array( 'lhs' => 85, 'rhs' => 6 ),
1783  array( 'lhs' => 85, 'rhs' => 7 ),
1784  array( 'lhs' => 85, 'rhs' => 6 ),
1785  array( 'lhs' => 85, 'rhs' => 4 ),
1786  array( 'lhs' => 85, 'rhs' => 3 ),
1787  array( 'lhs' => 85, 'rhs' => 6 ),
1788  array( 'lhs' => 85, 'rhs' => 5 ),
1789  array( 'lhs' => 85, 'rhs' => 7 ),
1790  array( 'lhs' => 85, 'rhs' => 3 ),
1791  array( 'lhs' => 85, 'rhs' => 4 ),
1792  array( 'lhs' => 85, 'rhs' => 3 ),
1793  array( 'lhs' => 85, 'rhs' => 4 ),
1794  array( 'lhs' => 85, 'rhs' => 12 ),
1795  array( 'lhs' => 98, 'rhs' => 2 ),
1796  array( 'lhs' => 98, 'rhs' => 1 ),
1797  array( 'lhs' => 85, 'rhs' => 6 ),
1798  array( 'lhs' => 85, 'rhs' => 8 ),
1799  array( 'lhs' => 85, 'rhs' => 3 ),
1800  array( 'lhs' => 85, 'rhs' => 8 ),
1801  array( 'lhs' => 85, 'rhs' => 11 ),
1802  array( 'lhs' => 85, 'rhs' => 8 ),
1803  array( 'lhs' => 85, 'rhs' => 11 ),
1804  array( 'lhs' => 85, 'rhs' => 4 ),
1805  array( 'lhs' => 85, 'rhs' => 5 ),
1806  array( 'lhs' => 85, 'rhs' => 1 ),
1807  array( 'lhs' => 85, 'rhs' => 3 ),
1808  array( 'lhs' => 85, 'rhs' => 4 ),
1809  array( 'lhs' => 85, 'rhs' => 5 ),
1810  array( 'lhs' => 85, 'rhs' => 6 ),
1811  array( 'lhs' => 91, 'rhs' => 2 ),
1812  array( 'lhs' => 91, 'rhs' => 1 ),
1813  array( 'lhs' => 91, 'rhs' => 0 ),
1814  array( 'lhs' => 100, 'rhs' => 4 ),
1815  array( 'lhs' => 100, 'rhs' => 2 ),
1816  array( 'lhs' => 100, 'rhs' => 2 ),
1817  array( 'lhs' => 100, 'rhs' => 2 ),
1818  array( 'lhs' => 100, 'rhs' => 2 ),
1819  array( 'lhs' => 100, 'rhs' => 2 ),
1820  array( 'lhs' => 100, 'rhs' => 4 ),
1821  array( 'lhs' => 95, 'rhs' => 1 ),
1822  array( 'lhs' => 95, 'rhs' => 3 ),
1823  array( 'lhs' => 94, 'rhs' => 4 ),
1824  array( 'lhs' => 94, 'rhs' => 3 ),
1825  array( 'lhs' => 94, 'rhs' => 3 ),
1826  array( 'lhs' => 92, 'rhs' => 1 ),
1827  array( 'lhs' => 92, 'rhs' => 1 ),
1828  array( 'lhs' => 92, 'rhs' => 4 ),
1829  array( 'lhs' => 92, 'rhs' => 3 ),
1830  array( 'lhs' => 92, 'rhs' => 3 ),
1831  array( 'lhs' => 92, 'rhs' => 3 ),
1832  array( 'lhs' => 92, 'rhs' => 1 ),
1833  array( 'lhs' => 92, 'rhs' => 2 ),
1834  array( 'lhs' => 92, 'rhs' => 3 ),
1835  array( 'lhs' => 92, 'rhs' => 3 ),
1836  array( 'lhs' => 92, 'rhs' => 3 ),
1837  array( 'lhs' => 92, 'rhs' => 3 ),
1838  array( 'lhs' => 92, 'rhs' => 3 ),
1839  array( 'lhs' => 92, 'rhs' => 3 ),
1840  array( 'lhs' => 92, 'rhs' => 2 ),
1841  array( 'lhs' => 92, 'rhs' => 2 ),
1842  array( 'lhs' => 92, 'rhs' => 3 ),
1843  array( 'lhs' => 92, 'rhs' => 3 ),
1844  array( 'lhs' => 92, 'rhs' => 2 ),
1845  array( 'lhs' => 92, 'rhs' => 2 ),
1846  array( 'lhs' => 92, 'rhs' => 3 ),
1847  array( 'lhs' => 92, 'rhs' => 3 ),
1848  array( 'lhs' => 92, 'rhs' => 3 ),
1849  array( 'lhs' => 92, 'rhs' => 3 ),
1850  array( 'lhs' => 101, 'rhs' => 8 ),
1851  array( 'lhs' => 101, 'rhs' => 7 ),
1852  array( 'lhs' => 89, 'rhs' => 1 ),
1853  array( 'lhs' => 89, 'rhs' => 2 ),
1854  array( 'lhs' => 89, 'rhs' => 2 ),
1855  array( 'lhs' => 89, 'rhs' => 2 ),
1856  array( 'lhs' => 89, 'rhs' => 2 ),
1857  array( 'lhs' => 89, 'rhs' => 1 ),
1858  array( 'lhs' => 89, 'rhs' => 1 ),
1859  array( 'lhs' => 89, 'rhs' => 3 ),
1860  array( 'lhs' => 89, 'rhs' => 2 ),
1861  array( 'lhs' => 89, 'rhs' => 2 ),
1862  array( 'lhs' => 89, 'rhs' => 1 ),
1863  array( 'lhs' => 89, 'rhs' => 1 ),
1864  array( 'lhs' => 89, 'rhs' => 3 ),
1865  array( 'lhs' => 89, 'rhs' => 1 ),
1866  array( 'lhs' => 89, 'rhs' => 1 ),
1867  array( 'lhs' => 89, 'rhs' => 3 ),
1868  array( 'lhs' => 89, 'rhs' => 3 ),
1869  array( 'lhs' => 89, 'rhs' => 1 ),
1870  array( 'lhs' => 89, 'rhs' => 2 ),
1871  array( 'lhs' => 105, 'rhs' => 1 ),
1872  array( 'lhs' => 105, 'rhs' => 4 ),
1873  array( 'lhs' => 105, 'rhs' => 1 ),
1874  array( 'lhs' => 105, 'rhs' => 3 ),
1875  array( 'lhs' => 105, 'rhs' => 4 ),
1876  array( 'lhs' => 105, 'rhs' => 3 ),
1877  array( 'lhs' => 105, 'rhs' => 4 ),
1878  array( 'lhs' => 93, 'rhs' => 3 ),
1879  array( 'lhs' => 110, 'rhs' => 2 ),
1880  array( 'lhs' => 110, 'rhs' => 0 ),
1881  array( 'lhs' => 111, 'rhs' => 3 ),
1882  array( 'lhs' => 111, 'rhs' => 5 ),
1883  array( 'lhs' => 111, 'rhs' => 2 ),
1884  array( 'lhs' => 111, 'rhs' => 2 ),
1885  array( 'lhs' => 111, 'rhs' => 4 ),
1886  array( 'lhs' => 111, 'rhs' => 3 ),
1887  array( 'lhs' => 111, 'rhs' => 5 ),
1888  array( 'lhs' => 111, 'rhs' => 3 ),
1889  array( 'lhs' => 111, 'rhs' => 2 ),
1890  array( 'lhs' => 97, 'rhs' => 1 ),
1891  array( 'lhs' => 97, 'rhs' => 2 ),
1892  array( 'lhs' => 112, 'rhs' => 1 ),
1893  array( 'lhs' => 112, 'rhs' => 3 ),
1894  array( 'lhs' => 109, 'rhs' => 2 ),
1895  array( 'lhs' => 113, 'rhs' => 1 ),
1896  array( 'lhs' => 113, 'rhs' => 2 ),
1897  array( 'lhs' => 114, 'rhs' => 3 ),
1898  array( 'lhs' => 114, 'rhs' => 4 ),
1899  array( 'lhs' => 114, 'rhs' => 5 ),
1900  array( 'lhs' => 114, 'rhs' => 6 ),
1901  array( 'lhs' => 114, 'rhs' => 2 ),
1902  array( 'lhs' => 106, 'rhs' => 4 ),
1903  array( 'lhs' => 115, 'rhs' => 4 ),
1904  array( 'lhs' => 115, 'rhs' => 5 ),
1905  array( 'lhs' => 116, 'rhs' => 3 ),
1906  array( 'lhs' => 116, 'rhs' => 1 ),
1907  array( 'lhs' => 116, 'rhs' => 0 ),
1908  array( 'lhs' => 90, 'rhs' => 3 ),
1909  array( 'lhs' => 90, 'rhs' => 2 ),
1910  array( 'lhs' => 117, 'rhs' => 3 ),
1911  array( 'lhs' => 117, 'rhs' => 2 ),
1912  array( 'lhs' => 99, 'rhs' => 2 ),
1913  array( 'lhs' => 99, 'rhs' => 0 ),
1914  array( 'lhs' => 118, 'rhs' => 2 ),
1915  array( 'lhs' => 118, 'rhs' => 2 ),
1916  array( 'lhs' => 108, 'rhs' => 1 ),
1917  array( 'lhs' => 108, 'rhs' => 2 ),
1918  array( 'lhs' => 108, 'rhs' => 1 ),
1919  array( 'lhs' => 108, 'rhs' => 3 ),
1920  array( 'lhs' => 108, 'rhs' => 4 ),
1921  array( 'lhs' => 103, 'rhs' => 1 ),
1922  array( 'lhs' => 103, 'rhs' => 1 ),
1923  array( 'lhs' => 103, 'rhs' => 1 ),
1924  array( 'lhs' => 103, 'rhs' => 1 ),
1925  array( 'lhs' => 103, 'rhs' => 1 ),
1926  array( 'lhs' => 103, 'rhs' => 1 ),
1927  array( 'lhs' => 103, 'rhs' => 1 ),
1928  array( 'lhs' => 103, 'rhs' => 1 ),
1929  array( 'lhs' => 103, 'rhs' => 1 ),
1930  array( 'lhs' => 104, 'rhs' => 1 ),
1931  array( 'lhs' => 104, 'rhs' => 1 ),
1932  array( 'lhs' => 104, 'rhs' => 1 ),
1933  array( 'lhs' => 102, 'rhs' => 3 ),
1934  array( 'lhs' => 119, 'rhs' => 1 ),
1935  array( 'lhs' => 119, 'rhs' => 3 ),
1936  array( 'lhs' => 119, 'rhs' => 0 ),
1937  array( 'lhs' => 120, 'rhs' => 3 ),
1938  array( 'lhs' => 120, 'rhs' => 3 ),
1939  array( 'lhs' => 120, 'rhs' => 1 ),
1940  array( 'lhs' => 107, 'rhs' => 2 ),
1941  array( 'lhs' => 107, 'rhs' => 3 ),
1942  array( 'lhs' => 121, 'rhs' => 2 ),
1943  array( 'lhs' => 121, 'rhs' => 1 ),
1944  array( 'lhs' => 122, 'rhs' => 3 ),
1945  array( 'lhs' => 122, 'rhs' => 3 ),
1946  array( 'lhs' => 122, 'rhs' => 1 ),
1947  array( 'lhs' => 122, 'rhs' => 3 ),
1948  array( 'lhs' => 122, 'rhs' => 3 ),
1949  array( 'lhs' => 122, 'rhs' => 1 ),
1950  array( 'lhs' => 122, 'rhs' => 1 ),
1951  array( 'lhs' => 96, 'rhs' => 1 ),
1952  array( 'lhs' => 96, 'rhs' => 0 ),
1953  );
1954 
1955  static public $yyReduceMap = array(
1956  0 => 0,
1957  1 => 1,
1958  2 => 1,
1959  4 => 4,
1960  5 => 5,
1961  6 => 6,
1962  7 => 7,
1963  8 => 8,
1964  9 => 9,
1965  10 => 10,
1966  11 => 11,
1967  12 => 12,
1968  13 => 13,
1969  14 => 14,
1970  15 => 15,
1971  16 => 16,
1972  19 => 16,
1973  203 => 16,
1974  17 => 17,
1975  76 => 17,
1976  18 => 18,
1977  104 => 18,
1978  106 => 18,
1979  107 => 18,
1980  130 => 18,
1981  168 => 18,
1982  20 => 20,
1983  21 => 20,
1984  47 => 20,
1985  69 => 20,
1986  70 => 20,
1987  77 => 20,
1988  78 => 20,
1989  83 => 20,
1990  103 => 20,
1991  108 => 20,
1992  109 => 20,
1993  114 => 20,
1994  116 => 20,
1995  117 => 20,
1996  124 => 20,
1997  141 => 20,
1998  167 => 20,
1999  169 => 20,
2000  185 => 20,
2001  190 => 20,
2002  202 => 20,
2003  22 => 22,
2004  23 => 22,
2005  24 => 24,
2006  25 => 25,
2007  26 => 26,
2008  27 => 27,
2009  28 => 28,
2010  29 => 29,
2011  31 => 29,
2012  30 => 30,
2013  32 => 32,
2014  33 => 32,
2015  34 => 34,
2016  35 => 35,
2017  36 => 36,
2018  37 => 37,
2019  38 => 38,
2020  39 => 39,
2021  40 => 40,
2022  41 => 41,
2023  42 => 42,
2024  44 => 42,
2025  43 => 43,
2026  45 => 45,
2027  46 => 46,
2028  48 => 48,
2029  49 => 49,
2030  50 => 50,
2031  51 => 51,
2032  52 => 52,
2033  53 => 53,
2034  54 => 54,
2035  55 => 55,
2036  56 => 56,
2037  57 => 57,
2038  58 => 58,
2039  59 => 59,
2040  60 => 60,
2041  61 => 61,
2042  62 => 62,
2043  63 => 63,
2044  72 => 63,
2045  157 => 63,
2046  161 => 63,
2047  165 => 63,
2048  166 => 63,
2049  64 => 64,
2050  158 => 64,
2051  164 => 64,
2052  65 => 65,
2053  66 => 66,
2054  67 => 66,
2055  68 => 68,
2056  71 => 71,
2057  73 => 73,
2058  74 => 74,
2059  75 => 74,
2060  79 => 79,
2061  80 => 80,
2062  81 => 80,
2063  82 => 80,
2064  84 => 84,
2065  121 => 84,
2066  85 => 85,
2067  88 => 85,
2068  99 => 85,
2069  86 => 86,
2070  87 => 87,
2071  89 => 89,
2072  90 => 90,
2073  91 => 91,
2074  96 => 91,
2075  92 => 92,
2076  95 => 92,
2077  93 => 93,
2078  98 => 93,
2079  94 => 94,
2080  97 => 94,
2081  100 => 100,
2082  101 => 101,
2083  102 => 102,
2084  105 => 105,
2085  110 => 110,
2086  111 => 111,
2087  112 => 112,
2088  113 => 113,
2089  115 => 115,
2090  118 => 118,
2091  119 => 119,
2092  120 => 120,
2093  122 => 122,
2094  123 => 123,
2095  125 => 125,
2096  126 => 126,
2097  127 => 127,
2098  128 => 128,
2099  129 => 129,
2100  131 => 131,
2101  187 => 131,
2102  132 => 132,
2103  133 => 133,
2104  134 => 134,
2105  135 => 135,
2106  136 => 136,
2107  139 => 136,
2108  137 => 137,
2109  138 => 138,
2110  140 => 140,
2111  142 => 142,
2112  143 => 143,
2113  144 => 144,
2114  145 => 145,
2115  146 => 146,
2116  147 => 147,
2117  148 => 148,
2118  149 => 149,
2119  150 => 150,
2120  151 => 151,
2121  152 => 152,
2122  153 => 153,
2123  154 => 154,
2124  155 => 155,
2125  156 => 156,
2126  159 => 159,
2127  160 => 160,
2128  162 => 162,
2129  163 => 163,
2130  170 => 170,
2131  171 => 171,
2132  172 => 172,
2133  173 => 173,
2134  174 => 174,
2135  175 => 175,
2136  176 => 176,
2137  177 => 177,
2138  178 => 178,
2139  179 => 179,
2140  180 => 180,
2141  181 => 181,
2142  182 => 182,
2143  183 => 183,
2144  184 => 184,
2145  186 => 186,
2146  188 => 188,
2147  189 => 189,
2148  191 => 191,
2149  192 => 192,
2150  193 => 193,
2151  194 => 194,
2152  195 => 195,
2153  196 => 195,
2154  198 => 195,
2155  197 => 197,
2156  199 => 199,
2157  200 => 200,
2158  201 => 201,
2159  );
2160 #line 95 "smarty_internal_templateparser.y"
2161  function yy_r0(){
2162  $this->_retvalue = $this->root_buffer->to_smarty_php();
2163  }
2164 #line 2160 "smarty_internal_templateparser.php"
2165 #line 103 "smarty_internal_templateparser.y"
2166  function yy_r1(){
2167  $this->current_buffer->append_subtree($this->yystack[$this->yyidx + 0]->minor);
2168  }
2169 #line 2165 "smarty_internal_templateparser.php"
2170 #line 119 "smarty_internal_templateparser.y"
2171  function yy_r4(){
2172  if ($this->compiler->has_code) {
2173  $tmp =''; foreach ($this->compiler->prefix_code as $code) {$tmp.=$code;} $this->compiler->prefix_code=array();
2174  $this->_retvalue = new _smarty_tag($this, $this->compiler->processNocacheCode($tmp.$this->yystack[$this->yyidx + 0]->minor,true));
2175  } else {
2176  $this->_retvalue = new _smarty_tag($this, $this->yystack[$this->yyidx + 0]->minor);
2177  }
2178  $this->compiler->has_variable_string = false;
2179  $this->block_nesting_level = count($this->compiler->_tag_stack);
2180  }
2181 #line 2177 "smarty_internal_templateparser.php"
2182 #line 131 "smarty_internal_templateparser.y"
2183  function yy_r5(){
2184  $this->_retvalue = new _smarty_tag($this, '');
2185  }
2186 #line 2182 "smarty_internal_templateparser.php"
2187 #line 136 "smarty_internal_templateparser.y"
2188  function yy_r6(){
2189  $this->_retvalue = new _smarty_text($this, $this->yystack[$this->yyidx + 0]->minor);
2190  }
2191 #line 2187 "smarty_internal_templateparser.php"
2192 #line 141 "smarty_internal_templateparser.y"
2193  function yy_r7(){
2194  if ($this->php_handling == Smarty::PHP_PASSTHRU) {
2195  $this->_retvalue = new _smarty_text($this, self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor));
2196  } elseif ($this->php_handling == Smarty::PHP_QUOTE) {
2197  $this->_retvalue = new _smarty_text($this, htmlspecialchars($this->yystack[$this->yyidx + 0]->minor, ENT_QUOTES));
2198  } elseif ($this->php_handling == Smarty::PHP_ALLOW) {
2199  if (!($this->smarty instanceof SmartyBC)) {
2200  $this->compiler->trigger_template_error (self::Err3);
2201  }
2202  $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode('<?php', true));
2203  } elseif ($this->php_handling == Smarty::PHP_REMOVE) {
2204  $this->_retvalue = new _smarty_text($this, '');
2205  }
2206  }
2207 #line 2203 "smarty_internal_templateparser.php"
2208 #line 157 "smarty_internal_templateparser.y"
2209  function yy_r8(){
2210  if ($this->is_xml) {
2211  $this->compiler->tag_nocache = true;
2212  $this->is_xml = false;
2213  $save = $this->template->has_nocache_code;
2214  $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode("<?php echo '?>';?>\n", $this->compiler, true));
2215  $this->template->has_nocache_code = $save;
2216  } elseif ($this->php_handling == Smarty::PHP_PASSTHRU) {
2217  $this->_retvalue = new _smarty_text($this, '?<?php ?>>');
2218  } elseif ($this->php_handling == Smarty::PHP_QUOTE) {
2219  $this->_retvalue = new _smarty_text($this, htmlspecialchars('?>', ENT_QUOTES));
2220  } elseif ($this->php_handling == Smarty::PHP_ALLOW) {
2221  $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode('?>', true));
2222  } elseif ($this->php_handling == Smarty::PHP_REMOVE) {
2223  $this->_retvalue = new _smarty_text($this, '');
2224  }
2225  }
2226 #line 2222 "smarty_internal_templateparser.php"
2227 #line 176 "smarty_internal_templateparser.y"
2228  function yy_r9(){
2229  if ($this->php_handling == Smarty::PHP_PASSTHRU) {
2230  $this->_retvalue = new _smarty_text($this, '<<?php ?>%');
2231  } elseif ($this->php_handling == Smarty::PHP_QUOTE) {
2232  $this->_retvalue = new _smarty_text($this, htmlspecialchars($this->yystack[$this->yyidx + 0]->minor, ENT_QUOTES));
2233  } elseif ($this->php_handling == Smarty::PHP_ALLOW) {
2234  if ($this->asp_tags) {
2235  if (!($this->smarty instanceof SmartyBC)) {
2236  $this->compiler->trigger_template_error (self::Err3);
2237  }
2238  $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode('<%', true));
2239  } else {
2240  $this->_retvalue = new _smarty_text($this, '<<?php ?>%');
2241  }
2242  } elseif ($this->php_handling == Smarty::PHP_REMOVE) {
2243  if ($this->asp_tags) {
2244  $this->_retvalue = new _smarty_text($this, '');
2245  } else {
2246  $this->_retvalue = new _smarty_text($this, '<<?php ?>%');
2247  }
2248  }
2249  }
2250 #line 2246 "smarty_internal_templateparser.php"
2251 #line 200 "smarty_internal_templateparser.y"
2252  function yy_r10(){
2253  if ($this->php_handling == Smarty::PHP_PASSTHRU) {
2254  $this->_retvalue = new _smarty_text($this, '%<?php ?>>');
2255  } elseif ($this->php_handling == Smarty::PHP_QUOTE) {
2256  $this->_retvalue = new _smarty_text($this, htmlspecialchars('%>', ENT_QUOTES));
2257  } elseif ($this->php_handling == Smarty::PHP_ALLOW) {
2258  if ($this->asp_tags) {
2259  $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode('%>', true));
2260  } else {
2261  $this->_retvalue = new _smarty_text($this, '%<?php ?>>');
2262  }
2263  } elseif ($this->php_handling == Smarty::PHP_REMOVE) {
2264  if ($this->asp_tags) {
2265  $this->_retvalue = new _smarty_text($this, '');
2266  } else {
2267  $this->_retvalue = new _smarty_text($this, '%<?php ?>>');
2268  }
2269  }
2270  }
2271 #line 2267 "smarty_internal_templateparser.php"
2272 #line 220 "smarty_internal_templateparser.y"
2273  function yy_r11(){
2274  if ($this->strip) {
2275  $this->_retvalue = new _smarty_text($this, preg_replace('![\t ]*[\r\n]+[\t ]*!', '', self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor)));
2276  } else {
2277  $this->_retvalue = new _smarty_text($this, self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor));
2278  }
2279  }
2280 #line 2276 "smarty_internal_templateparser.php"
2281 #line 229 "smarty_internal_templateparser.y"
2282  function yy_r12(){
2283  $this->compiler->tag_nocache = true;
2284  $this->is_xml = true;
2285  $save = $this->template->has_nocache_code;
2286  $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode("<?php echo '<?xml';?>", $this->compiler, true));
2287  $this->template->has_nocache_code = $save;
2288  }
2289 #line 2285 "smarty_internal_templateparser.php"
2290 #line 238 "smarty_internal_templateparser.y"
2291  function yy_r13(){
2292  if ($this->strip) {
2293  $this->_retvalue = new _smarty_text($this, preg_replace('![\t ]*[\r\n]+[\t ]*!', '', $this->yystack[$this->yyidx + 0]->minor));
2294  } else {
2295  $this->_retvalue = new _smarty_text($this, $this->yystack[$this->yyidx + 0]->minor);
2296  }
2297  }
2298 #line 2294 "smarty_internal_templateparser.php"
2299 #line 247 "smarty_internal_templateparser.y"
2300  function yy_r14(){
2301  $this->strip = true;
2302  $this->_retvalue = new _smarty_text($this, '');
2303  }
2304 #line 2300 "smarty_internal_templateparser.php"
2305 #line 252 "smarty_internal_templateparser.y"
2306  function yy_r15(){
2307  $this->strip = false;
2308  $this->_retvalue = new _smarty_text($this, '');
2309  }
2310 #line 2306 "smarty_internal_templateparser.php"
2311 #line 258 "smarty_internal_templateparser.y"
2312  function yy_r16(){
2313  $this->_retvalue = '';
2314  }
2315 #line 2311 "smarty_internal_templateparser.php"
2316 #line 262 "smarty_internal_templateparser.y"
2317  function yy_r17(){
2318  $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor;
2319  }
2320 #line 2316 "smarty_internal_templateparser.php"
2321 #line 266 "smarty_internal_templateparser.y"
2322  function yy_r18(){
2323  $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor;
2324  }
2325 #line 2321 "smarty_internal_templateparser.php"
2326 #line 274 "smarty_internal_templateparser.y"
2327  function yy_r20(){
2328  $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor;
2329  }
2330 #line 2326 "smarty_internal_templateparser.php"
2331 #line 282 "smarty_internal_templateparser.y"
2332  function yy_r22(){
2333  $this->_retvalue = self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor);
2334  }
2335 #line 2331 "smarty_internal_templateparser.php"
2336 #line 290 "smarty_internal_templateparser.y"
2337  function yy_r24(){
2338  $this->_retvalue = self::escape_end_tag($this->yystack[$this->yyidx + 0]->minor);
2339  }
2340 #line 2336 "smarty_internal_templateparser.php"
2341 #line 294 "smarty_internal_templateparser.y"
2342  function yy_r25(){
2343  $this->_retvalue = '<<?php ?>%';
2344  }
2345 #line 2341 "smarty_internal_templateparser.php"
2346 #line 298 "smarty_internal_templateparser.y"
2347  function yy_r26(){
2348  $this->_retvalue = '%<?php ?>>';
2349  }
2350 #line 2346 "smarty_internal_templateparser.php"
2351 #line 307 "smarty_internal_templateparser.y"
2352  function yy_r27(){
2353  $this->_retvalue = $this->compiler->compileTag('private_print_expression',array(),array('value'=>$this->yystack[$this->yyidx + -1]->minor));
2354  }
2355 #line 2351 "smarty_internal_templateparser.php"
2356 #line 311 "smarty_internal_templateparser.y"
2357  function yy_r28(){
2358  $this->_retvalue = $this->compiler->compileTag('private_print_expression',$this->yystack[$this->yyidx + -1]->minor,array('value'=>$this->yystack[$this->yyidx + -3]->minor, 'modifierlist'=>$this->yystack[$this->yyidx + -2]->minor));
2359  }
2360 #line 2356 "smarty_internal_templateparser.php"
2361 #line 315 "smarty_internal_templateparser.y"
2362  function yy_r29(){
2363  $this->_retvalue = $this->compiler->compileTag('private_print_expression',$this->yystack[$this->yyidx + -1]->minor,array('value'=>$this->yystack[$this->yyidx + -2]->minor));
2364  }
2365 #line 2361 "smarty_internal_templateparser.php"
2366 #line 319 "smarty_internal_templateparser.y"
2367  function yy_r30(){
2368  $this->_retvalue = $this->compiler->compileTag('private_print_expression',$this->yystack[$this->yyidx + -1]->minor,array('value'=>$this->yystack[$this->yyidx + -3]->minor,'modifierlist'=>$this->yystack[$this->yyidx + -2]->minor));
2369  }
2370 #line 2366 "smarty_internal_templateparser.php"
2371 #line 332 "smarty_internal_templateparser.y"
2372  function yy_r32(){
2373  $this->_retvalue = $this->compiler->compileTag('assign',array(array('value'=>$this->yystack[$this->yyidx + -1]->minor),array('var'=>"'".$this->yystack[$this->yyidx + -3]->minor."'")));
2374  }
2375 #line 2371 "smarty_internal_templateparser.php"
2376 #line 340 "smarty_internal_templateparser.y"
2377  function yy_r34(){
2378  $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array(array('value'=>$this->yystack[$this->yyidx + -2]->minor),array('var'=>"'".$this->yystack[$this->yyidx + -4]->minor."'")),$this->yystack[$this->yyidx + -1]->minor));
2379  }
2380 #line 2376 "smarty_internal_templateparser.php"
2381 #line 344 "smarty_internal_templateparser.y"
2382  function yy_r35(){
2383  $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array(array('value'=>$this->yystack[$this->yyidx + -2]->minor),array('var'=>$this->yystack[$this->yyidx + -4]->minor['var'])),$this->yystack[$this->yyidx + -1]->minor),array('smarty_internal_index'=>$this->yystack[$this->yyidx + -4]->minor['smarty_internal_index']));
2384  }
2385 #line 2381 "smarty_internal_templateparser.php"
2386 #line 349 "smarty_internal_templateparser.y"
2387  function yy_r36(){
2388  $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor,$this->yystack[$this->yyidx + -1]->minor);
2389  }
2390 #line 2386 "smarty_internal_templateparser.php"
2391 #line 353 "smarty_internal_templateparser.y"
2392  function yy_r37(){
2393  $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor,array());
2394  }
2395 #line 2391 "smarty_internal_templateparser.php"
2396 #line 358 "smarty_internal_templateparser.y"
2397  function yy_r38(){
2398  $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor,$this->yystack[$this->yyidx + -1]->minor,array('object_methode'=>$this->yystack[$this->yyidx + -2]->minor));
2399  }
2400 #line 2396 "smarty_internal_templateparser.php"
2401 #line 363 "smarty_internal_templateparser.y"
2402  function yy_r39(){
2403  $this->_retvalue = '<?php ob_start();?>'.$this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor,$this->yystack[$this->yyidx + -1]->minor).'<?php echo ';
2404  $this->_retvalue .= $this->compiler->compileTag('private_modifier',array(),array('modifierlist'=>$this->yystack[$this->yyidx + -2]->minor,'value'=>'ob_get_clean()')).'?>';
2405  }
2406 #line 2402 "smarty_internal_templateparser.php"
2407 #line 369 "smarty_internal_templateparser.y"
2408  function yy_r40(){
2409  $this->_retvalue = '<?php ob_start();?>'.$this->compiler->compileTag($this->yystack[$this->yyidx + -5]->minor,$this->yystack[$this->yyidx + -1]->minor,array('object_methode'=>$this->yystack[$this->yyidx + -3]->minor)).'<?php echo ';
2410  $this->_retvalue .= $this->compiler->compileTag('private_modifier',array(),array('modifierlist'=>$this->yystack[$this->yyidx + -2]->minor,'value'=>'ob_get_clean()')).'?>';
2411  }
2412 #line 2408 "smarty_internal_templateparser.php"
2413 #line 375 "smarty_internal_templateparser.y"
2414  function yy_r41(){
2415  $tag = trim(substr($this->yystack[$this->yyidx + -2]->minor,$this->lex->ldel_length));
2416  $this->_retvalue = $this->compiler->compileTag(($tag == 'else if')? 'elseif' : $tag,array(),array('if condition'=>$this->yystack[$this->yyidx + -1]->minor));
2417  }
2418 #line 2414 "smarty_internal_templateparser.php"
2419 #line 380 "smarty_internal_templateparser.y"
2420  function yy_r42(){
2421  $tag = trim(substr($this->yystack[$this->yyidx + -3]->minor,$this->lex->ldel_length));
2422  $this->_retvalue = $this->compiler->compileTag(($tag == 'else if')? 'elseif' : $tag,$this->yystack[$this->yyidx + -1]->minor,array('if condition'=>$this->yystack[$this->yyidx + -2]->minor));
2423  }
2424 #line 2420 "smarty_internal_templateparser.php"
2425 #line 385 "smarty_internal_templateparser.y"
2426  function yy_r43(){
2427  $tag = trim(substr($this->yystack[$this->yyidx + -2]->minor,$this->lex->ldel_length));
2428  $this->_retvalue = $this->compiler->compileTag(($tag == 'else if')? 'elseif' : $tag,array(),array('if condition'=>$this->yystack[$this->yyidx + -1]->minor));
2429  }
2430 #line 2426 "smarty_internal_templateparser.php"
2431 #line 396 "smarty_internal_templateparser.y"
2432  function yy_r45(){
2433  $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -10]->minor),array('ifexp'=>$this->yystack[$this->yyidx + -7]->minor),array('var'=>$this->yystack[$this->yyidx + -3]->minor),array('step'=>$this->yystack[$this->yyidx + -2]->minor))),1);
2434  }
2435 #line 2431 "smarty_internal_templateparser.php"
2436 #line 400 "smarty_internal_templateparser.y"
2437  function yy_r46(){
2438  $this->_retvalue = '='.$this->yystack[$this->yyidx + 0]->minor;
2439  }
2440 #line 2436 "smarty_internal_templateparser.php"
2441 #line 408 "smarty_internal_templateparser.y"
2442  function yy_r48(){
2443  $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -4]->minor),array('to'=>$this->yystack[$this->yyidx + -2]->minor))),0);
2444  }
2445 #line 2441 "smarty_internal_templateparser.php"
2446 #line 412 "smarty_internal_templateparser.y"
2447  function yy_r49(){
2448  $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -6]->minor),array('to'=>$this->yystack[$this->yyidx + -4]->minor),array('step'=>$this->yystack[$this->yyidx + -2]->minor))),0);
2449  }
2450 #line 2446 "smarty_internal_templateparser.php"
2451 #line 417 "smarty_internal_templateparser.y"
2452  function yy_r50(){
2453  $this->_retvalue = $this->compiler->compileTag('foreach',$this->yystack[$this->yyidx + -1]->minor);
2454  }
2455 #line 2451 "smarty_internal_templateparser.php"
2456 #line 422 "smarty_internal_templateparser.y"
2457  function yy_r51(){
2458  $this->_retvalue = $this->compiler->compileTag('foreach',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('from'=>$this->yystack[$this->yyidx + -5]->minor),array('item'=>$this->yystack[$this->yyidx + -2]->minor))));
2459  }
2460 #line 2456 "smarty_internal_templateparser.php"
2461 #line 426 "smarty_internal_templateparser.y"
2462  function yy_r52(){
2463  $this->_retvalue = $this->compiler->compileTag('foreach',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('from'=>$this->yystack[$this->yyidx + -8]->minor),array('item'=>$this->yystack[$this->yyidx + -2]->minor),array('key'=>$this->yystack[$this->yyidx + -5]->minor))));
2464  }
2465 #line 2461 "smarty_internal_templateparser.php"
2466 #line 430 "smarty_internal_templateparser.y"
2467  function yy_r53(){
2468  $this->_retvalue = $this->compiler->compileTag('foreach',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('from'=>$this->yystack[$this->yyidx + -5]->minor),array('item'=>$this->yystack[$this->yyidx + -2]->minor))));
2469  }
2470 #line 2466 "smarty_internal_templateparser.php"
2471 #line 434 "smarty_internal_templateparser.y"
2472  function yy_r54(){
2473  $this->_retvalue = $this->compiler->compileTag('foreach',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('from'=>$this->yystack[$this->yyidx + -8]->minor),array('item'=>$this->yystack[$this->yyidx + -2]->minor),array('key'=>$this->yystack[$this->yyidx + -5]->minor))));
2474  }
2475 #line 2471 "smarty_internal_templateparser.php"
2476 #line 439 "smarty_internal_templateparser.y"
2477  function yy_r55(){
2478  $this->_retvalue = $this->compiler->compileTag('setfilter',array(),array('modifier_list'=>array(array_merge(array($this->yystack[$this->yyidx + -2]->minor),$this->yystack[$this->yyidx + -1]->minor))));
2479  }
2480 #line 2476 "smarty_internal_templateparser.php"
2481 #line 443 "smarty_internal_templateparser.y"
2482  function yy_r56(){
2483  $this->_retvalue = $this->compiler->compileTag('setfilter',array(),array('modifier_list'=>array_merge(array(array_merge(array($this->yystack[$this->yyidx + -3]->minor),$this->yystack[$this->yyidx + -2]->minor)),$this->yystack[$this->yyidx + -1]->minor)));
2484  }
2485 #line 2481 "smarty_internal_templateparser.php"
2486 #line 448 "smarty_internal_templateparser.y"
2487  function yy_r57(){
2488  $this->_retvalue = SMARTY_INTERNAL_COMPILE_BLOCK::compileChildBlock($this->compiler);
2489  }
2490 #line 2486 "smarty_internal_templateparser.php"
2491 #line 454 "smarty_internal_templateparser.y"
2492  function yy_r58(){
2493  $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor.'close',array());
2494  }
2495 #line 2491 "smarty_internal_templateparser.php"
2496 #line 458 "smarty_internal_templateparser.y"
2497  function yy_r59(){
2498  $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor.'close',array(),array('modifier_list'=>$this->yystack[$this->yyidx + -1]->minor));
2499  }
2500 #line 2496 "smarty_internal_templateparser.php"
2501 #line 463 "smarty_internal_templateparser.y"
2502  function yy_r60(){
2503  $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor.'close',array(),array('object_methode'=>$this->yystack[$this->yyidx + -1]->minor));
2504  }
2505 #line 2501 "smarty_internal_templateparser.php"
2506 #line 467 "smarty_internal_templateparser.y"
2507  function yy_r61(){
2508  $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor.'close',array(),array('object_methode'=>$this->yystack[$this->yyidx + -2]->minor, 'modifier_list'=>$this->yystack[$this->yyidx + -1]->minor));
2509  }
2510 #line 2506 "smarty_internal_templateparser.php"
2511 #line 475 "smarty_internal_templateparser.y"
2512  function yy_r62(){
2513  $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor;
2514  $this->_retvalue[] = $this->yystack[$this->yyidx + 0]->minor;
2515  }
2516 #line 2512 "smarty_internal_templateparser.php"
2517 #line 481 "smarty_internal_templateparser.y"
2518  function yy_r63(){
2519  $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor);
2520  }
2521 #line 2517 "smarty_internal_templateparser.php"
2522 #line 486 "smarty_internal_templateparser.y"
2523  function yy_r64(){
2524  $this->_retvalue = array();
2525  }
2526 #line 2522 "smarty_internal_templateparser.php"
2527 #line 491 "smarty_internal_templateparser.y"
2528  function yy_r65(){
2529  if (preg_match('~^true$~i', $this->yystack[$this->yyidx + 0]->minor)) {
2530  $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>'true');
2531  } elseif (preg_match('~^false$~i', $this->yystack[$this->yyidx + 0]->minor)) {
2532  $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>'false');
2533  } elseif (preg_match('~^null$~i', $this->yystack[$this->yyidx + 0]->minor)) {
2534  $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>'null');
2535  } else {
2536  $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>"'".$this->yystack[$this->yyidx + 0]->minor."'");
2537  }
2538  }
2539 #line 2535 "smarty_internal_templateparser.php"
2540 #line 503 "smarty_internal_templateparser.y"
2541  function yy_r66(){
2542  $this->_retvalue = array(trim($this->yystack[$this->yyidx + -1]->minor," =\n\r\t")=>$this->yystack[$this->yyidx + 0]->minor);
2543  }
2544 #line 2540 "smarty_internal_templateparser.php"
2545 #line 511 "smarty_internal_templateparser.y"
2546  function yy_r68(){
2547  $this->_retvalue = "'".$this->yystack[$this->yyidx + 0]->minor."'";
2548  }
2549 #line 2545 "smarty_internal_templateparser.php"
2550 #line 523 "smarty_internal_templateparser.y"
2551  function yy_r71(){
2552  $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor);
2553  }
2554 #line 2550 "smarty_internal_templateparser.php"
2555 #line 536 "smarty_internal_templateparser.y"
2556  function yy_r73(){
2557  $this->yystack[$this->yyidx + -2]->minor[]=$this->yystack[$this->yyidx + 0]->minor;
2558  $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor;
2559  }
2560 #line 2556 "smarty_internal_templateparser.php"
2561 #line 541 "smarty_internal_templateparser.y"
2562  function yy_r74(){
2563  $this->_retvalue = array('var' => $this->yystack[$this->yyidx + -2]->minor, 'value'=>$this->yystack[$this->yyidx + 0]->minor);
2564  }
2565 #line 2561 "smarty_internal_templateparser.php"
2566 #line 569 "smarty_internal_templateparser.y"
2567  function yy_r79(){
2568  $this->_retvalue = '$_smarty_tpl->getStreamVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'://'. $this->yystack[$this->yyidx + 0]->minor . '\')';
2569  }
2570 #line 2566 "smarty_internal_templateparser.php"
2571 #line 574 "smarty_internal_templateparser.y"
2572  function yy_r80(){
2573  $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor . trim($this->yystack[$this->yyidx + -1]->minor) . $this->yystack[$this->yyidx + 0]->minor;
2574  }
2575 #line 2571 "smarty_internal_templateparser.php"
2576 #line 593 "smarty_internal_templateparser.y"
2577  function yy_r84(){
2578  $this->_retvalue = $this->compiler->compileTag('private_modifier',array(),array('value'=>$this->yystack[$this->yyidx + -1]->minor,'modifierlist'=>$this->yystack[$this->yyidx + 0]->minor));
2579  }
2580 #line 2576 "smarty_internal_templateparser.php"
2581 #line 599 "smarty_internal_templateparser.y"
2582  function yy_r85(){
2583  $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor;
2584  }
2585 #line 2581 "smarty_internal_templateparser.php"
2586 #line 603 "smarty_internal_templateparser.y"
2587  function yy_r86(){
2588  $this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor.')';
2589  }
2590 #line 2586 "smarty_internal_templateparser.php"
2591 #line 607 "smarty_internal_templateparser.y"
2592  function yy_r87(){
2593  $this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.',(array)'.$this->yystack[$this->yyidx + 0]->minor.')';
2594  }
2595 #line 2591 "smarty_internal_templateparser.php"
2596 #line 615 "smarty_internal_templateparser.y"
2597  function yy_r89(){
2598  $this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')';
2599  }
2600 #line 2596 "smarty_internal_templateparser.php"
2601 #line 619 "smarty_internal_templateparser.y"
2602  function yy_r90(){
2603  $this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')';
2604  }
2605 #line 2601 "smarty_internal_templateparser.php"
2606 #line 623 "smarty_internal_templateparser.y"
2607  function yy_r91(){
2608  $this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -1]->minor.')';
2609  }
2610 #line 2606 "smarty_internal_templateparser.php"
2611 #line 627 "smarty_internal_templateparser.y"
2612  function yy_r92(){
2613  $this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -1]->minor.')';
2614  }
2615 #line 2611 "smarty_internal_templateparser.php"
2616 #line 631 "smarty_internal_templateparser.y"
2617  function yy_r93(){
2618  $this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')';
2619  }
2620 #line 2616 "smarty_internal_templateparser.php"
2621 #line 635 "smarty_internal_templateparser.y"
2622  function yy_r94(){
2623  $this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')';
2624  }
2625 #line 2621 "smarty_internal_templateparser.php"
2626 #line 659 "smarty_internal_templateparser.y"
2627  function yy_r100(){
2628  $this->prefix_number++;
2629  $this->compiler->prefix_code[] = '<?php $_tmp'.$this->prefix_number.'='.$this->yystack[$this->yyidx + 0]->minor.';?>';
2630  $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.'$_tmp'.$this->prefix_number;
2631  }
2632 #line 2628 "smarty_internal_templateparser.php"
2633 #line 668 "smarty_internal_templateparser.y"
2634  function yy_r101(){
2635  $this->_retvalue = $this->yystack[$this->yyidx + -6]->minor.' ? '. $this->compileVariable("'".$this->yystack[$this->yyidx + -2]->minor."'") . ' : '.$this->yystack[$this->yyidx + 0]->minor;
2636  }
2637 #line 2633 "smarty_internal_templateparser.php"
2638 #line 672 "smarty_internal_templateparser.y"
2639  function yy_r102(){
2640  $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.' ? '.$this->yystack[$this->yyidx + -2]->minor.' : '.$this->yystack[$this->yyidx + 0]->minor;
2641  }
2642 #line 2638 "smarty_internal_templateparser.php"
2643 #line 687 "smarty_internal_templateparser.y"
2644  function yy_r105(){
2645  $this->_retvalue = '!'.$this->yystack[$this->yyidx + 0]->minor;
2646  }
2647 #line 2643 "smarty_internal_templateparser.php"
2648 #line 708 "smarty_internal_templateparser.y"
2649  function yy_r110(){
2650  $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor;
2651  }
2652 #line 2648 "smarty_internal_templateparser.php"
2653 #line 712 "smarty_internal_templateparser.y"
2654  function yy_r111(){
2655  $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.';
2656  }
2657 #line 2653 "smarty_internal_templateparser.php"
2658 #line 716 "smarty_internal_templateparser.y"
2659  function yy_r112(){
2660  $this->_retvalue = '.'.$this->yystack[$this->yyidx + 0]->minor;
2661  }
2662 #line 2658 "smarty_internal_templateparser.php"
2663 #line 721 "smarty_internal_templateparser.y"
2664  function yy_r113(){
2665  if (preg_match('~^true$~i', $this->yystack[$this->yyidx + 0]->minor)) {
2666  $this->_retvalue = 'true';
2667  } elseif (preg_match('~^false$~i', $this->yystack[$this->yyidx + 0]->minor)) {
2668  $this->_retvalue = 'false';
2669  } elseif (preg_match('~^null$~i', $this->yystack[$this->yyidx + 0]->minor)) {
2670  $this->_retvalue = 'null';
2671  } else {
2672  $this->_retvalue = "'".$this->yystack[$this->yyidx + 0]->minor."'";
2673  }
2674  }
2675 #line 2671 "smarty_internal_templateparser.php"
2676 #line 739 "smarty_internal_templateparser.y"
2677  function yy_r115(){
2678  $this->_retvalue = "(". $this->yystack[$this->yyidx + -1]->minor .")";
2679  }
2680 #line 2676 "smarty_internal_templateparser.php"
2681 #line 754 "smarty_internal_templateparser.y"
2682  function yy_r118(){
2683  if (!$this->security || isset($this->smarty->registered_classes[$this->yystack[$this->yyidx + -2]->minor]) || $this->smarty->security_policy->isTrustedStaticClass($this->yystack[$this->yyidx + -2]->minor, $this->compiler)) {
2684  if (isset($this->smarty->registered_classes[$this->yystack[$this->yyidx + -2]->minor])) {
2685  $this->_retvalue = $this->smarty->registered_classes[$this->yystack[$this->yyidx + -2]->minor].'::'.$this->yystack[$this->yyidx + 0]->minor;
2686  } else {
2687  $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor;
2688  }
2689  } else {
2690  $this->compiler->trigger_template_error ("static class '".$this->yystack[$this->yyidx + -2]->minor."' is undefined or not allowed by security setting");
2691  }
2692  }
2693 #line 2689 "smarty_internal_templateparser.php"
2694 #line 766 "smarty_internal_templateparser.y"
2695  function yy_r119(){
2696  if ($this->yystack[$this->yyidx + -2]->minor['var'] == '\'smarty\'') {
2697  $this->_retvalue = $this->compiler->compileTag('private_special_variable',array(),$this->yystack[$this->yyidx + -2]->minor['smarty_internal_index']).'::'.$this->yystack[$this->yyidx + 0]->minor;
2698  } else {
2699  $this->_retvalue = $this->compileVariable($this->yystack[$this->yyidx + -2]->minor['var']).$this->yystack[$this->yyidx + -2]->minor['smarty_internal_index'].'::'.$this->yystack[$this->yyidx + 0]->minor;
2700  }
2701  }
2702 #line 2698 "smarty_internal_templateparser.php"
2703 #line 775 "smarty_internal_templateparser.y"
2704  function yy_r120(){
2705  $this->prefix_number++;
2706  $this->compiler->prefix_code[] = '<?php ob_start();?>'.$this->yystack[$this->yyidx + 0]->minor.'<?php $_tmp'.$this->prefix_number.'=ob_get_clean();?>';
2707  $this->_retvalue = '$_tmp'.$this->prefix_number;
2708  }
2709 #line 2705 "smarty_internal_templateparser.php"
2710 #line 790 "smarty_internal_templateparser.y"
2711  function yy_r122(){
2712  if ($this->yystack[$this->yyidx + 0]->minor['var'] == '\'smarty\'') {
2713  $smarty_var = $this->compiler->compileTag('private_special_variable',array(),$this->yystack[$this->yyidx + 0]->minor['smarty_internal_index']);
2714  $this->_retvalue = $smarty_var;
2715  } else {
2716  // used for array reset,next,prev,end,current
2717  $this->last_variable = $this->yystack[$this->yyidx + 0]->minor['var'];
2718  $this->last_index = $this->yystack[$this->yyidx + 0]->minor['smarty_internal_index'];
2719  $this->_retvalue = $this->compileVariable($this->yystack[$this->yyidx + 0]->minor['var']).$this->yystack[$this->yyidx + 0]->minor['smarty_internal_index'];
2720  }
2721  }
2722 #line 2718 "smarty_internal_templateparser.php"
2723 #line 803 "smarty_internal_templateparser.y"
2724  function yy_r123(){
2725  $this->_retvalue = '$_smarty_tpl->tpl_vars['. $this->yystack[$this->yyidx + -2]->minor .']->'.$this->yystack[$this->yyidx + 0]->minor;
2726  }
2727 #line 2723 "smarty_internal_templateparser.php"
2728 #line 813 "smarty_internal_templateparser.y"
2729  function yy_r125(){
2730  $this->_retvalue = '$_smarty_tpl->getConfigVariable(\''. $this->yystack[$this->yyidx + -1]->minor .'\')';
2731  }
2732 #line 2728 "smarty_internal_templateparser.php"
2733 #line 817 "smarty_internal_templateparser.y"
2734  function yy_r126(){
2735  $this->_retvalue = '(is_array($tmp = $_smarty_tpl->getConfigVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'\')) ? $tmp'.$this->yystack[$this->yyidx + 0]->minor.' :null)';
2736  }
2737 #line 2733 "smarty_internal_templateparser.php"
2738 #line 821 "smarty_internal_templateparser.y"
2739  function yy_r127(){
2740  $this->_retvalue = '$_smarty_tpl->getConfigVariable('. $this->yystack[$this->yyidx + -1]->minor .')';
2741  }
2742 #line 2738 "smarty_internal_templateparser.php"
2743 #line 825 "smarty_internal_templateparser.y"
2744  function yy_r128(){
2745  $this->_retvalue = '(is_array($tmp = $_smarty_tpl->getConfigVariable('. $this->yystack[$this->yyidx + -2]->minor .')) ? $tmp'.$this->yystack[$this->yyidx + 0]->minor.' : null)';
2746  }
2747 #line 2743 "smarty_internal_templateparser.php"
2748 #line 829 "smarty_internal_templateparser.y"
2749  function yy_r129(){
2750  $this->_retvalue = array('var'=>$this->yystack[$this->yyidx + -1]->minor, 'smarty_internal_index'=>$this->yystack[$this->yyidx + 0]->minor);
2751  }
2752 #line 2748 "smarty_internal_templateparser.php"
2753 #line 842 "smarty_internal_templateparser.y"
2754  function yy_r131(){
2755  return;
2756  }
2757 #line 2753 "smarty_internal_templateparser.php"
2758 #line 848 "smarty_internal_templateparser.y"
2759  function yy_r132(){
2760  $this->_retvalue = '['.$this->compileVariable($this->yystack[$this->yyidx + 0]->minor).']';
2761  }
2762 #line 2758 "smarty_internal_templateparser.php"
2763 #line 852 "smarty_internal_templateparser.y"
2764  function yy_r133(){
2765  $this->_retvalue = '['.$this->compileVariable($this->yystack[$this->yyidx + -2]->minor).'->'.$this->yystack[$this->yyidx + 0]->minor.']';
2766  }
2767 #line 2763 "smarty_internal_templateparser.php"
2768 #line 856 "smarty_internal_templateparser.y"
2769  function yy_r134(){
2770  $this->_retvalue = "['". $this->yystack[$this->yyidx + 0]->minor ."']";
2771  }
2772 #line 2768 "smarty_internal_templateparser.php"
2773 #line 860 "smarty_internal_templateparser.y"
2774  function yy_r135(){
2775  $this->_retvalue = "[". $this->yystack[$this->yyidx + 0]->minor ."]";
2776  }
2777 #line 2773 "smarty_internal_templateparser.php"
2778 #line 864 "smarty_internal_templateparser.y"
2779  function yy_r136(){
2780  $this->_retvalue = "[". $this->yystack[$this->yyidx + -1]->minor ."]";
2781  }
2782 #line 2778 "smarty_internal_templateparser.php"
2783 #line 869 "smarty_internal_templateparser.y"
2784  function yy_r137(){
2785  $this->_retvalue = '['.$this->compiler->compileTag('private_special_variable',array(),'[\'section\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\'][\'index\']').']';
2786  }
2787 #line 2783 "smarty_internal_templateparser.php"
2788 #line 873 "smarty_internal_templateparser.y"
2789  function yy_r138(){
2790  $this->_retvalue = '['.$this->compiler->compileTag('private_special_variable',array(),'[\'section\'][\''.$this->yystack[$this->yyidx + -3]->minor.'\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\']').']';
2791  }
2792 #line 2788 "smarty_internal_templateparser.php"
2793 #line 883 "smarty_internal_templateparser.y"
2794  function yy_r140(){
2795  $this->_retvalue = '[]';
2796  }
2797 #line 2793 "smarty_internal_templateparser.php"
2798 #line 896 "smarty_internal_templateparser.y"
2799  function yy_r142(){
2800  $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor;
2801  }
2802 #line 2798 "smarty_internal_templateparser.php"
2803 #line 901 "smarty_internal_templateparser.y"
2804  function yy_r143(){
2805  $this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\'';
2806  }
2807 #line 2803 "smarty_internal_templateparser.php"
2808 #line 906 "smarty_internal_templateparser.y"
2809  function yy_r144(){
2810  $this->_retvalue = '('.$this->yystack[$this->yyidx + -1]->minor.')';
2811  }
2812 #line 2808 "smarty_internal_templateparser.php"
2813 #line 913 "smarty_internal_templateparser.y"
2814  function yy_r145(){
2815  if ($this->yystack[$this->yyidx + -1]->minor['var'] == '\'smarty\'') {
2816  $this->_retvalue = $this->compiler->compileTag('private_special_variable',array(),$this->yystack[$this->yyidx + -1]->minor['smarty_internal_index']).$this->yystack[$this->yyidx + 0]->minor;
2817  } else {
2818  $this->_retvalue = $this->compileVariable($this->yystack[$this->yyidx + -1]->minor['var']).$this->yystack[$this->yyidx + -1]->minor['smarty_internal_index'].$this->yystack[$this->yyidx + 0]->minor;
2819  }
2820  }
2821 #line 2817 "smarty_internal_templateparser.php"
2822 #line 922 "smarty_internal_templateparser.y"
2823  function yy_r146(){
2824  $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor;
2825  }
2826 #line 2822 "smarty_internal_templateparser.php"
2827 #line 927 "smarty_internal_templateparser.y"
2828  function yy_r147(){
2829  $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor;
2830  }
2831 #line 2827 "smarty_internal_templateparser.php"
2832 #line 932 "smarty_internal_templateparser.y"
2833  function yy_r148(){
2834  if ($this->security && substr($this->yystack[$this->yyidx + -1]->minor,0,1) == '_') {
2835  $this->compiler->trigger_template_error (self::Err1);
2836  }
2837  $this->_retvalue = '->'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor;
2838  }
2839 #line 2835 "smarty_internal_templateparser.php"
2840 #line 939 "smarty_internal_templateparser.y"
2841  function yy_r149(){
2842  if ($this->security) {
2843  $this->compiler->trigger_template_error (self::Err2);
2844  }
2845  $this->_retvalue = '->{'.$this->compileVariable($this->yystack[$this->yyidx + -1]->minor).$this->yystack[$this->yyidx + 0]->minor.'}';
2846  }
2847 #line 2843 "smarty_internal_templateparser.php"
2848 #line 946 "smarty_internal_templateparser.y"
2849  function yy_r150(){
2850  if ($this->security) {
2851  $this->compiler->trigger_template_error (self::Err2);
2852  }
2853  $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}';
2854  }
2855 #line 2851 "smarty_internal_templateparser.php"
2856 #line 953 "smarty_internal_templateparser.y"
2857  function yy_r151(){
2858  if ($this->security) {
2859  $this->compiler->trigger_template_error (self::Err2);
2860  }
2861  $this->_retvalue = '->{\''.$this->yystack[$this->yyidx + -4]->minor.'\'.'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}';
2862  }
2863 #line 2859 "smarty_internal_templateparser.php"
2864 #line 961 "smarty_internal_templateparser.y"
2865  function yy_r152(){
2866  $this->_retvalue = '->'.$this->yystack[$this->yyidx + 0]->minor;
2867  }
2868 #line 2864 "smarty_internal_templateparser.php"
2869 #line 969 "smarty_internal_templateparser.y"
2870  function yy_r153(){
2871  if (!$this->security || $this->smarty->security_policy->isTrustedPhpFunction($this->yystack[$this->yyidx + -3]->minor, $this->compiler)) {
2872  if (strcasecmp($this->yystack[$this->yyidx + -3]->minor,'isset') === 0 || strcasecmp($this->yystack[$this->yyidx + -3]->minor,'empty') === 0 || strcasecmp($this->yystack[$this->yyidx + -3]->minor,'array') === 0 || is_callable($this->yystack[$this->yyidx + -3]->minor)) {
2873  $func_name = strtolower($this->yystack[$this->yyidx + -3]->minor);
2874  if ($func_name == 'isset') {
2875  if (count($this->yystack[$this->yyidx + -1]->minor) == 0) {
2876  $this->compiler->trigger_template_error ('Illegal number of paramer in "isset()"');
2877  }
2878  $par = implode(',',$this->yystack[$this->yyidx + -1]->minor);
2879  if (strncasecmp($par,'$_smarty_tpl->getConfigVariable',strlen('$_smarty_tpl->getConfigVariable')) === 0) {
2880  $this->prefix_number++;
2881  $this->compiler->prefix_code[] = '<?php $_tmp'.$this->prefix_number.'='.str_replace(')',', false)',$par).';?>';
2882  $isset_par = '$_tmp'.$this->prefix_number;
2883  } else {
2884  $isset_par=str_replace("')->value","',null,true,false)->value",$par);
2885  }
2886  $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". $isset_par .")";
2887  } elseif (in_array($func_name,array('empty','reset','current','end','prev','next'))){
2888  if (count($this->yystack[$this->yyidx + -1]->minor) != 1) {
2889  $this->compiler->trigger_template_error ('Illegal number of paramer in "empty()"');
2890  }
2891  if ($func_name == 'empty') {
2892  $this->_retvalue = $func_name.'('.str_replace("')->value","',null,true,false)->value",$this->yystack[$this->yyidx + -1]->minor[0]).')';
2893  } else {
2894  $this->_retvalue = $func_name.'('.$this->yystack[$this->yyidx + -1]->minor[0].')';
2895  }
2896  } else {
2897  $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". implode(',',$this->yystack[$this->yyidx + -1]->minor) .")";
2898  }
2899  } else {
2900  $this->compiler->trigger_template_error ("unknown function \"" . $this->yystack[$this->yyidx + -3]->minor . "\"");
2901  }
2902  }
2903  }
2904 #line 2900 "smarty_internal_templateparser.php"
2905 #line 1007 "smarty_internal_templateparser.y"
2906  function yy_r154(){
2907  if ($this->security && substr($this->yystack[$this->yyidx + -3]->minor,0,1) == '_') {
2908  $this->compiler->trigger_template_error (self::Err1);
2909  }
2910  $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". implode(',',$this->yystack[$this->yyidx + -1]->minor) .")";
2911  }
2912 #line 2908 "smarty_internal_templateparser.php"
2913 #line 1014 "smarty_internal_templateparser.y"
2914  function yy_r155(){
2915  if ($this->security) {
2916  $this->compiler->trigger_template_error (self::Err2);
2917  }
2918  $this->prefix_number++;
2919  $this->compiler->prefix_code[] = '<?php $_tmp'.$this->prefix_number.'='.$this->compileVariable("'".$this->yystack[$this->yyidx + -3]->minor."'").';?>';
2920  $this->_retvalue = '$_tmp'.$this->prefix_number.'('. implode(',',$this->yystack[$this->yyidx + -1]->minor) .')';
2921  }
2922 #line 2918 "smarty_internal_templateparser.php"
2923 #line 1025 "smarty_internal_templateparser.y"
2924  function yy_r156(){
2925  $this->_retvalue = array_merge($this->yystack[$this->yyidx + -2]->minor,array($this->yystack[$this->yyidx + 0]->minor));
2926  }
2927 #line 2923 "smarty_internal_templateparser.php"
2928 #line 1042 "smarty_internal_templateparser.y"
2929  function yy_r159(){
2930  $this->_retvalue = array_merge($this->yystack[$this->yyidx + -2]->minor,array(array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor)));
2931  }
2932 #line 2928 "smarty_internal_templateparser.php"
2933 #line 1046 "smarty_internal_templateparser.y"
2934  function yy_r160(){
2935  $this->_retvalue = array(array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor));
2936  }
2937 #line 2933 "smarty_internal_templateparser.php"
2938 #line 1054 "smarty_internal_templateparser.y"
2939  function yy_r162(){
2940  $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor);
2941  }
2942 #line 2938 "smarty_internal_templateparser.php"
2943 #line 1062 "smarty_internal_templateparser.y"
2944  function yy_r163(){
2945  $this->_retvalue = array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor);
2946  }
2947 #line 2943 "smarty_internal_templateparser.php"
2948 #line 1096 "smarty_internal_templateparser.y"
2949  function yy_r170(){
2950  $this->_retvalue = '$'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor;
2951  }
2952 #line 2948 "smarty_internal_templateparser.php"
2953 #line 1101 "smarty_internal_templateparser.y"
2954  function yy_r171(){
2955  $this->_retvalue = '$'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor;
2956  }
2957 #line 2953 "smarty_internal_templateparser.php"
2958 #line 1107 "smarty_internal_templateparser.y"
2959  function yy_r172(){
2960  $this->_retvalue = '==';
2961  }
2962 #line 2958 "smarty_internal_templateparser.php"
2963 #line 1111 "smarty_internal_templateparser.y"
2964  function yy_r173(){
2965  $this->_retvalue = '!=';
2966  }
2967 #line 2963 "smarty_internal_templateparser.php"
2968 #line 1115 "smarty_internal_templateparser.y"
2969  function yy_r174(){
2970  $this->_retvalue = '>';
2971  }
2972 #line 2968 "smarty_internal_templateparser.php"
2973 #line 1119 "smarty_internal_templateparser.y"
2974  function yy_r175(){
2975  $this->_retvalue = '<';
2976  }
2977 #line 2973 "smarty_internal_templateparser.php"
2978 #line 1123 "smarty_internal_templateparser.y"
2979  function yy_r176(){
2980  $this->_retvalue = '>=';
2981  }
2982 #line 2978 "smarty_internal_templateparser.php"
2983 #line 1127 "smarty_internal_templateparser.y"
2984  function yy_r177(){
2985  $this->_retvalue = '<=';
2986  }
2987 #line 2983 "smarty_internal_templateparser.php"
2988 #line 1131 "smarty_internal_templateparser.y"
2989  function yy_r178(){
2990  $this->_retvalue = '===';
2991  }
2992 #line 2988 "smarty_internal_templateparser.php"
2993 #line 1135 "smarty_internal_templateparser.y"
2994  function yy_r179(){
2995  $this->_retvalue = '!==';
2996  }
2997 #line 2993 "smarty_internal_templateparser.php"
2998 #line 1139 "smarty_internal_templateparser.y"
2999  function yy_r180(){
3000  $this->_retvalue = '%';
3001  }
3002 #line 2998 "smarty_internal_templateparser.php"
3003 #line 1143 "smarty_internal_templateparser.y"
3004  function yy_r181(){
3005  $this->_retvalue = '&&';
3006  }
3007 #line 3003 "smarty_internal_templateparser.php"
3008 #line 1147 "smarty_internal_templateparser.y"
3009  function yy_r182(){
3010  $this->_retvalue = '||';
3011  }
3012 #line 3008 "smarty_internal_templateparser.php"
3013 #line 1151 "smarty_internal_templateparser.y"
3014  function yy_r183(){
3015  $this->_retvalue = ' XOR ';
3016  }
3017 #line 3013 "smarty_internal_templateparser.php"
3018 #line 1158 "smarty_internal_templateparser.y"
3019  function yy_r184(){
3020  $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')';
3021  }
3022 #line 3018 "smarty_internal_templateparser.php"
3023 #line 1166 "smarty_internal_templateparser.y"
3024  function yy_r186(){
3025  $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor;
3026  }
3027 #line 3023 "smarty_internal_templateparser.php"
3028 #line 1174 "smarty_internal_templateparser.y"
3029  function yy_r188(){
3030  $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor;
3031  }
3032 #line 3028 "smarty_internal_templateparser.php"
3033 #line 1178 "smarty_internal_templateparser.y"
3034  function yy_r189(){
3035  $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor;
3036  }
3037 #line 3033 "smarty_internal_templateparser.php"
3038 #line 1190 "smarty_internal_templateparser.y"
3039  function yy_r191(){
3040  $this->_retvalue = "''";
3041  }
3042 #line 3038 "smarty_internal_templateparser.php"
3043 #line 1194 "smarty_internal_templateparser.y"
3044  function yy_r192(){
3045  $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor->to_smarty_php();
3046  }
3047 #line 3043 "smarty_internal_templateparser.php"
3048 #line 1199 "smarty_internal_templateparser.y"
3049  function yy_r193(){
3050  $this->yystack[$this->yyidx + -1]->minor->append_subtree($this->yystack[$this->yyidx + 0]->minor);
3051  $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor;
3052  }
3053 #line 3049 "smarty_internal_templateparser.php"
3054 #line 1204 "smarty_internal_templateparser.y"
3055  function yy_r194(){
3056  $this->_retvalue = new _smarty_doublequoted($this, $this->yystack[$this->yyidx + 0]->minor);
3057  }
3058 #line 3054 "smarty_internal_templateparser.php"
3059 #line 1208 "smarty_internal_templateparser.y"
3060  function yy_r195(){
3061  $this->_retvalue = new _smarty_code($this, '(string)'.$this->yystack[$this->yyidx + -1]->minor);
3062  }
3063 #line 3059 "smarty_internal_templateparser.php"
3064 #line 1216 "smarty_internal_templateparser.y"
3065  function yy_r197(){
3066  $this->_retvalue = new _smarty_code($this, '(string)$_smarty_tpl->tpl_vars[\''. substr($this->yystack[$this->yyidx + 0]->minor,1) .'\']->value');
3067  }
3068 #line 3064 "smarty_internal_templateparser.php"
3069 #line 1224 "smarty_internal_templateparser.y"
3070  function yy_r199(){
3071  $this->_retvalue = new _smarty_code($this, '(string)('.$this->yystack[$this->yyidx + -1]->minor.')');
3072  }
3073 #line 3069 "smarty_internal_templateparser.php"
3074 #line 1228 "smarty_internal_templateparser.y"
3075  function yy_r200(){
3076  $this->_retvalue = new _smarty_tag($this, $this->yystack[$this->yyidx + 0]->minor);
3077  }
3078 #line 3074 "smarty_internal_templateparser.php"
3079 #line 1232 "smarty_internal_templateparser.y"
3080  function yy_r201(){
3081  $this->_retvalue = new _smarty_dq_content($this, $this->yystack[$this->yyidx + 0]->minor);
3082  }
3083 #line 3079 "smarty_internal_templateparser.php"
3084 
3085  private $_retvalue;
3086 
3087  function yy_reduce($yyruleno)
3088  {
3089  $yymsp = $this->yystack[$this->yyidx];
3090  if (self::$yyTraceFILE && $yyruleno >= 0
3091  && $yyruleno < count(self::$yyRuleName)) {
3092  fprintf(self::$yyTraceFILE, "%sReduce (%d) [%s].\n",
3093  self::$yyTracePrompt, $yyruleno,
3094  self::$yyRuleName[$yyruleno]);
3095  }
3096 
3097  $this->_retvalue = $yy_lefthand_side = null;
3098  if (array_key_exists($yyruleno, self::$yyReduceMap)) {
3099  // call the action
3100  $this->_retvalue = null;
3101  $this->{'yy_r' . self::$yyReduceMap[$yyruleno]}();
3102  $yy_lefthand_side = $this->_retvalue;
3103  }
3104  $yygoto = self::$yyRuleInfo[$yyruleno]['lhs'];
3105  $yysize = self::$yyRuleInfo[$yyruleno]['rhs'];
3106  $this->yyidx -= $yysize;
3107  for($i = $yysize; $i; $i--) {
3108  // pop all of the right-hand side parameters
3109  array_pop($this->yystack);
3110  }
3111  $yyact = $this->yy_find_reduce_action($this->yystack[$this->yyidx]->stateno, $yygoto);
3112  if ($yyact < self::YYNSTATE) {
3113  if (!self::$yyTraceFILE && $yysize) {
3114  $this->yyidx++;
3115  $x = new TP_yyStackEntry;
3116  $x->stateno = $yyact;
3117  $x->major = $yygoto;
3118  $x->minor = $yy_lefthand_side;
3119  $this->yystack[$this->yyidx] = $x;
3120  } else {
3121  $this->yy_shift($yyact, $yygoto, $yy_lefthand_side);
3122  }
3123  } elseif ($yyact == self::YYNSTATE + self::YYNRULE + 1) {
3124  $this->yy_accept();
3125  }
3126  }
3127 
3128  function yy_parse_failed()
3129  {
3130  if (self::$yyTraceFILE) {
3131  fprintf(self::$yyTraceFILE, "%sFail!\n", self::$yyTracePrompt);
3132  }
3133  while ($this->yyidx >= 0) {
3134  $this->yy_pop_parser_stack();
3135  }
3136  }
3137 
3138  function yy_syntax_error($yymajor, $TOKEN)
3139  {
3140 #line 77 "smarty_internal_templateparser.y"
3141 
3142  $this->internalError = true;
3143  $this->yymajor = $yymajor;
3144  $this->compiler->trigger_template_error();
3145 #line 3142 "smarty_internal_templateparser.php"
3146  }
3147 
3148  function yy_accept()
3149  {
3150  if (self::$yyTraceFILE) {
3151  fprintf(self::$yyTraceFILE, "%sAccept!\n", self::$yyTracePrompt);
3152  }
3153  while ($this->yyidx >= 0) {
3154  $stack = $this->yy_pop_parser_stack();
3155  }
3156 #line 69 "smarty_internal_templateparser.y"
3157 
3158  $this->successful = !$this->internalError;
3159  $this->internalError = false;
3160  $this->retvalue = $this->_retvalue;
3161  //echo $this->retvalue."\n\n";
3162 #line 3160 "smarty_internal_templateparser.php"
3163  }
3164 
3165  function doParse($yymajor, $yytokenvalue)
3166  {
3167  $yyerrorhit = 0; /* True if yymajor has invoked an error */
3168 
3169  if ($this->yyidx === null || $this->yyidx < 0) {
3170  $this->yyidx = 0;
3171  $this->yyerrcnt = -1;
3172  $x = new TP_yyStackEntry;
3173  $x->stateno = 0;
3174  $x->major = 0;
3175  $this->yystack = array();
3176  array_push($this->yystack, $x);
3177  }
3178  $yyendofinput = ($yymajor==0);
3179 
3180  if (self::$yyTraceFILE) {
3181  fprintf(self::$yyTraceFILE, "%sInput %s\n",
3182  self::$yyTracePrompt, $this->yyTokenName[$yymajor]);
3183  }
3184 
3185  do {
3186  $yyact = $this->yy_find_shift_action($yymajor);
3187  if ($yymajor < self::YYERRORSYMBOL &&
3188  !$this->yy_is_expected_token($yymajor)) {
3189  // force a syntax error
3190  $yyact = self::YY_ERROR_ACTION;
3191  }
3192  if ($yyact < self::YYNSTATE) {
3193  $this->yy_shift($yyact, $yymajor, $yytokenvalue);
3194  $this->yyerrcnt--;
3195  if ($yyendofinput && $this->yyidx >= 0) {
3196  $yymajor = 0;
3197  } else {
3198  $yymajor = self::YYNOCODE;
3199  }
3200  } elseif ($yyact < self::YYNSTATE + self::YYNRULE) {
3201  $this->yy_reduce($yyact - self::YYNSTATE);
3202  } elseif ($yyact == self::YY_ERROR_ACTION) {
3203  if (self::$yyTraceFILE) {
3204  fprintf(self::$yyTraceFILE, "%sSyntax Error!\n",
3205  self::$yyTracePrompt);
3206  }
3207  if (self::YYERRORSYMBOL) {
3208  if ($this->yyerrcnt < 0) {
3209  $this->yy_syntax_error($yymajor, $yytokenvalue);
3210  }
3211  $yymx = $this->yystack[$this->yyidx]->major;
3212  if ($yymx == self::YYERRORSYMBOL || $yyerrorhit ){
3213  if (self::$yyTraceFILE) {
3214  fprintf(self::$yyTraceFILE, "%sDiscard input token %s\n",
3215  self::$yyTracePrompt, $this->yyTokenName[$yymajor]);
3216  }
3217  $this->yy_destructor($yymajor, $yytokenvalue);
3218  $yymajor = self::YYNOCODE;
3219  } else {
3220  while ($this->yyidx >= 0 &&
3221  $yymx != self::YYERRORSYMBOL &&
3222  ($yyact = $this->yy_find_shift_action(self::YYERRORSYMBOL)) >= self::YYNSTATE
3223  ){
3224  $this->yy_pop_parser_stack();
3225  }
3226  if ($this->yyidx < 0 || $yymajor==0) {
3227  $this->yy_destructor($yymajor, $yytokenvalue);
3228  $this->yy_parse_failed();
3229  $yymajor = self::YYNOCODE;
3230  } elseif ($yymx != self::YYERRORSYMBOL) {
3231  $u2 = 0;
3232  $this->yy_shift($yyact, self::YYERRORSYMBOL, $u2);
3233  }
3234  }
3235  $this->yyerrcnt = 3;
3236  $yyerrorhit = 1;
3237  } else {
3238  if ($this->yyerrcnt <= 0) {
3239  $this->yy_syntax_error($yymajor, $yytokenvalue);
3240  }
3241  $this->yyerrcnt = 3;
3242  $this->yy_destructor($yymajor, $yytokenvalue);
3243  if ($yyendofinput) {
3244  $this->yy_parse_failed();
3245  }
3246  $yymajor = self::YYNOCODE;
3247  }
3248  } else {
3249  $this->yy_accept();
3250  $yymajor = self::YYNOCODE;
3251  }
3252  } while ($yymajor != self::YYNOCODE && $this->yyidx >= 0);
3253  }
3254 }
offsetSet($offset, $value)
$minor
$major
const PHP_QUOTE
if(strlen($date2)== '10') if($type== 'users-by-age'&&a_priv('admin_users', true)) elseif($type== 'forums-count'&&a_priv('admin_content', true)) elseif($type== 'forums-categories'&&a_priv('admin_content', true)) elseif($type== 'users-count'&&a_priv('admin_users', true)) elseif($type== 'product-categories'&&a_priv('admin_products', true)) elseif($type== 'users-by-sex'&&a_priv('admin_users', true)) elseif($type== 'users-by-country'&&a_priv('admin_users', true)) elseif($type== 'sales'&&a_priv('admin_sales', true))
Definition: chart-data.php:160
static Trace($TraceFILE, $zTracePrompt)
const PHP_PASSTHRU
modes for handling of "" tags in templates.
yy_shift($yyNewState, $yyMajor, $yypMinor)
$stateno
const PHP_ALLOW
const PHP_REMOVE

This documentation for Open ecommerce PEEL Shopping and PEEL.fr has been generated by Doxygen on Thu Oct 15 2015 14:41:17 - Peel ecommerce is a product of Agence web Advisto SAS. All rights reserved.