From 5fe16d23f013ac3673ac651d71b990c490b58eee Mon Sep 17 00:00:00 2001 From: "Uwe.Tews" Date: Wed, 21 Oct 2009 15:19:00 +0000 Subject: [PATCH] - fixed file dependency for config files - some code optimizations --- change_log.txt | 2 + libs/Smarty.class.php | 2 - .../internal.compile_config_load.php | 4 +- libs/sysplugins/internal.config.php | 6 +- libs/sysplugins/internal.template.php | 45 +- libs/sysplugins/internal.templateparser.php | 2090 ++++++++--------- libs/sysplugins/method.clear_cache.php | 12 +- libs/sysplugins/method.config_load.php | 1 - 8 files changed, 1081 insertions(+), 1081 deletions(-) diff --git a/change_log.txt b/change_log.txt index d80c4f70..84f26f8f 100644 --- a/change_log.txt +++ b/change_log.txt @@ -2,6 +2,8 @@ - added {$foo++}{$foo--} syntax - buxfix changed PHP "if (..):" to "if (..){" because of possible bad code when concenating PHP tags - autoload Smarty internal classes +- fixed file dependency for config files +- some code optimizations 10/20/2009 - check at compile time for variable filter to improve rendering speed if no filter is used diff --git a/libs/Smarty.class.php b/libs/Smarty.class.php index 81a14a12..c9e80971 100644 --- a/libs/Smarty.class.php +++ b/libs/Smarty.class.php @@ -200,8 +200,6 @@ class Smarty extends Smarty_Internal_TemplateBase { public $autoload_filters = array(); // status of filter on variable output public $variable_filter = true; - // cache resorce objects - public $cache_resource_objects = array(); // global internal smarty vars public $_smarty_vars = array(); // start time for execution time calculation diff --git a/libs/sysplugins/internal.compile_config_load.php b/libs/sysplugins/internal.compile_config_load.php index 2f51ef34..0dd1ba82 100644 --- a/libs/sysplugins/internal.compile_config_load.php +++ b/libs/sysplugins/internal.compile_config_load.php @@ -42,9 +42,9 @@ class Smarty_Internal_Compile_Config_Load extends Smarty_Internal_CompileBase { $scope = '$_smarty_tpl->parent'; } } + // create config object - $_output = "smarty->loadPlugin('Smarty_Internal_Config');"; - $_output .= "\$_config = new Smarty_Internal_Config($conf_file, \$_smarty_tpl->smarty);"; + $_output = "smarty, \$_smarty_tpl);"; $_output .= "\$_config->loadConfigVars($section, $scope); ?>"; return $_output; } diff --git a/libs/sysplugins/internal.config.php b/libs/sysplugins/internal.config.php index 7e98a9f9..6beee8e9 100644 --- a/libs/sysplugins/internal.config.php +++ b/libs/sysplugins/internal.config.php @@ -12,8 +12,9 @@ class Smarty_Internal_Config { static $config_objects = array(); - public function __construct($config_resource, $smarty) + public function __construct($config_resource, $smarty, $template = null) { + $this->template = $template; $this->smarty = $smarty; $this->config_resource = $config_resource; $this->config_resource_type = null; @@ -223,6 +224,9 @@ class Smarty_Internal_Config { */ public function loadConfigVars ($sections = null, $scope) { + if (isset($this->template)) { + $this->template->properties['file_dependency']['F' . abs(crc32($this->getConfigFilepath()))] = array($this->getConfigFilepath(), $this->getTimestamp()); + } $config_data = unserialize($this->getCompiledConfig()); // var_dump($config_data); // copy global config vars diff --git a/libs/sysplugins/internal.template.php b/libs/sysplugins/internal.template.php index 45bd3ed8..d2322b96 100644 --- a/libs/sysplugins/internal.template.php +++ b/libs/sysplugins/internal.template.php @@ -29,6 +29,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public $template_resource = null; public $resource_type = null; public $resource_name = null; + private $resource_object = null; private $usesCompiler = null; private $isEvaluated = null; private $isExisting = null; @@ -52,7 +53,8 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { private $cached_filepath = null; private $cached_timestamp = null; private $isCached = null; - public $cache_time = 0; + public $cache_time = 0; + private $cache_resource_object = null; // template variables public $tpl_vars = array(); public $parent = null; @@ -98,13 +100,12 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { // Template resource $this->template_resource = $template_resource; // parse resource name - if (!$this->parseResourceName ($template_resource, $this->resource_type, $this->resource_name, $dummy)) { + if (!$this->parseResourceName ($template_resource, $this->resource_type, $this->resource_name, $this->resource_object)) { throw new Exception ("Unable to parse resource name \"{$template_resource}\""); } // load cache resource - if (!$this->isEvaluated() && $this->caching && !isset($this->smarty->cache_resource_objects[$this->caching_type])) { - $this->smarty->loadPlugin($this->cache_resource_class); - $this->smarty->cache_resource_objects[$this->caching_type] = new $this->cache_resource_class($this->smarty); + if (!$this->isEvaluated() && $this->caching) { + $this->cache_resource_object = new $this->cache_resource_class($this->smarty); } } @@ -118,7 +119,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function getTemplateFilepath () { return $this->template_filepath === null ? - $this->template_filepath = $this->smarty->resource_objects[$this->resource_type]->getTemplateFilepath($this) : + $this->template_filepath = $this->resource_object->getTemplateFilepath($this) : $this->template_filepath; } @@ -132,7 +133,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function getTemplateTimestamp () { return $this->template_timestamp === null ? - $this->template_timestamp = $this->smarty->resource_objects[$this->resource_type]->getTemplateTimestamp($this) : + $this->template_timestamp = $this->resource_object->getTemplateTimestamp($this) : $this->template_timestamp; } @@ -146,7 +147,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function getTemplateSource () { if ($this->template_source === null) { - if (!$this->smarty->resource_objects[$this->resource_type]->getTemplateSource($this)) { + if (!$this->resource_object->getTemplateSource($this)) { throw new Exception("Unable to read template {$this->resource_type} '{$this->resource_name}'"); } } @@ -163,7 +164,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function isExisting ($error = false) { if ($this->isExisting === null) { - $this->isExisting = $this->smarty->resource_objects[$this->resource_type]->isExisting($this); + $this->isExisting = $this->resource_object->isExisting($this); } if (!$this->isExisting && $error) { throw new Exception("Unable to load template {$this->resource_type} '{$this->resource_name}'"); @@ -180,7 +181,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function usesCompiler () { return $this->usesCompiler === null ? - $this->usesCompiler = $this->smarty->resource_objects[$this->resource_type]->usesCompiler() : + $this->usesCompiler = $this->resource_object->usesCompiler() : $this->usesCompiler; } @@ -194,7 +195,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function isEvaluated () { return $this->isEvaluated === null ? - $this->isEvaluated = $this->smarty->resource_objects[$this->resource_type]->isEvaluated() : + $this->isEvaluated = $this->resource_object->isEvaluated() : $this->isEvaluated; } @@ -223,7 +224,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function getCompiledFilepath () { return $this->compiled_filepath === null ? - ($this->compiled_filepath = !$this->isEvaluated() ? $this->smarty->resource_objects[$this->resource_type]->getCompiledFilepath($this) : false) : + ($this->compiled_filepath = !$this->isEvaluated() ? $this->resource_object->getCompiledFilepath($this) : false) : $this->compiled_filepath; } @@ -275,8 +276,8 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { // compile template if (!is_object($this->compiler_object)) { // load compiler - $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); + $this->smarty->loadPlugin($this->resource_object->compiler_class); + $this->compiler_object = new $this->resource_object->compiler_class($this->resource_object->template_lexer_class, $this->resource_object->template_parser_class, $this->smarty); // load cacher if ($this->caching) { $this->smarty->loadPlugin($this->cacher_class); @@ -310,7 +311,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function getCachedFilepath () { return $this->cached_filepath === null ? - $this->cached_filepath = ($this->isEvaluated() || !$this->caching) ? false : $this->smarty->cache_resource_objects[$this->caching_type]->getCachedFilepath($this) : + $this->cached_filepath = ($this->isEvaluated() || !$this->caching) ? false : $this->cache_resource_object->getCachedFilepath($this) : $this->cached_filepath; } @@ -324,7 +325,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function getCachedTimestamp () { return $this->cached_timestamp === null ? - $this->cached_timestamp = ($this->isEvaluated() || !$this->caching) ? false : $this->smarty->cache_resource_objects[$this->caching_type]->getCachedTimestamp($this) : + $this->cached_timestamp = ($this->isEvaluated() || !$this->caching) ? false : $this->cache_resource_object->getCachedTimestamp($this) : $this->cached_timestamp; } @@ -336,7 +337,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { public function getCachedContent () { return $this->rendered_content === null ? - $this->rendered_content = ($this->isEvaluated() || !$this->caching) ? false : $this->smarty->cache_resource_objects[$this->caching_type]->getCachedContents($this) : + $this->rendered_content = ($this->isEvaluated() || !$this->caching) ? false : $this->cache_resource_object->getCachedContents($this) : $this->rendered_content; } @@ -347,7 +348,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { { // build file dependency string $this->properties['cache_lifetime'] = $this->cache_lifetime; - return ($this->isEvaluated() || !$this->caching) ? false : $this->smarty->cache_resource_objects[$this->caching_type]->writeCachedContent($this, $this->createPropertyHeader() . $this->rendered_content); + return ($this->isEvaluated() || !$this->caching) ? false : $this->cache_resource_object->writeCachedContent($this, $this->createPropertyHeader() . $this->rendered_content); } /** @@ -367,7 +368,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { } if (($this->caching == SMARTY_CACHING_LIVETIME_SAVED || ($this->caching == SMARTY_CACHING_LIFETIME_CURRENT && (time() <= ($this->getCachedTimestamp() + $this->cache_lifetime) || $this->cache_lifetime < 0)))) { $_start_time = $this->_get_time(); - $this->rendered_content = $this->smarty->cache_resource_objects[$this->caching_type]->getCachedContents($this); + $this->rendered_content = $this->cache_resource_object->getCachedContents($this); $this->cache_time += $this->_get_time() - $_start_time; if ($this->caching == SMARTY_CACHING_LIVETIME_SAVED && $this->properties['cache_lifetime'] >0 && (time() > ($this->getCachedTimestamp() + $this->properties['cache_lifetime']))) { $this->rendered_content = null; @@ -446,10 +447,10 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { } } } else { - if (is_callable(array($this->smarty->resource_objects[$this->resource_type], 'renderUncompiled'))) { + if (is_callable(array($this->resource_object, 'renderUncompiled'))) { $_start_time = $this->_get_time(); ob_start(); - $this->smarty->resource_objects[$this->resource_type]->renderUncompiled($this); + $this->resource_object->renderUncompiled($this); } else { throw new Exception("Resource '$this->resource_type' must have 'renderUncompiled' methode"); } @@ -468,7 +469,7 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { // write rendered template $this->writeCachedContent($this); // cache file may contain nocache code. read it back for processing - $this->rendered_content = $this->smarty->cache_resource_objects[$this->caching_type]->getCachedContents($this); + $this->rendered_content = $this->cache_resource_object->getCachedContents($this); } } diff --git a/libs/sysplugins/internal.templateparser.php b/libs/sysplugins/internal.templateparser.php index ab26ceac..da627830 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 = 475; - const YY_ACCEPT_ACTION = 474; - const YY_ERROR_ACTION = 473; + const YY_NO_ACTION = 481; + const YY_ACCEPT_ACTION = 480; + const YY_ERROR_ACTION = 479; /* 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,290 +277,282 @@ 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 = 1126; + const YY_SZ_ACTTAB = 1085; static public $yy_action = array( - /* 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, + /* 0 */ 276, 282, 283, 8, 11, 277, 274, 7, 12, 280, + /* 10 */ 281, 4, 3, 28, 276, 282, 283, 8, 11, 277, + /* 20 */ 274, 7, 12, 280, 281, 4, 3, 183, 173, 276, + /* 30 */ 282, 283, 8, 11, 277, 274, 7, 12, 280, 281, + /* 40 */ 4, 3, 62, 289, 124, 62, 28, 24, 73, 291, + /* 50 */ 170, 73, 254, 255, 78, 254, 255, 213, 210, 65, + /* 60 */ 178, 214, 5, 69, 287, 76, 297, 74, 50, 226, + /* 70 */ 227, 127, 2, 271, 182, 176, 13, 250, 14, 23, + /* 80 */ 25, 14, 220, 207, 17, 40, 207, 67, 40, 192, + /* 90 */ 69, 240, 50, 58, 62, 50, 58, 287, 228, 166, + /* 100 */ 73, 128, 158, 153, 254, 255, 241, 78, 276, 282, + /* 110 */ 283, 8, 11, 277, 274, 7, 12, 280, 281, 4, + /* 120 */ 3, 232, 222, 347, 42, 184, 271, 62, 23, 78, + /* 130 */ 62, 262, 161, 73, 18, 207, 73, 254, 255, 69, + /* 140 */ 254, 255, 311, 249, 50, 58, 10, 5, 271, 62, + /* 150 */ 217, 167, 28, 125, 38, 73, 244, 245, 258, 254, + /* 160 */ 255, 13, 150, 14, 23, 270, 14, 263, 207, 246, + /* 170 */ 40, 207, 64, 40, 171, 67, 131, 50, 58, 26, + /* 180 */ 50, 58, 350, 23, 157, 14, 25, 45, 161, 265, + /* 190 */ 207, 62, 40, 69, 67, 244, 245, 73, 50, 50, + /* 200 */ 58, 254, 255, 287, 16, 264, 166, 20, 246, 16, + /* 210 */ 62, 28, 122, 62, 28, 22, 73, 109, 51, 73, + /* 220 */ 254, 255, 109, 254, 255, 9, 16, 14, 240, 190, + /* 230 */ 206, 43, 207, 350, 40, 141, 67, 252, 33, 109, + /* 240 */ 263, 50, 58, 241, 23, 161, 14, 23, 166, 14, + /* 250 */ 1, 207, 161, 40, 207, 69, 40, 192, 69, 22, + /* 260 */ 50, 58, 287, 50, 58, 287, 62, 163, 336, 36, + /* 270 */ 167, 189, 73, 57, 230, 78, 254, 255, 89, 202, + /* 280 */ 162, 189, 240, 165, 180, 78, 105, 44, 256, 15, + /* 290 */ 43, 238, 19, 253, 271, 62, 35, 241, 256, 279, + /* 300 */ 9, 73, 14, 161, 271, 254, 255, 207, 16, 40, + /* 310 */ 189, 67, 16, 34, 78, 216, 50, 58, 480, 96, + /* 320 */ 211, 109, 293, 45, 206, 109, 240, 256, 160, 23, + /* 330 */ 155, 14, 198, 271, 234, 46, 207, 225, 40, 161, + /* 340 */ 67, 241, 32, 172, 1, 50, 58, 36, 151, 43, + /* 350 */ 39, 247, 159, 299, 305, 306, 303, 309, 307, 304, + /* 360 */ 310, 308, 243, 240, 39, 44, 292, 209, 305, 306, + /* 370 */ 303, 309, 307, 304, 310, 308, 161, 292, 241, 62, + /* 380 */ 30, 69, 100, 61, 161, 73, 50, 161, 266, 254, + /* 390 */ 255, 179, 78, 115, 161, 161, 39, 273, 273, 161, + /* 400 */ 305, 306, 303, 309, 307, 304, 310, 308, 223, 161, + /* 410 */ 140, 271, 186, 23, 156, 14, 69, 174, 152, 28, + /* 420 */ 207, 50, 197, 251, 69, 204, 52, 161, 177, 50, + /* 430 */ 58, 203, 171, 191, 188, 63, 167, 54, 82, 66, + /* 440 */ 118, 161, 29, 288, 244, 245, 208, 260, 300, 189, + /* 450 */ 105, 57, 256, 78, 138, 132, 93, 246, 271, 152, + /* 460 */ 240, 195, 300, 103, 105, 161, 256, 251, 251, 189, + /* 470 */ 201, 55, 271, 78, 146, 241, 85, 279, 152, 233, + /* 480 */ 259, 195, 300, 106, 105, 275, 256, 251, 72, 189, + /* 490 */ 68, 57, 271, 78, 142, 147, 95, 279, 237, 154, + /* 500 */ 47, 195, 300, 102, 105, 273, 256, 251, 251, 189, + /* 510 */ 60, 57, 271, 78, 161, 97, 90, 279, 237, 171, + /* 520 */ 259, 195, 300, 37, 105, 273, 256, 189, 171, 57, + /* 530 */ 224, 78, 271, 134, 88, 171, 230, 279, 237, 195, + /* 540 */ 300, 189, 105, 56, 256, 78, 251, 59, 84, 152, + /* 550 */ 271, 15, 101, 195, 300, 279, 105, 139, 256, 298, + /* 560 */ 268, 189, 273, 113, 271, 78, 290, 120, 112, 279, + /* 570 */ 251, 212, 143, 260, 300, 62, 105, 263, 256, 236, + /* 580 */ 288, 73, 273, 273, 271, 254, 255, 237, 130, 137, + /* 590 */ 160, 20, 164, 295, 145, 231, 215, 46, 205, 263, + /* 600 */ 285, 251, 251, 185, 27, 77, 189, 71, 57, 23, + /* 610 */ 78, 175, 75, 94, 181, 80, 207, 278, 195, 300, + /* 620 */ 69, 105, 229, 256, 189, 50, 58, 267, 78, 271, + /* 630 */ 31, 269, 168, 189, 279, 57, 261, 78, 83, 272, + /* 640 */ 87, 256, 19, 258, 42, 195, 300, 271, 105, 257, + /* 650 */ 256, 248, 200, 189, 169, 57, 271, 78, 219, 242, + /* 660 */ 91, 279, 221, 111, 239, 195, 300, 288, 105, 21, + /* 670 */ 256, 270, 41, 189, 110, 57, 271, 78, 6, 286, + /* 680 */ 86, 279, 49, 187, 81, 195, 300, 37, 105, 48, + /* 690 */ 256, 235, 70, 189, 259, 57, 271, 78, 283, 284, + /* 700 */ 92, 279, 283, 283, 283, 195, 300, 283, 105, 283, + /* 710 */ 256, 283, 283, 283, 283, 189, 271, 53, 79, 78, + /* 720 */ 283, 279, 283, 283, 283, 283, 283, 260, 300, 283, + /* 730 */ 105, 283, 256, 189, 283, 129, 218, 78, 271, 283, + /* 740 */ 283, 283, 283, 283, 283, 260, 300, 283, 105, 199, + /* 750 */ 256, 283, 283, 189, 283, 119, 271, 66, 283, 283, + /* 760 */ 189, 283, 108, 283, 78, 260, 300, 283, 105, 283, + /* 770 */ 256, 283, 260, 300, 283, 105, 271, 256, 283, 283, + /* 780 */ 196, 283, 283, 271, 283, 189, 283, 108, 283, 78, + /* 790 */ 283, 283, 283, 283, 283, 283, 283, 260, 300, 189, + /* 800 */ 105, 108, 256, 78, 283, 301, 283, 283, 271, 283, + /* 810 */ 283, 260, 300, 189, 105, 113, 256, 78, 283, 194, + /* 820 */ 283, 283, 271, 283, 283, 260, 300, 283, 105, 189, + /* 830 */ 256, 108, 283, 78, 283, 283, 271, 283, 283, 283, + /* 840 */ 283, 260, 300, 283, 105, 294, 256, 283, 283, 193, + /* 850 */ 283, 283, 271, 189, 283, 133, 283, 78, 283, 283, + /* 860 */ 189, 283, 117, 283, 78, 260, 300, 189, 105, 116, + /* 870 */ 256, 78, 260, 300, 283, 105, 271, 256, 283, 260, + /* 880 */ 300, 283, 105, 271, 256, 189, 283, 121, 283, 78, + /* 890 */ 271, 283, 189, 283, 148, 283, 78, 260, 300, 189, + /* 900 */ 105, 123, 256, 78, 260, 300, 283, 105, 271, 256, + /* 910 */ 283, 260, 300, 283, 105, 271, 256, 283, 283, 283, + /* 920 */ 283, 189, 271, 126, 283, 78, 283, 283, 283, 283, + /* 930 */ 283, 283, 283, 260, 300, 189, 105, 135, 256, 78, + /* 940 */ 283, 283, 283, 283, 271, 283, 283, 260, 300, 189, + /* 950 */ 105, 149, 256, 78, 283, 283, 283, 283, 271, 283, + /* 960 */ 283, 260, 300, 189, 105, 114, 256, 78, 283, 283, + /* 970 */ 283, 283, 271, 283, 283, 260, 300, 189, 105, 136, + /* 980 */ 256, 78, 283, 283, 283, 283, 271, 283, 283, 260, + /* 990 */ 300, 189, 105, 144, 256, 78, 283, 283, 283, 283, + /* 1000 */ 271, 283, 283, 260, 300, 189, 105, 107, 256, 78, + /* 1010 */ 283, 283, 283, 283, 271, 283, 283, 260, 300, 189, + /* 1020 */ 105, 283, 256, 78, 283, 283, 283, 283, 271, 283, + /* 1030 */ 283, 260, 300, 189, 104, 283, 256, 78, 283, 283, + /* 1040 */ 283, 283, 271, 283, 283, 260, 300, 189, 99, 283, + /* 1050 */ 256, 78, 283, 283, 283, 283, 271, 283, 283, 260, + /* 1060 */ 300, 189, 98, 283, 256, 78, 283, 283, 283, 283, + /* 1070 */ 271, 283, 283, 302, 296, 283, 283, 283, 256, 283, + /* 1080 */ 283, 283, 283, 283, 271, ); 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, 84, 10, 16, 50, 16, 52, + /* 40 */ 42, 43, 10, 45, 101, 10, 16, 50, 16, 52, /* 50 */ 79, 16, 20, 21, 83, 20, 21, 1, 2, 3, - /* 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, + /* 60 */ 4, 5, 30, 55, 67, 9, 47, 11, 60, 13, + /* 70 */ 14, 15, 16, 102, 19, 67, 44, 1, 46, 44, + /* 80 */ 50, 46, 47, 51, 65, 53, 51, 55, 53, 59, /* 90 */ 55, 1, 60, 61, 10, 60, 61, 67, 8, 67, - /* 100 */ 16, 112, 67, 101, 20, 21, 16, 50, 31, 32, + /* 100 */ 16, 67, 67, 79, 20, 21, 16, 83, 31, 32, /* 110 */ 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - /* 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, + /* 120 */ 43, 1, 98, 17, 69, 79, 102, 10, 44, 83, + /* 130 */ 10, 105, 63, 16, 65, 51, 16, 20, 21, 55, + /* 140 */ 20, 21, 17, 67, 60, 61, 58, 30, 102, 10, + /* 150 */ 47, 67, 16, 65, 16, 16, 53, 54, 52, 20, + /* 160 */ 21, 44, 100, 46, 44, 103, 46, 105, 51, 66, + /* 170 */ 53, 51, 55, 53, 68, 55, 85, 60, 61, 16, + /* 180 */ 60, 61, 17, 44, 67, 46, 50, 67, 63, 51, + /* 190 */ 51, 10, 53, 55, 55, 53, 54, 16, 60, 60, + /* 200 */ 61, 20, 21, 67, 44, 67, 67, 44, 66, 44, + /* 210 */ 10, 16, 101, 10, 16, 50, 16, 57, 85, 16, + /* 220 */ 20, 21, 57, 20, 21, 44, 44, 46, 1, 67, + /* 230 */ 48, 48, 51, 68, 53, 100, 55, 10, 49, 57, + /* 240 */ 105, 60, 61, 16, 44, 63, 46, 44, 67, 46, + /* 250 */ 68, 51, 63, 53, 51, 55, 53, 59, 55, 50, + /* 260 */ 60, 61, 67, 60, 61, 67, 10, 67, 17, 46, + /* 270 */ 67, 79, 16, 81, 1, 83, 20, 21, 86, 87, + /* 280 */ 88, 79, 1, 91, 92, 83, 94, 64, 96, 16, + /* 290 */ 48, 10, 50, 91, 102, 10, 56, 16, 96, 107, + /* 300 */ 44, 16, 46, 63, 102, 20, 21, 51, 44, 53, + /* 310 */ 79, 55, 44, 49, 83, 47, 60, 61, 72, 73, + /* 320 */ 74, 57, 91, 67, 48, 57, 1, 96, 55, 44, + /* 330 */ 17, 46, 64, 102, 61, 62, 51, 12, 53, 63, + /* 340 */ 55, 16, 16, 59, 68, 60, 61, 46, 17, 48, + /* 350 */ 18, 67, 67, 17, 22, 23, 24, 25, 26, 27, + /* 360 */ 28, 29, 1, 1, 18, 64, 45, 5, 22, 23, + /* 370 */ 24, 25, 26, 27, 28, 29, 63, 45, 16, 10, + /* 380 */ 56, 55, 89, 89, 63, 16, 60, 63, 79, 20, + /* 390 */ 21, 45, 83, 67, 63, 63, 18, 104, 104, 63, + /* 400 */ 22, 23, 24, 25, 26, 27, 28, 29, 17, 63, + /* 410 */ 80, 102, 48, 44, 84, 46, 55, 75, 84, 16, + /* 420 */ 51, 60, 55, 93, 55, 83, 85, 63, 67, 60, + /* 430 */ 61, 75, 68, 77, 67, 79, 67, 81, 82, 83, + /* 440 */ 101, 63, 108, 104, 53, 54, 17, 91, 92, 79, + /* 450 */ 94, 81, 96, 83, 80, 80, 86, 66, 102, 84, + /* 460 */ 1, 91, 92, 78, 94, 63, 96, 93, 93, 79, + /* 470 */ 67, 81, 102, 83, 80, 16, 86, 107, 84, 93, + /* 480 */ 106, 91, 92, 78, 94, 17, 96, 93, 55, 79, + /* 490 */ 89, 81, 102, 83, 80, 80, 86, 107, 113, 84, + /* 500 */ 67, 91, 92, 78, 94, 104, 96, 93, 93, 79, + /* 510 */ 89, 81, 102, 83, 63, 97, 86, 107, 113, 68, + /* 520 */ 106, 91, 92, 56, 94, 104, 96, 79, 68, 81, + /* 530 */ 112, 83, 102, 80, 86, 68, 1, 107, 113, 91, + /* 540 */ 92, 79, 94, 81, 96, 83, 93, 89, 86, 84, + /* 550 */ 102, 16, 78, 91, 92, 107, 94, 80, 96, 45, + /* 560 */ 60, 79, 104, 81, 102, 83, 90, 89, 89, 107, + /* 570 */ 93, 5, 100, 91, 92, 10, 94, 105, 96, 62, + /* 580 */ 104, 16, 104, 104, 102, 20, 21, 113, 80, 80, + /* 590 */ 55, 44, 110, 111, 100, 17, 61, 62, 56, 105, + /* 600 */ 17, 93, 93, 55, 70, 55, 79, 55, 81, 44, + /* 610 */ 83, 67, 55, 86, 19, 45, 51, 17, 91, 92, + /* 620 */ 55, 94, 67, 96, 79, 60, 61, 60, 83, 102, + /* 630 */ 70, 67, 67, 79, 107, 81, 91, 83, 67, 67, + /* 640 */ 86, 96, 50, 52, 69, 91, 92, 102, 94, 51, + /* 650 */ 96, 67, 67, 79, 64, 81, 102, 83, 47, 62, + /* 660 */ 86, 107, 45, 101, 113, 91, 92, 104, 94, 44, + /* 670 */ 96, 103, 95, 79, 101, 81, 102, 83, 109, 74, + /* 680 */ 86, 107, 101, 76, 98, 91, 92, 56, 94, 67, + /* 690 */ 96, 112, 55, 79, 106, 81, 102, 83, 114, 87, + /* 700 */ 86, 107, 114, 114, 114, 91, 92, 114, 94, 114, + /* 710 */ 96, 114, 114, 114, 114, 79, 102, 81, 82, 83, + /* 720 */ 114, 107, 114, 114, 114, 114, 114, 91, 92, 114, + /* 730 */ 94, 114, 96, 79, 114, 81, 82, 83, 102, 114, + /* 740 */ 114, 114, 114, 114, 114, 91, 92, 114, 94, 75, + /* 750 */ 96, 114, 114, 79, 114, 81, 102, 83, 114, 114, + /* 760 */ 79, 114, 81, 114, 83, 91, 92, 114, 94, 114, + /* 770 */ 96, 114, 91, 92, 114, 94, 102, 96, 114, 114, + /* 780 */ 99, 114, 114, 102, 114, 79, 114, 81, 114, 83, + /* 790 */ 114, 114, 114, 114, 114, 114, 114, 91, 92, 79, + /* 800 */ 94, 81, 96, 83, 114, 99, 114, 114, 102, 114, + /* 810 */ 114, 91, 92, 79, 94, 81, 96, 83, 114, 99, + /* 820 */ 114, 114, 102, 114, 114, 91, 92, 114, 94, 79, + /* 830 */ 96, 81, 114, 83, 114, 114, 102, 114, 114, 114, + /* 840 */ 114, 91, 92, 114, 94, 111, 96, 114, 114, 99, + /* 850 */ 114, 114, 102, 79, 114, 81, 114, 83, 114, 114, + /* 860 */ 79, 114, 81, 114, 83, 91, 92, 79, 94, 81, + /* 870 */ 96, 83, 91, 92, 114, 94, 102, 96, 114, 91, + /* 880 */ 92, 114, 94, 102, 96, 79, 114, 81, 114, 83, + /* 890 */ 102, 114, 79, 114, 81, 114, 83, 91, 92, 79, + /* 900 */ 94, 81, 96, 83, 91, 92, 114, 94, 102, 96, + /* 910 */ 114, 91, 92, 114, 94, 102, 96, 114, 114, 114, + /* 920 */ 114, 79, 102, 81, 114, 83, 114, 114, 114, 114, + /* 930 */ 114, 114, 114, 91, 92, 79, 94, 81, 96, 83, + /* 940 */ 114, 114, 114, 114, 102, 114, 114, 91, 92, 79, + /* 950 */ 94, 81, 96, 83, 114, 114, 114, 114, 102, 114, + /* 960 */ 114, 91, 92, 79, 94, 81, 96, 83, 114, 114, + /* 970 */ 114, 114, 102, 114, 114, 91, 92, 79, 94, 81, + /* 980 */ 96, 83, 114, 114, 114, 114, 102, 114, 114, 91, + /* 990 */ 92, 79, 94, 81, 96, 83, 114, 114, 114, 114, + /* 1000 */ 102, 114, 114, 91, 92, 79, 94, 81, 96, 83, + /* 1010 */ 114, 114, 114, 114, 102, 114, 114, 91, 92, 79, + /* 1020 */ 94, 114, 96, 83, 114, 114, 114, 114, 102, 114, + /* 1030 */ 114, 91, 92, 79, 94, 114, 96, 83, 114, 114, + /* 1040 */ 114, 114, 102, 114, 114, 91, 92, 79, 94, 114, + /* 1050 */ 96, 83, 114, 114, 114, 114, 102, 114, 114, 91, + /* 1060 */ 92, 79, 94, 114, 96, 83, 114, 114, 114, 114, + /* 1070 */ 102, 114, 114, 91, 92, 114, 114, 114, 96, 114, + /* 1080 */ 114, 114, 114, 114, 102, ); const YY_SHIFT_USE_DFLT = -32; - const YY_SHIFT_MAX = 203; + const YY_SHIFT_MAX = 207; static public $yy_shift_ofst = array( - /* 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, + /* 0 */ 56, 117, 256, 32, 32, 32, 32, 32, 32, 32, + /* 10 */ 32, 32, 32, 32, 285, 120, 139, 285, 139, 181, + /* 20 */ 139, 139, 181, 139, 139, 139, 139, 139, 139, 139, + /* 30 */ 139, 139, 139, 139, 139, 139, 35, 200, 203, 369, + /* 40 */ 84, 84, 565, 326, 138, 182, 361, 276, 364, 301, + /* 50 */ 8, 467, 467, 451, 451, 332, 346, 378, 535, 30, + /* 60 */ -3, 198, 281, 106, 403, 459, 242, 403, 195, 195, + /* 70 */ 195, 195, 195, 433, 459, 195, 459, 195, 183, 460, + /* 80 */ 183, 183, 460, 460, -17, -2, -31, 77, 77, 77, + /* 90 */ 77, 77, 77, 77, 77, 77, 56, 273, 103, 391, + /* 100 */ 136, 90, 227, 325, 142, 142, 362, 313, 69, 367, + /* 110 */ 223, 223, 195, 189, 240, 163, 336, 324, 223, 125, + /* 120 */ 195, 331, 223, 321, 223, 637, 402, 622, 625, 402, + /* 130 */ 460, 631, 460, 402, 460, 402, 402, 460, 460, 460, + /* 140 */ 460, 183, 460, 183, 402, 183, 460, 460, 402, 402, + /* 150 */ 183, -32, -32, -32, -32, -32, -32, 165, 268, 264, + /* 160 */ 76, 284, 88, 160, 19, 55, 160, 160, 160, 598, + /* 170 */ 597, 585, 584, 560, 583, 566, 500, 517, 548, 534, + /* 180 */ 595, 557, 550, 552, 567, 544, 555, 578, 547, 591, + /* 190 */ 611, 600, 564, 570, 514, 575, 617, 34, 162, 429, + /* 200 */ 209, 542, 251, 468, 592, 572, 571, 590, ); - const YY_REDUCE_USE_DFLT = -41; - const YY_REDUCE_MAX = 155; + const YY_REDUCE_USE_DFLT = -58; + const YY_REDUCE_MAX = 156; static public $yy_reduce_ofst = array( - /* 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, + /* 0 */ 246, 192, 356, 527, 574, 614, 554, 370, 430, 462, + /* 10 */ 594, 448, 410, 390, 482, 674, 720, 734, 706, 636, + /* 20 */ 681, 750, 654, 820, 842, 813, 806, 781, 788, 870, + /* 30 */ 856, 884, 926, 898, 912, 774, 968, 940, 954, 982, + /* 40 */ 545, 202, 231, 24, 309, 330, -29, 330, 415, 62, + /* 50 */ 46, 414, 374, 394, 375, 334, 334, 334, 418, 339, + /* 60 */ 476, 339, 425, 453, 458, 405, 135, 294, 339, 294, + /* 70 */ 293, 421, 401, 342, 385, 479, 474, 478, 135, 509, + /* 80 */ 494, 472, 508, 477, 569, 569, 569, 569, 569, 569, + /* 90 */ 569, 569, 569, 569, 569, 569, 605, 579, 577, 577, + /* 100 */ 563, 551, 551, 551, 577, 577, 551, 465, 465, 586, + /* 110 */ 568, 568, 563, 465, 465, 573, 465, 465, 568, 465, + /* 120 */ 563, 465, 568, 465, 568, 612, 465, 607, 581, 465, + /* 130 */ 386, 588, 386, 465, 386, 465, 465, 386, 386, 386, + /* 140 */ 386, 26, 386, 26, 465, 26, 386, 386, 465, 465, + /* 150 */ 26, 111, 91, -57, 133, 562, 341, ); 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, ), + /* 2 */ array(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(1, 10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), + /* 6 */ array(10, 16, 20, 21, 30, 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, ), @@ -569,7 +561,7 @@ static public $yy_action = array( /* 12 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 13 */ array(10, 16, 20, 21, 30, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 14 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), - /* 15 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), + /* 15 */ array(1, 10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 16 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 17 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 18 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), @@ -590,57 +582,57 @@ static public $yy_action = array( /* 33 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 34 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 35 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), - /* 36 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), - /* 37 */ array(10, 16, 20, 21, 44, 46, 47, 51, 53, 55, 60, 61, 67, ), + /* 36 */ array(10, 16, 20, 21, 44, 46, 47, 51, 53, 55, 60, 61, 67, ), + /* 37 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), /* 38 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), - /* 39 */ array(10, 16, 20, 21, 44, 46, 51, 53, 55, 60, 61, 67, ), - /* 40 */ array(10, 16, 20, 21, 44, 46, 51, 55, 60, 61, 67, ), + /* 39 */ array(10, 16, 20, 21, 44, 46, 51, 55, 60, 61, 67, ), + /* 40 */ array(10, 16, 20, 21, 44, 51, 55, 60, 61, 67, ), /* 41 */ array(10, 16, 20, 21, 44, 51, 55, 60, 61, 67, ), /* 42 */ array(10, 16, 20, 21, 44, 51, 55, 60, 61, 67, ), - /* 43 */ array(10, 16, 20, 21, 44, 51, 55, 60, 61, 67, ), - /* 44 */ array(16, 55, 60, 67, ), + /* 43 */ array(16, 55, 60, 67, ), + /* 44 */ array(16, 51, 55, 60, 67, ), /* 45 */ array(44, 48, 57, 63, 68, ), - /* 46 */ array(16, 51, 55, 60, 67, ), - /* 47 */ array(1, 55, 60, 67, ), - /* 48 */ array(46, 48, 64, ), - /* 49 */ array(48, 63, 68, ), + /* 46 */ array(1, 55, 60, 67, ), + /* 47 */ array(48, 63, 68, ), + /* 48 */ array(48, 63, 68, ), + /* 49 */ array(46, 48, 64, ), /* 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, ), + /* 51 */ array(56, 68, ), + /* 52 */ array(56, 68, ), + /* 53 */ array(63, 68, ), + /* 54 */ array(63, 68, ), + /* 55 */ array(18, 22, 23, 24, 25, 26, 27, 28, 29, 45, 63, ), /* 56 */ array(18, 22, 23, 24, 25, 26, 27, 28, 29, 45, 63, ), - /* 57 */ array(18, 22, 23, 24, 25, 26, 27, 28, 29, 45, 63, ), - /* 58 */ array(18, 22, 23, 24, 25, 26, 27, 28, 29, 63, ), - /* 59 */ array(1, 16, 55, 61, 62, ), + /* 57 */ array(18, 22, 23, 24, 25, 26, 27, 28, 29, 63, ), + /* 58 */ array(1, 16, 55, 61, 62, ), + /* 59 */ array(16, 50, 59, 67, ), /* 60 */ array(16, 50, 52, 67, ), - /* 61 */ array(16, 50, 59, 67, ), - /* 62 */ array(17, 52, 68, ), - /* 63 */ array(16, 59, 67, ), - /* 64 */ array(1, 10, 16, ), - /* 65 */ array(48, 50, ), - /* 66 */ array(16, 67, ), + /* 61 */ array(16, 59, 67, ), + /* 62 */ array(1, 10, 16, ), + /* 63 */ array(17, 52, 68, ), + /* 64 */ array(16, 67, ), + /* 65 */ array(1, 16, ), + /* 66 */ array(48, 50, ), /* 67 */ array(16, 67, ), /* 68 */ array(16, 67, ), /* 69 */ array(16, 67, ), - /* 70 */ array(1, 16, ), + /* 70 */ array(16, 67, ), /* 71 */ array(16, 67, ), /* 72 */ array(16, 67, ), - /* 73 */ array(1, 16, ), + /* 73 */ array(55, 67, ), /* 74 */ array(1, 16, ), /* 75 */ array(16, 67, ), - /* 76 */ array(68, ), - /* 77 */ array(68, ), + /* 76 */ array(1, 16, ), + /* 77 */ array(16, 67, ), /* 78 */ array(48, ), - /* 79 */ array(48, ), + /* 79 */ array(68, ), /* 80 */ array(48, ), - /* 81 */ array(68, ), + /* 81 */ array(48, ), /* 82 */ array(68, ), - /* 83 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 58, ), + /* 83 */ array(68, ), /* 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, 45, ), - /* 86 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), + /* 86 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 58, ), /* 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, ), /* 89 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), @@ -649,119 +641,119 @@ static public $yy_action = array( /* 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(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(1, 5, 16, ), - /* 102 */ array(16, 50, 67, ), + /* 95 */ array(31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, ), + /* 96 */ array(1, 2, 3, 4, 5, 9, 11, 13, 14, 15, 16, ), + /* 97 */ array(1, 16, 55, 61, 62, ), + /* 98 */ array(47, 53, 54, 66, ), + /* 99 */ array(17, 53, 54, 66, ), + /* 100 */ array(16, 50, 67, ), + /* 101 */ array(1, 8, 16, ), + /* 102 */ array(1, 10, 16, ), /* 103 */ array(1, 12, 16, ), /* 104 */ array(53, 54, 66, ), /* 105 */ array(53, 54, 66, ), - /* 106 */ array(16, 67, ), - /* 107 */ array(46, 64, ), - /* 108 */ array(56, 63, ), - /* 109 */ array(49, 63, ), - /* 110 */ array(63, 65, ), - /* 111 */ array(16, 67, ), - /* 112 */ array(55, 67, ), - /* 113 */ array(17, 63, ), - /* 114 */ array(46, 64, ), - /* 115 */ array(46, 64, ), - /* 116 */ array(46, 64, ), - /* 117 */ array(46, 64, ), - /* 118 */ array(17, 63, ), + /* 106 */ array(1, 5, 16, ), + /* 107 */ array(17, 63, ), + /* 108 */ array(63, 65, ), + /* 109 */ array(55, 67, ), + /* 110 */ array(46, 64, ), + /* 111 */ array(46, 64, ), + /* 112 */ array(16, 67, ), + /* 113 */ array(49, 63, ), + /* 114 */ array(56, 63, ), + /* 115 */ array(16, 44, ), + /* 116 */ array(17, 63, ), + /* 117 */ array(56, 63, ), + /* 118 */ array(46, 64, ), /* 119 */ array(17, 63, ), - /* 120 */ array(45, 63, ), - /* 121 */ array(16, 44, ), - /* 122 */ array(56, 63, ), - /* 123 */ array(63, ), - /* 124 */ array(63, ), - /* 125 */ array(56, ), - /* 126 */ array(68, ), - /* 127 */ array(63, ), - /* 128 */ array(63, ), + /* 120 */ array(16, 67, ), + /* 121 */ array(17, 63, ), + /* 122 */ array(46, 64, ), + /* 123 */ array(45, 63, ), + /* 124 */ array(46, 64, ), + /* 125 */ array(55, ), + /* 126 */ array(63, ), + /* 127 */ array(67, ), + /* 128 */ array(44, ), /* 129 */ array(63, ), /* 130 */ array(68, ), - /* 131 */ array(48, ), + /* 131 */ array(56, ), /* 132 */ array(68, ), - /* 133 */ array(68, ), + /* 133 */ array(63, ), /* 134 */ array(68, ), - /* 135 */ array(68, ), - /* 136 */ array(68, ), - /* 137 */ array(44, ), + /* 135 */ array(63, ), + /* 136 */ array(63, ), + /* 137 */ array(68, ), /* 138 */ array(68, ), - /* 139 */ array(67, ), - /* 140 */ array(48, ), - /* 141 */ array(68, ), - /* 142 */ array(63, ), - /* 143 */ array(68, ), + /* 139 */ array(68, ), + /* 140 */ array(68, ), + /* 141 */ array(48, ), + /* 142 */ array(68, ), + /* 143 */ array(48, ), /* 144 */ array(63, ), - /* 145 */ array(68, ), - /* 146 */ array(55, ), - /* 147 */ array(48, ), + /* 145 */ array(48, ), + /* 146 */ array(68, ), + /* 147 */ array(68, ), /* 148 */ array(63, ), - /* 149 */ array(48, ), - /* 150 */ array(), + /* 149 */ array(63, ), + /* 150 */ array(48, ), /* 151 */ array(), /* 152 */ array(), /* 153 */ array(), /* 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(59, 67, ), - /* 161 */ array(1, 67, ), - /* 162 */ array(44, 57, ), + /* 156 */ array(), + /* 157 */ array(17, 44, 50, 57, 68, ), + /* 158 */ array(44, 47, 57, 64, ), + /* 159 */ array(44, 49, 57, ), + /* 160 */ array(1, 67, ), + /* 161 */ array(59, 67, ), + /* 162 */ array(58, 65, ), /* 163 */ array(44, 57, ), /* 164 */ array(47, 65, ), - /* 165 */ array(44, 57, ), - /* 166 */ array(58, 65, ), + /* 165 */ array(19, 69, ), + /* 166 */ array(44, 57, ), /* 167 */ array(44, 57, ), - /* 168 */ array(67, ), - /* 169 */ array(67, ), - /* 170 */ array(17, ), - /* 171 */ array(17, ), - /* 172 */ array(60, ), - /* 173 */ array(17, ), - /* 174 */ array(60, ), - /* 175 */ array(19, ), - /* 176 */ array(5, ), - /* 177 */ array(67, ), - /* 178 */ array(70, ), + /* 168 */ array(44, 57, ), + /* 169 */ array(51, ), + /* 170 */ array(62, ), + /* 171 */ array(67, ), + /* 172 */ array(67, ), + /* 173 */ array(70, ), + /* 174 */ array(17, ), + /* 175 */ array(5, ), + /* 176 */ array(60, ), + /* 177 */ array(62, ), + /* 178 */ array(55, ), /* 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(67, ), - /* 191 */ array(45, ), + /* 180 */ array(19, ), + /* 181 */ array(55, ), + /* 182 */ array(55, ), + /* 183 */ array(55, ), + /* 184 */ array(60, ), + /* 185 */ array(67, ), + /* 186 */ array(67, ), + /* 187 */ array(17, ), + /* 188 */ array(44, ), + /* 189 */ array(52, ), + /* 190 */ array(47, ), + /* 191 */ array(17, ), /* 192 */ array(67, ), - /* 193 */ array(67, ), - /* 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, ), + /* 193 */ array(45, ), + /* 194 */ array(45, ), + /* 195 */ array(69, ), + /* 196 */ array(45, ), + /* 197 */ array(67, ), + /* 198 */ array(67, ), + /* 199 */ array(17, ), + /* 200 */ array(50, ), + /* 201 */ array(56, ), + /* 202 */ array(17, ), /* 203 */ array(17, ), - /* 204 */ array(), - /* 205 */ array(), - /* 206 */ array(), - /* 207 */ array(), + /* 204 */ array(50, ), + /* 205 */ array(67, ), + /* 206 */ array(67, ), + /* 207 */ array(64, ), /* 208 */ array(), /* 209 */ array(), /* 210 */ array(), @@ -861,39 +853,45 @@ static public $yy_action = array( /* 304 */ array(), /* 305 */ array(), /* 306 */ array(), + /* 307 */ array(), + /* 308 */ array(), + /* 309 */ array(), + /* 310 */ array(), + /* 311 */ array(), ); static public $yy_default = array( - /* 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, + /* 0 */ 479, 479, 479, 479, 479, 479, 479, 479, 479, 479, + /* 10 */ 479, 479, 479, 479, 460, 479, 419, 479, 419, 479, + /* 20 */ 419, 419, 479, 479, 479, 479, 479, 479, 479, 479, + /* 30 */ 479, 479, 479, 479, 479, 479, 479, 479, 479, 479, + /* 40 */ 479, 479, 479, 479, 479, 347, 479, 347, 347, 384, + /* 50 */ 479, 347, 347, 347, 347, 429, 429, 429, 479, 394, + /* 60 */ 479, 394, 479, 367, 479, 479, 387, 479, 394, 479, + /* 70 */ 479, 479, 479, 479, 479, 479, 479, 479, 387, 347, + /* 80 */ 380, 379, 347, 347, 479, 479, 479, 433, 443, 335, + /* 90 */ 442, 434, 427, 438, 435, 439, 312, 479, 479, 479, + /* 100 */ 479, 479, 479, 479, 424, 355, 479, 479, 418, 479, + /* 110 */ 410, 412, 341, 463, 479, 394, 479, 479, 392, 479, + /* 120 */ 340, 479, 413, 479, 411, 479, 338, 479, 394, 348, + /* 130 */ 329, 357, 328, 362, 327, 363, 461, 331, 334, 333, + /* 140 */ 332, 407, 343, 381, 462, 382, 330, 342, 353, 430, + /* 150 */ 385, 394, 423, 394, 423, 394, 423, 354, 479, 354, + /* 160 */ 479, 479, 479, 425, 479, 358, 354, 479, 444, 479, + /* 170 */ 479, 479, 479, 479, 479, 479, 479, 479, 479, 374, + /* 180 */ 361, 479, 479, 479, 479, 479, 479, 479, 383, 367, + /* 190 */ 479, 479, 479, 479, 479, 358, 479, 479, 479, 479, + /* 200 */ 350, 405, 351, 479, 479, 479, 479, 369, 470, 322, + /* 210 */ 324, 313, 323, 326, 325, 378, 399, 401, 349, 400, + /* 220 */ 402, 416, 414, 398, 465, 319, 320, 321, 318, 344, + /* 230 */ 474, 316, 472, 345, 377, 464, 466, 476, 376, 475, + /* 240 */ 477, 478, 467, 473, 364, 365, 366, 421, 420, 468, + /* 250 */ 471, 346, 375, 360, 371, 372, 373, 370, 368, 422, + /* 260 */ 358, 359, 409, 408, 395, 396, 397, 391, 390, 388, + /* 270 */ 393, 389, 356, 403, 441, 315, 454, 440, 317, 426, + /* 280 */ 436, 437, 455, 456, 352, 386, 314, 405, 404, 428, + /* 290 */ 337, 339, 374, 445, 459, 458, 431, 457, 415, 406, + /* 300 */ 361, 417, 432, 446, 451, 452, 453, 450, 449, 447, + /* 310 */ 448, 469, ); /* The next thing included is series of defines which control ** various aspects of the generated parser. @@ -910,10 +908,10 @@ static public $yy_action = array( ** self::YYERRORSYMBOL is the code number of the error symbol. If not ** defined, then do no error processing. */ - const YYNOCODE = 114; + const YYNOCODE = 115; const YYSTACKDEPTH = 100; - const YYNSTATE = 307; - const YYNRULE = 166; + const YYNSTATE = 312; + const YYNRULE = 167; const YYERRORSYMBOL = 71; const YYERRSYMDT = 'yy0'; const YYFALLBACK = 1; @@ -1086,16 +1084,16 @@ static public $yy_action = array( 'DOT', 'COMMA', 'ANDSYM', 'ID', 'SPACE', 'INSTANCEOF', 'QMARK', 'error', 'start', 'template', 'template_element', 'smartytag', - 'smartyclosetag', 'text', 'variable', 'attributes', - 'expr', 'ternary', 'varindexed', 'modifier', - 'modparameters', 'ifexprs', 'statement', 'statements', - 'varvar', 'foraction', 'value', 'array', - 'attribute', 'exprs', 'math', 'function', - 'doublequoted', 'method', 'params', 'objectchain', - 'arrayindex', 'object', 'indexdef', 'varvarele', - 'objectelement', 'modparameter', 'ifexpr', 'ifcond', - 'lop', 'arrayelements', 'arrayelement', 'doublequotedcontent', - 'textelement', + 'smartyclosetag', 'outputtag', 'text', 'variable', + 'attributes', 'expr', 'ternary', 'varindexed', + 'modifier', 'modparameters', 'ifexprs', 'statement', + 'statements', 'varvar', 'foraction', 'value', + 'array', 'attribute', 'exprs', 'math', + 'function', 'doublequoted', 'method', 'params', + 'objectchain', 'arrayindex', 'object', 'indexdef', + 'varvarele', 'objectelement', 'modparameter', 'ifexpr', + 'ifcond', 'lop', 'arrayelements', 'arrayelement', + 'doublequotedcontent', 'textelement', ); /** @@ -1108,19 +1106,19 @@ static public $yy_action = array( /* 2 */ "template ::= template template_element", /* 3 */ "template_element ::= LDEL smartytag RDEL", /* 4 */ "template_element ::= LDELSLASH smartyclosetag RDEL", - /* 5 */ "template_element ::= COMMENTSTART text COMMENTEND", - /* 6 */ "template_element ::= LITERALSTART text LITERALEND", - /* 7 */ "template_element ::= LDELIMTAG", - /* 8 */ "template_element ::= RDELIMTAG", - /* 9 */ "template_element ::= PHP text SHORTTAGEND", - /* 10 */ "template_element ::= SHORTTAGSTART DOLLAR ID SHORTTAGEND", - /* 11 */ "template_element ::= XML", - /* 12 */ "template_element ::= SHORTTAGEND", - /* 13 */ "template_element ::= OTHER", - /* 14 */ "smartytag ::= variable attributes", - /* 15 */ "smartytag ::= variable INCDEC attributes", - /* 16 */ "smartytag ::= expr attributes", - /* 17 */ "smartytag ::= ternary attributes", + /* 5 */ "template_element ::= LDEL outputtag RDEL", + /* 6 */ "template_element ::= COMMENTSTART text COMMENTEND", + /* 7 */ "template_element ::= LITERALSTART text LITERALEND", + /* 8 */ "template_element ::= LDELIMTAG", + /* 9 */ "template_element ::= RDELIMTAG", + /* 10 */ "template_element ::= PHP text SHORTTAGEND", + /* 11 */ "template_element ::= SHORTTAGSTART DOLLAR ID SHORTTAGEND", + /* 12 */ "template_element ::= XML", + /* 13 */ "template_element ::= SHORTTAGEND", + /* 14 */ "template_element ::= OTHER", + /* 15 */ "outputtag ::= variable attributes", + /* 16 */ "outputtag ::= expr attributes", + /* 17 */ "outputtag ::= ternary attributes", /* 18 */ "smartytag ::= varindexed EQUAL expr attributes", /* 19 */ "smartytag ::= varindexed EQUAL ternary attributes", /* 20 */ "smartytag ::= ID attributes", @@ -1159,116 +1157,117 @@ static public $yy_action = array( /* 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", + /* 56 */ "value ::= variable INCDEC", + /* 57 */ "value ::= INTEGER", + /* 58 */ "value ::= INTEGER DOT INTEGER", + /* 59 */ "value ::= BOOLEAN", + /* 60 */ "value ::= NULL", + /* 61 */ "value ::= function", + /* 62 */ "value ::= OPENP expr CLOSEP", + /* 63 */ "value ::= SINGLEQUOTE text SINGLEQUOTE", + /* 64 */ "value ::= SINGLEQUOTE SINGLEQUOTE", + /* 65 */ "value ::= QUOTE doublequoted QUOTE", + /* 66 */ "value ::= QUOTE QUOTE", + /* 67 */ "value ::= ID DOUBLECOLON method", + /* 68 */ "value ::= ID DOUBLECOLON DOLLAR ID OPENP params CLOSEP", + /* 69 */ "value ::= ID DOUBLECOLON method objectchain", + /* 70 */ "value ::= ID DOUBLECOLON DOLLAR ID OPENP params CLOSEP objectchain", + /* 71 */ "value ::= ID DOUBLECOLON ID", + /* 72 */ "value ::= ID DOUBLECOLON DOLLAR ID arrayindex", + /* 73 */ "value ::= ID DOUBLECOLON DOLLAR ID arrayindex objectchain", + /* 74 */ "value ::= LDEL smartytag RDEL", + /* 75 */ "variable ::= varindexed", + /* 76 */ "variable ::= DOLLAR varvar AT ID", + /* 77 */ "variable ::= object", + /* 78 */ "variable ::= HATCH ID HATCH", + /* 79 */ "variable ::= HATCH variable HATCH", + /* 80 */ "varindexed ::= DOLLAR varvar arrayindex", + /* 81 */ "arrayindex ::= arrayindex indexdef", + /* 82 */ "arrayindex ::=", + /* 83 */ "indexdef ::= DOT ID", + /* 84 */ "indexdef ::= DOT INTEGER", + /* 85 */ "indexdef ::= DOT variable", + /* 86 */ "indexdef ::= DOT LDEL exprs RDEL", + /* 87 */ "indexdef ::= OPENB ID CLOSEB", + /* 88 */ "indexdef ::= OPENB ID DOT ID CLOSEB", + /* 89 */ "indexdef ::= OPENB exprs CLOSEB", + /* 90 */ "indexdef ::= OPENB CLOSEB", + /* 91 */ "varvar ::= varvarele", + /* 92 */ "varvar ::= varvar varvarele", + /* 93 */ "varvarele ::= ID", + /* 94 */ "varvarele ::= LDEL expr RDEL", + /* 95 */ "object ::= varindexed objectchain", + /* 96 */ "objectchain ::= objectelement", + /* 97 */ "objectchain ::= objectchain objectelement", + /* 98 */ "objectelement ::= PTR ID arrayindex", + /* 99 */ "objectelement ::= PTR variable arrayindex", + /* 100 */ "objectelement ::= PTR LDEL expr RDEL arrayindex", + /* 101 */ "objectelement ::= PTR ID LDEL expr RDEL arrayindex", + /* 102 */ "objectelement ::= PTR method", + /* 103 */ "function ::= ID OPENP params CLOSEP", + /* 104 */ "method ::= ID OPENP params CLOSEP", + /* 105 */ "params ::= expr COMMA params", + /* 106 */ "params ::= expr", + /* 107 */ "params ::=", + /* 108 */ "modifier ::= VERT AT ID", + /* 109 */ "modifier ::= VERT ID", + /* 110 */ "modparameters ::= modparameters modparameter", + /* 111 */ "modparameters ::=", + /* 112 */ "modparameter ::= COLON exprs", + /* 113 */ "modparameter ::= COLON ID", + /* 114 */ "ifexprs ::= ifexpr", + /* 115 */ "ifexprs ::= NOT ifexprs", + /* 116 */ "ifexprs ::= OPENP ifexprs CLOSEP", + /* 117 */ "ifexpr ::= expr", + /* 118 */ "ifexpr ::= expr ifcond expr", + /* 119 */ "ifexpr ::= expr ISIN array", + /* 120 */ "ifexpr ::= expr ISIN value", + /* 121 */ "ifexpr ::= ifexprs lop ifexprs", + /* 122 */ "ifexpr ::= ifexprs ISDIVBY ifexprs", + /* 123 */ "ifexpr ::= ifexprs ISNOTDIVBY ifexprs", + /* 124 */ "ifexpr ::= ifexprs ISEVEN", + /* 125 */ "ifexpr ::= ifexprs ISNOTEVEN", + /* 126 */ "ifexpr ::= ifexprs ISEVENBY ifexprs", + /* 127 */ "ifexpr ::= ifexprs ISNOTEVENBY ifexprs", + /* 128 */ "ifexpr ::= ifexprs ISODD", + /* 129 */ "ifexpr ::= ifexprs ISNOTODD", + /* 130 */ "ifexpr ::= ifexprs ISODDBY ifexprs", + /* 131 */ "ifexpr ::= ifexprs ISNOTODDBY ifexprs", + /* 132 */ "ifexpr ::= value INSTANCEOF ID", + /* 133 */ "ifexpr ::= value INSTANCEOF value", + /* 134 */ "ifcond ::= EQUALS", + /* 135 */ "ifcond ::= NOTEQUALS", + /* 136 */ "ifcond ::= GREATERTHAN", + /* 137 */ "ifcond ::= LESSTHAN", + /* 138 */ "ifcond ::= GREATEREQUAL", + /* 139 */ "ifcond ::= LESSEQUAL", + /* 140 */ "ifcond ::= IDENTITY", + /* 141 */ "ifcond ::= NONEIDENTITY", + /* 142 */ "lop ::= LAND", + /* 143 */ "lop ::= LOR", + /* 144 */ "lop ::= LXOR", + /* 145 */ "array ::= OPENB arrayelements CLOSEB", + /* 146 */ "arrayelements ::= arrayelement", + /* 147 */ "arrayelements ::= arrayelements COMMA arrayelement", + /* 148 */ "arrayelements ::=", + /* 149 */ "arrayelement ::= expr APTR expr", + /* 150 */ "arrayelement ::= ID APTR expr", + /* 151 */ "arrayelement ::= expr", + /* 152 */ "doublequoted ::= doublequoted doublequotedcontent", + /* 153 */ "doublequoted ::= doublequotedcontent", + /* 154 */ "doublequotedcontent ::= BACKTICK ID BACKTICK", + /* 155 */ "doublequotedcontent ::= BACKTICK variable BACKTICK", + /* 156 */ "doublequotedcontent ::= DOLLAR ID", + /* 157 */ "doublequotedcontent ::= LDEL expr RDEL", + /* 158 */ "doublequotedcontent ::= LDEL smartytag RDEL", + /* 159 */ "doublequotedcontent ::= DOLLAR OTHER", + /* 160 */ "doublequotedcontent ::= LDEL OTHER", + /* 161 */ "doublequotedcontent ::= BACKTICK OTHER", + /* 162 */ "doublequotedcontent ::= OTHER", + /* 163 */ "text ::= text textelement", + /* 164 */ "text ::= textelement", + /* 165 */ "textelement ::= OTHER", + /* 166 */ "textelement ::= LDEL", ); /** @@ -1640,6 +1639,7 @@ static public $yy_action = array( array( 'lhs' => 74, 'rhs' => 3 ), array( 'lhs' => 74, 'rhs' => 3 ), array( 'lhs' => 74, 'rhs' => 3 ), + array( 'lhs' => 74, 'rhs' => 3 ), array( 'lhs' => 74, 'rhs' => 1 ), array( 'lhs' => 74, 'rhs' => 1 ), array( 'lhs' => 74, 'rhs' => 3 ), @@ -1647,10 +1647,9 @@ static public $yy_action = array( array( 'lhs' => 74, 'rhs' => 1 ), 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' => 77, 'rhs' => 2 ), + array( 'lhs' => 77, 'rhs' => 2 ), + array( 'lhs' => 77, 'rhs' => 2 ), array( 'lhs' => 75, 'rhs' => 4 ), array( 'lhs' => 75, 'rhs' => 4 ), array( 'lhs' => 75, 'rhs' => 2 ), @@ -1659,146 +1658,147 @@ static public $yy_action = array( array( 'lhs' => 75, 'rhs' => 3 ), array( 'lhs' => 75, 'rhs' => 3 ), array( 'lhs' => 75, 'rhs' => 9 ), - array( 'lhs' => 89, 'rhs' => 2 ), - array( 'lhs' => 89, 'rhs' => 1 ), + array( 'lhs' => 90, 'rhs' => 2 ), + array( 'lhs' => 90, 'rhs' => 1 ), array( 'lhs' => 75, 'rhs' => 6 ), array( 'lhs' => 75, 'rhs' => 6 ), array( 'lhs' => 76, 'rhs' => 2 ), array( 'lhs' => 76, 'rhs' => 4 ), array( 'lhs' => 76, 'rhs' => 3 ), - array( 'lhs' => 79, 'rhs' => 2 ), - array( 'lhs' => 79, 'rhs' => 1 ), - array( 'lhs' => 79, 'rhs' => 0 ), - array( 'lhs' => 92, 'rhs' => 4 ), - array( 'lhs' => 92, 'rhs' => 4 ), - array( 'lhs' => 92, 'rhs' => 2 ), - array( 'lhs' => 87, 'rhs' => 1 ), - array( 'lhs' => 87, 'rhs' => 3 ), - array( 'lhs' => 86, 'rhs' => 4 ), + array( 'lhs' => 80, 'rhs' => 2 ), array( 'lhs' => 80, 'rhs' => 1 ), - array( 'lhs' => 80, 'rhs' => 1 ), - array( 'lhs' => 80, 'rhs' => 4 ), - array( 'lhs' => 80, 'rhs' => 3 ), - array( 'lhs' => 93, 'rhs' => 1 ), + array( 'lhs' => 80, 'rhs' => 0 ), + array( 'lhs' => 93, 'rhs' => 4 ), + array( 'lhs' => 93, 'rhs' => 4 ), array( 'lhs' => 93, 'rhs' => 2 ), - array( 'lhs' => 93, 'rhs' => 3 ), - array( 'lhs' => 93, 'rhs' => 1 ), - array( 'lhs' => 81, 'rhs' => 7 ), - array( 'lhs' => 81, 'rhs' => 7 ), - array( 'lhs' => 94, 'rhs' => 1 ), - array( 'lhs' => 94, 'rhs' => 1 ), - array( 'lhs' => 94, 'rhs' => 1 ), - array( 'lhs' => 90, 'rhs' => 1 ), - array( 'lhs' => 90, 'rhs' => 1 ), - array( 'lhs' => 90, 'rhs' => 3 ), - array( 'lhs' => 90, 'rhs' => 1 ), - array( 'lhs' => 90, 'rhs' => 1 ), - array( 'lhs' => 90, 'rhs' => 1 ), - array( 'lhs' => 90, 'rhs' => 3 ), - array( 'lhs' => 90, 'rhs' => 3 ), - array( 'lhs' => 90, 'rhs' => 2 ), - array( 'lhs' => 90, 'rhs' => 3 ), - array( 'lhs' => 90, 'rhs' => 2 ), - array( 'lhs' => 90, 'rhs' => 3 ), - array( 'lhs' => 90, 'rhs' => 7 ), - array( 'lhs' => 90, 'rhs' => 4 ), - array( 'lhs' => 90, 'rhs' => 8 ), - array( 'lhs' => 90, 'rhs' => 3 ), - array( 'lhs' => 90, 'rhs' => 5 ), - array( 'lhs' => 90, 'rhs' => 6 ), - array( 'lhs' => 90, 'rhs' => 3 ), - array( 'lhs' => 78, 'rhs' => 1 ), - array( 'lhs' => 78, 'rhs' => 4 ), - array( 'lhs' => 78, 'rhs' => 1 ), - array( 'lhs' => 78, 'rhs' => 3 ), - array( 'lhs' => 78, 'rhs' => 3 ), - array( 'lhs' => 82, 'rhs' => 3 ), - array( 'lhs' => 100, 'rhs' => 2 ), - array( 'lhs' => 100, 'rhs' => 0 ), - array( 'lhs' => 102, 'rhs' => 2 ), - array( 'lhs' => 102, 'rhs' => 2 ), - array( 'lhs' => 102, 'rhs' => 2 ), - array( 'lhs' => 102, 'rhs' => 4 ), - array( 'lhs' => 102, 'rhs' => 3 ), - array( 'lhs' => 102, 'rhs' => 5 ), - array( 'lhs' => 102, 'rhs' => 3 ), - array( 'lhs' => 102, 'rhs' => 2 ), array( 'lhs' => 88, 'rhs' => 1 ), - array( 'lhs' => 88, 'rhs' => 2 ), - array( 'lhs' => 103, 'rhs' => 1 ), - array( 'lhs' => 103, 'rhs' => 3 ), - array( 'lhs' => 101, 'rhs' => 2 ), - array( 'lhs' => 99, 'rhs' => 1 ), - array( 'lhs' => 99, 'rhs' => 2 ), - array( 'lhs' => 104, 'rhs' => 3 ), - array( 'lhs' => 104, 'rhs' => 3 ), - array( 'lhs' => 104, 'rhs' => 5 ), - array( 'lhs' => 104, 'rhs' => 6 ), - array( 'lhs' => 104, 'rhs' => 2 ), - array( 'lhs' => 95, 'rhs' => 4 ), - array( 'lhs' => 97, 'rhs' => 4 ), - array( 'lhs' => 98, 'rhs' => 3 ), - array( 'lhs' => 98, 'rhs' => 1 ), - array( 'lhs' => 98, 'rhs' => 0 ), - array( 'lhs' => 83, 'rhs' => 3 ), - array( 'lhs' => 83, 'rhs' => 2 ), - array( 'lhs' => 84, 'rhs' => 2 ), - array( 'lhs' => 84, 'rhs' => 0 ), - array( 'lhs' => 105, 'rhs' => 2 ), - array( 'lhs' => 105, 'rhs' => 2 ), - array( 'lhs' => 85, 'rhs' => 1 ), - array( 'lhs' => 85, 'rhs' => 2 ), - array( 'lhs' => 85, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 1 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 2 ), - array( 'lhs' => 106, 'rhs' => 2 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 2 ), - array( 'lhs' => 106, 'rhs' => 2 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 106, 'rhs' => 3 ), - array( 'lhs' => 107, 'rhs' => 1 ), - array( 'lhs' => 107, 'rhs' => 1 ), - array( 'lhs' => 107, 'rhs' => 1 ), - array( 'lhs' => 107, 'rhs' => 1 ), - array( 'lhs' => 107, 'rhs' => 1 ), - array( 'lhs' => 107, 'rhs' => 1 ), - array( 'lhs' => 107, 'rhs' => 1 ), - array( 'lhs' => 107, 'rhs' => 1 ), - array( 'lhs' => 108, 'rhs' => 1 ), - array( 'lhs' => 108, 'rhs' => 1 ), - array( 'lhs' => 108, 'rhs' => 1 ), + array( 'lhs' => 88, 'rhs' => 3 ), + array( 'lhs' => 87, 'rhs' => 4 ), + array( 'lhs' => 81, 'rhs' => 1 ), + array( 'lhs' => 81, 'rhs' => 1 ), + array( 'lhs' => 81, 'rhs' => 4 ), + array( 'lhs' => 81, 'rhs' => 3 ), + array( 'lhs' => 94, 'rhs' => 1 ), + array( 'lhs' => 94, 'rhs' => 2 ), + array( 'lhs' => 94, 'rhs' => 3 ), + array( 'lhs' => 94, 'rhs' => 1 ), + array( 'lhs' => 82, 'rhs' => 7 ), + array( 'lhs' => 82, 'rhs' => 7 ), + array( 'lhs' => 95, 'rhs' => 1 ), + array( 'lhs' => 95, 'rhs' => 1 ), + array( 'lhs' => 95, 'rhs' => 1 ), + array( 'lhs' => 91, 'rhs' => 1 ), + array( 'lhs' => 91, 'rhs' => 2 ), + array( 'lhs' => 91, 'rhs' => 1 ), array( 'lhs' => 91, 'rhs' => 3 ), + array( 'lhs' => 91, 'rhs' => 1 ), + array( 'lhs' => 91, 'rhs' => 1 ), + array( 'lhs' => 91, 'rhs' => 1 ), + array( 'lhs' => 91, 'rhs' => 3 ), + array( 'lhs' => 91, 'rhs' => 3 ), + array( 'lhs' => 91, 'rhs' => 2 ), + array( 'lhs' => 91, 'rhs' => 3 ), + array( 'lhs' => 91, 'rhs' => 2 ), + array( 'lhs' => 91, 'rhs' => 3 ), + array( 'lhs' => 91, 'rhs' => 7 ), + array( 'lhs' => 91, 'rhs' => 4 ), + array( 'lhs' => 91, 'rhs' => 8 ), + array( 'lhs' => 91, 'rhs' => 3 ), + array( 'lhs' => 91, 'rhs' => 5 ), + array( 'lhs' => 91, 'rhs' => 6 ), + array( 'lhs' => 91, 'rhs' => 3 ), + array( 'lhs' => 79, 'rhs' => 1 ), + array( 'lhs' => 79, 'rhs' => 4 ), + array( 'lhs' => 79, 'rhs' => 1 ), + array( 'lhs' => 79, 'rhs' => 3 ), + array( 'lhs' => 79, 'rhs' => 3 ), + array( 'lhs' => 83, 'rhs' => 3 ), + array( 'lhs' => 101, 'rhs' => 2 ), + array( 'lhs' => 101, 'rhs' => 0 ), + array( 'lhs' => 103, 'rhs' => 2 ), + array( 'lhs' => 103, 'rhs' => 2 ), + array( 'lhs' => 103, 'rhs' => 2 ), + array( 'lhs' => 103, 'rhs' => 4 ), + array( 'lhs' => 103, 'rhs' => 3 ), + array( 'lhs' => 103, 'rhs' => 5 ), + array( 'lhs' => 103, 'rhs' => 3 ), + array( 'lhs' => 103, 'rhs' => 2 ), + array( 'lhs' => 89, 'rhs' => 1 ), + array( 'lhs' => 89, 'rhs' => 2 ), + array( 'lhs' => 104, 'rhs' => 1 ), + array( 'lhs' => 104, 'rhs' => 3 ), + array( 'lhs' => 102, 'rhs' => 2 ), + array( 'lhs' => 100, 'rhs' => 1 ), + array( 'lhs' => 100, 'rhs' => 2 ), + array( 'lhs' => 105, 'rhs' => 3 ), + array( 'lhs' => 105, 'rhs' => 3 ), + array( 'lhs' => 105, 'rhs' => 5 ), + array( 'lhs' => 105, 'rhs' => 6 ), + array( 'lhs' => 105, 'rhs' => 2 ), + array( 'lhs' => 96, 'rhs' => 4 ), + array( 'lhs' => 98, 'rhs' => 4 ), + array( 'lhs' => 99, 'rhs' => 3 ), + array( 'lhs' => 99, 'rhs' => 1 ), + array( 'lhs' => 99, 'rhs' => 0 ), + array( 'lhs' => 84, 'rhs' => 3 ), + array( 'lhs' => 84, 'rhs' => 2 ), + array( 'lhs' => 85, 'rhs' => 2 ), + array( 'lhs' => 85, 'rhs' => 0 ), + array( 'lhs' => 106, 'rhs' => 2 ), + array( 'lhs' => 106, 'rhs' => 2 ), + array( 'lhs' => 86, 'rhs' => 1 ), + array( 'lhs' => 86, 'rhs' => 2 ), + array( 'lhs' => 86, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 1 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 2 ), + array( 'lhs' => 107, 'rhs' => 2 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 2 ), + array( 'lhs' => 107, 'rhs' => 2 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 107, 'rhs' => 3 ), + array( 'lhs' => 108, 'rhs' => 1 ), + array( 'lhs' => 108, 'rhs' => 1 ), + array( 'lhs' => 108, 'rhs' => 1 ), + array( 'lhs' => 108, 'rhs' => 1 ), + array( 'lhs' => 108, 'rhs' => 1 ), + array( 'lhs' => 108, 'rhs' => 1 ), + array( 'lhs' => 108, 'rhs' => 1 ), + array( 'lhs' => 108, 'rhs' => 1 ), array( 'lhs' => 109, 'rhs' => 1 ), - array( 'lhs' => 109, 'rhs' => 3 ), - array( 'lhs' => 109, 'rhs' => 0 ), - array( 'lhs' => 110, 'rhs' => 3 ), - array( 'lhs' => 110, 'rhs' => 3 ), + array( 'lhs' => 109, 'rhs' => 1 ), + array( 'lhs' => 109, 'rhs' => 1 ), + array( 'lhs' => 92, 'rhs' => 3 ), array( 'lhs' => 110, 'rhs' => 1 ), - array( 'lhs' => 96, 'rhs' => 2 ), - array( 'lhs' => 96, 'rhs' => 1 ), + array( 'lhs' => 110, 'rhs' => 3 ), + array( 'lhs' => 110, 'rhs' => 0 ), array( 'lhs' => 111, 'rhs' => 3 ), array( 'lhs' => 111, 'rhs' => 3 ), - array( 'lhs' => 111, 'rhs' => 2 ), - array( 'lhs' => 111, 'rhs' => 3 ), - array( 'lhs' => 111, 'rhs' => 3 ), - array( 'lhs' => 111, 'rhs' => 2 ), - array( 'lhs' => 111, 'rhs' => 2 ), - array( 'lhs' => 111, 'rhs' => 2 ), array( 'lhs' => 111, 'rhs' => 1 ), - array( 'lhs' => 77, 'rhs' => 2 ), - array( 'lhs' => 77, 'rhs' => 1 ), - array( 'lhs' => 112, 'rhs' => 1 ), + array( 'lhs' => 97, 'rhs' => 2 ), + array( 'lhs' => 97, 'rhs' => 1 ), + array( 'lhs' => 112, 'rhs' => 3 ), + array( 'lhs' => 112, 'rhs' => 3 ), + array( 'lhs' => 112, 'rhs' => 2 ), + array( 'lhs' => 112, 'rhs' => 3 ), + array( 'lhs' => 112, 'rhs' => 3 ), + array( 'lhs' => 112, 'rhs' => 2 ), + array( 'lhs' => 112, 'rhs' => 2 ), + array( 'lhs' => 112, 'rhs' => 2 ), array( 'lhs' => 112, 'rhs' => 1 ), + array( 'lhs' => 78, 'rhs' => 2 ), + array( 'lhs' => 78, 'rhs' => 1 ), + array( 'lhs' => 113, 'rhs' => 1 ), + array( 'lhs' => 113, 'rhs' => 1 ), ); /** @@ -1811,32 +1811,32 @@ static public $yy_action = array( 0 => 0, 46 => 0, 55 => 0, - 56 => 0, - 58 => 0, + 57 => 0, 59 => 0, 60 => 0, - 76 => 0, - 145 => 0, + 61 => 0, + 77 => 0, + 146 => 0, 1 => 1, 43 => 1, 49 => 1, 52 => 1, 53 => 1, - 90 => 1, - 113 => 1, - 152 => 1, - 161 => 1, - 163 => 1, + 91 => 1, + 114 => 1, + 153 => 1, + 162 => 1, 164 => 1, 165 => 1, + 166 => 1, 2 => 2, - 80 => 2, - 151 => 2, - 159 => 2, - 162 => 2, + 81 => 2, + 152 => 2, + 160 => 2, + 163 => 2, 3 => 3, 4 => 3, - 5 => 5, + 5 => 3, 6 => 6, 7 => 7, 8 => 8, @@ -1846,9 +1846,9 @@ static public $yy_action = array( 12 => 12, 13 => 13, 14 => 14, - 16 => 14, - 17 => 14, 15 => 15, + 16 => 15, + 17 => 15, 18 => 18, 19 => 18, 20 => 20, @@ -1860,8 +1860,8 @@ static public $yy_action = array( 26 => 26, 27 => 27, 34 => 27, - 105 => 27, - 150 => 27, + 106 => 27, + 151 => 27, 28 => 28, 29 => 29, 30 => 30, @@ -1879,17 +1879,17 @@ static public $yy_action = array( 44 => 44, 45 => 45, 47 => 47, + 56 => 47, 48 => 48, 50 => 50, 51 => 50, 54 => 54, - 57 => 57, - 61 => 61, + 58 => 58, 62 => 62, 63 => 63, - 65 => 63, 64 => 64, - 66 => 66, + 66 => 64, + 65 => 65, 67 => 67, 68 => 68, 69 => 69, @@ -1899,24 +1899,24 @@ static public $yy_action = array( 73 => 73, 74 => 74, 75 => 75, - 77 => 77, + 76 => 76, 78 => 78, 79 => 79, - 81 => 81, - 110 => 81, + 80 => 80, 82 => 82, + 111 => 82, 83 => 83, 84 => 84, 85 => 85, - 88 => 85, 86 => 86, + 89 => 86, 87 => 87, - 89 => 89, - 91 => 91, + 88 => 88, + 90 => 90, 92 => 92, 93 => 93, - 115 => 93, 94 => 94, + 116 => 94, 95 => 95, 96 => 96, 97 => 97, @@ -1927,30 +1927,30 @@ static public $yy_action = array( 102 => 102, 103 => 103, 104 => 104, - 106 => 106, + 105 => 105, 107 => 107, 108 => 108, 109 => 109, - 111 => 111, + 110 => 110, 112 => 112, - 114 => 114, - 116 => 116, + 113 => 113, + 115 => 115, 117 => 117, - 120 => 117, - 131 => 117, 118 => 118, + 121 => 118, + 132 => 118, 119 => 119, - 121 => 121, + 120 => 120, 122 => 122, 123 => 123, - 128 => 123, 124 => 124, - 127 => 124, + 129 => 124, 125 => 125, - 130 => 125, + 128 => 125, 126 => 126, - 129 => 126, - 132 => 132, + 131 => 126, + 127 => 127, + 130 => 127, 133 => 133, 134 => 134, 135 => 135, @@ -1963,17 +1963,18 @@ static public $yy_action = array( 142 => 142, 143 => 143, 144 => 144, - 146 => 146, + 145 => 145, 147 => 147, 148 => 148, 149 => 149, - 153 => 153, + 150 => 150, 154 => 154, 155 => 155, 156 => 156, 157 => 157, 158 => 158, - 160 => 160, + 159 => 159, + 161 => 161, ); /* Beginning here are the reduction cases. A typical example ** follows: @@ -1983,34 +1984,34 @@ static public $yy_action = array( */ #line 80 "internal.templateparser.y" function yy_r0(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 1991 "internal.templateparser.php" +#line 1992 "internal.templateparser.php" #line 86 "internal.templateparser.y" function yy_r1(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 1994 "internal.templateparser.php" +#line 1995 "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 1997 "internal.templateparser.php" +#line 1998 "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 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 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 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 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 2016 "internal.templateparser.php" +#line 2005 "internal.templateparser.php" +#line 112 "internal.templateparser.y" + function yy_r6(){ preg_match('/\s*/',$this->yystack[$this->yyidx + -2]->minor,$s); $this->_retvalue = $s[0]; } +#line 2008 "internal.templateparser.php" #line 115 "internal.templateparser.y" - function yy_r9(){if ($this->sec_obj->php_handling == SMARTY_PHP_PASSTHRU) { + function yy_r7(){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 2011 "internal.templateparser.php" +#line 117 "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->left_delimiter, $this->compiler,false,false); } +#line 2014 "internal.templateparser.php" +#line 119 "internal.templateparser.y" + function yy_r9(){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 2017 "internal.templateparser.php" +#line 121 "internal.templateparser.y" + function yy_r10(){if ($this->sec_obj->php_handling == SMARTY_PHP_PASSTHRU) { $this->_retvalue = $this->cacher->processNocacheCode("yystack[$this->yyidx + -1]->minor)."?>';?>\n", $this->compiler, false, false); } elseif ($this->sec_obj->php_handling == SMARTY_PHP_QUOTE) { $this->_retvalue = $this->cacher->processNocacheCode(htmlspecialchars('yystack[$this->yyidx + -1]->minor.'?>', ENT_QUOTES), $this->compiler, false, false); @@ -2020,9 +2021,9 @@ static public $yy_action = array( $this->_retvalue = ''; } } -#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]; +#line 2029 "internal.templateparser.php" +#line 132 "internal.templateparser.y" + function yy_r11(){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) { $this->_retvalue .= $this->cacher->processNocacheCode("yystack[$this->yyidx + -1]->minor."?>'?>\n", $this->compiler, false, false); } elseif ($this->sec_obj->php_handling == SMARTY_PHP_QUOTE) { @@ -2031,32 +2032,29 @@ static public $yy_action = array( $this->_retvalue .= ''; } } -#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 2042 "internal.templateparser.php" -#line 138 "internal.templateparser.y" - function yy_r12(){$this->_retvalue = $this->cacher->processNocacheCode("';?>\n", $this->compiler, true, true); } -#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 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 2051 "internal.templateparser.php" -#line 148 "internal.templateparser.y" - function yy_r15(){ $this->_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 2040 "internal.templateparser.php" +#line 143 "internal.templateparser.y" + function yy_r12(){preg_match('/\s*/',$this->yystack[$this->yyidx + 0]->minor,$s); $this->_retvalue = $s[0].$this->cacher->processNocacheCode("", $this->compiler, true, true); } +#line 2043 "internal.templateparser.php" +#line 144 "internal.templateparser.y" + function yy_r13(){$this->_retvalue = $this->cacher->processNocacheCode("';?>\n", $this->compiler, true, true); } +#line 2046 "internal.templateparser.php" +#line 146 "internal.templateparser.y" + function yy_r14(){$this->_retvalue = $this->cacher->processNocacheCode($this->yystack[$this->yyidx + 0]->minor, $this->compiler,false,false); } +#line 2049 "internal.templateparser.php" #line 153 "internal.templateparser.y" + function yy_r15(){ $this->_retvalue = $this->compiler->compileTag('print_expression',array_merge(array('value'=>$this->yystack[$this->yyidx + -1]->minor),$this->yystack[$this->yyidx + 0]->minor)); } +#line 2052 "internal.templateparser.php" +#line 163 "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" +#line 2055 "internal.templateparser.php" +#line 166 "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" +#line 2058 "internal.templateparser.php" +#line 168 "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" +#line 2061 "internal.templateparser.php" +#line 170 "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].");?>"; @@ -2070,50 +2068,50 @@ static public $yy_action = array( } } } -#line 2078 "internal.templateparser.php" -#line 174 "internal.templateparser.y" +#line 2076 "internal.templateparser.php" +#line 184 "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 2084 "internal.templateparser.php" -#line 178 "internal.templateparser.y" +#line 2082 "internal.templateparser.php" +#line 188 "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 2090 "internal.templateparser.php" -#line 183 "internal.templateparser.y" +#line 2088 "internal.templateparser.php" +#line 193 "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 2097 "internal.templateparser.php" -#line 188 "internal.templateparser.y" +#line 2095 "internal.templateparser.php" +#line 198 "internal.templateparser.y" function yy_r26(){ $this->_retvalue = '='.$this->yystack[$this->yyidx + 0]->minor; } -#line 2100 "internal.templateparser.php" -#line 189 "internal.templateparser.y" +#line 2098 "internal.templateparser.php" +#line 199 "internal.templateparser.y" function yy_r27(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2103 "internal.templateparser.php" -#line 191 "internal.templateparser.y" +#line 2101 "internal.templateparser.php" +#line 201 "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" +#line 2108 "internal.templateparser.php" +#line 206 "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" +#line 2115 "internal.templateparser.php" +#line 213 "internal.templateparser.y" function yy_r30(){ $this->_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" +#line 2118 "internal.templateparser.php" +#line 214 "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].");?>"; @@ -2127,38 +2125,38 @@ static public $yy_action = array( } } } -#line 2135 "internal.templateparser.php" -#line 218 "internal.templateparser.y" +#line 2133 "internal.templateparser.php" +#line 228 "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" +#line 2136 "internal.templateparser.php" +#line 235 "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 2139 "internal.templateparser.php" #line 239 "internal.templateparser.y" - 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" + function yy_r35(){ $this->_retvalue = array(); } +#line 2142 "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(){$this->_retvalue = '$_smarty_tpl->getStreamVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'://'. $this->yystack[$this->yyidx + 0]->minor . '\')'; } -#line 2165 "internal.templateparser.php" + function yy_r36(){ $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor); } +#line 2145 "internal.templateparser.php" +#line 244 "internal.templateparser.y" + function yy_r38(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor=>'true'); } +#line 2148 "internal.templateparser.php" +#line 249 "internal.templateparser.y" + function yy_r39(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } +#line 2151 "internal.templateparser.php" +#line 250 "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 2154 "internal.templateparser.php" #line 252 "internal.templateparser.y" + function yy_r41(){ $this->_retvalue = array('var' => $this->yystack[$this->yyidx + -2]->minor, 'value'=>$this->yystack[$this->yyidx + 0]->minor); } +#line 2157 "internal.templateparser.php" +#line 258 "internal.templateparser.y" + function yy_r42(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } +#line 2160 "internal.templateparser.php" +#line 261 "internal.templateparser.y" + function yy_r44(){$this->_retvalue = '$_smarty_tpl->getStreamVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'://'. $this->yystack[$this->yyidx + 0]->minor . '\')'; } +#line 2163 "internal.templateparser.php" +#line 262 "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].")"; @@ -2172,270 +2170,270 @@ static public $yy_action = array( } } } -#line 2180 "internal.templateparser.php" -#line 269 "internal.templateparser.y" +#line 2178 "internal.templateparser.php" +#line 279 "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" +#line 2181 "internal.templateparser.php" +#line 281 "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" +#line 2184 "internal.templateparser.php" +#line 288 "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" +#line 2187 "internal.templateparser.php" +#line 302 "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 = "'".$this->yystack[$this->yyidx + -1]->minor."'"; } -#line 2201 "internal.templateparser.php" +#line 2190 "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->_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" + function yy_r58(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2193 "internal.templateparser.php" #line 317 "internal.templateparser.y" - 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" + function yy_r62(){ $this->_retvalue = "(". $this->yystack[$this->yyidx + -1]->minor .")"; } +#line 2196 "internal.templateparser.php" +#line 319 "internal.templateparser.y" + function yy_r63(){ $this->_retvalue = "'".$this->yystack[$this->yyidx + -1]->minor."'"; } +#line 2199 "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" + function yy_r64(){ $this->_retvalue = "''"; } +#line 2202 "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" + function yy_r65(){ $this->_retvalue = '"'.$this->yystack[$this->yyidx + -1]->minor.'"'; } +#line 2205 "internal.templateparser.php" +#line 325 "internal.templateparser.y" + function yy_r67(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2208 "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" + function yy_r68(){ $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 2211 "internal.templateparser.php" +#line 328 "internal.templateparser.y" + function yy_r69(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor.'::'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2214 "internal.templateparser.php" +#line 329 "internal.templateparser.y" + function yy_r70(){ $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 2217 "internal.templateparser.php" +#line 331 "internal.templateparser.y" + function yy_r71(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2220 "internal.templateparser.php" +#line 333 "internal.templateparser.y" + function yy_r72(){ $this->_retvalue = $this->yystack[$this->yyidx + -4]->minor.'::$'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2223 "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 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 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" + function yy_r73(){ $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 2226 "internal.templateparser.php" +#line 337 "internal.templateparser.y" + function yy_r74(){ $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 2229 "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" + function yy_r75(){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 2233 "internal.templateparser.php" +#line 349 "internal.templateparser.y" + function yy_r76(){ $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 2236 "internal.templateparser.php" +#line 353 "internal.templateparser.y" + function yy_r78(){$this->_retvalue = '$_smarty_tpl->getConfigVariable(\''. $this->yystack[$this->yyidx + -1]->minor .'\')'; } +#line 2239 "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 2253 "internal.templateparser.php" -#line 359 "internal.templateparser.y" - 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 + 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 + -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 { + function yy_r79(){$this->_retvalue = '$_smarty_tpl->getConfigVariable('. $this->yystack[$this->yyidx + -1]->minor .')'; } +#line 2242 "internal.templateparser.php" +#line 357 "internal.templateparser.y" + function yy_r80(){$this->_retvalue = array('var'=>$this->yystack[$this->yyidx + -1]->minor, 'index'=>$this->yystack[$this->yyidx + 0]->minor); } +#line 2245 "internal.templateparser.php" +#line 365 "internal.templateparser.y" + function yy_r82(){return; } +#line 2248 "internal.templateparser.php" +#line 369 "internal.templateparser.y" + function yy_r83(){ $this->_retvalue = "['". $this->yystack[$this->yyidx + 0]->minor ."']"; } +#line 2251 "internal.templateparser.php" +#line 370 "internal.templateparser.y" + function yy_r84(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + 0]->minor ."]"; } +#line 2254 "internal.templateparser.php" +#line 371 "internal.templateparser.y" + function yy_r85(){ $this->_retvalue = "[".$this->yystack[$this->yyidx + 0]->minor."]"; } +#line 2257 "internal.templateparser.php" +#line 372 "internal.templateparser.y" + function yy_r86(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + -1]->minor ."]"; } +#line 2260 "internal.templateparser.php" +#line 374 "internal.templateparser.y" + function yy_r87(){ $this->_retvalue = '['.$this->compiler->compileTag('internal_smarty_var','[\'section\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\'][\'index\']').']'; } +#line 2263 "internal.templateparser.php" +#line 375 "internal.templateparser.y" + function yy_r88(){ $this->_retvalue = '['.$this->compiler->compileTag('internal_smarty_var','[\'section\'][\''.$this->yystack[$this->yyidx + -3]->minor.'\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\']').']'; } +#line 2266 "internal.templateparser.php" +#line 379 "internal.templateparser.y" + function yy_r90(){$this->_retvalue = ''; } +#line 2269 "internal.templateparser.php" +#line 387 "internal.templateparser.y" + function yy_r92(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2272 "internal.templateparser.php" +#line 389 "internal.templateparser.y" + function yy_r93(){$this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } +#line 2275 "internal.templateparser.php" +#line 391 "internal.templateparser.y" + function yy_r94(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2278 "internal.templateparser.php" +#line 396 "internal.templateparser.y" + function yy_r95(){ 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 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 2293 "internal.templateparser.php" -#line 393 "internal.templateparser.y" - 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 + -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 2282 "internal.templateparser.php" +#line 399 "internal.templateparser.y" + function yy_r96(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } +#line 2285 "internal.templateparser.php" +#line 401 "internal.templateparser.y" + function yy_r97(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2288 "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)) { + function yy_r98(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2291 "internal.templateparser.php" +#line 404 "internal.templateparser.y" + function yy_r99(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } +#line 2294 "internal.templateparser.php" +#line 405 "internal.templateparser.y" + function yy_r100(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } +#line 2297 "internal.templateparser.php" +#line 406 "internal.templateparser.y" + function yy_r101(){ $this->_retvalue = '->{\''.$this->yystack[$this->yyidx + -4]->minor.'\'.'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } +#line 2300 "internal.templateparser.php" +#line 408 "internal.templateparser.y" + function yy_r102(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2303 "internal.templateparser.php" +#line 414 "internal.templateparser.y" + function yy_r103(){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 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,'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 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 = $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.','.$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 2312 "internal.templateparser.php" +#line 425 "internal.templateparser.y" + function yy_r104(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". $this->yystack[$this->yyidx + -1]->minor .")"; } +#line 2315 "internal.templateparser.php" +#line 429 "internal.templateparser.y" + function yy_r105(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.",".$this->yystack[$this->yyidx + 0]->minor; } +#line 2318 "internal.templateparser.php" +#line 433 "internal.templateparser.y" + function yy_r107(){ return; } +#line 2321 "internal.templateparser.php" +#line 438 "internal.templateparser.y" + function yy_r108(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor,'false'); } +#line 2324 "internal.templateparser.php" +#line 439 "internal.templateparser.y" + function yy_r109(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor,'true'); } +#line 2327 "internal.templateparser.php" +#line 451 "internal.templateparser.y" + function yy_r110(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2330 "internal.templateparser.php" +#line 455 "internal.templateparser.y" + function yy_r112(){$this->_retvalue = ','.$this->yystack[$this->yyidx + 0]->minor; } +#line 2333 "internal.templateparser.php" +#line 456 "internal.templateparser.y" + function yy_r113(){$this->_retvalue = ',\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } +#line 2336 "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 2356 "internal.templateparser.php" -#line 464 "internal.templateparser.y" - 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 2362 "internal.templateparser.php" -#line 466 "internal.templateparser.y" - 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 2368 "internal.templateparser.php" + function yy_r115(){$this->_retvalue = '!'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2339 "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" + function yy_r117(){$this->_retvalue =$this->yystack[$this->yyidx + 0]->minor; } +#line 2342 "internal.templateparser.php" +#line 470 "internal.templateparser.y" + function yy_r118(){$this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2345 "internal.templateparser.php" +#line 471 "internal.templateparser.y" + function yy_r119(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2348 "internal.templateparser.php" +#line 472 "internal.templateparser.y" + function yy_r120(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.',(array)'.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2351 "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" + function yy_r122(){$this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2354 "internal.templateparser.php" +#line 475 "internal.templateparser.y" + function yy_r123(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2357 "internal.templateparser.php" #line 476 "internal.templateparser.y" - function yy_r133(){$this->_retvalue = '=='; } -#line 2377 "internal.templateparser.php" + function yy_r124(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2360 "internal.templateparser.php" #line 477 "internal.templateparser.y" - function yy_r134(){$this->_retvalue = '!='; } -#line 2380 "internal.templateparser.php" + function yy_r125(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2363 "internal.templateparser.php" #line 478 "internal.templateparser.y" - function yy_r135(){$this->_retvalue = '>'; } -#line 2383 "internal.templateparser.php" + function yy_r126(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2366 "internal.templateparser.php" #line 479 "internal.templateparser.y" - function yy_r136(){$this->_retvalue = '<'; } -#line 2386 "internal.templateparser.php" -#line 480 "internal.templateparser.y" - function yy_r137(){$this->_retvalue = '>='; } -#line 2389 "internal.templateparser.php" -#line 481 "internal.templateparser.y" - function yy_r138(){$this->_retvalue = '<='; } -#line 2392 "internal.templateparser.php" -#line 482 "internal.templateparser.y" - 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" + function yy_r127(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2369 "internal.templateparser.php" #line 485 "internal.templateparser.y" - function yy_r141(){$this->_retvalue = '&&'; } -#line 2401 "internal.templateparser.php" -#line 486 "internal.templateparser.y" - function yy_r142(){$this->_retvalue = '||'; } -#line 2404 "internal.templateparser.php" + function yy_r133(){$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 2372 "internal.templateparser.php" #line 487 "internal.templateparser.y" - function yy_r143(){$this->_retvalue = ' XOR '; } -#line 2407 "internal.templateparser.php" + function yy_r134(){$this->_retvalue = '=='; } +#line 2375 "internal.templateparser.php" +#line 488 "internal.templateparser.y" + function yy_r135(){$this->_retvalue = '!='; } +#line 2378 "internal.templateparser.php" +#line 489 "internal.templateparser.y" + function yy_r136(){$this->_retvalue = '>'; } +#line 2381 "internal.templateparser.php" +#line 490 "internal.templateparser.y" + function yy_r137(){$this->_retvalue = '<'; } +#line 2384 "internal.templateparser.php" +#line 491 "internal.templateparser.y" + function yy_r138(){$this->_retvalue = '>='; } +#line 2387 "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" + function yy_r139(){$this->_retvalue = '<='; } +#line 2390 "internal.templateparser.php" +#line 493 "internal.templateparser.y" + function yy_r140(){$this->_retvalue = '==='; } +#line 2393 "internal.templateparser.php" #line 494 "internal.templateparser.y" - 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(){ return; } -#line 2416 "internal.templateparser.php" + function yy_r141(){$this->_retvalue = '!=='; } +#line 2396 "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 2419 "internal.templateparser.php" + function yy_r142(){$this->_retvalue = '&&'; } +#line 2399 "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" + function yy_r143(){$this->_retvalue = '||'; } +#line 2402 "internal.templateparser.php" +#line 498 "internal.templateparser.y" + function yy_r144(){$this->_retvalue = ' XOR '; } +#line 2405 "internal.templateparser.php" +#line 503 "internal.templateparser.y" + function yy_r145(){ $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2408 "internal.templateparser.php" +#line 505 "internal.templateparser.y" + function yy_r147(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor; } +#line 2411 "internal.templateparser.php" #line 506 "internal.templateparser.y" - function yy_r153(){$this->_retvalue = "`".$this->yystack[$this->yyidx + -1]->minor."`"; } -#line 2425 "internal.templateparser.php" + function yy_r148(){ return; } +#line 2414 "internal.templateparser.php" #line 507 "internal.templateparser.y" - function yy_r154(){$this->_retvalue = '".'.$this->yystack[$this->yyidx + -1]->minor.'."'; $this->compiler->has_variable_string = true; } -#line 2428 "internal.templateparser.php" + function yy_r149(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2417 "internal.templateparser.php" #line 508 "internal.templateparser.y" - 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->_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(){ 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" + function yy_r150(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2420 "internal.templateparser.php" +#line 517 "internal.templateparser.y" + function yy_r154(){$this->_retvalue = "`".$this->yystack[$this->yyidx + -1]->minor."`"; } +#line 2423 "internal.templateparser.php" +#line 518 "internal.templateparser.y" + function yy_r155(){$this->_retvalue = '".'.$this->yystack[$this->yyidx + -1]->minor.'."'; $this->compiler->has_variable_string = true; } +#line 2426 "internal.templateparser.php" +#line 519 "internal.templateparser.y" + function yy_r156(){$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 2429 "internal.templateparser.php" +#line 520 "internal.templateparser.y" + function yy_r157(){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 2432 "internal.templateparser.php" +#line 521 "internal.templateparser.y" + function yy_r158(){ 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 2435 "internal.templateparser.php" +#line 522 "internal.templateparser.y" + function yy_r159(){$this->_retvalue = '$'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2438 "internal.templateparser.php" +#line 524 "internal.templateparser.y" + function yy_r161(){$this->_retvalue = '`'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2441 "internal.templateparser.php" /** * placeholder for the left hand side in a reduce operation. @@ -2552,7 +2550,7 @@ static public $yy_action = array( $this->internalError = true; $this->yymajor = $yymajor; $this->compiler->trigger_template_error(); -#line 2561 "internal.templateparser.php" +#line 2559 "internal.templateparser.php" } /** @@ -2576,7 +2574,7 @@ static public $yy_action = array( $this->internalError = false; $this->retvalue = $this->_retvalue; //echo $this->retvalue."\n\n"; -#line 2586 "internal.templateparser.php" +#line 2584 "internal.templateparser.php" } /** diff --git a/libs/sysplugins/method.clear_cache.php b/libs/sysplugins/method.clear_cache.php index bbda00ec..52e17920 100644 --- a/libs/sysplugins/method.clear_cache.php +++ b/libs/sysplugins/method.clear_cache.php @@ -24,15 +24,13 @@ function clear_cache($smarty, $template_name, $cache_id = null, $compile_id = null, $exp_time = null, $type = 'file') { // load cache resource - if (!isset($smarty->cache_resource_objects[$type])) { - $_cache_resource_class = 'Smarty_Internal_CacheResource_' . $type; - if (!$smarty->loadPlugin($_cache_resource_class)) { - throw new Exception("Undefined cache resource type {$type}"); - } - $smarty->cache_resource_objects[$type] = new $_cache_resource_class($smarty); + $_cache_resource_class = 'Smarty_Internal_CacheResource_' . $type; + if (!$smarty->loadPlugin($_cache_resource_class)) { + throw new Exception("Undefined cache resource type {$type}"); } + $cache_object = new $_cache_resource_class($smarty); - return $smarty->cache_resource_objects[$type]->clear($template_name, $cache_id, $compile_id, $exp_time); + return $cache_object->clear($template_name, $cache_id, $compile_id, $exp_time); } ?> diff --git a/libs/sysplugins/method.config_load.php b/libs/sysplugins/method.config_load.php index f2096fa5..c0aa5cce 100644 --- a/libs/sysplugins/method.config_load.php +++ b/libs/sysplugins/method.config_load.php @@ -20,7 +20,6 @@ function config_load($smarty, $config_file, $sections = null) { // load Config class - $smarty->loadPlugin('Smarty_Internal_Config'); $config = new Smarty_Internal_Config($config_file, $smarty); $config->loadConfigVars($sections, $smarty); }