From 4a68612a5a11e817252548f2b98439b78d474941 Mon Sep 17 00:00:00 2001 From: "Uwe.Tews" Date: Wed, 21 Oct 2009 09:49:43 +0000 Subject: [PATCH] - added {$foo++}{$foo--} syntax - buxfix changed PHP "if (..):" to "if (..){" because of possible bad code when concenating PHP tags - autoload Smarty internal classes --- change_log.txt | 5 + libs/Smarty.class.php | 41 +- .../internal.cacheresource_file.php | 7 +- libs/sysplugins/internal.compile_else.php | 2 +- libs/sysplugins/internal.compile_elseif.php | 4 +- libs/sysplugins/internal.compile_if.php | 6 +- libs/sysplugins/internal.compile_ifclose.php | 4 +- libs/sysplugins/internal.config.php | 7 +- .../internal.smartytemplatecompiler.php | 4 +- libs/sysplugins/internal.template.php | 18 +- libs/sysplugins/internal.templateparser.php | 1842 +++++++++-------- libs/sysplugins/internal.write_file.php | 2 +- 12 files changed, 961 insertions(+), 981 deletions(-) diff --git a/change_log.txt b/change_log.txt index ae4a3ff3..d80c4f70 100644 --- a/change_log.txt +++ b/change_log.txt @@ -1,3 +1,8 @@ +10/21/2009 +- added {$foo++}{$foo--} syntax +- buxfix changed PHP "if (..):" to "if (..){" because of possible bad code when concenating PHP tags +- autoload Smarty internal classes + 10/20/2009 - check at compile time for variable filter to improve rendering speed if no filter is used - fixed bug at combination of {elseif} tag and {...} in double quoted strings of static class parameter diff --git a/libs/Smarty.class.php b/libs/Smarty.class.php index eb6171ae..81a14a12 100644 --- a/libs/Smarty.class.php +++ b/libs/Smarty.class.php @@ -84,9 +84,9 @@ define('SMARTY_PHP_REMOVE', 2); //-> escape tags as entities define('SMARTY_PHP_ALLOW', 3); //-> escape tags as entities /** -* load required base class for creation of the smarty object -*/ -require_once(SMARTY_SYSPLUGINS_DIR . 'internal.templatebase.php'); +* register the class autoloader +**/ +spl_autoload_register('smartyAutoload'); /** * This is the main Smarty class @@ -153,7 +153,7 @@ class Smarty extends Smarty_Internal_TemplateBase { // config var settings public $config_overwrite = true; //Controls whether variables with the same name overwrite each other. public $config_booleanize = true; //Controls whether config values of on/true/yes and off/false/no get converted to boolean - public $config_read_hidden = true; //Controls whether hidden config sections/vars are read from the file. + public $config_read_hidden = true; //Controls whether hidden config sections/vars are read from the file. // config vars public $config_vars = array(); // assigned tpl vars @@ -202,8 +202,6 @@ class Smarty extends Smarty_Internal_TemplateBase { public $variable_filter = true; // cache resorce objects public $cache_resource_objects = array(); - // write file object - public $write_file_object = null; // global internal smarty vars public $_smarty_vars = array(); // start time for execution time calculation @@ -212,7 +210,7 @@ class Smarty extends Smarty_Internal_TemplateBase { * Class constructor, initializes basic smarty properties */ public function __construct() - { + { // self reference needed by other classes methodes $this->smarty = $this; @@ -230,13 +228,6 @@ class Smarty extends Smarty_Internal_TemplateBase { $this->cache_dir = '.' . DS . 'cache' . DS; $this->config_dir = '.' . DS . 'configs' . DS; $this->debug_tpl = SMARTY_DIR . 'debug.tpl'; - // load basic plugins - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.template.php'); - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.plugin_handler.php'); - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.run_filter.php'); - // $this->loadPlugin($this->template_class); - // $this->loadPlugin('Smarty_Internal_Plugin_Handler'); - // $this->loadPlugin('Smarty_Internal_Run_Filter'); $this->plugin_handler = new Smarty_Internal_Plugin_Handler($this); $this->filter_handler = new Smarty_Internal_Run_Filter($this); if (!$this->debugging && $this->debugging_ctrl == 'URL') { @@ -288,7 +279,6 @@ class Smarty extends Smarty_Internal_TemplateBase { */ public function fetch($template, $cache_id = null, $compile_id = null, $parent = null) { - $this->checkDebugging(); if (is_object($cache_id)) { $parent = $cache_id; $cache_id = null; @@ -340,7 +330,6 @@ class Smarty extends Smarty_Internal_TemplateBase { */ public function is_cached($template, $cache_id = null, $compile_id = null) { - $this->checkDebugging(); if (!($template instanceof $this->template_class)) { $template = $this->createTemplate ($template, $cache_id, $compile_id, $this); } @@ -364,7 +353,6 @@ class Smarty extends Smarty_Internal_TemplateBase { throw new Exception("Security policy must define class 'Smarty_Security_Policy'"); } $this->security_policy = new Smarty_Security_Policy; - $this->loadPlugin('Smarty_Internal_Security_Handler'); $this->security_handler = new Smarty_Internal_Security_Handler($this); $this->security = true; } else { @@ -493,16 +481,6 @@ class Smarty extends Smarty_Internal_TemplateBase { return set_exception_handler($handler); } - /** - * Check if debugging handler must be loaded - */ - public function checkDebugging() - { - if ($this->debugging && !class_exists('Smarty_Internal_Debug', false)) { - $this->loadPlugin('Smarty_Internal_Debug'); - } - } - /** * Display debug info */ @@ -548,4 +526,13 @@ class Smarty extends Smarty_Internal_TemplateBase { } } +function smartyAutoload($class) +{ + if (substr($class, 0, 16) === 'Smarty_Internal_') { + $class = strtolower($class); + $_name_parts = explode('_', $class, 3); + include SMARTY_SYSPLUGINS_DIR . 'internal.' . $_name_parts[2] . '.php'; + } +} + ?> diff --git a/libs/sysplugins/internal.cacheresource_file.php b/libs/sysplugins/internal.cacheresource_file.php index ed5f17e5..691de7ee 100644 --- a/libs/sysplugins/internal.cacheresource_file.php +++ b/libs/sysplugins/internal.cacheresource_file.php @@ -64,12 +64,7 @@ class Smarty_Internal_CacheResource_File { public function writeCachedContent($template, $content) { if (!$template->isEvaluated()) { - if (!is_object($this->smarty->write_file_object)) { - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.write_file.php'); - // $this->smarty->loadPlugin("Smarty_Internal_Write_File"); - $this->smarty->write_file_object = new Smarty_Internal_Write_File; - } - return $this->smarty->write_file_object->writeFile($template->getCachedFilepath(), $content); + return Smarty_Internal_Write_File::writeFile($template->getCachedFilepath(), $content); } else { return false; } diff --git a/libs/sysplugins/internal.compile_else.php b/libs/sysplugins/internal.compile_else.php index 0b419aa6..b592509a 100644 --- a/libs/sysplugins/internal.compile_else.php +++ b/libs/sysplugins/internal.compile_else.php @@ -26,7 +26,7 @@ class Smarty_Internal_Compile_Else extends Smarty_Internal_CompileBase { $nesting = $this->_close_tag(array('if', 'elseif')); $this->_open_tag('else',$nesting); - return ''; + return ''; } } diff --git a/libs/sysplugins/internal.compile_elseif.php b/libs/sysplugins/internal.compile_elseif.php index b5ca202b..5f5af869 100644 --- a/libs/sysplugins/internal.compile_elseif.php +++ b/libs/sysplugins/internal.compile_elseif.php @@ -30,13 +30,13 @@ class Smarty_Internal_Compile_ElseIf extends Smarty_Internal_CompileBase { if (empty($this->compiler->prefix_code)) { $this->_open_tag('elseif', $nesting); - return ''; + return ''; } else { $tmp = ''; foreach ($this->compiler->prefix_code as $code) $tmp .= $code; $this->compiler->prefix_code = array(); $this->_open_tag('elseif', $nesting + 1); - return '' . $tmp . ''; + return '' . $tmp . ''; } } } diff --git a/libs/sysplugins/internal.compile_if.php b/libs/sysplugins/internal.compile_if.php index 2792e0c9..02f35e61 100644 --- a/libs/sysplugins/internal.compile_if.php +++ b/libs/sysplugins/internal.compile_if.php @@ -28,11 +28,11 @@ class Smarty_Internal_Compile_If extends Smarty_Internal_CompileBase { $this->_open_tag('if',1); if (is_array($args['if condition'])) { - $_output = " tpl_vars[".$args['if condition']['var']."])) \$_smarty_tpl->tpl_vars[".$args['if condition']['var']."] = new Smarty_Variable;\n"; - $_output .= "if (\$_smarty_tpl->tpl_vars[".$args['if condition']['var']."]->value = ".$args['if condition']['value']."): ?>"; + $_output = "tpl_vars[".$args['if condition']['var']."])) \$_smarty_tpl->tpl_vars[".$args['if condition']['var']."] = new Smarty_Variable;"; + $_output .= "if (\$_smarty_tpl->tpl_vars[".$args['if condition']['var']."]->value = ".$args['if condition']['value']."){?>"; return $_output; } else { - return ''; + return ''; } } } diff --git a/libs/sysplugins/internal.compile_ifclose.php b/libs/sysplugins/internal.compile_ifclose.php index 1ac1fc0f..d6f277d4 100644 --- a/libs/sysplugins/internal.compile_ifclose.php +++ b/libs/sysplugins/internal.compile_ifclose.php @@ -25,8 +25,8 @@ class Smarty_Internal_Compile_IfClose extends Smarty_Internal_CompileBase { $this->compiler = $compiler; $nesting = $this->_close_tag(array('if', 'else', 'elseif')); $tmp = ''; - for ($i = 0; $i < $nesting ; $i++) $tmp .= ' endif;'; - return ""; + for ($i = 0; $i < $nesting ; $i++) $tmp .= '}'; + return ""; } } diff --git a/libs/sysplugins/internal.config.php b/libs/sysplugins/internal.config.php index ee3dea1f..7e98a9f9 100644 --- a/libs/sysplugins/internal.config.php +++ b/libs/sysplugins/internal.config.php @@ -199,18 +199,13 @@ class Smarty_Internal_Config { // compile template if (!is_object($this->compiler_object)) { // load compiler - $this->smarty->loadPlugin('Smarty_Internal_Config_File_Compiler'); $this->compiler_object = new Smarty_Internal_Config_File_Compiler($this->smarty); } - if (!is_object($this->smarty->write_file_object)) { - $this->smarty->loadPlugin("Smarty_Internal_Write_File"); - $this->smarty->write_file_object = new Smarty_Internal_Write_File; - } // call compiler if ($this->compiler_object->compileSource($this)) { // compiling succeded // write compiled template - $this->smarty->write_file_object->writeFile($this->getCompiledFilepath(), $this->getCompiledConfig()); + Smarty_Internal_Write_File::writeFile($this->getCompiledFilepath(), $this->getCompiledConfig()); // make template and compiled file timestamp match touch($this->getCompiledFilepath(), $this->getTimestamp()); } else { diff --git a/libs/sysplugins/internal.smartytemplatecompiler.php b/libs/sysplugins/internal.smartytemplatecompiler.php index f05d4f57..b6268c05 100644 --- a/libs/sysplugins/internal.smartytemplatecompiler.php +++ b/libs/sysplugins/internal.smartytemplatecompiler.php @@ -21,8 +21,8 @@ class Smarty_Internal_SmartyTemplateCompiler extends Smarty_Internal_TemplateCom $this->smarty = $smarty; parent::__construct(); // get required plugins - $this->smarty->loadPlugin($lexer_class); - $this->smarty->loadPlugin($parser_class); +// $this->smarty->loadPlugin($lexer_class); +// $this->smarty->loadPlugin($parser_class); $this->lexer_class = $lexer_class; $this->parser_class = $parser_class; } diff --git a/libs/sysplugins/internal.template.php b/libs/sysplugins/internal.template.php index a2ca4283..45bd3ed8 100644 --- a/libs/sysplugins/internal.template.php +++ b/libs/sysplugins/internal.template.php @@ -275,10 +275,6 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { // compile template if (!is_object($this->compiler_object)) { // load compiler - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.compilebase.php'); - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.templatecompilerbase.php'); - // $this->smarty->loadPlugin('Smarty_Internal_CompileBase'); - // $this->smarty->loadPlugin('Smarty_Internal_TemplateCompilerBase'); $this->smarty->loadPlugin($this->smarty->resource_objects[$this->resource_type]->compiler_class); $this->compiler_object = new $this->smarty->resource_objects[$this->resource_type]->compiler_class($this->smarty->resource_objects[$this->resource_type]->template_lexer_class, $this->smarty->resource_objects[$this->resource_type]->template_parser_class, $this->smarty); // load cacher @@ -287,17 +283,12 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { $this->cacher_object = new $this->cacher_class($this->smarty); } } - if (!is_object($this->smarty->write_file_object)) { - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.write_file.php'); - // $this->smarty->loadPlugin("Smarty_Internal_Write_File"); - $this->smarty->write_file_object = new Smarty_Internal_Write_File; - } // call compiler if ($this->compiler_object->compileTemplate($this)) { // compiling succeded if (!$this->isEvaluated()) { // write compiled template - $this->smarty->write_file_object->writeFile($this->getCompiledFilepath(), $this->compiled_template); + Smarty_Internal_Write_File::writeFile($this->getCompiledFilepath(), $this->compiled_template); // make template and compiled file timestamp match touch($this->getCompiledFilepath(), $this->getTemplateTimestamp()); } @@ -669,8 +660,6 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { if (!isset($this->smarty->resource_objects[$resource_type])) { // try registered resource if (isset($this->smarty->_plugins['resource'][$resource_type])) { - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.resource_registered.php'); - // $this->smarty->loadPlugin('Smarty_Internal_Resource_Registered'); return $this->smarty->resource_objects[$resource_type] = new Smarty_Internal_Resource_Registered($this->smarty); } else { // try sysplugins dir @@ -689,8 +678,6 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { "smarty_resource_{$resource_type}_timestamp", "smarty_resource_{$resource_type}_secure", "smarty_resource_{$resource_type}_trusted")); - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.resource_registered.php'); - // $this->smarty->loadPlugin('Smarty_Internal_Resource_Registered'); return $this->smarty->resource_objects[$resource_type] = new Smarty_Internal_Resource_Registered($this->smarty); } } else { @@ -701,10 +688,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { if ($this->smarty->security) { $this->smarty->security_handler->isTrustedStream($resource_type); } - require_once(SMARTY_SYSPLUGINS_DIR . 'internal.resource_stream.php'); - // $this->smarty->loadPlugin('Smarty_Internal_Resource_Stream'); return $this->smarty->resource_objects[$resource_type] = new Smarty_Internal_Resource_Stream($this->smarty); - // $resource_name = str_replace(':', '://', $template_resource); } else { throw new Exception('Unkown resource type \'' . $resource_type . '\''); } diff --git a/libs/sysplugins/internal.templateparser.php b/libs/sysplugins/internal.templateparser.php index 81c4a4e6..ab26ceac 100644 --- a/libs/sysplugins/internal.templateparser.php +++ b/libs/sysplugins/internal.templateparser.php @@ -223,9 +223,9 @@ class Smarty_Internal_Templateparser#line 109 "internal.templateparser.php" const TP_SPACE = 68; const TP_INSTANCEOF = 69; const TP_QMARK = 70; - const YY_NO_ACTION = 472; - const YY_ACCEPT_ACTION = 471; - const YY_ERROR_ACTION = 470; + const YY_NO_ACTION = 475; + const YY_ACCEPT_ACTION = 474; + const YY_ERROR_ACTION = 473; /* Next are that tables used to determine what action to take based on the ** current state and lookahead token. These tables are used to implement @@ -277,284 +277,290 @@ class Smarty_Internal_Templateparser#line 109 "internal.templateparser.php" ** shifting non-terminals after a reduce. ** self::$yy_default Default action for each state. */ - const YY_SZ_ACTTAB = 1095; + const YY_SZ_ACTTAB = 1126; static public $yy_action = array( - /* 0 */ 277, 283, 284, 10, 13, 270, 276, 7, 6, 268, - /* 10 */ 269, 2, 5, 27, 277, 283, 284, 10, 13, 270, - /* 20 */ 276, 7, 6, 268, 269, 2, 5, 172, 282, 277, - /* 30 */ 283, 284, 10, 13, 270, 276, 7, 6, 268, 269, - /* 40 */ 2, 5, 63, 169, 44, 63, 27, 25, 14, 278, - /* 50 */ 136, 14, 257, 258, 152, 257, 258, 202, 210, 75, - /* 60 */ 175, 209, 11, 240, 280, 69, 37, 68, 44, 214, - /* 70 */ 224, 135, 15, 471, 94, 204, 12, 151, 16, 29, - /* 80 */ 33, 16, 205, 176, 46, 42, 176, 66, 42, 173, - /* 90 */ 72, 229, 51, 59, 63, 51, 59, 280, 217, 161, - /* 100 */ 14, 32, 155, 150, 257, 258, 230, 76, 277, 283, - /* 110 */ 284, 10, 13, 270, 276, 7, 6, 268, 269, 2, - /* 120 */ 5, 63, 206, 292, 293, 193, 260, 14, 29, 30, - /* 130 */ 16, 257, 258, 266, 213, 176, 294, 42, 49, 66, - /* 140 */ 9, 11, 37, 63, 51, 59, 250, 125, 127, 14, - /* 150 */ 76, 161, 229, 257, 258, 12, 221, 16, 252, 288, - /* 160 */ 46, 101, 176, 264, 42, 265, 65, 230, 72, 260, - /* 170 */ 189, 51, 59, 51, 19, 35, 225, 4, 154, 16, - /* 180 */ 120, 229, 164, 27, 176, 164, 42, 250, 66, 243, - /* 190 */ 174, 76, 215, 51, 59, 63, 230, 151, 195, 236, - /* 200 */ 45, 14, 76, 229, 264, 257, 258, 250, 256, 58, - /* 210 */ 260, 76, 292, 293, 88, 179, 160, 63, 230, 159, - /* 220 */ 178, 260, 101, 14, 264, 294, 173, 257, 258, 29, - /* 230 */ 260, 16, 218, 239, 280, 271, 176, 342, 42, 130, - /* 240 */ 66, 174, 259, 72, 263, 51, 59, 3, 51, 27, - /* 250 */ 235, 29, 156, 16, 76, 192, 164, 26, 176, 211, - /* 260 */ 42, 174, 72, 183, 17, 292, 293, 51, 59, 63, - /* 270 */ 23, 164, 250, 260, 158, 14, 76, 106, 294, 257, - /* 280 */ 258, 39, 253, 33, 252, 288, 157, 97, 342, 264, - /* 290 */ 272, 63, 238, 47, 250, 260, 116, 14, 76, 242, - /* 300 */ 280, 257, 258, 4, 114, 16, 252, 288, 164, 101, - /* 310 */ 176, 264, 42, 43, 66, 281, 72, 260, 200, 51, - /* 320 */ 59, 51, 218, 27, 229, 4, 161, 16, 171, 279, - /* 330 */ 194, 17, 176, 233, 42, 188, 66, 3, 296, 230, - /* 340 */ 31, 51, 59, 63, 106, 17, 17, 164, 45, 14, - /* 350 */ 164, 24, 149, 257, 258, 1, 21, 186, 106, 106, - /* 360 */ 40, 76, 52, 148, 228, 274, 297, 298, 285, 273, - /* 370 */ 299, 286, 17, 54, 280, 227, 157, 29, 267, 16, - /* 380 */ 260, 229, 212, 47, 176, 106, 42, 272, 72, 143, - /* 390 */ 231, 144, 197, 51, 59, 153, 230, 63, 164, 287, - /* 400 */ 165, 139, 240, 14, 240, 164, 36, 257, 258, 164, - /* 410 */ 164, 164, 40, 20, 39, 253, 228, 274, 297, 298, - /* 420 */ 285, 273, 299, 286, 164, 44, 174, 18, 110, 174, - /* 430 */ 63, 29, 100, 16, 22, 43, 14, 115, 176, 182, - /* 440 */ 257, 258, 72, 290, 109, 164, 250, 51, 59, 129, - /* 450 */ 76, 27, 145, 151, 165, 60, 250, 164, 252, 288, - /* 460 */ 76, 104, 240, 264, 29, 240, 295, 237, 275, 260, - /* 470 */ 290, 176, 134, 264, 248, 72, 151, 38, 253, 260, - /* 480 */ 51, 59, 250, 141, 58, 240, 76, 165, 263, 90, - /* 490 */ 223, 62, 99, 339, 198, 288, 250, 101, 58, 264, - /* 500 */ 76, 113, 199, 85, 279, 260, 290, 102, 198, 288, - /* 510 */ 271, 101, 234, 264, 61, 23, 72, 111, 250, 260, - /* 520 */ 58, 51, 76, 103, 271, 82, 138, 237, 247, 290, - /* 530 */ 198, 288, 290, 101, 128, 264, 250, 207, 58, 240, - /* 540 */ 76, 260, 237, 89, 174, 95, 271, 240, 198, 288, - /* 550 */ 250, 101, 58, 264, 76, 34, 98, 93, 237, 260, - /* 560 */ 219, 140, 198, 288, 271, 101, 263, 264, 250, 131, - /* 570 */ 58, 290, 76, 260, 263, 91, 132, 70, 271, 196, - /* 580 */ 198, 288, 133, 101, 191, 264, 246, 168, 81, 240, - /* 590 */ 67, 260, 50, 79, 71, 240, 271, 250, 245, 56, - /* 600 */ 22, 76, 252, 288, 84, 101, 208, 264, 80, 198, - /* 610 */ 288, 216, 101, 260, 264, 250, 291, 58, 251, 76, - /* 620 */ 260, 142, 86, 255, 261, 271, 73, 198, 288, 250, - /* 630 */ 101, 58, 264, 76, 220, 28, 92, 226, 260, 241, - /* 640 */ 262, 198, 288, 271, 101, 185, 264, 250, 328, 112, - /* 650 */ 203, 76, 260, 184, 177, 63, 64, 271, 180, 252, - /* 660 */ 288, 14, 101, 181, 264, 257, 258, 232, 170, 41, - /* 670 */ 260, 67, 259, 53, 79, 71, 77, 279, 162, 303, - /* 680 */ 74, 254, 304, 252, 288, 8, 101, 244, 264, 29, - /* 690 */ 48, 250, 187, 280, 260, 76, 176, 119, 280, 280, - /* 700 */ 72, 280, 280, 249, 166, 51, 59, 67, 264, 53, - /* 710 */ 79, 71, 163, 280, 260, 280, 280, 280, 280, 252, - /* 720 */ 288, 250, 101, 57, 264, 76, 280, 280, 83, 280, - /* 730 */ 260, 280, 280, 198, 288, 280, 101, 280, 264, 250, - /* 740 */ 280, 58, 280, 76, 260, 280, 87, 280, 280, 271, - /* 750 */ 280, 198, 288, 280, 101, 280, 264, 280, 280, 280, - /* 760 */ 280, 280, 260, 280, 280, 40, 280, 271, 280, 228, - /* 770 */ 274, 297, 298, 285, 273, 299, 286, 280, 280, 250, - /* 780 */ 280, 107, 280, 76, 280, 280, 280, 280, 280, 280, - /* 790 */ 280, 252, 288, 280, 101, 280, 264, 280, 280, 289, - /* 800 */ 280, 250, 260, 55, 78, 76, 280, 280, 280, 280, - /* 810 */ 164, 280, 280, 252, 288, 250, 101, 107, 264, 76, - /* 820 */ 280, 280, 280, 280, 260, 280, 280, 252, 288, 280, - /* 830 */ 101, 280, 264, 280, 280, 167, 280, 280, 260, 280, - /* 840 */ 280, 250, 280, 107, 280, 76, 280, 280, 280, 280, - /* 850 */ 280, 280, 280, 252, 288, 250, 101, 112, 264, 76, - /* 860 */ 280, 190, 280, 280, 260, 280, 280, 252, 288, 280, - /* 870 */ 101, 250, 264, 107, 280, 76, 280, 280, 260, 280, - /* 880 */ 280, 280, 280, 252, 288, 280, 101, 302, 264, 280, - /* 890 */ 280, 201, 280, 250, 260, 137, 222, 76, 280, 280, - /* 900 */ 280, 280, 280, 280, 280, 252, 288, 250, 101, 118, - /* 910 */ 264, 76, 280, 280, 250, 280, 260, 280, 76, 252, - /* 920 */ 288, 280, 101, 280, 264, 280, 252, 288, 280, 96, - /* 930 */ 260, 264, 250, 280, 105, 280, 76, 260, 280, 280, - /* 940 */ 280, 280, 280, 280, 252, 288, 250, 101, 117, 264, - /* 950 */ 76, 280, 280, 280, 280, 260, 280, 280, 252, 288, - /* 960 */ 280, 101, 250, 264, 124, 280, 76, 280, 280, 260, - /* 970 */ 280, 280, 280, 280, 252, 288, 250, 101, 126, 264, - /* 980 */ 76, 280, 280, 280, 280, 260, 280, 280, 252, 288, - /* 990 */ 250, 101, 147, 264, 76, 280, 280, 250, 280, 260, - /* 1000 */ 280, 76, 252, 288, 280, 101, 280, 264, 280, 300, - /* 1010 */ 301, 280, 280, 260, 264, 250, 280, 122, 280, 76, - /* 1020 */ 260, 280, 280, 280, 280, 280, 280, 252, 288, 250, - /* 1030 */ 101, 123, 264, 76, 280, 280, 280, 280, 260, 280, - /* 1040 */ 280, 252, 288, 250, 101, 146, 264, 76, 280, 280, - /* 1050 */ 280, 280, 260, 280, 280, 252, 288, 250, 101, 121, - /* 1060 */ 264, 76, 280, 280, 280, 280, 260, 280, 280, 252, - /* 1070 */ 288, 250, 101, 108, 264, 76, 280, 280, 280, 280, - /* 1080 */ 260, 280, 280, 252, 288, 280, 101, 280, 264, 280, - /* 1090 */ 280, 280, 280, 280, 260, + /* 0 */ 279, 285, 286, 5, 2, 272, 278, 10, 13, 270, + /* 10 */ 271, 3, 4, 29, 279, 285, 286, 5, 2, 272, + /* 20 */ 278, 10, 13, 270, 271, 3, 4, 188, 284, 279, + /* 30 */ 285, 286, 5, 2, 272, 278, 10, 13, 270, 271, + /* 40 */ 3, 4, 64, 178, 125, 64, 29, 31, 15, 280, + /* 50 */ 132, 15, 259, 260, 151, 259, 260, 212, 204, 70, + /* 60 */ 185, 213, 7, 242, 282, 73, 103, 74, 27, 219, + /* 70 */ 222, 139, 16, 29, 241, 160, 9, 154, 14, 32, + /* 80 */ 172, 14, 209, 181, 79, 41, 181, 66, 41, 220, + /* 90 */ 69, 231, 50, 59, 64, 50, 59, 282, 217, 163, + /* 100 */ 15, 239, 157, 262, 259, 260, 232, 26, 279, 285, + /* 110 */ 286, 5, 2, 272, 278, 10, 13, 270, 271, 3, + /* 120 */ 4, 64, 29, 160, 282, 294, 295, 15, 32, 269, + /* 130 */ 14, 259, 260, 107, 227, 181, 281, 41, 296, 69, + /* 140 */ 244, 7, 24, 64, 50, 59, 252, 18, 144, 15, + /* 150 */ 79, 165, 36, 259, 260, 9, 26, 14, 254, 290, + /* 160 */ 112, 104, 181, 266, 41, 168, 72, 231, 267, 262, + /* 170 */ 22, 50, 59, 282, 151, 160, 235, 8, 156, 14, + /* 180 */ 183, 231, 232, 218, 181, 189, 41, 252, 66, 294, + /* 190 */ 295, 79, 221, 50, 59, 64, 232, 199, 342, 277, + /* 200 */ 45, 15, 296, 224, 266, 259, 260, 252, 160, 58, + /* 210 */ 262, 79, 245, 183, 86, 203, 166, 64, 6, 159, + /* 220 */ 175, 135, 104, 15, 266, 153, 38, 259, 260, 8, + /* 230 */ 262, 14, 224, 76, 242, 273, 181, 12, 41, 169, + /* 240 */ 66, 231, 289, 69, 146, 50, 59, 6, 50, 183, + /* 250 */ 233, 32, 163, 14, 160, 174, 232, 161, 181, 183, + /* 260 */ 41, 236, 66, 206, 47, 69, 69, 50, 59, 64, + /* 270 */ 50, 50, 252, 54, 163, 15, 79, 249, 201, 259, + /* 280 */ 260, 37, 192, 44, 254, 290, 161, 98, 160, 266, + /* 290 */ 268, 64, 240, 47, 252, 262, 127, 15, 79, 46, + /* 300 */ 136, 259, 260, 32, 150, 14, 254, 290, 33, 104, + /* 310 */ 181, 266, 41, 242, 66, 18, 131, 262, 225, 50, + /* 320 */ 59, 265, 44, 345, 43, 32, 158, 14, 112, 474, + /* 330 */ 95, 211, 181, 145, 41, 193, 69, 151, 294, 295, + /* 340 */ 231, 50, 59, 64, 226, 53, 242, 69, 167, 15, + /* 350 */ 18, 296, 50, 259, 260, 232, 21, 237, 202, 121, + /* 360 */ 40, 79, 79, 112, 276, 230, 299, 300, 287, 275, + /* 370 */ 301, 288, 18, 187, 345, 34, 194, 8, 152, 14, + /* 380 */ 262, 262, 197, 37, 181, 112, 41, 274, 66, 160, + /* 390 */ 283, 160, 140, 50, 59, 261, 1, 265, 155, 114, + /* 400 */ 45, 46, 79, 40, 281, 160, 134, 276, 230, 299, + /* 410 */ 300, 287, 275, 301, 288, 141, 64, 216, 116, 242, + /* 420 */ 29, 262, 15, 43, 160, 274, 259, 260, 242, 40, + /* 430 */ 179, 18, 255, 276, 230, 299, 300, 287, 275, 301, + /* 440 */ 288, 255, 298, 160, 112, 64, 25, 160, 160, 17, + /* 450 */ 32, 15, 14, 160, 100, 259, 260, 181, 82, 64, + /* 460 */ 23, 69, 111, 168, 252, 15, 50, 59, 79, 259, + /* 470 */ 260, 282, 29, 167, 160, 160, 238, 292, 117, 32, + /* 480 */ 39, 266, 63, 231, 102, 306, 181, 262, 96, 239, + /* 490 */ 69, 106, 183, 32, 130, 50, 59, 292, 232, 292, + /* 500 */ 181, 252, 162, 207, 69, 79, 292, 242, 258, 50, + /* 510 */ 59, 183, 49, 302, 303, 252, 167, 58, 266, 79, + /* 520 */ 61, 151, 91, 200, 262, 99, 186, 196, 290, 252, + /* 530 */ 104, 57, 266, 79, 143, 292, 85, 44, 262, 20, + /* 540 */ 101, 196, 290, 273, 104, 28, 266, 242, 67, 252, + /* 550 */ 243, 58, 262, 79, 138, 293, 94, 273, 248, 257, + /* 560 */ 239, 196, 290, 149, 104, 147, 266, 242, 265, 252, + /* 570 */ 265, 58, 262, 79, 133, 239, 83, 273, 126, 250, + /* 580 */ 60, 196, 290, 214, 104, 182, 266, 242, 253, 208, + /* 590 */ 223, 242, 262, 170, 263, 292, 62, 273, 55, 77, + /* 600 */ 65, 35, 176, 252, 205, 331, 21, 79, 254, 290, + /* 610 */ 252, 104, 58, 266, 79, 251, 210, 88, 264, 262, + /* 620 */ 266, 184, 196, 290, 75, 104, 262, 266, 252, 22, + /* 630 */ 56, 137, 79, 262, 297, 84, 78, 30, 273, 68, + /* 640 */ 196, 290, 228, 104, 247, 266, 180, 71, 252, 190, + /* 650 */ 58, 262, 79, 177, 215, 90, 273, 234, 281, 42, + /* 660 */ 196, 290, 261, 104, 246, 266, 11, 255, 256, 39, + /* 670 */ 19, 262, 80, 281, 48, 252, 273, 58, 115, 79, + /* 680 */ 281, 281, 89, 281, 281, 281, 281, 196, 290, 252, + /* 690 */ 104, 58, 266, 79, 281, 281, 92, 281, 262, 281, + /* 700 */ 281, 196, 290, 273, 104, 281, 266, 252, 281, 58, + /* 710 */ 281, 79, 262, 281, 87, 281, 281, 273, 281, 196, + /* 720 */ 290, 281, 104, 281, 266, 281, 281, 252, 281, 58, + /* 730 */ 262, 79, 281, 281, 93, 273, 281, 281, 281, 196, + /* 740 */ 290, 281, 104, 281, 266, 281, 281, 281, 281, 281, + /* 750 */ 262, 173, 281, 281, 62, 273, 51, 77, 65, 281, + /* 760 */ 281, 281, 281, 281, 281, 281, 254, 290, 281, 104, + /* 770 */ 281, 266, 281, 281, 281, 281, 281, 262, 171, 281, + /* 780 */ 281, 62, 281, 55, 77, 65, 281, 281, 252, 281, + /* 790 */ 109, 281, 79, 254, 290, 281, 104, 281, 266, 281, + /* 800 */ 254, 290, 281, 104, 262, 266, 281, 281, 281, 281, + /* 810 */ 252, 262, 109, 281, 79, 281, 281, 281, 281, 164, + /* 820 */ 305, 281, 254, 290, 281, 104, 281, 266, 281, 281, + /* 830 */ 281, 281, 281, 262, 252, 281, 110, 281, 79, 281, + /* 840 */ 281, 281, 304, 281, 281, 281, 254, 290, 252, 104, + /* 850 */ 110, 266, 79, 281, 198, 281, 281, 262, 281, 281, + /* 860 */ 254, 290, 252, 104, 110, 266, 79, 281, 291, 281, + /* 870 */ 281, 262, 281, 281, 254, 290, 281, 104, 281, 266, + /* 880 */ 281, 281, 191, 281, 252, 262, 110, 281, 79, 281, + /* 890 */ 281, 281, 281, 281, 281, 281, 254, 290, 281, 104, + /* 900 */ 281, 266, 281, 281, 195, 281, 252, 262, 123, 229, + /* 910 */ 79, 281, 281, 252, 281, 52, 81, 79, 254, 290, + /* 920 */ 281, 104, 281, 266, 281, 254, 290, 281, 104, 262, + /* 930 */ 266, 252, 281, 113, 281, 79, 262, 281, 281, 281, + /* 940 */ 281, 281, 281, 254, 290, 252, 104, 128, 266, 79, + /* 950 */ 281, 281, 281, 281, 262, 281, 281, 254, 290, 281, + /* 960 */ 104, 252, 266, 118, 281, 79, 281, 281, 262, 281, + /* 970 */ 281, 281, 281, 254, 290, 252, 104, 122, 266, 79, + /* 980 */ 281, 281, 281, 281, 262, 281, 281, 254, 290, 252, + /* 990 */ 104, 129, 266, 79, 281, 281, 281, 281, 262, 281, + /* 1000 */ 281, 254, 290, 281, 104, 252, 266, 108, 281, 79, + /* 1010 */ 281, 281, 262, 281, 281, 281, 281, 254, 290, 281, + /* 1020 */ 104, 281, 266, 252, 281, 124, 281, 79, 262, 281, + /* 1030 */ 281, 281, 281, 281, 281, 254, 290, 252, 104, 120, + /* 1040 */ 266, 79, 281, 281, 281, 281, 262, 281, 281, 254, + /* 1050 */ 290, 281, 104, 252, 266, 148, 281, 79, 281, 281, + /* 1060 */ 262, 281, 281, 281, 281, 254, 290, 252, 104, 119, + /* 1070 */ 266, 79, 281, 281, 281, 281, 262, 281, 281, 254, + /* 1080 */ 290, 252, 104, 142, 266, 79, 281, 281, 252, 281, + /* 1090 */ 262, 281, 79, 254, 290, 281, 104, 281, 266, 281, + /* 1100 */ 254, 290, 252, 105, 262, 266, 79, 281, 281, 281, + /* 1110 */ 281, 262, 281, 281, 254, 290, 281, 97, 281, 266, + /* 1120 */ 281, 281, 281, 281, 281, 262, ); static public $yy_lookahead = array( /* 0 */ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, /* 10 */ 41, 42, 43, 16, 31, 32, 33, 34, 35, 36, /* 20 */ 37, 38, 39, 40, 41, 42, 43, 58, 45, 31, /* 30 */ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - /* 40 */ 42, 43, 10, 45, 48, 10, 16, 50, 16, 52, + /* 40 */ 42, 43, 10, 45, 84, 10, 16, 50, 16, 52, /* 50 */ 79, 16, 20, 21, 83, 20, 21, 1, 2, 3, - /* 60 */ 4, 5, 30, 92, 67, 9, 46, 11, 48, 13, - /* 70 */ 14, 15, 16, 72, 73, 74, 44, 83, 46, 44, - /* 80 */ 50, 46, 47, 51, 64, 53, 51, 55, 53, 59, + /* 60 */ 4, 5, 30, 92, 67, 9, 77, 11, 56, 13, + /* 70 */ 14, 15, 16, 16, 1, 63, 44, 17, 46, 44, + /* 80 */ 78, 46, 47, 51, 82, 53, 51, 55, 53, 17, /* 90 */ 55, 1, 60, 61, 10, 60, 61, 67, 8, 67, - /* 100 */ 16, 107, 67, 78, 20, 21, 16, 82, 31, 32, + /* 100 */ 16, 112, 67, 101, 20, 21, 16, 50, 31, 32, /* 110 */ 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - /* 120 */ 43, 10, 97, 53, 54, 59, 101, 16, 44, 16, - /* 130 */ 46, 20, 21, 67, 1, 51, 66, 53, 100, 55, - /* 140 */ 58, 30, 46, 10, 60, 61, 78, 65, 80, 16, - /* 150 */ 82, 67, 1, 20, 21, 44, 5, 46, 90, 91, - /* 160 */ 64, 93, 51, 95, 53, 104, 55, 16, 55, 101, - /* 170 */ 48, 60, 61, 60, 44, 56, 17, 44, 67, 46, - /* 180 */ 67, 1, 63, 16, 51, 63, 53, 78, 55, 1, - /* 190 */ 68, 82, 12, 60, 61, 10, 16, 83, 78, 90, - /* 200 */ 67, 16, 82, 1, 95, 20, 21, 78, 92, 80, - /* 210 */ 101, 82, 53, 54, 85, 86, 87, 10, 16, 90, - /* 220 */ 91, 101, 93, 16, 95, 66, 59, 20, 21, 44, - /* 230 */ 101, 46, 1, 1, 67, 106, 51, 17, 53, 99, - /* 240 */ 55, 68, 102, 55, 104, 60, 61, 16, 60, 16, - /* 250 */ 78, 44, 67, 46, 82, 67, 63, 49, 51, 47, - /* 260 */ 53, 68, 55, 19, 44, 53, 54, 60, 61, 10, - /* 270 */ 50, 63, 78, 101, 67, 16, 82, 57, 66, 20, - /* 280 */ 21, 56, 105, 50, 90, 91, 55, 93, 68, 95, - /* 290 */ 45, 10, 61, 62, 78, 101, 80, 16, 82, 67, - /* 300 */ 67, 20, 21, 44, 100, 46, 90, 91, 63, 93, - /* 310 */ 51, 95, 53, 69, 55, 89, 55, 101, 55, 60, - /* 320 */ 61, 60, 1, 16, 1, 44, 67, 46, 67, 103, - /* 330 */ 67, 44, 51, 10, 53, 48, 55, 16, 47, 16, - /* 340 */ 56, 60, 61, 10, 57, 44, 44, 63, 67, 16, - /* 350 */ 63, 49, 17, 20, 21, 68, 65, 78, 57, 57, - /* 360 */ 18, 82, 84, 17, 22, 23, 24, 25, 26, 27, - /* 370 */ 28, 29, 44, 84, 67, 47, 55, 44, 17, 46, - /* 380 */ 101, 1, 61, 62, 51, 57, 53, 45, 55, 79, - /* 390 */ 10, 79, 64, 60, 61, 83, 16, 10, 63, 17, - /* 400 */ 67, 84, 92, 16, 92, 63, 16, 20, 21, 63, - /* 410 */ 63, 63, 18, 65, 56, 105, 22, 23, 24, 25, - /* 420 */ 26, 27, 28, 29, 63, 48, 68, 50, 88, 68, - /* 430 */ 10, 44, 77, 46, 44, 69, 16, 100, 51, 45, - /* 440 */ 20, 21, 55, 103, 100, 63, 78, 60, 61, 79, - /* 450 */ 82, 16, 79, 83, 67, 88, 78, 63, 90, 91, - /* 460 */ 82, 93, 92, 95, 44, 92, 45, 112, 90, 101, - /* 470 */ 103, 51, 79, 95, 60, 55, 83, 16, 105, 101, - /* 480 */ 60, 61, 78, 99, 80, 92, 82, 67, 104, 85, - /* 490 */ 17, 88, 77, 17, 90, 91, 78, 93, 80, 95, - /* 500 */ 82, 100, 67, 85, 103, 101, 103, 77, 90, 91, - /* 510 */ 106, 93, 51, 95, 88, 50, 55, 88, 78, 101, - /* 520 */ 80, 60, 82, 77, 106, 85, 79, 112, 67, 103, - /* 530 */ 90, 91, 103, 93, 79, 95, 78, 5, 80, 92, - /* 540 */ 82, 101, 112, 85, 68, 96, 106, 92, 90, 91, - /* 550 */ 78, 93, 80, 95, 82, 70, 88, 85, 112, 101, - /* 560 */ 111, 99, 90, 91, 106, 93, 104, 95, 78, 99, - /* 570 */ 80, 103, 82, 101, 104, 85, 79, 55, 106, 56, - /* 580 */ 90, 91, 79, 93, 67, 95, 62, 75, 67, 92, - /* 590 */ 78, 101, 80, 81, 82, 92, 106, 78, 62, 80, - /* 600 */ 44, 82, 90, 91, 85, 93, 47, 95, 45, 90, - /* 610 */ 91, 67, 93, 101, 95, 78, 67, 80, 51, 82, - /* 620 */ 101, 67, 85, 17, 60, 106, 55, 90, 91, 78, - /* 630 */ 93, 80, 95, 82, 17, 70, 85, 17, 101, 67, - /* 640 */ 67, 90, 91, 106, 93, 67, 95, 78, 17, 80, - /* 650 */ 45, 82, 101, 67, 19, 10, 55, 106, 55, 90, - /* 660 */ 91, 16, 93, 64, 95, 20, 21, 112, 75, 94, - /* 670 */ 101, 78, 102, 80, 81, 82, 97, 103, 109, 110, - /* 680 */ 55, 74, 86, 90, 91, 108, 93, 111, 95, 44, - /* 690 */ 67, 78, 76, 113, 101, 82, 51, 100, 113, 113, - /* 700 */ 55, 113, 113, 90, 75, 60, 61, 78, 95, 80, - /* 710 */ 81, 82, 67, 113, 101, 113, 113, 113, 113, 90, - /* 720 */ 91, 78, 93, 80, 95, 82, 113, 113, 85, 113, - /* 730 */ 101, 113, 113, 90, 91, 113, 93, 113, 95, 78, - /* 740 */ 113, 80, 113, 82, 101, 113, 85, 113, 113, 106, - /* 750 */ 113, 90, 91, 113, 93, 113, 95, 113, 113, 113, - /* 760 */ 113, 113, 101, 113, 113, 18, 113, 106, 113, 22, - /* 770 */ 23, 24, 25, 26, 27, 28, 29, 113, 113, 78, - /* 780 */ 113, 80, 113, 82, 113, 113, 113, 113, 113, 113, - /* 790 */ 113, 90, 91, 113, 93, 113, 95, 113, 113, 98, - /* 800 */ 113, 78, 101, 80, 81, 82, 113, 113, 113, 113, - /* 810 */ 63, 113, 113, 90, 91, 78, 93, 80, 95, 82, - /* 820 */ 113, 113, 113, 113, 101, 113, 113, 90, 91, 113, - /* 830 */ 93, 113, 95, 113, 113, 98, 113, 113, 101, 113, - /* 840 */ 113, 78, 113, 80, 113, 82, 113, 113, 113, 113, - /* 850 */ 113, 113, 113, 90, 91, 78, 93, 80, 95, 82, - /* 860 */ 113, 98, 113, 113, 101, 113, 113, 90, 91, 113, - /* 870 */ 93, 78, 95, 80, 113, 82, 113, 113, 101, 113, - /* 880 */ 113, 113, 113, 90, 91, 113, 93, 110, 95, 113, - /* 890 */ 113, 98, 113, 78, 101, 80, 81, 82, 113, 113, - /* 900 */ 113, 113, 113, 113, 113, 90, 91, 78, 93, 80, - /* 910 */ 95, 82, 113, 113, 78, 113, 101, 113, 82, 90, - /* 920 */ 91, 113, 93, 113, 95, 113, 90, 91, 113, 93, - /* 930 */ 101, 95, 78, 113, 80, 113, 82, 101, 113, 113, - /* 940 */ 113, 113, 113, 113, 90, 91, 78, 93, 80, 95, - /* 950 */ 82, 113, 113, 113, 113, 101, 113, 113, 90, 91, - /* 960 */ 113, 93, 78, 95, 80, 113, 82, 113, 113, 101, - /* 970 */ 113, 113, 113, 113, 90, 91, 78, 93, 80, 95, - /* 980 */ 82, 113, 113, 113, 113, 101, 113, 113, 90, 91, - /* 990 */ 78, 93, 80, 95, 82, 113, 113, 78, 113, 101, - /* 1000 */ 113, 82, 90, 91, 113, 93, 113, 95, 113, 90, - /* 1010 */ 91, 113, 113, 101, 95, 78, 113, 80, 113, 82, - /* 1020 */ 101, 113, 113, 113, 113, 113, 113, 90, 91, 78, - /* 1030 */ 93, 80, 95, 82, 113, 113, 113, 113, 101, 113, - /* 1040 */ 113, 90, 91, 78, 93, 80, 95, 82, 113, 113, - /* 1050 */ 113, 113, 101, 113, 113, 90, 91, 78, 93, 80, - /* 1060 */ 95, 82, 113, 113, 113, 113, 101, 113, 113, 90, - /* 1070 */ 91, 78, 93, 80, 95, 82, 113, 113, 113, 113, - /* 1080 */ 101, 113, 113, 90, 91, 113, 93, 113, 95, 113, - /* 1090 */ 113, 113, 113, 113, 101, + /* 120 */ 43, 10, 16, 63, 67, 53, 54, 16, 44, 17, + /* 130 */ 46, 20, 21, 100, 1, 51, 103, 53, 66, 55, + /* 140 */ 67, 30, 16, 10, 60, 61, 78, 44, 80, 16, + /* 150 */ 82, 67, 49, 20, 21, 44, 50, 46, 90, 91, + /* 160 */ 57, 93, 51, 95, 53, 59, 55, 1, 104, 101, + /* 170 */ 44, 60, 61, 67, 83, 63, 10, 44, 67, 46, + /* 180 */ 68, 1, 16, 47, 51, 55, 53, 78, 55, 53, + /* 190 */ 54, 82, 12, 60, 61, 10, 16, 67, 17, 90, + /* 200 */ 67, 16, 66, 1, 95, 20, 21, 78, 63, 80, + /* 210 */ 101, 82, 1, 68, 85, 86, 87, 10, 16, 90, + /* 220 */ 91, 79, 93, 16, 95, 83, 16, 20, 21, 44, + /* 230 */ 101, 46, 1, 52, 92, 106, 51, 58, 53, 48, + /* 240 */ 55, 1, 17, 55, 65, 60, 61, 16, 60, 68, + /* 250 */ 10, 44, 67, 46, 63, 67, 16, 55, 51, 68, + /* 260 */ 53, 51, 55, 61, 62, 55, 55, 60, 61, 10, + /* 270 */ 60, 60, 78, 84, 67, 16, 82, 67, 67, 20, + /* 280 */ 21, 46, 59, 48, 90, 91, 55, 93, 63, 95, + /* 290 */ 67, 10, 61, 62, 78, 101, 80, 16, 82, 64, + /* 300 */ 79, 20, 21, 44, 83, 46, 90, 91, 16, 93, + /* 310 */ 51, 95, 53, 92, 55, 44, 99, 101, 47, 60, + /* 320 */ 61, 104, 48, 17, 69, 44, 67, 46, 57, 72, + /* 330 */ 73, 74, 51, 79, 53, 64, 55, 83, 53, 54, + /* 340 */ 1, 60, 61, 10, 5, 84, 92, 55, 67, 16, + /* 350 */ 44, 66, 60, 20, 21, 16, 50, 78, 78, 67, + /* 360 */ 18, 82, 82, 57, 22, 23, 24, 25, 26, 27, + /* 370 */ 28, 29, 44, 19, 68, 49, 48, 44, 17, 46, + /* 380 */ 101, 101, 67, 46, 51, 57, 53, 45, 55, 63, + /* 390 */ 89, 63, 99, 60, 61, 102, 68, 104, 78, 100, + /* 400 */ 67, 64, 82, 18, 103, 63, 79, 22, 23, 24, + /* 410 */ 25, 26, 27, 28, 29, 79, 10, 97, 100, 92, + /* 420 */ 16, 101, 16, 69, 63, 45, 20, 21, 92, 18, + /* 430 */ 45, 44, 105, 22, 23, 24, 25, 26, 27, 28, + /* 440 */ 29, 105, 47, 63, 57, 10, 56, 63, 63, 65, + /* 450 */ 44, 16, 46, 63, 77, 20, 21, 51, 67, 10, + /* 460 */ 65, 55, 88, 59, 78, 16, 60, 61, 82, 20, + /* 470 */ 21, 67, 16, 67, 63, 63, 90, 103, 100, 44, + /* 480 */ 56, 95, 88, 1, 88, 86, 51, 101, 96, 112, + /* 490 */ 55, 88, 68, 44, 79, 60, 61, 103, 16, 103, + /* 500 */ 51, 78, 67, 111, 55, 82, 103, 92, 92, 60, + /* 510 */ 61, 68, 67, 90, 91, 78, 67, 80, 95, 82, + /* 520 */ 88, 83, 85, 67, 101, 77, 76, 90, 91, 78, + /* 530 */ 93, 80, 95, 82, 79, 103, 85, 48, 101, 50, + /* 540 */ 77, 90, 91, 106, 93, 107, 95, 92, 55, 78, + /* 550 */ 67, 80, 101, 82, 79, 67, 85, 106, 62, 17, + /* 560 */ 112, 90, 91, 99, 93, 99, 95, 92, 104, 78, + /* 570 */ 104, 80, 101, 82, 79, 112, 85, 106, 79, 60, + /* 580 */ 88, 90, 91, 67, 93, 64, 95, 92, 51, 17, + /* 590 */ 17, 92, 101, 75, 60, 103, 78, 106, 80, 81, + /* 600 */ 82, 70, 67, 78, 5, 17, 50, 82, 90, 91, + /* 610 */ 78, 93, 80, 95, 82, 90, 45, 85, 67, 101, + /* 620 */ 95, 19, 90, 91, 55, 93, 101, 95, 78, 44, + /* 630 */ 80, 67, 82, 101, 45, 85, 45, 70, 106, 55, + /* 640 */ 90, 91, 17, 93, 62, 95, 67, 55, 78, 56, + /* 650 */ 80, 101, 82, 55, 47, 85, 106, 112, 103, 94, + /* 660 */ 90, 91, 102, 93, 111, 95, 108, 105, 74, 56, + /* 670 */ 44, 101, 97, 113, 100, 78, 106, 80, 100, 82, + /* 680 */ 113, 113, 85, 113, 113, 113, 113, 90, 91, 78, + /* 690 */ 93, 80, 95, 82, 113, 113, 85, 113, 101, 113, + /* 700 */ 113, 90, 91, 106, 93, 113, 95, 78, 113, 80, + /* 710 */ 113, 82, 101, 113, 85, 113, 113, 106, 113, 90, + /* 720 */ 91, 113, 93, 113, 95, 113, 113, 78, 113, 80, + /* 730 */ 101, 82, 113, 113, 85, 106, 113, 113, 113, 90, + /* 740 */ 91, 113, 93, 113, 95, 113, 113, 113, 113, 113, + /* 750 */ 101, 75, 113, 113, 78, 106, 80, 81, 82, 113, + /* 760 */ 113, 113, 113, 113, 113, 113, 90, 91, 113, 93, + /* 770 */ 113, 95, 113, 113, 113, 113, 113, 101, 75, 113, + /* 780 */ 113, 78, 113, 80, 81, 82, 113, 113, 78, 113, + /* 790 */ 80, 113, 82, 90, 91, 113, 93, 113, 95, 113, + /* 800 */ 90, 91, 113, 93, 101, 95, 113, 113, 113, 113, + /* 810 */ 78, 101, 80, 113, 82, 113, 113, 113, 113, 109, + /* 820 */ 110, 113, 90, 91, 113, 93, 113, 95, 113, 113, + /* 830 */ 113, 113, 113, 101, 78, 113, 80, 113, 82, 113, + /* 840 */ 113, 113, 110, 113, 113, 113, 90, 91, 78, 93, + /* 850 */ 80, 95, 82, 113, 98, 113, 113, 101, 113, 113, + /* 860 */ 90, 91, 78, 93, 80, 95, 82, 113, 98, 113, + /* 870 */ 113, 101, 113, 113, 90, 91, 113, 93, 113, 95, + /* 880 */ 113, 113, 98, 113, 78, 101, 80, 113, 82, 113, + /* 890 */ 113, 113, 113, 113, 113, 113, 90, 91, 113, 93, + /* 900 */ 113, 95, 113, 113, 98, 113, 78, 101, 80, 81, + /* 910 */ 82, 113, 113, 78, 113, 80, 81, 82, 90, 91, + /* 920 */ 113, 93, 113, 95, 113, 90, 91, 113, 93, 101, + /* 930 */ 95, 78, 113, 80, 113, 82, 101, 113, 113, 113, + /* 940 */ 113, 113, 113, 90, 91, 78, 93, 80, 95, 82, + /* 950 */ 113, 113, 113, 113, 101, 113, 113, 90, 91, 113, + /* 960 */ 93, 78, 95, 80, 113, 82, 113, 113, 101, 113, + /* 970 */ 113, 113, 113, 90, 91, 78, 93, 80, 95, 82, + /* 980 */ 113, 113, 113, 113, 101, 113, 113, 90, 91, 78, + /* 990 */ 93, 80, 95, 82, 113, 113, 113, 113, 101, 113, + /* 1000 */ 113, 90, 91, 113, 93, 78, 95, 80, 113, 82, + /* 1010 */ 113, 113, 101, 113, 113, 113, 113, 90, 91, 113, + /* 1020 */ 93, 113, 95, 78, 113, 80, 113, 82, 101, 113, + /* 1030 */ 113, 113, 113, 113, 113, 90, 91, 78, 93, 80, + /* 1040 */ 95, 82, 113, 113, 113, 113, 101, 113, 113, 90, + /* 1050 */ 91, 113, 93, 78, 95, 80, 113, 82, 113, 113, + /* 1060 */ 101, 113, 113, 113, 113, 90, 91, 78, 93, 80, + /* 1070 */ 95, 82, 113, 113, 113, 113, 101, 113, 113, 90, + /* 1080 */ 91, 78, 93, 80, 95, 82, 113, 113, 78, 113, + /* 1090 */ 101, 113, 82, 90, 91, 113, 93, 113, 95, 113, + /* 1100 */ 90, 91, 78, 93, 101, 95, 82, 113, 113, 113, + /* 1110 */ 113, 101, 113, 113, 90, 91, 113, 93, 113, 95, + /* 1120 */ 113, 113, 113, 113, 113, 101, ); const YY_SHIFT_USE_DFLT = -32; - const YY_SHIFT_MAX = 201; + const YY_SHIFT_MAX = 203; static public $yy_shift_ofst = array( - /* 0 */ 56, 111, 32, 133, 32, 32, 32, 32, 32, 32, - /* 10 */ 32, 32, 32, 32, 281, 281, 185, 84, 259, 84, - /* 20 */ 84, 185, 84, 259, 84, 84, 84, 84, 84, 84, - /* 30 */ 84, 84, 84, 84, 84, 84, 84, 35, 333, 207, - /* 40 */ 387, 420, 420, 645, 113, 287, 461, 188, 122, 20, - /* 50 */ 361, 261, 358, 193, 358, 193, 394, 342, 747, 321, - /* 60 */ -3, 30, 167, 380, 307, 435, 435, 476, 202, 202, - /* 70 */ 307, 377, 307, 307, 307, 202, -4, -4, 173, 173, - /* 80 */ -4, 173, -31, -17, -2, 77, 77, 77, 77, 77, - /* 90 */ 77, 77, 77, 77, 56, 231, 212, 159, 233, 323, - /* 100 */ 90, 70, 180, 151, 70, 119, 263, 348, 284, 96, - /* 110 */ 307, 307, 208, 96, 96, 96, 245, 382, 335, 96, - /* 120 */ 390, 346, 347, 347, 347, 625, 347, 347, 173, 173, - /* 130 */ -4, -4, 173, 173, 173, 623, 173, 347, 173, 225, - /* 140 */ -4, -4, 130, 173, 173, 173, 347, 347, -32, -32, - /* 150 */ -32, -32, -32, -32, 220, 328, 302, 232, 301, 244, - /* 160 */ 82, 301, 291, 301, 66, 301, 620, 421, 617, 565, - /* 170 */ 606, 564, 571, 573, 578, 603, 599, 601, 635, 631, - /* 180 */ 586, 567, 485, 522, 532, 465, 414, 473, 521, 544, - /* 190 */ 563, 559, 536, 572, 556, 524, 549, 517, 366, 523, - /* 200 */ 554, 605, + /* 0 */ 56, 111, 32, 32, 32, 32, 133, 32, 32, 32, + /* 10 */ 32, 32, 32, 32, 259, 333, 333, 207, 207, 207, + /* 20 */ 185, 185, 207, 259, 207, 207, 207, 207, 207, 207, + /* 30 */ 207, 207, 207, 207, 207, 207, 207, 35, 281, 84, + /* 40 */ 406, 449, 449, 435, 292, 328, 210, 211, 235, 191, + /* 50 */ 188, 112, 145, 424, 424, 145, 385, 342, 411, 202, + /* 60 */ -3, 106, 181, 404, 240, 489, 456, 30, 30, 30, + /* 70 */ 482, 30, 456, 482, 482, 30, 443, 443, 274, 274, + /* 80 */ 274, 443, 443, -31, -2, -17, 77, 77, 77, 77, + /* 90 */ 77, 77, 77, 77, 77, 56, 231, 136, 72, 166, + /* 100 */ 90, 339, 57, 180, 285, 285, 30, 337, 390, 326, + /* 110 */ 384, 30, 130, 361, 337, 337, 337, 337, 60, 225, + /* 120 */ 380, 126, 12, 412, 412, 613, 443, 412, 412, 412, + /* 130 */ 443, 274, 443, 443, 443, 443, 443, 626, 443, 445, + /* 140 */ 274, 443, 412, 443, 412, 443, 493, 274, 412, 274, + /* 150 */ -32, -32, -32, -32, -32, -32, 306, 271, 103, 354, + /* 160 */ 223, 73, 387, 387, 395, 387, 179, 387, 551, 516, + /* 170 */ 572, 542, 519, 573, 534, 602, 599, 535, 567, 531, + /* 180 */ 556, 521, 537, 579, 592, 598, 625, 584, 569, 564, + /* 190 */ 488, 591, 483, 315, 391, 571, 255, 607, 589, 585, + /* 200 */ 593, 582, 496, 588, ); - const YY_REDUCE_USE_DFLT = -30; - const YY_REDUCE_MAX = 153; + const YY_REDUCE_USE_DFLT = -41; + const YY_REDUCE_MAX = 155; static public $yy_reduce_ofst = array( - /* 0 */ 1, 129, 490, 512, 519, 472, 458, 404, 418, 440, - /* 10 */ 537, 551, 643, 661, 629, 593, 569, 737, 723, 763, - /* 20 */ 701, 777, 793, 815, 884, 68, 898, 868, 854, 216, - /* 30 */ 829, 937, 912, 951, 993, 965, 979, 836, 194, 368, - /* 40 */ 919, 109, 613, 378, 25, 312, 172, 120, -29, 140, - /* 50 */ 370, 279, 373, 370, 310, 393, -6, -6, -6, 449, - /* 60 */ 226, 401, 401, 415, 429, 426, 403, 447, 430, 355, - /* 70 */ 340, 384, 403, 367, 468, 446, 384, 462, 503, 497, - /* 80 */ 470, 455, 577, 577, 577, 577, 577, 577, 577, 577, - /* 90 */ 577, 577, 577, 577, 607, 576, 575, 575, 574, 555, - /* 100 */ 555, 575, 555, 555, 575, 114, 579, 114, 114, 570, - /* 110 */ 574, 574, 114, 570, 570, 570, 114, 114, 114, 570, - /* 120 */ 597, 114, 114, 114, 114, 596, 114, 114, 116, 116, - /* 130 */ 61, 61, 116, 116, 116, 616, 116, 114, 116, 177, - /* 140 */ 61, 61, 38, 116, 116, 116, 114, 114, 204, 337, - /* 150 */ 344, 317, 289, 278, + /* 0 */ 257, 129, 611, 597, 629, 649, 676, 570, 550, 451, + /* 10 */ 437, 471, 491, 532, 710, 518, 703, 770, 756, 784, + /* 20 */ 835, 828, 806, 732, 883, 945, 68, 216, 1003, 989, + /* 30 */ 897, 975, 959, 853, 867, 927, 911, 1024, 194, 1010, + /* 40 */ 423, 525, 386, 109, 320, 221, 279, 280, 293, 142, + /* 50 */ 2, -29, 254, 327, 336, -29, 438, 438, 438, 392, + /* 60 */ 301, 33, 415, 33, 448, 217, 394, 396, 374, 394, + /* 70 */ 463, 403, 432, 377, -11, 492, 475, 455, 466, 217, + /* 80 */ 464, 499, 495, 558, 558, 558, 558, 558, 558, 558, + /* 90 */ 558, 558, 558, 558, 558, 594, 553, 565, 565, 545, + /* 100 */ 545, 545, 555, 545, 565, 565, 555, 560, 91, 91, + /* 110 */ 91, 555, 575, 91, 560, 560, 560, 560, 91, 91, + /* 120 */ 91, 578, 91, 91, 91, 562, 416, 91, 91, 91, + /* 130 */ 416, 64, 416, 416, 416, 416, 416, 574, 416, 450, + /* 140 */ 64, 416, 91, 416, 91, 416, 399, 64, 91, 64, + /* 150 */ 189, -40, 378, 261, 318, 299, ); static public $yyExpectedTokens = array( /* 0 */ array(1, 2, 3, 4, 5, 9, 11, 13, 14, 15, 16, ), /* 1 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 2 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), - /* 3 */ array(1, 10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), + /* 3 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 4 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 5 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), - /* 6 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), + /* 6 */ array(1, 10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 7 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 8 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 9 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), @@ -596,12 +602,12 @@ static public $yy_action = array( /* 45 */ array(44, 48, 57, 63, 68, ), /* 46 */ array(16, 51, 55, 60, 67, ), /* 47 */ array(1, 55, 60, 67, ), - /* 48 */ array(48, 63, 68, ), - /* 49 */ array(46, 48, 64, ), - /* 50 */ array(17, 63, 68, ), - /* 51 */ array(55, 60, 67, ), - /* 52 */ array(56, 68, ), - /* 53 */ array(63, 68, ), + /* 48 */ array(46, 48, 64, ), + /* 49 */ array(48, 63, 68, ), + /* 50 */ array(55, 60, 67, ), + /* 51 */ array(17, 63, 68, ), + /* 52 */ array(63, 68, ), + /* 53 */ array(56, 68, ), /* 54 */ array(56, 68, ), /* 55 */ array(63, 68, ), /* 56 */ array(18, 22, 23, 24, 25, 26, 27, 28, 29, 45, 63, ), @@ -610,30 +616,30 @@ static public $yy_action = array( /* 59 */ array(1, 16, 55, 61, 62, ), /* 60 */ array(16, 50, 52, 67, ), /* 61 */ array(16, 50, 59, 67, ), - /* 62 */ array(16, 59, 67, ), - /* 63 */ array(1, 10, 16, ), - /* 64 */ array(16, 67, ), - /* 65 */ array(16, 67, ), + /* 62 */ array(17, 52, 68, ), + /* 63 */ array(16, 59, 67, ), + /* 64 */ array(1, 10, 16, ), + /* 65 */ array(48, 50, ), /* 66 */ array(16, 67, ), - /* 67 */ array(17, 68, ), - /* 68 */ array(1, 16, ), - /* 69 */ array(1, 16, ), - /* 70 */ array(16, 67, ), - /* 71 */ array(48, 50, ), + /* 67 */ array(16, 67, ), + /* 68 */ array(16, 67, ), + /* 69 */ array(16, 67, ), + /* 70 */ array(1, 16, ), + /* 71 */ array(16, 67, ), /* 72 */ array(16, 67, ), - /* 73 */ array(16, 67, ), - /* 74 */ array(16, 67, ), - /* 75 */ array(1, 16, ), - /* 76 */ array(48, ), - /* 77 */ array(48, ), - /* 78 */ array(68, ), - /* 79 */ array(68, ), + /* 73 */ array(1, 16, ), + /* 74 */ array(1, 16, ), + /* 75 */ array(16, 67, ), + /* 76 */ array(68, ), + /* 77 */ array(68, ), + /* 78 */ array(48, ), + /* 79 */ array(48, ), /* 80 */ array(48, ), /* 81 */ array(68, ), - /* 82 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 58, ), - /* 83 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, ), + /* 82 */ array(68, ), + /* 83 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 58, ), /* 84 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, ), - /* 85 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), + /* 85 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, ), /* 86 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), /* 87 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), /* 88 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), @@ -642,116 +648,116 @@ static public $yy_action = array( /* 91 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), /* 92 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), /* 93 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), - /* 94 */ array(1, 2, 3, 4, 5, 9, 11, 13, 14, 15, 16, ), - /* 95 */ array(1, 16, 55, 61, 62, ), - /* 96 */ array(47, 53, 54, 66, ), - /* 97 */ array(17, 53, 54, 66, ), - /* 98 */ array(16, 50, 67, ), + /* 94 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), + /* 95 */ array(1, 2, 3, 4, 5, 9, 11, 13, 14, 15, 16, ), + /* 96 */ array(1, 16, 55, 61, 62, ), + /* 97 */ array(47, 53, 54, 66, ), + /* 98 */ array(17, 53, 54, 66, ), /* 99 */ array(1, 10, 16, ), /* 100 */ array(1, 8, 16, ), - /* 101 */ array(53, 54, 66, ), - /* 102 */ array(1, 12, 16, ), - /* 103 */ array(1, 5, 16, ), + /* 101 */ array(1, 5, 16, ), + /* 102 */ array(16, 50, 67, ), + /* 103 */ array(1, 12, 16, ), /* 104 */ array(53, 54, 66, ), - /* 105 */ array(56, 63, ), - /* 106 */ array(55, 67, ), - /* 107 */ array(63, 65, ), + /* 105 */ array(53, 54, 66, ), + /* 106 */ array(16, 67, ), + /* 107 */ array(46, 64, ), /* 108 */ array(56, 63, ), - /* 109 */ array(46, 64, ), - /* 110 */ array(16, 67, ), + /* 109 */ array(49, 63, ), + /* 110 */ array(63, 65, ), /* 111 */ array(16, 67, ), - /* 112 */ array(49, 63, ), - /* 113 */ array(46, 64, ), + /* 112 */ array(55, 67, ), + /* 113 */ array(17, 63, ), /* 114 */ array(46, 64, ), /* 115 */ array(46, 64, ), - /* 116 */ array(45, 63, ), - /* 117 */ array(17, 63, ), + /* 116 */ array(46, 64, ), + /* 117 */ array(46, 64, ), /* 118 */ array(17, 63, ), - /* 119 */ array(46, 64, ), - /* 120 */ array(16, 44, ), - /* 121 */ array(17, 63, ), - /* 122 */ array(63, ), + /* 119 */ array(17, 63, ), + /* 120 */ array(45, 63, ), + /* 121 */ array(16, 44, ), + /* 122 */ array(56, 63, ), /* 123 */ array(63, ), /* 124 */ array(63, ), - /* 125 */ array(55, ), - /* 126 */ array(63, ), + /* 125 */ array(56, ), + /* 126 */ array(68, ), /* 127 */ array(63, ), - /* 128 */ array(68, ), - /* 129 */ array(68, ), - /* 130 */ array(48, ), + /* 128 */ array(63, ), + /* 129 */ array(63, ), + /* 130 */ array(68, ), /* 131 */ array(48, ), /* 132 */ array(68, ), /* 133 */ array(68, ), /* 134 */ array(68, ), - /* 135 */ array(67, ), + /* 135 */ array(68, ), /* 136 */ array(68, ), - /* 137 */ array(63, ), + /* 137 */ array(44, ), /* 138 */ array(68, ), - /* 139 */ array(56, ), + /* 139 */ array(67, ), /* 140 */ array(48, ), - /* 141 */ array(48, ), - /* 142 */ array(44, ), + /* 141 */ array(68, ), + /* 142 */ array(63, ), /* 143 */ array(68, ), - /* 144 */ array(68, ), + /* 144 */ array(63, ), /* 145 */ array(68, ), - /* 146 */ array(63, ), - /* 147 */ array(63, ), - /* 148 */ array(), - /* 149 */ array(), + /* 146 */ array(55, ), + /* 147 */ array(48, ), + /* 148 */ array(63, ), + /* 149 */ array(48, ), /* 150 */ array(), /* 151 */ array(), /* 152 */ array(), /* 153 */ array(), - /* 154 */ array(17, 44, 50, 57, 68, ), - /* 155 */ array(44, 47, 57, 64, ), - /* 156 */ array(44, 49, 57, ), - /* 157 */ array(1, 67, ), - /* 158 */ array(44, 57, ), + /* 154 */ array(), + /* 155 */ array(), + /* 156 */ array(17, 44, 50, 57, 68, ), + /* 157 */ array(44, 47, 57, 64, ), + /* 158 */ array(44, 49, 57, ), /* 159 */ array(19, 69, ), - /* 160 */ array(58, 65, ), - /* 161 */ array(44, 57, ), - /* 162 */ array(47, 65, ), + /* 160 */ array(59, 67, ), + /* 161 */ array(1, 67, ), + /* 162 */ array(44, 57, ), /* 163 */ array(44, 57, ), - /* 164 */ array(59, 67, ), + /* 164 */ array(47, 65, ), /* 165 */ array(44, 57, ), - /* 166 */ array(17, ), - /* 167 */ array(45, ), - /* 168 */ array(17, ), - /* 169 */ array(70, ), + /* 166 */ array(58, 65, ), + /* 167 */ array(44, 57, ), + /* 168 */ array(67, ), + /* 169 */ array(67, ), /* 170 */ array(17, ), - /* 171 */ array(60, ), - /* 172 */ array(55, ), - /* 173 */ array(67, ), - /* 174 */ array(67, ), - /* 175 */ array(55, ), - /* 176 */ array(64, ), - /* 177 */ array(55, ), - /* 178 */ array(19, ), - /* 179 */ array(17, ), - /* 180 */ array(67, ), - /* 181 */ array(51, ), - /* 182 */ array(70, ), - /* 183 */ array(55, ), - /* 184 */ array(5, ), - /* 185 */ array(50, ), - /* 186 */ array(60, ), - /* 187 */ array(17, ), - /* 188 */ array(67, ), + /* 171 */ array(17, ), + /* 172 */ array(60, ), + /* 173 */ array(17, ), + /* 174 */ array(60, ), + /* 175 */ array(19, ), + /* 176 */ array(5, ), + /* 177 */ array(67, ), + /* 178 */ array(70, ), + /* 179 */ array(70, ), + /* 180 */ array(50, ), + /* 181 */ array(64, ), + /* 182 */ array(51, ), + /* 183 */ array(67, ), + /* 184 */ array(55, ), + /* 185 */ array(55, ), + /* 186 */ array(17, ), + /* 187 */ array(55, ), + /* 188 */ array(55, ), /* 189 */ array(67, ), - /* 190 */ array(45, ), - /* 191 */ array(47, ), - /* 192 */ array(62, ), + /* 190 */ array(67, ), + /* 191 */ array(45, ), + /* 192 */ array(67, ), /* 193 */ array(67, ), - /* 194 */ array(44, ), - /* 195 */ array(62, ), - /* 196 */ array(67, ), - /* 197 */ array(67, ), - /* 198 */ array(69, ), - /* 199 */ array(56, ), - /* 200 */ array(67, ), - /* 201 */ array(45, ), - /* 202 */ array(), - /* 203 */ array(), + /* 194 */ array(67, ), + /* 195 */ array(45, ), + /* 196 */ array(69, ), + /* 197 */ array(47, ), + /* 198 */ array(45, ), + /* 199 */ array(44, ), + /* 200 */ array(56, ), + /* 201 */ array(62, ), + /* 202 */ array(62, ), + /* 203 */ array(17, ), /* 204 */ array(), /* 205 */ array(), /* 206 */ array(), @@ -853,39 +859,41 @@ static public $yy_action = array( /* 302 */ array(), /* 303 */ array(), /* 304 */ array(), + /* 305 */ array(), + /* 306 */ array(), ); static public $yy_default = array( - /* 0 */ 470, 470, 470, 470, 470, 470, 470, 470, 470, 470, - /* 10 */ 470, 470, 470, 470, 470, 470, 451, 410, 470, 410, - /* 20 */ 410, 470, 410, 470, 470, 470, 470, 470, 470, 470, - /* 30 */ 470, 470, 470, 470, 470, 470, 470, 470, 470, 470, - /* 40 */ 470, 470, 470, 470, 470, 339, 470, 470, 339, 375, - /* 50 */ 470, 470, 339, 339, 339, 339, 420, 420, 420, 470, - /* 60 */ 470, 385, 385, 470, 470, 470, 470, 359, 470, 470, - /* 70 */ 470, 378, 470, 470, 470, 470, 378, 370, 339, 339, - /* 80 */ 371, 339, 470, 470, 470, 424, 433, 434, 327, 430, - /* 90 */ 429, 425, 418, 426, 305, 470, 470, 470, 470, 470, - /* 100 */ 470, 347, 470, 470, 415, 470, 470, 409, 470, 402, - /* 110 */ 332, 333, 454, 383, 404, 403, 470, 470, 470, 401, - /* 120 */ 385, 470, 355, 345, 453, 470, 452, 330, 325, 320, - /* 130 */ 376, 373, 321, 323, 322, 470, 334, 340, 319, 349, - /* 140 */ 372, 398, 385, 335, 324, 326, 354, 421, 385, 385, - /* 150 */ 385, 414, 414, 414, 346, 470, 346, 470, 416, 350, - /* 160 */ 470, 346, 470, 435, 470, 470, 470, 470, 470, 470, - /* 170 */ 470, 470, 470, 470, 470, 470, 360, 470, 353, 343, - /* 180 */ 470, 470, 365, 470, 470, 342, 470, 470, 470, 470, - /* 190 */ 470, 470, 470, 470, 374, 470, 470, 470, 350, 396, - /* 200 */ 470, 470, 318, 407, 306, 393, 405, 315, 391, 317, - /* 210 */ 316, 392, 369, 463, 312, 311, 336, 310, 465, 456, - /* 220 */ 461, 314, 341, 309, 313, 389, 377, 390, 443, 468, - /* 230 */ 469, 367, 466, 366, 387, 388, 352, 467, 368, 462, - /* 240 */ 338, 411, 459, 464, 455, 457, 458, 386, 382, 351, - /* 250 */ 359, 361, 350, 413, 307, 308, 337, 362, 363, 384, - /* 260 */ 380, 381, 379, 399, 364, 400, 412, 460, 427, 428, - /* 270 */ 431, 417, 365, 442, 444, 436, 432, 445, 331, 395, - /* 280 */ 396, 329, 419, 446, 447, 441, 440, 397, 353, 408, - /* 290 */ 394, 348, 356, 357, 358, 406, 448, 437, 438, 439, - /* 300 */ 423, 422, 450, 449, 344, + /* 0 */ 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, + /* 10 */ 473, 473, 473, 473, 454, 473, 473, 413, 413, 413, + /* 20 */ 473, 473, 413, 473, 473, 473, 473, 473, 473, 473, + /* 30 */ 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, + /* 40 */ 473, 473, 473, 473, 473, 342, 473, 473, 378, 342, + /* 50 */ 473, 473, 342, 342, 342, 342, 423, 423, 423, 473, + /* 60 */ 473, 388, 362, 388, 473, 381, 473, 473, 473, 473, + /* 70 */ 473, 473, 473, 473, 473, 473, 342, 342, 374, 381, + /* 80 */ 373, 342, 342, 473, 473, 473, 330, 429, 433, 428, + /* 90 */ 421, 432, 437, 436, 427, 307, 473, 473, 473, 473, + /* 100 */ 473, 473, 473, 473, 350, 418, 336, 386, 473, 457, + /* 110 */ 412, 335, 473, 473, 405, 404, 407, 406, 473, 473, + /* 120 */ 473, 388, 473, 343, 358, 352, 326, 357, 455, 456, + /* 130 */ 321, 401, 323, 328, 338, 337, 327, 388, 322, 473, + /* 140 */ 379, 329, 424, 324, 348, 325, 473, 376, 333, 375, + /* 150 */ 417, 417, 388, 417, 388, 388, 349, 473, 349, 353, + /* 160 */ 473, 473, 438, 349, 473, 419, 473, 473, 473, 473, + /* 170 */ 473, 473, 473, 473, 473, 356, 473, 473, 473, 368, + /* 180 */ 345, 363, 473, 473, 473, 473, 473, 473, 473, 473, + /* 190 */ 473, 473, 473, 473, 473, 473, 353, 473, 473, 377, + /* 200 */ 399, 473, 473, 346, 318, 317, 372, 459, 380, 396, + /* 210 */ 410, 308, 320, 319, 339, 394, 408, 312, 395, 314, + /* 220 */ 392, 313, 315, 464, 468, 393, 316, 466, 311, 344, + /* 230 */ 447, 471, 472, 370, 469, 369, 390, 391, 355, 470, + /* 240 */ 371, 465, 341, 414, 462, 467, 458, 460, 461, 389, + /* 250 */ 385, 354, 362, 364, 353, 416, 309, 310, 340, 365, + /* 260 */ 366, 387, 383, 384, 382, 402, 367, 403, 415, 463, + /* 270 */ 430, 431, 434, 420, 368, 445, 446, 439, 435, 448, + /* 280 */ 334, 398, 399, 332, 422, 449, 450, 444, 443, 400, + /* 290 */ 356, 411, 397, 351, 359, 360, 361, 409, 451, 440, + /* 300 */ 441, 442, 426, 425, 453, 452, 347, ); /* The next thing included is series of defines which control ** various aspects of the generated parser. @@ -904,8 +912,8 @@ static public $yy_action = array( */ const YYNOCODE = 114; const YYSTACKDEPTH = 100; - const YYNSTATE = 305; - const YYNRULE = 165; + const YYNSTATE = 307; + const YYNRULE = 166; const YYERRORSYMBOL = 71; const YYERRSYMDT = 'yy0'; const YYFALLBACK = 1; @@ -1110,156 +1118,157 @@ static public $yy_action = array( /* 12 */ "template_element ::= SHORTTAGEND", /* 13 */ "template_element ::= OTHER", /* 14 */ "smartytag ::= variable attributes", - /* 15 */ "smartytag ::= expr attributes", - /* 16 */ "smartytag ::= ternary attributes", - /* 17 */ "smartytag ::= varindexed EQUAL expr attributes", - /* 18 */ "smartytag ::= varindexed EQUAL ternary attributes", - /* 19 */ "smartytag ::= ID attributes", - /* 20 */ "smartytag ::= ID PTR ID attributes", - /* 21 */ "smartytag ::= ID modifier modparameters attributes", - /* 22 */ "smartytag ::= ID SPACE ifexprs", - /* 23 */ "smartytag ::= ID SPACE statement", - /* 24 */ "smartytag ::= ID SPACE statements SEMICOLON ifexprs SEMICOLON DOLLAR varvar foraction", - /* 25 */ "foraction ::= EQUAL expr", - /* 26 */ "foraction ::= INCDEC", - /* 27 */ "smartytag ::= ID SPACE value AS DOLLAR varvar", - /* 28 */ "smartytag ::= ID SPACE array AS DOLLAR varvar", - /* 29 */ "smartyclosetag ::= ID attributes", - /* 30 */ "smartyclosetag ::= ID modifier modparameters attributes", - /* 31 */ "smartyclosetag ::= ID PTR ID", - /* 32 */ "attributes ::= attributes attribute", - /* 33 */ "attributes ::= attribute", - /* 34 */ "attributes ::=", - /* 35 */ "attribute ::= SPACE ID EQUAL expr", - /* 36 */ "attribute ::= SPACE ID EQUAL ternary", - /* 37 */ "attribute ::= SPACE ID", - /* 38 */ "statements ::= statement", - /* 39 */ "statements ::= statements COMMA statement", - /* 40 */ "statement ::= DOLLAR varvar EQUAL expr", - /* 41 */ "expr ::= ID", - /* 42 */ "expr ::= exprs", - /* 43 */ "expr ::= DOLLAR ID COLON ID", - /* 44 */ "expr ::= expr modifier modparameters", - /* 45 */ "exprs ::= value", - /* 46 */ "exprs ::= UNIMATH value", - /* 47 */ "exprs ::= exprs math value", - /* 48 */ "exprs ::= array", - /* 49 */ "ternary ::= OPENP ifexprs CLOSEP QMARK expr COLON expr", - /* 50 */ "ternary ::= OPENP expr CLOSEP QMARK expr COLON expr", - /* 51 */ "math ::= UNIMATH", - /* 52 */ "math ::= MATH", - /* 53 */ "math ::= ANDSYM", - /* 54 */ "value ::= variable", - /* 55 */ "value ::= INTEGER", - /* 56 */ "value ::= INTEGER DOT INTEGER", - /* 57 */ "value ::= BOOLEAN", - /* 58 */ "value ::= NULL", - /* 59 */ "value ::= function", - /* 60 */ "value ::= OPENP expr CLOSEP", - /* 61 */ "value ::= SINGLEQUOTE text SINGLEQUOTE", - /* 62 */ "value ::= SINGLEQUOTE SINGLEQUOTE", - /* 63 */ "value ::= QUOTE doublequoted QUOTE", - /* 64 */ "value ::= QUOTE QUOTE", - /* 65 */ "value ::= ID DOUBLECOLON method", - /* 66 */ "value ::= ID DOUBLECOLON DOLLAR ID OPENP params CLOSEP", - /* 67 */ "value ::= ID DOUBLECOLON method objectchain", - /* 68 */ "value ::= ID DOUBLECOLON DOLLAR ID OPENP params CLOSEP objectchain", - /* 69 */ "value ::= ID DOUBLECOLON ID", - /* 70 */ "value ::= ID DOUBLECOLON DOLLAR ID arrayindex", - /* 71 */ "value ::= ID DOUBLECOLON DOLLAR ID arrayindex objectchain", - /* 72 */ "value ::= LDEL smartytag RDEL", - /* 73 */ "variable ::= varindexed", - /* 74 */ "variable ::= DOLLAR varvar AT ID", - /* 75 */ "variable ::= object", - /* 76 */ "variable ::= HATCH ID HATCH", - /* 77 */ "variable ::= HATCH variable HATCH", - /* 78 */ "varindexed ::= DOLLAR varvar arrayindex", - /* 79 */ "arrayindex ::= arrayindex indexdef", - /* 80 */ "arrayindex ::=", - /* 81 */ "indexdef ::= DOT ID", - /* 82 */ "indexdef ::= DOT INTEGER", - /* 83 */ "indexdef ::= DOT variable", - /* 84 */ "indexdef ::= DOT LDEL exprs RDEL", - /* 85 */ "indexdef ::= OPENB ID CLOSEB", - /* 86 */ "indexdef ::= OPENB ID DOT ID CLOSEB", - /* 87 */ "indexdef ::= OPENB exprs CLOSEB", - /* 88 */ "indexdef ::= OPENB CLOSEB", - /* 89 */ "varvar ::= varvarele", - /* 90 */ "varvar ::= varvar varvarele", - /* 91 */ "varvarele ::= ID", - /* 92 */ "varvarele ::= LDEL expr RDEL", - /* 93 */ "object ::= varindexed objectchain", - /* 94 */ "objectchain ::= objectelement", - /* 95 */ "objectchain ::= objectchain objectelement", - /* 96 */ "objectelement ::= PTR ID arrayindex", - /* 97 */ "objectelement ::= PTR variable arrayindex", - /* 98 */ "objectelement ::= PTR LDEL expr RDEL arrayindex", - /* 99 */ "objectelement ::= PTR ID LDEL expr RDEL arrayindex", - /* 100 */ "objectelement ::= PTR method", - /* 101 */ "function ::= ID OPENP params CLOSEP", - /* 102 */ "method ::= ID OPENP params CLOSEP", - /* 103 */ "params ::= expr COMMA params", - /* 104 */ "params ::= expr", - /* 105 */ "params ::=", - /* 106 */ "modifier ::= VERT AT ID", - /* 107 */ "modifier ::= VERT ID", - /* 108 */ "modparameters ::= modparameters modparameter", - /* 109 */ "modparameters ::=", - /* 110 */ "modparameter ::= COLON exprs", - /* 111 */ "modparameter ::= COLON ID", - /* 112 */ "ifexprs ::= ifexpr", - /* 113 */ "ifexprs ::= NOT ifexprs", - /* 114 */ "ifexprs ::= OPENP ifexprs CLOSEP", - /* 115 */ "ifexpr ::= expr", - /* 116 */ "ifexpr ::= expr ifcond expr", - /* 117 */ "ifexpr ::= expr ISIN array", - /* 118 */ "ifexpr ::= expr ISIN value", - /* 119 */ "ifexpr ::= ifexprs lop ifexprs", - /* 120 */ "ifexpr ::= ifexprs ISDIVBY ifexprs", - /* 121 */ "ifexpr ::= ifexprs ISNOTDIVBY ifexprs", - /* 122 */ "ifexpr ::= ifexprs ISEVEN", - /* 123 */ "ifexpr ::= ifexprs ISNOTEVEN", - /* 124 */ "ifexpr ::= ifexprs ISEVENBY ifexprs", - /* 125 */ "ifexpr ::= ifexprs ISNOTEVENBY ifexprs", - /* 126 */ "ifexpr ::= ifexprs ISODD", - /* 127 */ "ifexpr ::= ifexprs ISNOTODD", - /* 128 */ "ifexpr ::= ifexprs ISODDBY ifexprs", - /* 129 */ "ifexpr ::= ifexprs ISNOTODDBY ifexprs", - /* 130 */ "ifexpr ::= value INSTANCEOF ID", - /* 131 */ "ifexpr ::= value INSTANCEOF value", - /* 132 */ "ifcond ::= EQUALS", - /* 133 */ "ifcond ::= NOTEQUALS", - /* 134 */ "ifcond ::= GREATERTHAN", - /* 135 */ "ifcond ::= LESSTHAN", - /* 136 */ "ifcond ::= GREATEREQUAL", - /* 137 */ "ifcond ::= LESSEQUAL", - /* 138 */ "ifcond ::= IDENTITY", - /* 139 */ "ifcond ::= NONEIDENTITY", - /* 140 */ "lop ::= LAND", - /* 141 */ "lop ::= LOR", - /* 142 */ "lop ::= LXOR", - /* 143 */ "array ::= OPENB arrayelements CLOSEB", - /* 144 */ "arrayelements ::= arrayelement", - /* 145 */ "arrayelements ::= arrayelements COMMA arrayelement", - /* 146 */ "arrayelements ::=", - /* 147 */ "arrayelement ::= expr APTR expr", - /* 148 */ "arrayelement ::= ID APTR expr", - /* 149 */ "arrayelement ::= expr", - /* 150 */ "doublequoted ::= doublequoted doublequotedcontent", - /* 151 */ "doublequoted ::= doublequotedcontent", - /* 152 */ "doublequotedcontent ::= BACKTICK ID BACKTICK", - /* 153 */ "doublequotedcontent ::= BACKTICK variable BACKTICK", - /* 154 */ "doublequotedcontent ::= DOLLAR ID", - /* 155 */ "doublequotedcontent ::= LDEL expr RDEL", - /* 156 */ "doublequotedcontent ::= LDEL smartytag RDEL", - /* 157 */ "doublequotedcontent ::= DOLLAR OTHER", - /* 158 */ "doublequotedcontent ::= LDEL OTHER", - /* 159 */ "doublequotedcontent ::= BACKTICK OTHER", - /* 160 */ "doublequotedcontent ::= OTHER", - /* 161 */ "text ::= text textelement", - /* 162 */ "text ::= textelement", - /* 163 */ "textelement ::= OTHER", - /* 164 */ "textelement ::= LDEL", + /* 15 */ "smartytag ::= variable INCDEC attributes", + /* 16 */ "smartytag ::= expr attributes", + /* 17 */ "smartytag ::= ternary attributes", + /* 18 */ "smartytag ::= varindexed EQUAL expr attributes", + /* 19 */ "smartytag ::= varindexed EQUAL ternary attributes", + /* 20 */ "smartytag ::= ID attributes", + /* 21 */ "smartytag ::= ID PTR ID attributes", + /* 22 */ "smartytag ::= ID modifier modparameters attributes", + /* 23 */ "smartytag ::= ID SPACE ifexprs", + /* 24 */ "smartytag ::= ID SPACE statement", + /* 25 */ "smartytag ::= ID SPACE statements SEMICOLON ifexprs SEMICOLON DOLLAR varvar foraction", + /* 26 */ "foraction ::= EQUAL expr", + /* 27 */ "foraction ::= INCDEC", + /* 28 */ "smartytag ::= ID SPACE value AS DOLLAR varvar", + /* 29 */ "smartytag ::= ID SPACE array AS DOLLAR varvar", + /* 30 */ "smartyclosetag ::= ID attributes", + /* 31 */ "smartyclosetag ::= ID modifier modparameters attributes", + /* 32 */ "smartyclosetag ::= ID PTR ID", + /* 33 */ "attributes ::= attributes attribute", + /* 34 */ "attributes ::= attribute", + /* 35 */ "attributes ::=", + /* 36 */ "attribute ::= SPACE ID EQUAL expr", + /* 37 */ "attribute ::= SPACE ID EQUAL ternary", + /* 38 */ "attribute ::= SPACE ID", + /* 39 */ "statements ::= statement", + /* 40 */ "statements ::= statements COMMA statement", + /* 41 */ "statement ::= DOLLAR varvar EQUAL expr", + /* 42 */ "expr ::= ID", + /* 43 */ "expr ::= exprs", + /* 44 */ "expr ::= DOLLAR ID COLON ID", + /* 45 */ "expr ::= expr modifier modparameters", + /* 46 */ "exprs ::= value", + /* 47 */ "exprs ::= UNIMATH value", + /* 48 */ "exprs ::= exprs math value", + /* 49 */ "exprs ::= array", + /* 50 */ "ternary ::= OPENP ifexprs CLOSEP QMARK expr COLON expr", + /* 51 */ "ternary ::= OPENP expr CLOSEP QMARK expr COLON expr", + /* 52 */ "math ::= UNIMATH", + /* 53 */ "math ::= MATH", + /* 54 */ "math ::= ANDSYM", + /* 55 */ "value ::= variable", + /* 56 */ "value ::= INTEGER", + /* 57 */ "value ::= INTEGER DOT INTEGER", + /* 58 */ "value ::= BOOLEAN", + /* 59 */ "value ::= NULL", + /* 60 */ "value ::= function", + /* 61 */ "value ::= OPENP expr CLOSEP", + /* 62 */ "value ::= SINGLEQUOTE text SINGLEQUOTE", + /* 63 */ "value ::= SINGLEQUOTE SINGLEQUOTE", + /* 64 */ "value ::= QUOTE doublequoted QUOTE", + /* 65 */ "value ::= QUOTE QUOTE", + /* 66 */ "value ::= ID DOUBLECOLON method", + /* 67 */ "value ::= ID DOUBLECOLON DOLLAR ID OPENP params CLOSEP", + /* 68 */ "value ::= ID DOUBLECOLON method objectchain", + /* 69 */ "value ::= ID DOUBLECOLON DOLLAR ID OPENP params CLOSEP objectchain", + /* 70 */ "value ::= ID DOUBLECOLON ID", + /* 71 */ "value ::= ID DOUBLECOLON DOLLAR ID arrayindex", + /* 72 */ "value ::= ID DOUBLECOLON DOLLAR ID arrayindex objectchain", + /* 73 */ "value ::= LDEL smartytag RDEL", + /* 74 */ "variable ::= varindexed", + /* 75 */ "variable ::= DOLLAR varvar AT ID", + /* 76 */ "variable ::= object", + /* 77 */ "variable ::= HATCH ID HATCH", + /* 78 */ "variable ::= HATCH variable HATCH", + /* 79 */ "varindexed ::= DOLLAR varvar arrayindex", + /* 80 */ "arrayindex ::= arrayindex indexdef", + /* 81 */ "arrayindex ::=", + /* 82 */ "indexdef ::= DOT ID", + /* 83 */ "indexdef ::= DOT INTEGER", + /* 84 */ "indexdef ::= DOT variable", + /* 85 */ "indexdef ::= DOT LDEL exprs RDEL", + /* 86 */ "indexdef ::= OPENB ID CLOSEB", + /* 87 */ "indexdef ::= OPENB ID DOT ID CLOSEB", + /* 88 */ "indexdef ::= OPENB exprs CLOSEB", + /* 89 */ "indexdef ::= OPENB CLOSEB", + /* 90 */ "varvar ::= varvarele", + /* 91 */ "varvar ::= varvar varvarele", + /* 92 */ "varvarele ::= ID", + /* 93 */ "varvarele ::= LDEL expr RDEL", + /* 94 */ "object ::= varindexed objectchain", + /* 95 */ "objectchain ::= objectelement", + /* 96 */ "objectchain ::= objectchain objectelement", + /* 97 */ "objectelement ::= PTR ID arrayindex", + /* 98 */ "objectelement ::= PTR variable arrayindex", + /* 99 */ "objectelement ::= PTR LDEL expr RDEL arrayindex", + /* 100 */ "objectelement ::= PTR ID LDEL expr RDEL arrayindex", + /* 101 */ "objectelement ::= PTR method", + /* 102 */ "function ::= ID OPENP params CLOSEP", + /* 103 */ "method ::= ID OPENP params CLOSEP", + /* 104 */ "params ::= expr COMMA params", + /* 105 */ "params ::= expr", + /* 106 */ "params ::=", + /* 107 */ "modifier ::= VERT AT ID", + /* 108 */ "modifier ::= VERT ID", + /* 109 */ "modparameters ::= modparameters modparameter", + /* 110 */ "modparameters ::=", + /* 111 */ "modparameter ::= COLON exprs", + /* 112 */ "modparameter ::= COLON ID", + /* 113 */ "ifexprs ::= ifexpr", + /* 114 */ "ifexprs ::= NOT ifexprs", + /* 115 */ "ifexprs ::= OPENP ifexprs CLOSEP", + /* 116 */ "ifexpr ::= expr", + /* 117 */ "ifexpr ::= expr ifcond expr", + /* 118 */ "ifexpr ::= expr ISIN array", + /* 119 */ "ifexpr ::= expr ISIN value", + /* 120 */ "ifexpr ::= ifexprs lop ifexprs", + /* 121 */ "ifexpr ::= ifexprs ISDIVBY ifexprs", + /* 122 */ "ifexpr ::= ifexprs ISNOTDIVBY ifexprs", + /* 123 */ "ifexpr ::= ifexprs ISEVEN", + /* 124 */ "ifexpr ::= ifexprs ISNOTEVEN", + /* 125 */ "ifexpr ::= ifexprs ISEVENBY ifexprs", + /* 126 */ "ifexpr ::= ifexprs ISNOTEVENBY ifexprs", + /* 127 */ "ifexpr ::= ifexprs ISODD", + /* 128 */ "ifexpr ::= ifexprs ISNOTODD", + /* 129 */ "ifexpr ::= ifexprs ISODDBY ifexprs", + /* 130 */ "ifexpr ::= ifexprs ISNOTODDBY ifexprs", + /* 131 */ "ifexpr ::= value INSTANCEOF ID", + /* 132 */ "ifexpr ::= value INSTANCEOF value", + /* 133 */ "ifcond ::= EQUALS", + /* 134 */ "ifcond ::= NOTEQUALS", + /* 135 */ "ifcond ::= GREATERTHAN", + /* 136 */ "ifcond ::= LESSTHAN", + /* 137 */ "ifcond ::= GREATEREQUAL", + /* 138 */ "ifcond ::= LESSEQUAL", + /* 139 */ "ifcond ::= IDENTITY", + /* 140 */ "ifcond ::= NONEIDENTITY", + /* 141 */ "lop ::= LAND", + /* 142 */ "lop ::= LOR", + /* 143 */ "lop ::= LXOR", + /* 144 */ "array ::= OPENB arrayelements CLOSEB", + /* 145 */ "arrayelements ::= arrayelement", + /* 146 */ "arrayelements ::= arrayelements COMMA arrayelement", + /* 147 */ "arrayelements ::=", + /* 148 */ "arrayelement ::= expr APTR expr", + /* 149 */ "arrayelement ::= ID APTR expr", + /* 150 */ "arrayelement ::= expr", + /* 151 */ "doublequoted ::= doublequoted doublequotedcontent", + /* 152 */ "doublequoted ::= doublequotedcontent", + /* 153 */ "doublequotedcontent ::= BACKTICK ID BACKTICK", + /* 154 */ "doublequotedcontent ::= BACKTICK variable BACKTICK", + /* 155 */ "doublequotedcontent ::= DOLLAR ID", + /* 156 */ "doublequotedcontent ::= LDEL expr RDEL", + /* 157 */ "doublequotedcontent ::= LDEL smartytag RDEL", + /* 158 */ "doublequotedcontent ::= DOLLAR OTHER", + /* 159 */ "doublequotedcontent ::= LDEL OTHER", + /* 160 */ "doublequotedcontent ::= BACKTICK OTHER", + /* 161 */ "doublequotedcontent ::= OTHER", + /* 162 */ "text ::= text textelement", + /* 163 */ "text ::= textelement", + /* 164 */ "textelement ::= OTHER", + /* 165 */ "textelement ::= LDEL", ); /** @@ -1639,6 +1648,7 @@ static public $yy_action = array( array( 'lhs' => 74, 'rhs' => 1 ), array( 'lhs' => 74, 'rhs' => 1 ), array( 'lhs' => 75, 'rhs' => 2 ), + array( 'lhs' => 75, 'rhs' => 3 ), array( 'lhs' => 75, 'rhs' => 2 ), array( 'lhs' => 75, 'rhs' => 2 ), array( 'lhs' => 75, 'rhs' => 4 ), @@ -1799,31 +1809,31 @@ static public $yy_action = array( */ static public $yyReduceMap = array( 0 => 0, - 45 => 0, - 54 => 0, + 46 => 0, 55 => 0, - 57 => 0, + 56 => 0, 58 => 0, 59 => 0, - 75 => 0, - 144 => 0, + 60 => 0, + 76 => 0, + 145 => 0, 1 => 1, - 42 => 1, - 48 => 1, - 51 => 1, + 43 => 1, + 49 => 1, 52 => 1, - 89 => 1, - 112 => 1, - 151 => 1, - 160 => 1, - 162 => 1, + 53 => 1, + 90 => 1, + 113 => 1, + 152 => 1, + 161 => 1, 163 => 1, 164 => 1, + 165 => 1, 2 => 2, - 79 => 2, - 150 => 2, - 158 => 2, - 161 => 2, + 80 => 2, + 151 => 2, + 159 => 2, + 162 => 2, 3 => 3, 4 => 3, 5 => 5, @@ -1836,11 +1846,11 @@ static public $yy_action = array( 12 => 12, 13 => 13, 14 => 14, - 15 => 14, 16 => 14, - 17 => 17, - 18 => 17, - 19 => 19, + 17 => 14, + 15 => 15, + 18 => 18, + 19 => 18, 20 => 20, 21 => 21, 22 => 22, @@ -1848,37 +1858,37 @@ static public $yy_action = array( 24 => 24, 25 => 25, 26 => 26, - 33 => 26, - 104 => 26, - 149 => 26, 27 => 27, + 34 => 27, + 105 => 27, + 150 => 27, 28 => 28, 29 => 29, 30 => 30, 31 => 31, 32 => 32, - 34 => 34, + 33 => 33, 35 => 35, - 36 => 35, - 37 => 37, + 36 => 36, + 37 => 36, 38 => 38, 39 => 39, 40 => 40, 41 => 41, - 43 => 43, + 42 => 42, 44 => 44, - 46 => 46, + 45 => 45, 47 => 47, - 49 => 49, - 50 => 49, - 53 => 53, - 56 => 56, - 60 => 60, + 48 => 48, + 50 => 50, + 51 => 50, + 54 => 54, + 57 => 57, 61 => 61, 62 => 62, - 64 => 62, 63 => 63, - 65 => 65, + 65 => 63, + 64 => 64, 66 => 66, 67 => 67, 68 => 68, @@ -1888,24 +1898,24 @@ static public $yy_action = array( 72 => 72, 73 => 73, 74 => 74, - 76 => 76, + 75 => 75, 77 => 77, 78 => 78, - 80 => 80, - 109 => 80, + 79 => 79, 81 => 81, + 110 => 81, 82 => 82, 83 => 83, 84 => 84, - 87 => 84, 85 => 85, + 88 => 85, 86 => 86, - 88 => 88, - 90 => 90, + 87 => 87, + 89 => 89, 91 => 91, 92 => 92, - 114 => 92, 93 => 93, + 115 => 93, 94 => 94, 95 => 95, 96 => 96, @@ -1916,30 +1926,30 @@ static public $yy_action = array( 101 => 101, 102 => 102, 103 => 103, - 105 => 105, + 104 => 104, 106 => 106, 107 => 107, 108 => 108, - 110 => 110, + 109 => 109, 111 => 111, - 113 => 113, - 115 => 115, + 112 => 112, + 114 => 114, 116 => 116, - 119 => 116, - 130 => 116, 117 => 117, + 120 => 117, + 131 => 117, 118 => 118, - 120 => 120, + 119 => 119, 121 => 121, 122 => 122, - 127 => 122, 123 => 123, - 126 => 123, + 128 => 123, 124 => 124, - 129 => 124, + 127 => 124, 125 => 125, - 128 => 125, - 131 => 131, + 130 => 125, + 126 => 126, + 129 => 126, 132 => 132, 133 => 133, 134 => 134, @@ -1952,17 +1962,18 @@ static public $yy_action = array( 141 => 141, 142 => 142, 143 => 143, - 145 => 145, + 144 => 144, 146 => 146, 147 => 147, 148 => 148, - 152 => 152, + 149 => 149, 153 => 153, 154 => 154, 155 => 155, 156 => 156, 157 => 157, - 159 => 159, + 158 => 158, + 160 => 160, ); /* Beginning here are the reduction cases. A typical example ** follows: @@ -1972,32 +1983,32 @@ static public $yy_action = array( */ #line 80 "internal.templateparser.y" function yy_r0(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 1980 "internal.templateparser.php" +#line 1991 "internal.templateparser.php" #line 86 "internal.templateparser.y" function yy_r1(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 1983 "internal.templateparser.php" +#line 1994 "internal.templateparser.php" #line 88 "internal.templateparser.y" function yy_r2(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 1986 "internal.templateparser.php" +#line 1997 "internal.templateparser.php" #line 94 "internal.templateparser.y" function yy_r3(){preg_match('/\s*/',$this->yystack[$this->yyidx + -2]->minor,$s); if ($this->compiler->has_code) { $tmp =''; foreach ($this->compiler->prefix_code as $code) {$tmp.=$code;} $this->compiler->prefix_code=array(); $this->_retvalue = $this->cacher->processNocacheCode($tmp.$s[0].$this->yystack[$this->yyidx + -1]->minor, $this->compiler,$this->nocache,true); } else { $this->_retvalue = $s[0].$this->yystack[$this->yyidx + -1]->minor;} $this->nocache=false; $this->compiler->has_variable_string = false; } -#line 1993 "internal.templateparser.php" +#line 2004 "internal.templateparser.php" #line 106 "internal.templateparser.y" function yy_r5(){ preg_match('/\s*/',$this->yystack[$this->yyidx + -2]->minor,$s); $this->_retvalue = $s[0]; } -#line 1996 "internal.templateparser.php" +#line 2007 "internal.templateparser.php" #line 109 "internal.templateparser.y" function yy_r6(){preg_match('/\s*/',$this->yystack[$this->yyidx + -2]->minor,$s); preg_match('/\s*/',$this->yystack[$this->yyidx + 0]->minor,$s2); $this->_retvalue = $s[0].$this->cacher->processNocacheCode($this->yystack[$this->yyidx + -1]->minor.$s2[0], $this->compiler,false,false); } -#line 1999 "internal.templateparser.php" +#line 2010 "internal.templateparser.php" #line 111 "internal.templateparser.y" function yy_r7(){preg_match('/\s*/',$this->yystack[$this->yyidx + 0]->minor,$s); $this->_retvalue = $s[0].$this->cacher->processNocacheCode($this->smarty->left_delimiter, $this->compiler,false,false); } -#line 2002 "internal.templateparser.php" +#line 2013 "internal.templateparser.php" #line 113 "internal.templateparser.y" function yy_r8(){preg_match('/\s*/',$this->yystack[$this->yyidx + 0]->minor,$s); $this->_retvalue = $s[0].$this->cacher->processNocacheCode($this->smarty->right_delimiter, $this->compiler,false,false); } -#line 2005 "internal.templateparser.php" +#line 2016 "internal.templateparser.php" #line 115 "internal.templateparser.y" function yy_r9(){if ($this->sec_obj->php_handling == SMARTY_PHP_PASSTHRU) { $this->_retvalue = $this->cacher->processNocacheCode("yystack[$this->yyidx + -1]->minor)."?>';?>\n", $this->compiler, false, false); @@ -2009,7 +2020,7 @@ static public $yy_action = array( $this->_retvalue = ''; } } -#line 2017 "internal.templateparser.php" +#line 2028 "internal.templateparser.php" #line 126 "internal.templateparser.y" function yy_r10(){preg_match('/\s*/',$this->yystack[$this->yyidx + -3]->minor,$s); $this->_retvalue = $s[0]; if ($this->sec_obj->php_handling == SMARTY_PHP_PASSTHRU || $this->sec_obj->php_handling == SMARTY_PHP_ALLOW) { @@ -2020,30 +2031,33 @@ static public $yy_action = array( $this->_retvalue .= ''; } } -#line 2028 "internal.templateparser.php" +#line 2039 "internal.templateparser.php" #line 137 "internal.templateparser.y" function yy_r11(){preg_match('/\s*/',$this->yystack[$this->yyidx + 0]->minor,$s); $this->_retvalue = $s[0].$this->cacher->processNocacheCode("", $this->compiler, true, true); } -#line 2031 "internal.templateparser.php" +#line 2042 "internal.templateparser.php" #line 138 "internal.templateparser.y" function yy_r12(){$this->_retvalue = $this->cacher->processNocacheCode("';?>\n", $this->compiler, true, true); } -#line 2034 "internal.templateparser.php" +#line 2045 "internal.templateparser.php" #line 140 "internal.templateparser.y" function yy_r13(){$this->_retvalue = $this->cacher->processNocacheCode($this->yystack[$this->yyidx + 0]->minor, $this->compiler,false,false); } -#line 2037 "internal.templateparser.php" +#line 2048 "internal.templateparser.php" #line 147 "internal.templateparser.y" function yy_r14(){ $this->_retvalue = $this->compiler->compileTag('print_expression',array_merge(array('value'=>$this->yystack[$this->yyidx + -1]->minor),$this->yystack[$this->yyidx + 0]->minor)); } -#line 2040 "internal.templateparser.php" -#line 152 "internal.templateparser.y" - function yy_r17(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array('value'=>$this->yystack[$this->yyidx + -1]->minor),$this->yystack[$this->yyidx + -3]->minor,$this->yystack[$this->yyidx + 0]->minor)); } -#line 2043 "internal.templateparser.php" -#line 155 "internal.templateparser.y" - function yy_r19(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor); } -#line 2046 "internal.templateparser.php" -#line 157 "internal.templateparser.y" - function yy_r20(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor,array_merge(array('object_methode'=>$this->yystack[$this->yyidx + -1]->minor),$this->yystack[$this->yyidx + 0]->minor)); } -#line 2049 "internal.templateparser.php" -#line 159 "internal.templateparser.y" - function yy_r21(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor,$this->yystack[$this->yyidx + 0]->minor).'_retvalue = $this->compiler->compileTag('print_expression',array_merge(array('value'=>$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor),$this->yystack[$this->yyidx + 0]->minor)); } +#line 2054 "internal.templateparser.php" +#line 153 "internal.templateparser.y" + function yy_r18(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array('value'=>$this->yystack[$this->yyidx + -1]->minor),$this->yystack[$this->yyidx + -3]->minor,$this->yystack[$this->yyidx + 0]->minor)); } +#line 2057 "internal.templateparser.php" +#line 156 "internal.templateparser.y" + function yy_r20(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor); } +#line 2060 "internal.templateparser.php" +#line 158 "internal.templateparser.y" + function yy_r21(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor,array_merge(array('object_methode'=>$this->yystack[$this->yyidx + -1]->minor),$this->yystack[$this->yyidx + 0]->minor)); } +#line 2063 "internal.templateparser.php" +#line 160 "internal.templateparser.y" + function yy_r22(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor,$this->yystack[$this->yyidx + 0]->minor).'smarty->plugin_handler->loadSmartyPlugin($this->yystack[$this->yyidx + -2]->minor[0],'modifier')) { $this->_retvalue .= "\$_smarty_tpl->smarty->plugin_handler->executeModifier('".$this->yystack[$this->yyidx + -2]->minor[0] . "',array(ob_get_clean()" . $this->yystack[$this->yyidx + -1]->minor. "),".$this->yystack[$this->yyidx + -2]->minor[1].");?>"; } else { @@ -2056,51 +2070,51 @@ static public $yy_action = array( } } } -#line 2064 "internal.templateparser.php" -#line 173 "internal.templateparser.y" - function yy_r22(){if (!in_array($this->yystack[$this->yyidx + -2]->minor,array('if','elseif','while'))) { +#line 2078 "internal.templateparser.php" +#line 174 "internal.templateparser.y" + function yy_r23(){if (!in_array($this->yystack[$this->yyidx + -2]->minor,array('if','elseif','while'))) { $this->compiler->trigger_template_error ("wrong syntax for tag \"" . $this->yystack[$this->yyidx + -2]->minor . "\""); } $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor,array('if condition'=>$this->yystack[$this->yyidx + 0]->minor)); } -#line 2070 "internal.templateparser.php" -#line 177 "internal.templateparser.y" - function yy_r23(){ if (!in_array($this->yystack[$this->yyidx + -2]->minor,array('if','elseif','while'))) { +#line 2084 "internal.templateparser.php" +#line 178 "internal.templateparser.y" + function yy_r24(){ if (!in_array($this->yystack[$this->yyidx + -2]->minor,array('if','elseif','while'))) { $this->compiler->trigger_template_error ("wrong syntax for tag \"" . $this->yystack[$this->yyidx + -2]->minor . "\""); } $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor,array('if condition'=>$this->yystack[$this->yyidx + 0]->minor)); } -#line 2076 "internal.templateparser.php" -#line 182 "internal.templateparser.y" - function yy_r24(){ +#line 2090 "internal.templateparser.php" +#line 183 "internal.templateparser.y" + function yy_r25(){ if ($this->yystack[$this->yyidx + -8]->minor != 'for') { $this->compiler->trigger_template_error ("wrong syntax for tag \"" . $this->yystack[$this->yyidx + -8]->minor . "\""); } $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -8]->minor,array('start'=>$this->yystack[$this->yyidx + -6]->minor,'ifexp'=>$this->yystack[$this->yyidx + -4]->minor,'varloop'=>$this->yystack[$this->yyidx + -1]->minor,'loop'=>$this->yystack[$this->yyidx + 0]->minor)); } -#line 2083 "internal.templateparser.php" -#line 187 "internal.templateparser.y" - function yy_r25(){ $this->_retvalue = '='.$this->yystack[$this->yyidx + 0]->minor; } -#line 2086 "internal.templateparser.php" +#line 2097 "internal.templateparser.php" #line 188 "internal.templateparser.y" - function yy_r26(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2089 "internal.templateparser.php" -#line 190 "internal.templateparser.y" - function yy_r27(){ - if ($this->yystack[$this->yyidx + -5]->minor != 'foreach') { - $this->compiler->trigger_template_error ("wrong syntax for tag \"" . $this->yystack[$this->yyidx + -5]->minor . "\""); - } - $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -5]->minor,array('from'=>$this->yystack[$this->yyidx + -3]->minor,'item'=>$this->yystack[$this->yyidx + 0]->minor)); } -#line 2096 "internal.templateparser.php" -#line 195 "internal.templateparser.y" - function yy_r28(){ - if ($this->yystack[$this->yyidx + -5]->minor != 'foreach') { - $this->compiler->trigger_template_error ("wrong syntax for tag \"" . $this->yystack[$this->yyidx + -5]->minor . "\""); - } - $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -5]->minor,array('from'=>$this->yystack[$this->yyidx + -3]->minor,'item'=>$this->yystack[$this->yyidx + 0]->minor)); } + function yy_r26(){ $this->_retvalue = '='.$this->yystack[$this->yyidx + 0]->minor; } +#line 2100 "internal.templateparser.php" +#line 189 "internal.templateparser.y" + function yy_r27(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } #line 2103 "internal.templateparser.php" -#line 202 "internal.templateparser.y" - function yy_r29(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor.'close',$this->yystack[$this->yyidx + 0]->minor); } -#line 2106 "internal.templateparser.php" +#line 191 "internal.templateparser.y" + function yy_r28(){ + if ($this->yystack[$this->yyidx + -5]->minor != 'foreach') { + $this->compiler->trigger_template_error ("wrong syntax for tag \"" . $this->yystack[$this->yyidx + -5]->minor . "\""); + } + $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -5]->minor,array('from'=>$this->yystack[$this->yyidx + -3]->minor,'item'=>$this->yystack[$this->yyidx + 0]->minor)); } +#line 2110 "internal.templateparser.php" +#line 196 "internal.templateparser.y" + function yy_r29(){ + if ($this->yystack[$this->yyidx + -5]->minor != 'foreach') { + $this->compiler->trigger_template_error ("wrong syntax for tag \"" . $this->yystack[$this->yyidx + -5]->minor . "\""); + } + $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -5]->minor,array('from'=>$this->yystack[$this->yyidx + -3]->minor,'item'=>$this->yystack[$this->yyidx + 0]->minor)); } +#line 2117 "internal.templateparser.php" #line 203 "internal.templateparser.y" - function yy_r30(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor.'close',$this->yystack[$this->yyidx + 0]->minor).'_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor.'close',$this->yystack[$this->yyidx + 0]->minor); } +#line 2120 "internal.templateparser.php" +#line 204 "internal.templateparser.y" + function yy_r31(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor.'close',$this->yystack[$this->yyidx + 0]->minor).'smarty->plugin_handler->loadSmartyPlugin($this->yystack[$this->yyidx + -2]->minor[0],'modifier')) { $this->_retvalue .= "\$_smarty_tpl->smarty->plugin_handler->executeModifier('".$this->yystack[$this->yyidx + -2]->minor[0] . "',array(ob_get_clean()" . $this->yystack[$this->yyidx + -1]->minor. "),".$this->yystack[$this->yyidx + -2]->minor[1].");?>"; } else { @@ -2113,39 +2127,39 @@ static public $yy_action = array( } } } -#line 2121 "internal.templateparser.php" -#line 217 "internal.templateparser.y" - function yy_r31(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor.'close',array('object_methode'=>$this->yystack[$this->yyidx + 0]->minor)); } -#line 2124 "internal.templateparser.php" -#line 224 "internal.templateparser.y" - function yy_r32(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor); } -#line 2127 "internal.templateparser.php" -#line 228 "internal.templateparser.y" - function yy_r34(){ $this->_retvalue = array(); } -#line 2130 "internal.templateparser.php" -#line 231 "internal.templateparser.y" - function yy_r35(){ $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2133 "internal.templateparser.php" -#line 233 "internal.templateparser.y" - function yy_r37(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor=>'true'); } -#line 2136 "internal.templateparser.php" -#line 238 "internal.templateparser.y" - function yy_r38(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } -#line 2139 "internal.templateparser.php" +#line 2135 "internal.templateparser.php" +#line 218 "internal.templateparser.y" + function yy_r32(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor.'close',array('object_methode'=>$this->yystack[$this->yyidx + 0]->minor)); } +#line 2138 "internal.templateparser.php" +#line 225 "internal.templateparser.y" + function yy_r33(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor); } +#line 2141 "internal.templateparser.php" +#line 229 "internal.templateparser.y" + function yy_r35(){ $this->_retvalue = array(); } +#line 2144 "internal.templateparser.php" +#line 232 "internal.templateparser.y" + function yy_r36(){ $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor); } +#line 2147 "internal.templateparser.php" +#line 234 "internal.templateparser.y" + function yy_r38(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor=>'true'); } +#line 2150 "internal.templateparser.php" #line 239 "internal.templateparser.y" - function yy_r39(){ $this->yystack[$this->yyidx + -2]->minor[]=$this->yystack[$this->yyidx + 0]->minor; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor; } -#line 2142 "internal.templateparser.php" -#line 241 "internal.templateparser.y" - function yy_r40(){ $this->_retvalue = array('var' => $this->yystack[$this->yyidx + -2]->minor, 'value'=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2145 "internal.templateparser.php" -#line 247 "internal.templateparser.y" - function yy_r41(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 2148 "internal.templateparser.php" -#line 250 "internal.templateparser.y" - function yy_r43(){$this->_retvalue = '$_smarty_tpl->getStreamVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'://'. $this->yystack[$this->yyidx + 0]->minor . '\')'; } -#line 2151 "internal.templateparser.php" + function yy_r39(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } +#line 2153 "internal.templateparser.php" +#line 240 "internal.templateparser.y" + function yy_r40(){ $this->yystack[$this->yyidx + -2]->minor[]=$this->yystack[$this->yyidx + 0]->minor; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor; } +#line 2156 "internal.templateparser.php" +#line 242 "internal.templateparser.y" + function yy_r41(){ $this->_retvalue = array('var' => $this->yystack[$this->yyidx + -2]->minor, 'value'=>$this->yystack[$this->yyidx + 0]->minor); } +#line 2159 "internal.templateparser.php" +#line 248 "internal.templateparser.y" + function yy_r42(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } +#line 2162 "internal.templateparser.php" #line 251 "internal.templateparser.y" - function yy_r44(){ + function yy_r44(){$this->_retvalue = '$_smarty_tpl->getStreamVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'://'. $this->yystack[$this->yyidx + 0]->minor . '\')'; } +#line 2165 "internal.templateparser.php" +#line 252 "internal.templateparser.y" + function yy_r45(){ if ($this->smarty->plugin_handler->loadSmartyPlugin($this->yystack[$this->yyidx + -1]->minor[0],'modifier')) { $this->_retvalue = "\$_smarty_tpl->smarty->plugin_handler->executeModifier('".$this->yystack[$this->yyidx + -1]->minor[0] . "',array(". $this->yystack[$this->yyidx + -2]->minor . $this->yystack[$this->yyidx + 0]->minor. "),".$this->yystack[$this->yyidx + -1]->minor[1].")"; } else { @@ -2158,270 +2172,270 @@ static public $yy_action = array( } } } -#line 2166 "internal.templateparser.php" -#line 268 "internal.templateparser.y" - function yy_r46(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2169 "internal.templateparser.php" -#line 270 "internal.templateparser.y" - function yy_r47(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor . $this->yystack[$this->yyidx + -1]->minor . $this->yystack[$this->yyidx + 0]->minor; } -#line 2172 "internal.templateparser.php" -#line 277 "internal.templateparser.y" - function yy_r49(){ $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.' ? '.$this->yystack[$this->yyidx + -2]->minor.' : '.$this->yystack[$this->yyidx + 0]->minor; } -#line 2175 "internal.templateparser.php" -#line 291 "internal.templateparser.y" - function yy_r53(){$this->_retvalue = ' & '; } -#line 2178 "internal.templateparser.php" -#line 297 "internal.templateparser.y" - function yy_r56(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2181 "internal.templateparser.php" -#line 305 "internal.templateparser.y" - function yy_r60(){ $this->_retvalue = "(". $this->yystack[$this->yyidx + -1]->minor .")"; } -#line 2184 "internal.templateparser.php" -#line 307 "internal.templateparser.y" - function yy_r61(){ $this->_retvalue = "'".$this->yystack[$this->yyidx + -1]->minor."'"; } -#line 2187 "internal.templateparser.php" +#line 2180 "internal.templateparser.php" +#line 269 "internal.templateparser.y" + function yy_r47(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2183 "internal.templateparser.php" +#line 271 "internal.templateparser.y" + function yy_r48(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor . $this->yystack[$this->yyidx + -1]->minor . $this->yystack[$this->yyidx + 0]->minor; } +#line 2186 "internal.templateparser.php" +#line 278 "internal.templateparser.y" + function yy_r50(){ $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.' ? '.$this->yystack[$this->yyidx + -2]->minor.' : '.$this->yystack[$this->yyidx + 0]->minor; } +#line 2189 "internal.templateparser.php" +#line 292 "internal.templateparser.y" + function yy_r54(){$this->_retvalue = ' & '; } +#line 2192 "internal.templateparser.php" +#line 298 "internal.templateparser.y" + function yy_r57(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2195 "internal.templateparser.php" +#line 306 "internal.templateparser.y" + function yy_r61(){ $this->_retvalue = "(". $this->yystack[$this->yyidx + -1]->minor .")"; } +#line 2198 "internal.templateparser.php" #line 308 "internal.templateparser.y" - function yy_r62(){ $this->_retvalue = "''"; } -#line 2190 "internal.templateparser.php" -#line 310 "internal.templateparser.y" - function yy_r63(){ $this->_retvalue = '"'.$this->yystack[$this->yyidx + -1]->minor.'"'; } -#line 2193 "internal.templateparser.php" -#line 313 "internal.templateparser.y" - function yy_r65(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2196 "internal.templateparser.php" + function yy_r62(){ $this->_retvalue = "'".$this->yystack[$this->yyidx + -1]->minor."'"; } +#line 2201 "internal.templateparser.php" +#line 309 "internal.templateparser.y" + function yy_r63(){ $this->_retvalue = "''"; } +#line 2204 "internal.templateparser.php" +#line 311 "internal.templateparser.y" + function yy_r64(){ $this->_retvalue = '"'.$this->yystack[$this->yyidx + -1]->minor.'"'; } +#line 2207 "internal.templateparser.php" #line 314 "internal.templateparser.y" - function yy_r66(){ $this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -3]->minor .'\')->value;?>'; $this->_retvalue = $this->yystack[$this->yyidx + -6]->minor.'::$_tmp'.$this->prefix_number.'('. $this->yystack[$this->yyidx + -1]->minor .')'; } -#line 2199 "internal.templateparser.php" -#line 316 "internal.templateparser.y" - function yy_r67(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor.'::'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2202 "internal.templateparser.php" + function yy_r66(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2210 "internal.templateparser.php" +#line 315 "internal.templateparser.y" + function yy_r67(){ $this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -3]->minor .'\')->value;?>'; $this->_retvalue = $this->yystack[$this->yyidx + -6]->minor.'::$_tmp'.$this->prefix_number.'('. $this->yystack[$this->yyidx + -1]->minor .')'; } +#line 2213 "internal.templateparser.php" #line 317 "internal.templateparser.y" - function yy_r68(){ $this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -4]->minor .'\')->value;?>'; $this->_retvalue = $this->yystack[$this->yyidx + -7]->minor.'::$_tmp'.$this->prefix_number.'('. $this->yystack[$this->yyidx + -2]->minor .')'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2205 "internal.templateparser.php" -#line 319 "internal.templateparser.y" - function yy_r69(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2208 "internal.templateparser.php" -#line 321 "internal.templateparser.y" - function yy_r70(){ $this->_retvalue = $this->yystack[$this->yyidx + -4]->minor.'::$'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2211 "internal.templateparser.php" -#line 323 "internal.templateparser.y" - function yy_r71(){ $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.'::$'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2214 "internal.templateparser.php" -#line 325 "internal.templateparser.y" - function yy_r72(){ $this->prefix_number++; $this->compiler->prefix_code[] = ''.$this->yystack[$this->yyidx + -1]->minor.'prefix_number.'=ob_get_clean();?>'; $this->_retvalue = '$_tmp'.$this->prefix_number; } -#line 2217 "internal.templateparser.php" -#line 334 "internal.templateparser.y" - function yy_r73(){if ($this->yystack[$this->yyidx + 0]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('internal_smarty_var',$this->yystack[$this->yyidx + 0]->minor['index']);} else { + function yy_r68(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor.'::'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2216 "internal.templateparser.php" +#line 318 "internal.templateparser.y" + function yy_r69(){ $this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -4]->minor .'\')->value;?>'; $this->_retvalue = $this->yystack[$this->yyidx + -7]->minor.'::$_tmp'.$this->prefix_number.'('. $this->yystack[$this->yyidx + -2]->minor .')'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2219 "internal.templateparser.php" +#line 320 "internal.templateparser.y" + function yy_r70(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2222 "internal.templateparser.php" +#line 322 "internal.templateparser.y" + function yy_r71(){ $this->_retvalue = $this->yystack[$this->yyidx + -4]->minor.'::$'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2225 "internal.templateparser.php" +#line 324 "internal.templateparser.y" + function yy_r72(){ $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.'::$'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2228 "internal.templateparser.php" +#line 326 "internal.templateparser.y" + function yy_r73(){ $this->prefix_number++; $this->compiler->prefix_code[] = ''.$this->yystack[$this->yyidx + -1]->minor.'prefix_number.'=ob_get_clean();?>'; $this->_retvalue = '$_tmp'.$this->prefix_number; } +#line 2231 "internal.templateparser.php" +#line 335 "internal.templateparser.y" + function yy_r74(){if ($this->yystack[$this->yyidx + 0]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('internal_smarty_var',$this->yystack[$this->yyidx + 0]->minor['index']);} else { $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + 0]->minor['var'] .')->value'.$this->yystack[$this->yyidx + 0]->minor['index']; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + 0]->minor['var'],"'"))->nocache;} } -#line 2221 "internal.templateparser.php" -#line 337 "internal.templateparser.y" - function yy_r74(){ $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->'.$this->yystack[$this->yyidx + 0]->minor; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"))->nocache; } -#line 2224 "internal.templateparser.php" -#line 341 "internal.templateparser.y" - function yy_r76(){$this->_retvalue = '$_smarty_tpl->getConfigVariable(\''. $this->yystack[$this->yyidx + -1]->minor .'\')'; } -#line 2227 "internal.templateparser.php" +#line 2235 "internal.templateparser.php" +#line 338 "internal.templateparser.y" + function yy_r75(){ $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->'.$this->yystack[$this->yyidx + 0]->minor; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"))->nocache; } +#line 2238 "internal.templateparser.php" #line 342 "internal.templateparser.y" - function yy_r77(){$this->_retvalue = '$_smarty_tpl->getConfigVariable('. $this->yystack[$this->yyidx + -1]->minor .')'; } -#line 2230 "internal.templateparser.php" -#line 345 "internal.templateparser.y" - function yy_r78(){$this->_retvalue = array('var'=>$this->yystack[$this->yyidx + -1]->minor, 'index'=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2233 "internal.templateparser.php" -#line 353 "internal.templateparser.y" - function yy_r80(){return; } -#line 2236 "internal.templateparser.php" -#line 357 "internal.templateparser.y" - function yy_r81(){ $this->_retvalue = "['". $this->yystack[$this->yyidx + 0]->minor ."']"; } -#line 2239 "internal.templateparser.php" + function yy_r77(){$this->_retvalue = '$_smarty_tpl->getConfigVariable(\''. $this->yystack[$this->yyidx + -1]->minor .'\')'; } +#line 2241 "internal.templateparser.php" +#line 343 "internal.templateparser.y" + function yy_r78(){$this->_retvalue = '$_smarty_tpl->getConfigVariable('. $this->yystack[$this->yyidx + -1]->minor .')'; } +#line 2244 "internal.templateparser.php" +#line 346 "internal.templateparser.y" + function yy_r79(){$this->_retvalue = array('var'=>$this->yystack[$this->yyidx + -1]->minor, 'index'=>$this->yystack[$this->yyidx + 0]->minor); } +#line 2247 "internal.templateparser.php" +#line 354 "internal.templateparser.y" + function yy_r81(){return; } +#line 2250 "internal.templateparser.php" #line 358 "internal.templateparser.y" - function yy_r82(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + 0]->minor ."]"; } -#line 2242 "internal.templateparser.php" + function yy_r82(){ $this->_retvalue = "['". $this->yystack[$this->yyidx + 0]->minor ."']"; } +#line 2253 "internal.templateparser.php" #line 359 "internal.templateparser.y" - function yy_r83(){ $this->_retvalue = "[".$this->yystack[$this->yyidx + 0]->minor."]"; } -#line 2245 "internal.templateparser.php" + function yy_r83(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + 0]->minor ."]"; } +#line 2256 "internal.templateparser.php" #line 360 "internal.templateparser.y" - function yy_r84(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + -1]->minor ."]"; } -#line 2248 "internal.templateparser.php" -#line 362 "internal.templateparser.y" - function yy_r85(){ $this->_retvalue = '['.$this->compiler->compileTag('internal_smarty_var','[\'section\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\'][\'index\']').']'; } -#line 2251 "internal.templateparser.php" + function yy_r84(){ $this->_retvalue = "[".$this->yystack[$this->yyidx + 0]->minor."]"; } +#line 2259 "internal.templateparser.php" +#line 361 "internal.templateparser.y" + function yy_r85(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + -1]->minor ."]"; } +#line 2262 "internal.templateparser.php" #line 363 "internal.templateparser.y" - function yy_r86(){ $this->_retvalue = '['.$this->compiler->compileTag('internal_smarty_var','[\'section\'][\''.$this->yystack[$this->yyidx + -3]->minor.'\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\']').']'; } -#line 2254 "internal.templateparser.php" -#line 367 "internal.templateparser.y" - function yy_r88(){$this->_retvalue = ''; } -#line 2257 "internal.templateparser.php" -#line 375 "internal.templateparser.y" - function yy_r90(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2260 "internal.templateparser.php" -#line 377 "internal.templateparser.y" - function yy_r91(){$this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 2263 "internal.templateparser.php" -#line 379 "internal.templateparser.y" - function yy_r92(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2266 "internal.templateparser.php" -#line 384 "internal.templateparser.y" - function yy_r93(){ if ($this->yystack[$this->yyidx + -1]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('internal_smarty_var',$this->yystack[$this->yyidx + -1]->minor['index']).$this->yystack[$this->yyidx + 0]->minor;} else { + function yy_r86(){ $this->_retvalue = '['.$this->compiler->compileTag('internal_smarty_var','[\'section\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\'][\'index\']').']'; } +#line 2265 "internal.templateparser.php" +#line 364 "internal.templateparser.y" + function yy_r87(){ $this->_retvalue = '['.$this->compiler->compileTag('internal_smarty_var','[\'section\'][\''.$this->yystack[$this->yyidx + -3]->minor.'\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\']').']'; } +#line 2268 "internal.templateparser.php" +#line 368 "internal.templateparser.y" + function yy_r89(){$this->_retvalue = ''; } +#line 2271 "internal.templateparser.php" +#line 376 "internal.templateparser.y" + function yy_r91(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2274 "internal.templateparser.php" +#line 378 "internal.templateparser.y" + function yy_r92(){$this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } +#line 2277 "internal.templateparser.php" +#line 380 "internal.templateparser.y" + function yy_r93(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2280 "internal.templateparser.php" +#line 385 "internal.templateparser.y" + function yy_r94(){ if ($this->yystack[$this->yyidx + -1]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('internal_smarty_var',$this->yystack[$this->yyidx + -1]->minor['index']).$this->yystack[$this->yyidx + 0]->minor;} else { $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -1]->minor['var'] .')->value'.$this->yystack[$this->yyidx + -1]->minor['index'].$this->yystack[$this->yyidx + 0]->minor; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + -1]->minor['var'],"'"))->nocache;} } -#line 2270 "internal.templateparser.php" -#line 387 "internal.templateparser.y" - function yy_r94(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2273 "internal.templateparser.php" -#line 389 "internal.templateparser.y" - function yy_r95(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2276 "internal.templateparser.php" -#line 391 "internal.templateparser.y" - function yy_r96(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2279 "internal.templateparser.php" +#line 2284 "internal.templateparser.php" +#line 388 "internal.templateparser.y" + function yy_r95(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } +#line 2287 "internal.templateparser.php" +#line 390 "internal.templateparser.y" + function yy_r96(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2290 "internal.templateparser.php" #line 392 "internal.templateparser.y" - function yy_r97(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2282 "internal.templateparser.php" + function yy_r97(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2293 "internal.templateparser.php" #line 393 "internal.templateparser.y" - function yy_r98(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2285 "internal.templateparser.php" + function yy_r98(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } +#line 2296 "internal.templateparser.php" #line 394 "internal.templateparser.y" - function yy_r99(){ $this->_retvalue = '->{\''.$this->yystack[$this->yyidx + -4]->minor.'\'.'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2288 "internal.templateparser.php" -#line 396 "internal.templateparser.y" - function yy_r100(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2291 "internal.templateparser.php" -#line 402 "internal.templateparser.y" - function yy_r101(){if (!$this->template->security || $this->smarty->security_handler->isTrustedPhpFunction($this->yystack[$this->yyidx + -3]->minor, $this->compiler)) { + function yy_r99(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } +#line 2299 "internal.templateparser.php" +#line 395 "internal.templateparser.y" + function yy_r100(){ $this->_retvalue = '->{\''.$this->yystack[$this->yyidx + -4]->minor.'\'.'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } +#line 2302 "internal.templateparser.php" +#line 397 "internal.templateparser.y" + function yy_r101(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2305 "internal.templateparser.php" +#line 403 "internal.templateparser.y" + function yy_r102(){if (!$this->template->security || $this->smarty->security_handler->isTrustedPhpFunction($this->yystack[$this->yyidx + -3]->minor, $this->compiler)) { if ($this->yystack[$this->yyidx + -3]->minor == 'isset' || $this->yystack[$this->yyidx + -3]->minor == 'empty' || $this->yystack[$this->yyidx + -3]->minor == 'array' || is_callable($this->yystack[$this->yyidx + -3]->minor)) { $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". $this->yystack[$this->yyidx + -1]->minor .")"; } else { $this->compiler->trigger_template_error ("unknown function \"" . $this->yystack[$this->yyidx + -3]->minor . "\""); } } } -#line 2300 "internal.templateparser.php" -#line 413 "internal.templateparser.y" - function yy_r102(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". $this->yystack[$this->yyidx + -1]->minor .")"; } -#line 2303 "internal.templateparser.php" -#line 417 "internal.templateparser.y" - function yy_r103(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.",".$this->yystack[$this->yyidx + 0]->minor; } -#line 2306 "internal.templateparser.php" -#line 421 "internal.templateparser.y" - function yy_r105(){ return; } -#line 2309 "internal.templateparser.php" -#line 426 "internal.templateparser.y" - function yy_r106(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor,'false'); } -#line 2312 "internal.templateparser.php" +#line 2314 "internal.templateparser.php" +#line 414 "internal.templateparser.y" + function yy_r103(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". $this->yystack[$this->yyidx + -1]->minor .")"; } +#line 2317 "internal.templateparser.php" +#line 418 "internal.templateparser.y" + function yy_r104(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.",".$this->yystack[$this->yyidx + 0]->minor; } +#line 2320 "internal.templateparser.php" +#line 422 "internal.templateparser.y" + function yy_r106(){ return; } +#line 2323 "internal.templateparser.php" #line 427 "internal.templateparser.y" - function yy_r107(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor,'true'); } -#line 2315 "internal.templateparser.php" -#line 439 "internal.templateparser.y" - function yy_r108(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2318 "internal.templateparser.php" -#line 443 "internal.templateparser.y" - function yy_r110(){$this->_retvalue = ','.$this->yystack[$this->yyidx + 0]->minor; } -#line 2321 "internal.templateparser.php" + function yy_r107(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor,'false'); } +#line 2326 "internal.templateparser.php" +#line 428 "internal.templateparser.y" + function yy_r108(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor,'true'); } +#line 2329 "internal.templateparser.php" +#line 440 "internal.templateparser.y" + function yy_r109(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2332 "internal.templateparser.php" #line 444 "internal.templateparser.y" - function yy_r111(){$this->_retvalue = ',\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 2324 "internal.templateparser.php" -#line 451 "internal.templateparser.y" - function yy_r113(){$this->_retvalue = '!'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2327 "internal.templateparser.php" -#line 456 "internal.templateparser.y" - function yy_r115(){$this->_retvalue =$this->yystack[$this->yyidx + 0]->minor; } -#line 2330 "internal.templateparser.php" -#line 458 "internal.templateparser.y" - function yy_r116(){$this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2333 "internal.templateparser.php" + function yy_r111(){$this->_retvalue = ','.$this->yystack[$this->yyidx + 0]->minor; } +#line 2335 "internal.templateparser.php" +#line 445 "internal.templateparser.y" + function yy_r112(){$this->_retvalue = ',\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } +#line 2338 "internal.templateparser.php" +#line 452 "internal.templateparser.y" + function yy_r114(){$this->_retvalue = '!'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2341 "internal.templateparser.php" +#line 457 "internal.templateparser.y" + function yy_r116(){$this->_retvalue =$this->yystack[$this->yyidx + 0]->minor; } +#line 2344 "internal.templateparser.php" #line 459 "internal.templateparser.y" - function yy_r117(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2336 "internal.templateparser.php" + function yy_r117(){$this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2347 "internal.templateparser.php" #line 460 "internal.templateparser.y" - function yy_r118(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.',(array)'.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2339 "internal.templateparser.php" -#line 462 "internal.templateparser.y" - function yy_r120(){$this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2342 "internal.templateparser.php" + function yy_r118(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2350 "internal.templateparser.php" +#line 461 "internal.templateparser.y" + function yy_r119(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.',(array)'.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2353 "internal.templateparser.php" #line 463 "internal.templateparser.y" - function yy_r121(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2345 "internal.templateparser.php" + function yy_r121(){$this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2356 "internal.templateparser.php" #line 464 "internal.templateparser.y" - function yy_r122(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2348 "internal.templateparser.php" + function yy_r122(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2359 "internal.templateparser.php" #line 465 "internal.templateparser.y" - function yy_r123(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2351 "internal.templateparser.php" + function yy_r123(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2362 "internal.templateparser.php" #line 466 "internal.templateparser.y" - function yy_r124(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2354 "internal.templateparser.php" + function yy_r124(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2365 "internal.templateparser.php" #line 467 "internal.templateparser.y" - function yy_r125(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2357 "internal.templateparser.php" -#line 473 "internal.templateparser.y" - function yy_r131(){$this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'='.$this->yystack[$this->yyidx + 0]->minor.';?>'; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.'$_tmp'.$this->prefix_number; } -#line 2360 "internal.templateparser.php" -#line 475 "internal.templateparser.y" - function yy_r132(){$this->_retvalue = '=='; } -#line 2363 "internal.templateparser.php" + function yy_r125(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2368 "internal.templateparser.php" +#line 468 "internal.templateparser.y" + function yy_r126(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2371 "internal.templateparser.php" +#line 474 "internal.templateparser.y" + function yy_r132(){$this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'='.$this->yystack[$this->yyidx + 0]->minor.';?>'; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.'$_tmp'.$this->prefix_number; } +#line 2374 "internal.templateparser.php" #line 476 "internal.templateparser.y" - function yy_r133(){$this->_retvalue = '!='; } -#line 2366 "internal.templateparser.php" + function yy_r133(){$this->_retvalue = '=='; } +#line 2377 "internal.templateparser.php" #line 477 "internal.templateparser.y" - function yy_r134(){$this->_retvalue = '>'; } -#line 2369 "internal.templateparser.php" + function yy_r134(){$this->_retvalue = '!='; } +#line 2380 "internal.templateparser.php" #line 478 "internal.templateparser.y" - function yy_r135(){$this->_retvalue = '<'; } -#line 2372 "internal.templateparser.php" + function yy_r135(){$this->_retvalue = '>'; } +#line 2383 "internal.templateparser.php" #line 479 "internal.templateparser.y" - function yy_r136(){$this->_retvalue = '>='; } -#line 2375 "internal.templateparser.php" + function yy_r136(){$this->_retvalue = '<'; } +#line 2386 "internal.templateparser.php" #line 480 "internal.templateparser.y" - function yy_r137(){$this->_retvalue = '<='; } -#line 2378 "internal.templateparser.php" + function yy_r137(){$this->_retvalue = '>='; } +#line 2389 "internal.templateparser.php" #line 481 "internal.templateparser.y" - function yy_r138(){$this->_retvalue = '==='; } -#line 2381 "internal.templateparser.php" + function yy_r138(){$this->_retvalue = '<='; } +#line 2392 "internal.templateparser.php" #line 482 "internal.templateparser.y" - function yy_r139(){$this->_retvalue = '!=='; } -#line 2384 "internal.templateparser.php" -#line 484 "internal.templateparser.y" - function yy_r140(){$this->_retvalue = '&&'; } -#line 2387 "internal.templateparser.php" + function yy_r139(){$this->_retvalue = '==='; } +#line 2395 "internal.templateparser.php" +#line 483 "internal.templateparser.y" + function yy_r140(){$this->_retvalue = '!=='; } +#line 2398 "internal.templateparser.php" #line 485 "internal.templateparser.y" - function yy_r141(){$this->_retvalue = '||'; } -#line 2390 "internal.templateparser.php" + function yy_r141(){$this->_retvalue = '&&'; } +#line 2401 "internal.templateparser.php" #line 486 "internal.templateparser.y" - function yy_r142(){$this->_retvalue = ' XOR '; } -#line 2393 "internal.templateparser.php" -#line 491 "internal.templateparser.y" - function yy_r143(){ $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2396 "internal.templateparser.php" -#line 493 "internal.templateparser.y" - function yy_r145(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor; } -#line 2399 "internal.templateparser.php" + function yy_r142(){$this->_retvalue = '||'; } +#line 2404 "internal.templateparser.php" +#line 487 "internal.templateparser.y" + function yy_r143(){$this->_retvalue = ' XOR '; } +#line 2407 "internal.templateparser.php" +#line 492 "internal.templateparser.y" + function yy_r144(){ $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2410 "internal.templateparser.php" #line 494 "internal.templateparser.y" - function yy_r146(){ return; } -#line 2402 "internal.templateparser.php" + function yy_r146(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor; } +#line 2413 "internal.templateparser.php" #line 495 "internal.templateparser.y" - function yy_r147(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2405 "internal.templateparser.php" + function yy_r147(){ return; } +#line 2416 "internal.templateparser.php" #line 496 "internal.templateparser.y" - function yy_r148(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2408 "internal.templateparser.php" -#line 505 "internal.templateparser.y" - function yy_r152(){$this->_retvalue = "`".$this->yystack[$this->yyidx + -1]->minor."`"; } -#line 2411 "internal.templateparser.php" + function yy_r148(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2419 "internal.templateparser.php" +#line 497 "internal.templateparser.y" + function yy_r149(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2422 "internal.templateparser.php" #line 506 "internal.templateparser.y" - function yy_r153(){$this->_retvalue = '".'.$this->yystack[$this->yyidx + -1]->minor.'."'; $this->compiler->has_variable_string = true; } -#line 2414 "internal.templateparser.php" + function yy_r153(){$this->_retvalue = "`".$this->yystack[$this->yyidx + -1]->minor."`"; } +#line 2425 "internal.templateparser.php" #line 507 "internal.templateparser.y" - function yy_r154(){$this->_retvalue = '".'.'$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + 0]->minor .'\')->value'.'."'; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + 0]->minor,"'"))->nocache; $this->compiler->has_variable_string = true; } -#line 2417 "internal.templateparser.php" + function yy_r154(){$this->_retvalue = '".'.$this->yystack[$this->yyidx + -1]->minor.'."'; $this->compiler->has_variable_string = true; } +#line 2428 "internal.templateparser.php" #line 508 "internal.templateparser.y" - function yy_r155(){preg_match('/\s*/',$this->yystack[$this->yyidx + -2]->minor,$s); $this->_retvalue = $s[0].'".('.$this->yystack[$this->yyidx + -1]->minor.')."'; $this->compiler->has_variable_string = true; } -#line 2420 "internal.templateparser.php" + function yy_r155(){$this->_retvalue = '".'.'$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + 0]->minor .'\')->value'.'."'; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + 0]->minor,"'"))->nocache; $this->compiler->has_variable_string = true; } +#line 2431 "internal.templateparser.php" #line 509 "internal.templateparser.y" - function yy_r156(){ preg_match('/\s*/',$this->yystack[$this->yyidx + -2]->minor,$s); $this->prefix_number++; $this->compiler->prefix_code[] = ''.$this->yystack[$this->yyidx + -1]->minor.'prefix_number.'=ob_get_clean();?>'; $this->_retvalue = $s[0].'".$_tmp'.$this->prefix_number.'."'; $this->compiler->has_variable_string = true; } -#line 2423 "internal.templateparser.php" + function yy_r156(){preg_match('/\s*/',$this->yystack[$this->yyidx + -2]->minor,$s); $this->_retvalue = $s[0].'".('.$this->yystack[$this->yyidx + -1]->minor.')."'; $this->compiler->has_variable_string = true; } +#line 2434 "internal.templateparser.php" #line 510 "internal.templateparser.y" - function yy_r157(){$this->_retvalue = '$'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2426 "internal.templateparser.php" -#line 512 "internal.templateparser.y" - function yy_r159(){$this->_retvalue = '`'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2429 "internal.templateparser.php" + function yy_r157(){ preg_match('/\s*/',$this->yystack[$this->yyidx + -2]->minor,$s); $this->prefix_number++; $this->compiler->prefix_code[] = ''.$this->yystack[$this->yyidx + -1]->minor.'prefix_number.'=ob_get_clean();?>'; $this->_retvalue = $s[0].'".$_tmp'.$this->prefix_number.'."'; $this->compiler->has_variable_string = true; } +#line 2437 "internal.templateparser.php" +#line 511 "internal.templateparser.y" + function yy_r158(){$this->_retvalue = '$'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2440 "internal.templateparser.php" +#line 513 "internal.templateparser.y" + function yy_r160(){$this->_retvalue = '`'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2443 "internal.templateparser.php" /** * placeholder for the left hand side in a reduce operation. @@ -2538,7 +2552,7 @@ static public $yy_action = array( $this->internalError = true; $this->yymajor = $yymajor; $this->compiler->trigger_template_error(); -#line 2547 "internal.templateparser.php" +#line 2561 "internal.templateparser.php" } /** @@ -2562,7 +2576,7 @@ static public $yy_action = array( $this->internalError = false; $this->retvalue = $this->_retvalue; //echo $this->retvalue."\n\n"; -#line 2572 "internal.templateparser.php" +#line 2586 "internal.templateparser.php" } /** diff --git a/libs/sysplugins/internal.write_file.php b/libs/sysplugins/internal.write_file.php index 490feac7..1f55a24b 100644 --- a/libs/sysplugins/internal.write_file.php +++ b/libs/sysplugins/internal.write_file.php @@ -18,7 +18,7 @@ class Smarty_Internal_Write_File { * @param string $_contents file content * @return boolean true */ - public function writeFile($_filepath, $_contents) + public static function writeFile($_filepath, $_contents) { $_dirpath = dirname($_filepath); // if subdirs, create dir structure