From 24d5ad78f3ffb1bbd6cd4840088c1fea2575b882 Mon Sep 17 00:00:00 2001 From: "Uwe.Tews" Date: Mon, 29 Mar 2010 15:41:01 +0000 Subject: [PATCH] - bugfix allow array definitions as modifier parameter - bugfix observe compile_check property when loading config files - added the template object as third filter parameter --- change_log.txt | 7 +- libs/Smarty.class.php | 2 +- ...ernal_compile_private_print_expression.php | 4 +- libs/sysplugins/smarty_internal_config.php | 206 +- .../smarty_internal_config_file_compiler.php | 79 +- .../smarty_internal_filter_handler.php | 8 +- .../smarty_internal_templatecompilerbase.php | 4 +- .../smarty_internal_templateparser.php | 1680 +++++++++-------- libs/sysplugins/smarty_internal_utility.php | 31 +- 9 files changed, 1068 insertions(+), 953 deletions(-) diff --git a/change_log.txt b/change_log.txt index 0d72c3fd..39c841ef 100644 --- a/change_log.txt +++ b/change_log.txt @@ -1,7 +1,12 @@ +29/03/2010 +- bugfix allow array definitions as modifier parameter +- bugfix observe compile_check property when loading config files +- added the template object as third filter parameter + 25/03/2010 - change of utility->compileAllTemplates() log messages - bugfix on nocache code in {function} tags -- new methode utility->compileAllConfig() to compile all config files +- new method utility->compileAllConfig() to compile all config files 24/03/2010 - bugfix on register->modifier() error messages diff --git a/libs/Smarty.class.php b/libs/Smarty.class.php index 5ff44a20..96ba6fb3 100644 --- a/libs/Smarty.class.php +++ b/libs/Smarty.class.php @@ -329,7 +329,7 @@ class Smarty extends Smarty_Internal_Data { } // return redered template if (isset($this->autoload_filters['output']) || isset($this->registered_filters['output'])) { - $_output = Smarty_Internal_Filter_Handler::runFilter('output', $_template->getRenderedTemplate(), $this); + $_output = Smarty_Internal_Filter_Handler::runFilter('output', $_template->getRenderedTemplate(), $this, $_template); } else { $_output = $_template->getRenderedTemplate(); } diff --git a/libs/sysplugins/smarty_internal_compile_private_print_expression.php b/libs/sysplugins/smarty_internal_compile_private_print_expression.php index 7cfe473d..7f72a76d 100644 --- a/libs/sysplugins/smarty_internal_compile_private_print_expression.php +++ b/libs/sysplugins/smarty_internal_compile_private_print_expression.php @@ -49,7 +49,7 @@ class Smarty_Internal_Compile_Private_Print_Expression extends Smarty_Internal_C // display value $this->compiler->has_output = true; if (isset($this->compiler->smarty->registered_filters['variable'])) { - $output = 'smarty, ' . $_attr['filter'] . ');?>'; + $output = 'smarty, $_smarty_tpl, ' . $_attr['filter'] . ');?>'; } else { $output = ''; } @@ -58,4 +58,4 @@ class Smarty_Internal_Compile_Private_Print_Expression extends Smarty_Internal_C } } -?> +?> \ No newline at end of file diff --git a/libs/sysplugins/smarty_internal_config.php b/libs/sysplugins/smarty_internal_config.php index 31b41085..abbfcb93 100644 --- a/libs/sysplugins/smarty_internal_config.php +++ b/libs/sysplugins/smarty_internal_config.php @@ -1,14 +1,14 @@ config_resource_name)) - return $this->config_resource_name; + return $this->config_resource_name; // no tpl file found throw new Exception("Unable to load config file \"{$this->config_resource_name}\""); return false; } /** - * Read config file source - * - * @return string content of source file - */ + * Read config file source + * + * @return string content of source file + */ /** - * Returns the template source code - * - * The template source is being read by the actual resource handler - * - * @return string the template source - */ + * Returns the template source code + * + * The template source is being read by the actual resource handler + * + * @return string the template source + */ public function getConfigSource () { if ($this->config_source === null) { @@ -123,10 +123,10 @@ class Smarty_Internal_Config { } /** - * Returns the compiled filepath - * - * @return string the compiled filepath - */ + * Returns the compiled filepath + * + * @return string the compiled filepath + */ public function getCompiledFilepath () { return $this->compiled_filepath === null ? @@ -152,10 +152,10 @@ class Smarty_Internal_Config { return $_compile_dir . $_filepath . '.' . basename($this->config_resource_name) . '.config' . '.php'; } /** - * Returns the timpestamp of the compiled file - * - * @return integer the file timestamp - */ + * Returns the timpestamp of the compiled file + * + * @return integer the file timestamp + */ public function getCompiledTimestamp () { return $this->compiled_timestamp === null ? @@ -163,98 +163,98 @@ class Smarty_Internal_Config { $this->compiled_timestamp; } /** - * Returns if the current config file must be compiled - * - * It does compare the timestamps of config source and the compiled config and checks the force compile configuration - * - * @return boolean true if the file must be compiled - */ + * Returns if the current config file must be compiled + * + * It does compare the timestamps of config source and the compiled config and checks the force compile configuration + * + * @return boolean true if the file must be compiled + */ public function mustCompile () { return $this->mustCompile === null ? - $this->mustCompile = ($this->smarty->force_compile || $this->getCompiledTimestamp () !== $this->getTimestamp ()): - $this->mustCompile; - } - /** - * Returns the compiled config file - * - * It checks if the config file must be compiled or just read the compiled version - * - * @return string the compiled config file - */ - public function getCompiledConfig () - { - if ($this->compiled_config === null) { - // see if template needs compiling. - if ($this->mustCompile()) { - $this->compileConfigSource(); + $this->mustCompile = ($this->smarty->force_compile || $this->smarty->compile_check && $this->getCompiledTimestamp () !== $this->getTimestamp ()): + $this->mustCompile; + } + /** + * Returns the compiled config file + * + * It checks if the config file must be compiled or just read the compiled version + * + * @return string the compiled config file + */ + public function getCompiledConfig () + { + if ($this->compiled_config === null) { + // see if template needs compiling. + if ($this->mustCompile()) { + $this->compileConfigSource(); + } else { + $this->compiled_config = file_get_contents($this->getCompiledFilepath()); + } + } + return $this->compiled_config; + } + + /** + * Compiles the config files + */ + public function compileConfigSource () + { + // compile template + if (!is_object($this->compiler_object)) { + // load compiler + $this->compiler_object = new Smarty_Internal_Config_File_Compiler($this->smarty); + } + // call compiler + if ($this->compiler_object->compileSource($this)) { + // compiling succeded + // write compiled template + Smarty_Internal_Write_File::writeFile($this->getCompiledFilepath(), $this->getCompiledConfig(), $this->smarty); + // make template and compiled file timestamp match + touch($this->getCompiledFilepath(), $this->getTimestamp()); } else { - $this->compiled_config = file_get_contents($this->getCompiledFilepath()); + // error compiling template + throw new Exception("Error compiling template {$this->getConfigFilepath ()}"); + return false; } } - return $this->compiled_config; - } - /** - * Compiles the config files - */ - public function compileConfigSource () - { - // compile template - if (!is_object($this->compiler_object)) { - // load compiler - $this->compiler_object = new Smarty_Internal_Config_File_Compiler($this->smarty); - } - // call compiler - if ($this->compiler_object->compileSource($this)) { - // compiling succeded - // write compiled template - Smarty_Internal_Write_File::writeFile($this->getCompiledFilepath(), $this->getCompiledConfig(), $this->smarty); - // make template and compiled file timestamp match - touch($this->getCompiledFilepath(), $this->getTimestamp()); - } else { - // error compiling template - throw new Exception("Error compiling template {$this->getConfigFilepath ()}"); - return false; - } - } - - /* + /* * load config variables * * @param mixed $sections array of section names, single section or null * @param object $scope global,parent or local */ - public function loadConfigVars ($sections = null, $scope) - { - if (isset($this->template)) { - $this->template->properties['file_dependency'][sha1($this->getConfigFilepath())] = array($this->getConfigFilepath(), $this->getTimestamp()); - } else { - $this->smarty->properties['file_dependency'][sha1($this->getConfigFilepath())] = array($this->getConfigFilepath(), $this->getTimestamp()); - } - $config_data = unserialize($this->getCompiledConfig()); - // var_dump($config_data); - // copy global config vars - foreach ($config_data['vars'] as $variable => $value) { - if ($this->smarty->config_overwrite || !isset($scope->config_vars[$variable])) { - $scope->config_vars[$variable] = $value; + public function loadConfigVars ($sections = null, $scope) + { + if (isset($this->template)) { + $this->template->properties['file_dependency'][sha1($this->getConfigFilepath())] = array($this->getConfigFilepath(), $this->getTimestamp()); } else { - $scope->config_vars[$variable] = array_merge((array)$scope->config_vars[$variable], (array)$value); + $this->smarty->properties['file_dependency'][sha1($this->getConfigFilepath())] = array($this->getConfigFilepath(), $this->getTimestamp()); } - } - // scan sections - foreach ($config_data['sections'] as $this_section => $dummy) { - if ($sections == null || in_array($this_section, (array)$sections)) { - foreach ($config_data['sections'][$this_section]['vars'] as $variable => $value) { - if ($this->smarty->config_overwrite || !isset($scope->config_vars[$variable])) { - $scope->config_vars[$variable] = $value; - } else { - $scope->config_vars[$variable] = array_merge((array)$scope->config_vars[$variable], (array)$value); + $config_data = unserialize($this->getCompiledConfig()); + // var_dump($config_data); + // copy global config vars + foreach ($config_data['vars'] as $variable => $value) { + if ($this->smarty->config_overwrite || !isset($scope->config_vars[$variable])) { + $scope->config_vars[$variable] = $value; + } else { + $scope->config_vars[$variable] = array_merge((array)$scope->config_vars[$variable], (array)$value); + } + } + // scan sections + foreach ($config_data['sections'] as $this_section => $dummy) { + if ($sections == null || in_array($this_section, (array)$sections)) { + foreach ($config_data['sections'][$this_section]['vars'] as $variable => $value) { + if ($this->smarty->config_overwrite || !isset($scope->config_vars[$variable])) { + $scope->config_vars[$variable] = $value; + } else { + $scope->config_vars[$variable] = array_merge((array)$scope->config_vars[$variable], (array)$value); + } } } } } } -} -?> + ?> \ No newline at end of file diff --git a/libs/sysplugins/smarty_internal_config_file_compiler.php b/libs/sysplugins/smarty_internal_config_file_compiler.php index 15479111..f120b56d 100644 --- a/libs/sysplugins/smarty_internal_config_file_compiler.php +++ b/libs/sysplugins/smarty_internal_config_file_compiler.php @@ -1,23 +1,23 @@ smarty = $smarty; @@ -29,19 +29,19 @@ class Smarty_Internal_Config_File_Compiler { } /** - * Methode to compile a Smarty template - * - * @param $template template object to compile - * @return bool true if compiling succeeded, false if it failed - */ + * Methode to compile a Smarty template + * + * @param $template template object to compile + * @return bool true if compiling succeeded, false if it failed + */ public function compileSource($config) { /* here is where the compiling takes place. Smarty tags in the templates are replaces with PHP code, - then written to compiled files. */ - $this->config = $config; - // get config file source - $_content = $config->getConfigSource()."\n"; + then written to compiled files. */ + $this->config = $config; + // get config file source + $_content = $config->getConfigSource() . "\n"; // on empty template just return if ($_content == '') { return true; @@ -49,10 +49,10 @@ class Smarty_Internal_Config_File_Compiler { // init the lexer/parser to compile the config file $lex = new Smarty_Internal_Configfilelexer($_content, $this->smarty); $parser = new Smarty_Internal_Configfileparser($lex, $this); - // $parser->PrintTrace(); + if (isset($this->smarty->_parserdebug)) $parser->PrintTrace(); // get tokens from lexer and parse them while ($lex->yylex()) { - // echo "
Parsing {$parser->yyTokenName[$lex->token]} Token {$lex->value} Line {$lex->line} \n"; + if (isset($this->smarty->_parserdebug)) echo "
Parsing {$parser->yyTokenName[$lex->token]} Token {$lex->value} Line {$lex->line} \n"; $parser->doParse($lex->token, $lex->value); } // finish parsing process @@ -67,16 +67,16 @@ class Smarty_Internal_Config_File_Compiler { } } /** - * display compiler error messages without dying - * - * If parameter $args is empty it is a parser detected syntax error. - * In this case the parser is called to obtain information about exspected tokens. - * - * If parameter $args contains a string this is used as error message - * - * @todo output exact position of parse error in source line - * @param $args string individual error message or null - */ + * display compiler error messages without dying + * + * If parameter $args is empty it is a parser detected syntax error. + * In this case the parser is called to obtain information about exspected tokens. + * + * If parameter $args contains a string this is used as error message + * + * @todo output exact position of parse error in source line + * @param $args string individual error message or null + */ public function trigger_config_file_error($args = null) { $this->lex = Smarty_Internal_Configfilelexer::instance(); @@ -84,7 +84,7 @@ class Smarty_Internal_Config_File_Compiler { // get template source line which has error $line = $this->lex->line; if (isset($args)) { -// $line--; + // $line--; } $match = preg_split("/\n/", $this->lex->data); $error_text = "Syntax error in config file '{$this->config->getConfigFilepath()}' on line {$line} '{$match[$line-1]}' "; @@ -106,11 +106,10 @@ class Smarty_Internal_Config_File_Compiler { // output parser error message $error_text .= ' - Unexpected "' . $this->lex->value . '", expected one of: ' . implode(' , ', $expect); } - throw new Exception($error_text); + throw new Exception($error_text); // set error flag $this->compile_error = true; } - } -?> +?> \ No newline at end of file diff --git a/libs/sysplugins/smarty_internal_filter_handler.php b/libs/sysplugins/smarty_internal_filter_handler.php index a8a43d48..0ab058cb 100644 --- a/libs/sysplugins/smarty_internal_filter_handler.php +++ b/libs/sysplugins/smarty_internal_filter_handler.php @@ -26,7 +26,7 @@ class Smarty_Internal_Filter_Handler { * @param string $content the content which shall be processed by the filters * @return string the filtered content */ - static function runFilter($type, $content, $smarty, $flag = null) + static function runFilter($type, $content, $smarty, $template, $flag = null) { $output = $content; if ($type != 'variable' || ($smarty->variable_filter && $flag !== false) || $flag === true) { @@ -40,7 +40,7 @@ class Smarty_Internal_Filter_Handler { $output = $plugin_name($output, $smarty); } elseif (class_exists($plugin_name, false)) { // loaded class of filter plugin - $output = call_user_func(array($plugin_name, 'execute'), $output, $smarty); + $output = call_user_func(array($plugin_name, 'execute'), $output, $smarty, $template); } } else { // nothing found, throw exception @@ -52,9 +52,9 @@ class Smarty_Internal_Filter_Handler { if (!empty($smarty->registered_filters[$type])) { foreach ($smarty->registered_filters[$type] as $key => $name) { if (is_array($smarty->registered_filters[$type][$key])) { - $output = call_user_func($smarty->registered_filters[$type][$key], $output, $smarty); + $output = call_user_func($smarty->registered_filters[$type][$key], $output, $smarty, $template); } else { - $output = $smarty->registered_filters[$type][$key]($output, $smarty); + $output = $smarty->registered_filters[$type][$key]($output, $smarty, $template); } } } diff --git a/libs/sysplugins/smarty_internal_templatecompilerbase.php b/libs/sysplugins/smarty_internal_templatecompilerbase.php index 0b008903..b036c797 100644 --- a/libs/sysplugins/smarty_internal_templatecompilerbase.php +++ b/libs/sysplugins/smarty_internal_templatecompilerbase.php @@ -69,7 +69,7 @@ class Smarty_Internal_TemplateCompilerBase { $_content = $template->getTemplateSource(); // run prefilter if required if (isset($this->smarty->autoload_filters['pre']) || isset($this->smarty->registered_filters['pre'])) { - $_content = Smarty_Internal_Filter_Handler::runFilter('pre', $_content, $this->smarty); + $_content = Smarty_Internal_Filter_Handler::runFilter('pre', $_content, $this->smarty, $template); } // on empty template just return header if ($_content == '') { @@ -92,7 +92,7 @@ class Smarty_Internal_TemplateCompilerBase { } // run postfilter if required if (isset($this->smarty->autoload_filters['post']) || isset($this->smarty->registered_filters['post'])) { - $template->compiled_template = Smarty_Internal_Filter_Handler::runFilter('post', $template->compiled_template, $this->smarty); + $template->compiled_template = Smarty_Internal_Filter_Handler::runFilter('post', $template->compiled_template, $this->smarty, $template); } return true; } else { diff --git a/libs/sysplugins/smarty_internal_templateparser.php b/libs/sysplugins/smarty_internal_templateparser.php index 578cad6b..e4549565 100644 --- a/libs/sysplugins/smarty_internal_templateparser.php +++ b/libs/sysplugins/smarty_internal_templateparser.php @@ -208,414 +208,516 @@ class Smarty_Internal_Templateparser#line 79 "smarty_internal_templateparser.php const TP_QUOTE = 72; const TP_BACKTICK = 73; const TP_DOLLARID = 74; - const YY_NO_ACTION = 557; - const YY_ACCEPT_ACTION = 556; - const YY_ERROR_ACTION = 555; + const YY_NO_ACTION = 559; + const YY_ACCEPT_ACTION = 558; + const YY_ERROR_ACTION = 557; - const YY_SZ_ACTTAB = 1756; + const YY_SZ_ACTTAB = 2265; static public $yy_action = array( - /* 0 */ 182, 282, 141, 30, 331, 188, 285, 201, 52, 121, - /* 10 */ 105, 275, 321, 161, 327, 310, 312, 311, 322, 181, - /* 20 */ 152, 294, 309, 264, 283, 30, 279, 190, 285, 29, - /* 30 */ 41, 43, 48, 39, 25, 23, 341, 343, 24, 27, - /* 40 */ 344, 345, 15, 17, 556, 84, 260, 298, 300, 30, - /* 50 */ 216, 192, 285, 29, 34, 46, 107, 143, 54, 360, - /* 60 */ 361, 362, 363, 359, 358, 354, 355, 356, 357, 340, - /* 70 */ 339, 182, 282, 181, 30, 328, 102, 285, 101, 49, - /* 80 */ 119, 98, 87, 316, 237, 182, 242, 6, 240, 322, - /* 90 */ 181, 169, 220, 217, 264, 283, 111, 279, 13, 88, - /* 100 */ 313, 41, 43, 48, 39, 25, 23, 341, 343, 24, - /* 110 */ 27, 344, 345, 15, 17, 41, 43, 48, 39, 25, - /* 120 */ 23, 341, 343, 24, 27, 344, 345, 15, 17, 137, - /* 130 */ 360, 361, 362, 363, 359, 358, 354, 355, 356, 357, - /* 140 */ 340, 339, 182, 261, 360, 361, 362, 363, 359, 358, - /* 150 */ 354, 355, 356, 357, 340, 339, 182, 107, 219, 30, - /* 160 */ 169, 181, 285, 32, 334, 157, 31, 13, 165, 246, - /* 170 */ 248, 181, 41, 43, 48, 39, 25, 23, 341, 343, - /* 180 */ 24, 27, 344, 345, 15, 17, 41, 43, 48, 39, - /* 190 */ 25, 23, 341, 343, 24, 27, 344, 345, 15, 17, - /* 200 */ 88, 360, 361, 362, 363, 359, 358, 354, 355, 356, - /* 210 */ 357, 340, 339, 182, 37, 360, 361, 362, 363, 359, - /* 220 */ 358, 354, 355, 356, 357, 340, 339, 182, 350, 318, - /* 230 */ 423, 42, 181, 6, 333, 181, 181, 181, 271, 251, - /* 240 */ 271, 181, 111, 41, 43, 48, 39, 25, 23, 341, - /* 250 */ 343, 24, 27, 344, 345, 15, 17, 41, 43, 48, - /* 260 */ 39, 25, 23, 341, 343, 24, 27, 344, 345, 15, - /* 270 */ 17, 182, 360, 361, 362, 363, 359, 358, 354, 355, - /* 280 */ 356, 357, 340, 339, 131, 138, 360, 361, 362, 363, - /* 290 */ 359, 358, 354, 355, 356, 357, 340, 339, 289, 289, - /* 300 */ 4, 41, 43, 48, 39, 25, 23, 341, 343, 24, - /* 310 */ 27, 344, 345, 15, 17, 182, 297, 298, 300, 299, - /* 320 */ 296, 295, 291, 290, 292, 152, 276, 258, 3, 182, - /* 330 */ 360, 361, 362, 363, 359, 358, 354, 355, 356, 357, - /* 340 */ 340, 339, 155, 327, 125, 41, 43, 48, 39, 25, - /* 350 */ 23, 341, 343, 24, 27, 344, 345, 15, 17, 41, - /* 360 */ 43, 48, 39, 25, 23, 341, 343, 24, 27, 344, - /* 370 */ 345, 15, 17, 244, 360, 361, 362, 363, 359, 358, - /* 380 */ 354, 355, 356, 357, 340, 339, 182, 19, 360, 361, - /* 390 */ 362, 363, 359, 358, 354, 355, 356, 357, 340, 339, - /* 400 */ 182, 226, 114, 154, 167, 42, 319, 159, 270, 95, - /* 410 */ 259, 153, 168, 181, 16, 21, 41, 43, 48, 39, - /* 420 */ 25, 23, 341, 343, 24, 27, 344, 345, 15, 17, - /* 430 */ 41, 43, 48, 39, 25, 23, 341, 343, 24, 27, - /* 440 */ 344, 345, 15, 17, 12, 360, 361, 362, 363, 359, - /* 450 */ 358, 354, 355, 356, 357, 340, 339, 182, 26, 360, - /* 460 */ 361, 362, 363, 359, 358, 354, 355, 356, 357, 340, - /* 470 */ 339, 182, 349, 323, 315, 305, 11, 317, 306, 181, - /* 480 */ 271, 181, 181, 332, 181, 181, 268, 41, 43, 48, - /* 490 */ 39, 25, 23, 341, 343, 24, 27, 344, 345, 15, - /* 500 */ 17, 41, 43, 48, 39, 25, 23, 341, 343, 24, - /* 510 */ 27, 344, 345, 15, 17, 182, 360, 361, 362, 363, - /* 520 */ 359, 358, 354, 355, 356, 357, 340, 339, 200, 281, - /* 530 */ 360, 361, 362, 363, 359, 358, 354, 355, 356, 357, - /* 540 */ 340, 339, 8, 156, 327, 41, 43, 48, 39, 25, - /* 550 */ 23, 341, 343, 24, 27, 344, 345, 15, 17, 182, - /* 560 */ 30, 231, 30, 285, 271, 285, 337, 182, 10, 218, - /* 570 */ 54, 236, 105, 181, 360, 361, 362, 363, 359, 358, - /* 580 */ 354, 355, 356, 357, 340, 339, 181, 160, 279, 41, - /* 590 */ 43, 48, 39, 25, 23, 341, 343, 24, 27, 344, - /* 600 */ 345, 15, 17, 182, 194, 351, 217, 223, 6, 158, - /* 610 */ 327, 353, 181, 36, 233, 106, 250, 111, 360, 361, - /* 620 */ 362, 363, 359, 358, 354, 355, 356, 357, 340, 339, - /* 630 */ 235, 199, 176, 41, 43, 48, 39, 25, 23, 341, - /* 640 */ 343, 24, 27, 344, 345, 15, 17, 182, 263, 224, - /* 650 */ 338, 307, 222, 257, 247, 181, 112, 181, 181, 33, - /* 660 */ 214, 320, 360, 361, 362, 363, 359, 358, 354, 355, - /* 670 */ 356, 357, 340, 339, 206, 215, 280, 41, 43, 48, - /* 680 */ 39, 25, 23, 341, 343, 24, 27, 344, 345, 15, - /* 690 */ 17, 426, 424, 42, 191, 308, 9, 30, 426, 424, - /* 700 */ 285, 30, 181, 9, 195, 221, 360, 361, 362, 363, - /* 710 */ 359, 358, 354, 355, 356, 357, 340, 339, 244, 3, - /* 720 */ 181, 103, 85, 42, 116, 6, 204, 42, 205, 3, - /* 730 */ 123, 115, 171, 6, 111, 125, 197, 30, 330, 47, - /* 740 */ 285, 124, 111, 277, 145, 125, 197, 30, 329, 47, - /* 750 */ 285, 18, 209, 14, 277, 228, 44, 45, 289, 269, - /* 760 */ 265, 287, 211, 22, 88, 1, 44, 45, 130, 269, - /* 770 */ 265, 287, 146, 167, 88, 1, 254, 162, 3, 86, - /* 780 */ 115, 180, 289, 16, 21, 11, 289, 126, 3, 86, - /* 790 */ 115, 170, 132, 147, 125, 197, 149, 163, 47, 133, - /* 800 */ 277, 164, 335, 20, 125, 197, 289, 289, 47, 181, - /* 810 */ 289, 30, 22, 289, 178, 44, 45, 135, 269, 265, - /* 820 */ 287, 288, 14, 88, 1, 44, 45, 288, 269, 265, - /* 830 */ 287, 289, 54, 88, 1, 243, 245, 3, 86, 115, - /* 840 */ 180, 136, 181, 284, 150, 288, 140, 3, 86, 109, - /* 850 */ 180, 167, 266, 125, 197, 96, 326, 47, 289, 120, - /* 860 */ 289, 16, 21, 125, 197, 314, 139, 47, 277, 223, - /* 870 */ 302, 14, 301, 99, 44, 45, 118, 269, 265, 287, - /* 880 */ 289, 22, 88, 1, 44, 45, 277, 269, 265, 287, - /* 890 */ 129, 127, 88, 1, 352, 113, 3, 86, 107, 174, - /* 900 */ 144, 97, 128, 277, 277, 148, 3, 86, 115, 172, - /* 910 */ 167, 134, 125, 177, 277, 277, 47, 234, 252, 289, - /* 920 */ 16, 21, 125, 197, 35, 289, 47, 225, 108, 191, - /* 930 */ 22, 227, 7, 44, 45, 110, 269, 265, 287, 284, - /* 940 */ 22, 88, 1, 44, 45, 151, 269, 265, 287, 90, - /* 950 */ 167, 88, 1, 203, 200, 3, 86, 107, 186, 289, - /* 960 */ 16, 21, 364, 33, 117, 3, 86, 107, 183, 267, - /* 970 */ 142, 125, 197, 275, 256, 47, 104, 229, 2, 262, - /* 980 */ 303, 125, 197, 94, 293, 47, 54, 284, 202, 22, - /* 990 */ 40, 28, 44, 45, 125, 269, 265, 287, 278, 22, - /* 1000 */ 88, 1, 44, 45, 89, 269, 265, 287, 196, 93, - /* 1010 */ 88, 5, 92, 91, 3, 86, 107, 186, 46, 288, - /* 1020 */ 282, 309, 309, 309, 102, 86, 100, 53, 119, 98, - /* 1030 */ 125, 197, 309, 309, 47, 309, 309, 322, 241, 38, - /* 1040 */ 232, 309, 264, 283, 3, 279, 107, 185, 22, 309, - /* 1050 */ 182, 44, 45, 309, 269, 265, 287, 309, 309, 88, - /* 1060 */ 125, 197, 304, 309, 47, 309, 309, 208, 166, 181, - /* 1070 */ 309, 105, 309, 309, 86, 309, 309, 309, 22, 309, - /* 1080 */ 309, 44, 45, 309, 269, 265, 287, 279, 309, 88, - /* 1090 */ 282, 309, 309, 249, 179, 309, 201, 72, 309, 105, - /* 1100 */ 309, 309, 309, 309, 86, 309, 309, 322, 309, 309, - /* 1110 */ 282, 309, 264, 283, 188, 279, 201, 55, 309, 105, - /* 1120 */ 309, 309, 282, 309, 187, 325, 173, 322, 201, 78, - /* 1130 */ 238, 105, 264, 283, 282, 279, 309, 309, 179, 322, - /* 1140 */ 201, 72, 189, 105, 264, 283, 309, 279, 309, 309, - /* 1150 */ 309, 322, 309, 309, 282, 309, 264, 283, 188, 279, - /* 1160 */ 201, 55, 309, 105, 309, 309, 282, 309, 309, 324, - /* 1170 */ 188, 322, 201, 55, 309, 105, 264, 283, 309, 279, - /* 1180 */ 309, 309, 309, 322, 309, 309, 212, 309, 264, 283, - /* 1190 */ 282, 279, 309, 309, 188, 309, 201, 55, 198, 105, - /* 1200 */ 309, 309, 282, 309, 309, 309, 175, 322, 201, 51, - /* 1210 */ 122, 105, 264, 283, 282, 279, 309, 309, 188, 322, - /* 1220 */ 201, 64, 253, 105, 264, 283, 207, 279, 309, 309, - /* 1230 */ 309, 322, 309, 309, 282, 309, 264, 283, 188, 279, - /* 1240 */ 201, 58, 309, 105, 309, 309, 282, 309, 309, 309, - /* 1250 */ 188, 322, 201, 60, 309, 105, 264, 283, 309, 279, - /* 1260 */ 309, 309, 309, 322, 309, 309, 282, 309, 264, 283, - /* 1270 */ 188, 279, 201, 67, 309, 105, 309, 309, 282, 309, - /* 1280 */ 309, 309, 188, 322, 201, 73, 309, 105, 264, 283, - /* 1290 */ 282, 279, 309, 309, 188, 322, 201, 80, 309, 105, - /* 1300 */ 264, 283, 282, 279, 309, 309, 188, 322, 201, 57, - /* 1310 */ 309, 105, 264, 283, 282, 279, 309, 309, 188, 322, - /* 1320 */ 201, 71, 309, 105, 264, 283, 282, 279, 309, 309, - /* 1330 */ 188, 322, 201, 70, 309, 105, 264, 283, 309, 279, - /* 1340 */ 309, 309, 309, 322, 309, 309, 282, 309, 264, 283, - /* 1350 */ 188, 279, 201, 74, 309, 105, 309, 309, 282, 309, - /* 1360 */ 309, 309, 188, 322, 201, 81, 309, 105, 264, 283, - /* 1370 */ 282, 279, 309, 309, 188, 322, 201, 62, 309, 105, - /* 1380 */ 264, 283, 282, 279, 309, 309, 188, 322, 184, 66, - /* 1390 */ 309, 105, 264, 283, 282, 279, 309, 309, 188, 322, - /* 1400 */ 201, 61, 309, 105, 264, 283, 282, 279, 309, 309, - /* 1410 */ 188, 322, 201, 63, 309, 105, 264, 283, 309, 279, - /* 1420 */ 309, 309, 309, 322, 309, 309, 282, 309, 264, 283, - /* 1430 */ 188, 279, 201, 82, 309, 105, 309, 309, 282, 309, - /* 1440 */ 309, 309, 188, 322, 201, 77, 309, 105, 264, 283, - /* 1450 */ 282, 279, 309, 309, 188, 322, 201, 75, 309, 105, - /* 1460 */ 264, 283, 282, 279, 309, 309, 188, 322, 201, 56, - /* 1470 */ 309, 105, 264, 283, 282, 279, 309, 309, 188, 322, - /* 1480 */ 201, 79, 309, 105, 264, 283, 282, 279, 309, 309, - /* 1490 */ 188, 322, 201, 65, 309, 105, 264, 283, 309, 279, - /* 1500 */ 309, 309, 309, 322, 309, 309, 282, 309, 264, 283, - /* 1510 */ 188, 279, 201, 50, 309, 105, 309, 309, 282, 309, - /* 1520 */ 309, 309, 188, 322, 201, 83, 309, 105, 264, 283, - /* 1530 */ 282, 279, 309, 309, 188, 322, 201, 59, 309, 105, - /* 1540 */ 264, 283, 282, 279, 309, 309, 188, 322, 201, 69, - /* 1550 */ 309, 105, 264, 283, 282, 279, 309, 309, 188, 322, - /* 1560 */ 201, 68, 309, 105, 264, 283, 282, 279, 182, 309, - /* 1570 */ 188, 322, 201, 76, 309, 105, 264, 283, 309, 279, - /* 1580 */ 336, 309, 309, 322, 309, 210, 282, 181, 264, 283, - /* 1590 */ 193, 279, 201, 282, 309, 105, 309, 342, 309, 201, - /* 1600 */ 309, 309, 105, 213, 309, 309, 309, 309, 264, 283, - /* 1610 */ 346, 279, 309, 6, 309, 264, 283, 282, 279, 309, - /* 1620 */ 309, 272, 111, 201, 309, 309, 105, 282, 309, 309, - /* 1630 */ 309, 348, 309, 201, 309, 309, 105, 309, 309, 264, - /* 1640 */ 283, 309, 279, 309, 309, 309, 309, 282, 309, 264, - /* 1650 */ 283, 273, 279, 201, 309, 282, 105, 309, 309, 274, - /* 1660 */ 309, 201, 309, 309, 105, 309, 309, 309, 309, 264, - /* 1670 */ 283, 309, 279, 309, 309, 282, 309, 264, 283, 347, - /* 1680 */ 279, 201, 282, 309, 105, 309, 255, 309, 201, 256, - /* 1690 */ 282, 105, 309, 2, 230, 309, 201, 264, 283, 105, - /* 1700 */ 279, 309, 309, 309, 264, 283, 309, 279, 309, 125, - /* 1710 */ 309, 309, 264, 283, 309, 279, 282, 309, 309, 309, - /* 1720 */ 286, 309, 201, 309, 309, 105, 309, 309, 309, 309, - /* 1730 */ 309, 309, 309, 309, 309, 309, 309, 309, 264, 283, - /* 1740 */ 309, 279, 309, 309, 309, 309, 309, 309, 309, 309, - /* 1750 */ 309, 309, 309, 239, 38, 232, + /* 0 */ 182, 270, 269, 288, 275, 292, 286, 293, 254, 229, + /* 10 */ 155, 318, 303, 2, 182, 246, 341, 278, 179, 179, + /* 20 */ 155, 230, 245, 157, 343, 304, 342, 158, 343, 124, + /* 30 */ 44, 46, 42, 40, 30, 14, 233, 227, 24, 23, + /* 40 */ 253, 243, 21, 25, 44, 46, 42, 40, 30, 14, + /* 50 */ 233, 227, 24, 23, 253, 243, 21, 25, 31, 336, + /* 60 */ 347, 360, 359, 358, 362, 364, 363, 357, 356, 351, + /* 70 */ 353, 182, 26, 336, 347, 360, 359, 358, 362, 364, + /* 80 */ 363, 357, 356, 351, 353, 558, 84, 271, 269, 288, + /* 90 */ 179, 5, 87, 212, 274, 32, 267, 306, 268, 90, + /* 100 */ 111, 44, 46, 42, 40, 30, 14, 233, 227, 24, + /* 110 */ 23, 253, 243, 21, 25, 22, 9, 22, 344, 16, + /* 120 */ 344, 38, 425, 7, 162, 54, 33, 115, 331, 425, + /* 130 */ 336, 347, 360, 359, 358, 362, 364, 363, 357, 356, + /* 140 */ 351, 353, 182, 279, 231, 329, 182, 244, 289, 239, + /* 150 */ 203, 153, 343, 115, 301, 5, 182, 262, 348, 219, + /* 160 */ 6, 179, 224, 188, 111, 179, 316, 232, 168, 279, + /* 170 */ 113, 216, 44, 46, 42, 40, 30, 14, 233, 227, + /* 180 */ 24, 23, 253, 243, 21, 25, 44, 46, 42, 40, + /* 190 */ 30, 14, 233, 227, 24, 23, 253, 243, 21, 25, + /* 200 */ 182, 336, 347, 360, 359, 358, 362, 364, 363, 357, + /* 210 */ 356, 351, 353, 89, 137, 336, 347, 360, 359, 358, + /* 220 */ 362, 364, 363, 357, 356, 351, 353, 142, 349, 346, + /* 230 */ 44, 46, 42, 40, 30, 14, 233, 227, 24, 23, + /* 240 */ 253, 243, 21, 25, 182, 34, 277, 113, 149, 5, + /* 250 */ 22, 147, 220, 344, 16, 115, 355, 143, 111, 336, + /* 260 */ 347, 360, 359, 358, 362, 364, 363, 357, 356, 351, + /* 270 */ 353, 279, 160, 17, 44, 46, 42, 40, 30, 14, + /* 280 */ 233, 227, 24, 23, 253, 243, 21, 25, 182, 20, + /* 290 */ 89, 43, 22, 22, 22, 344, 344, 344, 35, 41, + /* 300 */ 114, 238, 54, 336, 347, 360, 359, 358, 362, 364, + /* 310 */ 363, 357, 356, 351, 353, 240, 194, 179, 44, 46, + /* 320 */ 42, 40, 30, 14, 233, 227, 24, 23, 253, 243, + /* 330 */ 21, 25, 182, 264, 424, 169, 219, 215, 235, 237, + /* 340 */ 179, 179, 13, 306, 306, 202, 218, 336, 347, 360, + /* 350 */ 359, 358, 362, 364, 363, 357, 356, 351, 353, 190, + /* 360 */ 4, 191, 44, 46, 42, 40, 30, 14, 233, 227, + /* 370 */ 24, 23, 253, 243, 21, 25, 182, 22, 308, 154, + /* 380 */ 344, 313, 22, 299, 280, 344, 250, 159, 179, 140, + /* 390 */ 255, 336, 347, 360, 359, 358, 362, 364, 363, 357, + /* 400 */ 356, 351, 353, 349, 103, 11, 44, 46, 42, 40, + /* 410 */ 30, 14, 233, 227, 24, 23, 253, 243, 21, 25, + /* 420 */ 5, 340, 95, 257, 324, 222, 298, 427, 179, 111, + /* 430 */ 182, 179, 31, 261, 427, 336, 347, 360, 359, 358, + /* 440 */ 362, 364, 363, 357, 356, 351, 353, 182, 231, 179, + /* 450 */ 182, 339, 196, 43, 203, 53, 122, 115, 43, 43, + /* 460 */ 22, 311, 319, 344, 218, 330, 179, 193, 28, 179, + /* 470 */ 316, 232, 251, 279, 252, 213, 323, 44, 46, 42, + /* 480 */ 40, 30, 14, 233, 227, 24, 23, 253, 243, 21, + /* 490 */ 25, 182, 325, 276, 297, 5, 161, 343, 321, 179, + /* 500 */ 179, 179, 104, 228, 111, 179, 336, 347, 360, 359, + /* 510 */ 358, 362, 364, 363, 357, 356, 351, 353, 201, 184, + /* 520 */ 8, 44, 46, 42, 40, 30, 14, 233, 227, 24, + /* 530 */ 23, 253, 243, 21, 25, 182, 312, 169, 361, 320, + /* 540 */ 322, 294, 345, 179, 13, 179, 179, 166, 179, 179, + /* 550 */ 336, 347, 360, 359, 358, 362, 364, 363, 357, 356, + /* 560 */ 351, 353, 209, 223, 295, 44, 46, 42, 40, 30, + /* 570 */ 14, 233, 227, 24, 23, 253, 243, 21, 25, 182, + /* 580 */ 326, 350, 314, 22, 290, 93, 214, 179, 179, 179, + /* 590 */ 300, 234, 148, 182, 336, 347, 360, 359, 358, 362, + /* 600 */ 364, 363, 357, 356, 351, 353, 349, 6, 107, 44, + /* 610 */ 46, 42, 40, 30, 14, 233, 227, 24, 23, 253, + /* 620 */ 243, 21, 25, 44, 46, 42, 40, 30, 14, 233, + /* 630 */ 227, 24, 23, 253, 243, 21, 25, 10, 336, 347, + /* 640 */ 360, 359, 358, 362, 364, 363, 357, 356, 351, 353, + /* 650 */ 182, 317, 336, 347, 360, 359, 358, 362, 364, 363, + /* 660 */ 357, 356, 351, 353, 145, 242, 335, 5, 263, 163, + /* 670 */ 22, 152, 334, 183, 225, 179, 111, 259, 349, 156, + /* 680 */ 44, 46, 42, 40, 30, 14, 233, 227, 24, 23, + /* 690 */ 253, 243, 21, 25, 182, 167, 327, 337, 352, 117, + /* 700 */ 108, 43, 36, 119, 250, 27, 18, 221, 123, 336, + /* 710 */ 347, 360, 359, 358, 362, 364, 363, 357, 356, 351, + /* 720 */ 353, 281, 10, 212, 44, 46, 42, 40, 30, 14, + /* 730 */ 233, 227, 24, 23, 253, 243, 21, 25, 182, 129, + /* 740 */ 217, 248, 106, 121, 208, 306, 282, 54, 260, 304, + /* 750 */ 338, 133, 281, 336, 347, 360, 359, 358, 362, 364, + /* 760 */ 363, 357, 356, 351, 353, 349, 199, 54, 44, 46, + /* 770 */ 42, 40, 30, 14, 233, 227, 24, 23, 253, 243, + /* 780 */ 21, 25, 125, 97, 224, 284, 332, 150, 179, 192, + /* 790 */ 346, 39, 109, 41, 92, 281, 281, 336, 347, 360, + /* 800 */ 359, 358, 362, 364, 363, 357, 356, 351, 353, 200, + /* 810 */ 2, 132, 110, 85, 88, 120, 91, 211, 141, 197, + /* 820 */ 2, 346, 112, 170, 139, 349, 124, 207, 22, 302, + /* 830 */ 47, 344, 349, 333, 15, 354, 124, 207, 349, 354, + /* 840 */ 47, 151, 94, 195, 29, 226, 354, 48, 45, 135, + /* 850 */ 328, 315, 236, 12, 19, 89, 1, 48, 45, 134, + /* 860 */ 328, 315, 236, 349, 167, 89, 1, 241, 310, 2, + /* 870 */ 86, 112, 173, 349, 27, 18, 310, 354, 127, 2, + /* 880 */ 86, 112, 176, 131, 136, 124, 207, 130, 165, 47, + /* 890 */ 310, 281, 164, 310, 310, 124, 207, 349, 349, 47, + /* 900 */ 310, 349, 310, 19, 310, 100, 48, 45, 310, 328, + /* 910 */ 315, 236, 310, 19, 89, 1, 48, 45, 281, 328, + /* 920 */ 315, 236, 96, 126, 89, 1, 310, 310, 2, 86, + /* 930 */ 112, 176, 310, 128, 310, 281, 281, 146, 2, 86, + /* 940 */ 105, 176, 167, 310, 124, 207, 281, 310, 47, 310, + /* 950 */ 310, 349, 27, 18, 124, 207, 310, 310, 47, 310, + /* 960 */ 310, 310, 29, 310, 310, 48, 45, 310, 328, 315, + /* 970 */ 236, 310, 19, 89, 1, 48, 45, 310, 328, 315, + /* 980 */ 236, 310, 310, 89, 1, 310, 310, 2, 86, 113, + /* 990 */ 178, 310, 310, 310, 310, 310, 138, 2, 86, 113, + /* 1000 */ 181, 167, 310, 124, 207, 310, 310, 47, 310, 310, + /* 1010 */ 349, 27, 18, 124, 207, 310, 310, 47, 310, 310, + /* 1020 */ 310, 19, 310, 310, 48, 45, 310, 328, 315, 236, + /* 1030 */ 310, 19, 89, 1, 48, 45, 144, 328, 315, 236, + /* 1040 */ 310, 167, 89, 1, 310, 310, 2, 86, 113, 172, + /* 1050 */ 349, 27, 18, 310, 310, 310, 2, 86, 112, 171, + /* 1060 */ 310, 310, 124, 187, 310, 310, 47, 310, 310, 310, + /* 1070 */ 310, 310, 124, 207, 310, 310, 47, 310, 310, 310, + /* 1080 */ 19, 310, 310, 48, 45, 310, 328, 315, 236, 310, + /* 1090 */ 29, 89, 1, 48, 45, 310, 328, 315, 236, 310, + /* 1100 */ 310, 89, 1, 310, 310, 2, 86, 113, 181, 310, + /* 1110 */ 310, 310, 310, 310, 310, 2, 86, 113, 186, 310, + /* 1120 */ 310, 124, 207, 310, 310, 47, 310, 310, 310, 310, + /* 1130 */ 310, 124, 207, 310, 310, 47, 310, 310, 310, 19, + /* 1140 */ 310, 310, 48, 45, 310, 328, 315, 236, 310, 19, + /* 1150 */ 89, 310, 48, 45, 310, 328, 315, 236, 310, 310, + /* 1160 */ 89, 310, 310, 231, 310, 86, 310, 185, 310, 203, + /* 1170 */ 76, 310, 115, 310, 310, 86, 310, 310, 310, 310, + /* 1180 */ 330, 310, 310, 310, 310, 316, 232, 231, 279, 310, + /* 1190 */ 310, 196, 310, 203, 58, 310, 115, 177, 310, 310, + /* 1200 */ 310, 310, 231, 256, 330, 310, 272, 3, 203, 316, + /* 1210 */ 232, 115, 279, 310, 310, 310, 310, 310, 310, 210, + /* 1220 */ 310, 310, 231, 124, 316, 232, 174, 279, 203, 72, + /* 1230 */ 273, 115, 310, 310, 310, 310, 310, 231, 310, 330, + /* 1240 */ 310, 189, 310, 203, 316, 232, 115, 279, 310, 231, + /* 1250 */ 310, 310, 310, 175, 205, 203, 50, 116, 115, 316, + /* 1260 */ 232, 310, 279, 310, 310, 310, 330, 365, 37, 249, + /* 1270 */ 310, 316, 232, 231, 279, 310, 310, 196, 310, 203, + /* 1280 */ 58, 310, 115, 256, 310, 310, 310, 3, 310, 310, + /* 1290 */ 330, 310, 310, 310, 310, 316, 232, 310, 279, 310, + /* 1300 */ 310, 310, 231, 124, 310, 204, 101, 310, 102, 52, + /* 1310 */ 118, 99, 310, 310, 310, 310, 310, 231, 310, 330, + /* 1320 */ 310, 285, 310, 203, 316, 232, 115, 279, 310, 231, + /* 1330 */ 310, 310, 310, 196, 291, 203, 58, 310, 115, 316, + /* 1340 */ 232, 310, 279, 310, 310, 310, 330, 247, 37, 249, + /* 1350 */ 310, 316, 232, 231, 279, 310, 310, 196, 310, 203, + /* 1360 */ 65, 206, 115, 310, 310, 198, 310, 310, 310, 310, + /* 1370 */ 330, 310, 310, 310, 310, 316, 232, 310, 279, 310, + /* 1380 */ 310, 310, 231, 310, 310, 310, 185, 310, 203, 76, + /* 1390 */ 310, 115, 310, 310, 310, 310, 310, 310, 310, 330, + /* 1400 */ 310, 310, 310, 310, 316, 232, 310, 279, 310, 310, + /* 1410 */ 310, 310, 310, 310, 310, 231, 310, 307, 310, 101, + /* 1420 */ 310, 98, 49, 118, 99, 310, 310, 310, 310, 310, + /* 1430 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 1440 */ 279, 310, 310, 196, 310, 203, 58, 310, 115, 310, + /* 1450 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 1460 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 1470 */ 196, 283, 203, 69, 310, 115, 310, 310, 310, 310, + /* 1480 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 1490 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 1500 */ 310, 203, 64, 310, 115, 310, 310, 310, 310, 310, + /* 1510 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 1520 */ 279, 310, 310, 196, 310, 203, 57, 310, 115, 310, + /* 1530 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 1540 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 1550 */ 196, 310, 203, 83, 310, 115, 310, 310, 310, 310, + /* 1560 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 1570 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 1580 */ 310, 203, 70, 310, 115, 310, 310, 310, 310, 310, + /* 1590 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 1600 */ 279, 310, 310, 196, 310, 203, 68, 310, 115, 310, + /* 1610 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 1620 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 1630 */ 196, 310, 203, 74, 310, 115, 310, 310, 310, 310, + /* 1640 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 1650 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 1660 */ 310, 203, 71, 310, 115, 310, 310, 310, 310, 310, + /* 1670 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 1680 */ 279, 310, 310, 196, 310, 203, 66, 310, 115, 310, + /* 1690 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 1700 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 1710 */ 196, 310, 203, 73, 310, 115, 310, 310, 310, 310, + /* 1720 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 1730 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 1740 */ 310, 203, 78, 310, 115, 310, 310, 310, 310, 310, + /* 1750 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 1760 */ 279, 310, 310, 196, 310, 203, 77, 310, 115, 310, + /* 1770 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 1780 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 1790 */ 196, 310, 203, 63, 310, 115, 310, 310, 310, 310, + /* 1800 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 1810 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 1820 */ 310, 203, 81, 310, 115, 310, 310, 310, 310, 310, + /* 1830 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 1840 */ 279, 310, 310, 196, 310, 203, 80, 310, 115, 310, + /* 1850 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 1860 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 1870 */ 196, 310, 203, 60, 310, 115, 310, 310, 310, 310, + /* 1880 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 1890 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 1900 */ 310, 203, 55, 310, 115, 310, 310, 310, 310, 310, + /* 1910 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 1920 */ 279, 310, 310, 196, 310, 203, 51, 310, 115, 310, + /* 1930 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 1940 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 1950 */ 196, 310, 180, 67, 310, 115, 310, 310, 310, 310, + /* 1960 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 1970 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 1980 */ 310, 203, 61, 310, 115, 310, 310, 310, 310, 310, + /* 1990 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 2000 */ 279, 310, 310, 196, 310, 203, 56, 310, 115, 310, + /* 2010 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 2020 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 2030 */ 196, 310, 203, 59, 310, 115, 310, 310, 310, 310, + /* 2040 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 2050 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 2060 */ 310, 203, 82, 310, 115, 310, 310, 310, 310, 310, + /* 2070 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 2080 */ 279, 310, 310, 196, 310, 203, 79, 310, 115, 310, + /* 2090 */ 310, 310, 310, 310, 310, 310, 330, 310, 310, 310, + /* 2100 */ 310, 316, 232, 310, 279, 310, 231, 310, 310, 310, + /* 2110 */ 196, 310, 203, 62, 310, 115, 310, 310, 310, 310, + /* 2120 */ 310, 310, 310, 330, 310, 310, 310, 310, 316, 232, + /* 2130 */ 310, 279, 310, 310, 310, 231, 310, 310, 310, 196, + /* 2140 */ 310, 203, 75, 310, 115, 310, 310, 310, 310, 310, + /* 2150 */ 310, 310, 330, 310, 310, 310, 310, 316, 232, 231, + /* 2160 */ 279, 310, 310, 265, 310, 203, 231, 310, 115, 310, + /* 2170 */ 305, 310, 203, 310, 310, 115, 266, 310, 310, 310, + /* 2180 */ 310, 316, 232, 310, 279, 310, 231, 310, 316, 232, + /* 2190 */ 296, 279, 203, 231, 310, 115, 310, 258, 310, 203, + /* 2200 */ 310, 310, 115, 310, 310, 310, 310, 310, 316, 232, + /* 2210 */ 310, 279, 310, 310, 310, 316, 232, 310, 279, 231, + /* 2220 */ 310, 310, 310, 287, 310, 203, 310, 310, 115, 310, + /* 2230 */ 310, 310, 310, 310, 310, 310, 310, 310, 310, 231, + /* 2240 */ 310, 316, 232, 309, 279, 203, 310, 310, 115, 310, + /* 2250 */ 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, + /* 2260 */ 310, 316, 232, 310, 279, ); static public $yy_lookahead = array( - /* 0 */ 1, 79, 105, 12, 13, 83, 15, 85, 86, 87, - /* 10 */ 88, 106, 13, 108, 109, 4, 5, 6, 96, 20, - /* 20 */ 9, 10, 11, 101, 102, 12, 104, 26, 15, 16, + /* 0 */ 1, 78, 79, 80, 3, 4, 5, 6, 7, 8, + /* 10 */ 9, 13, 13, 12, 1, 4, 5, 6, 20, 20, + /* 20 */ 9, 10, 11, 108, 109, 106, 13, 108, 109, 28, /* 30 */ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - /* 40 */ 41, 42, 43, 44, 76, 77, 78, 79, 80, 12, - /* 50 */ 14, 15, 15, 16, 12, 2, 14, 15, 18, 60, + /* 40 */ 41, 42, 43, 44, 31, 32, 33, 34, 35, 36, + /* 50 */ 37, 38, 39, 40, 41, 42, 43, 44, 16, 60, /* 60 */ 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - /* 70 */ 71, 1, 79, 20, 12, 13, 83, 15, 85, 86, - /* 80 */ 87, 88, 15, 13, 17, 1, 19, 46, 21, 96, - /* 90 */ 20, 51, 51, 56, 101, 102, 55, 104, 58, 57, - /* 100 */ 59, 31, 32, 33, 34, 35, 36, 37, 38, 39, - /* 110 */ 40, 41, 42, 43, 44, 31, 32, 33, 34, 35, - /* 120 */ 36, 37, 38, 39, 40, 41, 42, 43, 44, 105, + /* 70 */ 71, 1, 27, 60, 61, 62, 63, 64, 65, 66, + /* 80 */ 67, 68, 69, 70, 71, 76, 77, 78, 79, 80, + /* 90 */ 20, 46, 15, 51, 17, 25, 19, 23, 21, 15, + /* 100 */ 55, 31, 32, 33, 34, 35, 36, 37, 38, 39, + /* 110 */ 40, 41, 42, 43, 44, 12, 30, 12, 15, 16, + /* 120 */ 15, 16, 13, 16, 85, 18, 12, 88, 23, 20, /* 130 */ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - /* 140 */ 70, 71, 1, 59, 60, 61, 62, 63, 64, 65, - /* 150 */ 66, 67, 68, 69, 70, 71, 1, 14, 15, 12, - /* 160 */ 51, 20, 15, 16, 13, 90, 25, 58, 13, 47, - /* 170 */ 23, 20, 31, 32, 33, 34, 35, 36, 37, 38, + /* 140 */ 70, 71, 1, 104, 79, 59, 1, 73, 83, 110, + /* 150 */ 85, 108, 109, 88, 13, 46, 1, 13, 13, 56, + /* 160 */ 46, 20, 55, 18, 55, 20, 101, 102, 13, 104, + /* 170 */ 14, 15, 31, 32, 33, 34, 35, 36, 37, 38, /* 180 */ 39, 40, 41, 42, 43, 44, 31, 32, 33, 34, /* 190 */ 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - /* 200 */ 57, 60, 61, 62, 63, 64, 65, 66, 67, 68, - /* 210 */ 69, 70, 71, 1, 27, 60, 61, 62, 63, 64, - /* 220 */ 65, 66, 67, 68, 69, 70, 71, 1, 13, 13, - /* 230 */ 13, 45, 20, 46, 13, 20, 20, 20, 23, 13, - /* 240 */ 23, 20, 55, 31, 32, 33, 34, 35, 36, 37, - /* 250 */ 38, 39, 40, 41, 42, 43, 44, 31, 32, 33, - /* 260 */ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - /* 270 */ 44, 1, 60, 61, 62, 63, 64, 65, 66, 67, - /* 280 */ 68, 69, 70, 71, 84, 84, 60, 61, 62, 63, - /* 290 */ 64, 65, 66, 67, 68, 69, 70, 71, 98, 98, - /* 300 */ 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - /* 310 */ 40, 41, 42, 43, 44, 1, 78, 79, 80, 3, - /* 320 */ 4, 5, 6, 7, 8, 9, 15, 13, 12, 1, - /* 330 */ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - /* 340 */ 70, 71, 108, 109, 28, 31, 32, 33, 34, 35, - /* 350 */ 36, 37, 38, 39, 40, 41, 42, 43, 44, 31, - /* 360 */ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - /* 370 */ 42, 43, 44, 79, 60, 61, 62, 63, 64, 65, - /* 380 */ 66, 67, 68, 69, 70, 71, 1, 27, 60, 61, - /* 390 */ 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - /* 400 */ 1, 73, 14, 22, 89, 45, 13, 22, 29, 115, - /* 410 */ 116, 30, 13, 20, 99, 100, 31, 32, 33, 34, - /* 420 */ 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - /* 430 */ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - /* 440 */ 41, 42, 43, 44, 30, 60, 61, 62, 63, 64, - /* 450 */ 65, 66, 67, 68, 69, 70, 71, 1, 2, 60, - /* 460 */ 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - /* 470 */ 71, 1, 13, 59, 13, 13, 46, 13, 13, 20, - /* 480 */ 23, 20, 20, 13, 20, 20, 15, 31, 32, 33, - /* 490 */ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - /* 500 */ 44, 31, 32, 33, 34, 35, 36, 37, 38, 39, - /* 510 */ 40, 41, 42, 43, 44, 1, 60, 61, 62, 63, - /* 520 */ 64, 65, 66, 67, 68, 69, 70, 71, 2, 57, - /* 530 */ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - /* 540 */ 70, 71, 16, 108, 109, 31, 32, 33, 34, 35, - /* 550 */ 36, 37, 38, 39, 40, 41, 42, 43, 44, 1, - /* 560 */ 12, 47, 12, 15, 23, 15, 13, 1, 16, 85, - /* 570 */ 18, 13, 88, 20, 60, 61, 62, 63, 64, 65, - /* 580 */ 66, 67, 68, 69, 70, 71, 20, 15, 104, 31, - /* 590 */ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - /* 600 */ 42, 43, 44, 1, 56, 13, 56, 55, 46, 108, - /* 610 */ 109, 15, 20, 12, 73, 14, 15, 55, 60, 61, - /* 620 */ 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - /* 630 */ 29, 91, 92, 31, 32, 33, 34, 35, 36, 37, - /* 640 */ 38, 39, 40, 41, 42, 43, 44, 1, 13, 47, - /* 650 */ 13, 13, 56, 52, 53, 20, 14, 20, 20, 16, - /* 660 */ 15, 13, 60, 61, 62, 63, 64, 65, 66, 67, - /* 670 */ 68, 69, 70, 71, 29, 26, 57, 31, 32, 33, - /* 680 */ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - /* 690 */ 44, 13, 13, 45, 51, 13, 16, 12, 20, 20, - /* 700 */ 15, 12, 20, 16, 15, 15, 60, 61, 62, 63, - /* 710 */ 64, 65, 66, 67, 68, 69, 70, 71, 79, 12, - /* 720 */ 20, 14, 15, 45, 17, 46, 19, 45, 21, 12, - /* 730 */ 94, 14, 15, 46, 55, 28, 29, 12, 13, 32, - /* 740 */ 15, 94, 55, 107, 84, 28, 29, 12, 13, 32, - /* 750 */ 15, 12, 27, 46, 107, 116, 49, 50, 98, 52, - /* 760 */ 53, 54, 27, 46, 57, 58, 49, 50, 84, 52, - /* 770 */ 53, 54, 84, 89, 57, 58, 59, 89, 12, 72, - /* 780 */ 14, 15, 98, 99, 100, 46, 98, 94, 12, 72, - /* 790 */ 14, 15, 84, 84, 28, 29, 84, 89, 32, 84, - /* 800 */ 107, 89, 13, 48, 28, 29, 98, 98, 32, 20, - /* 810 */ 98, 12, 46, 98, 15, 49, 50, 84, 52, 53, - /* 820 */ 54, 112, 46, 57, 58, 49, 50, 112, 52, 53, - /* 830 */ 54, 98, 18, 57, 58, 13, 13, 12, 72, 14, - /* 840 */ 15, 105, 20, 107, 84, 112, 84, 12, 72, 14, - /* 850 */ 15, 89, 103, 28, 29, 94, 15, 32, 98, 110, - /* 860 */ 98, 99, 100, 28, 29, 59, 84, 32, 107, 55, - /* 870 */ 80, 46, 82, 94, 49, 50, 47, 52, 53, 54, - /* 880 */ 98, 46, 57, 58, 49, 50, 107, 52, 53, 54, - /* 890 */ 94, 94, 57, 58, 15, 14, 12, 72, 14, 15, - /* 900 */ 105, 94, 94, 107, 107, 84, 12, 72, 14, 15, - /* 910 */ 89, 84, 28, 29, 107, 107, 32, 13, 47, 98, - /* 920 */ 99, 100, 28, 29, 24, 98, 32, 95, 14, 51, - /* 930 */ 46, 13, 20, 49, 50, 14, 52, 53, 54, 107, - /* 940 */ 46, 57, 58, 49, 50, 84, 52, 53, 54, 15, - /* 950 */ 89, 57, 58, 15, 2, 12, 72, 14, 15, 98, - /* 960 */ 99, 100, 13, 16, 20, 12, 72, 14, 15, 15, - /* 970 */ 105, 28, 29, 106, 8, 32, 14, 91, 12, 20, - /* 980 */ 98, 28, 29, 81, 10, 32, 18, 107, 97, 46, - /* 990 */ 20, 93, 49, 50, 28, 52, 53, 54, 109, 46, - /* 1000 */ 57, 58, 49, 50, 105, 52, 53, 54, 93, 90, - /* 1010 */ 57, 46, 90, 90, 12, 72, 14, 15, 2, 112, - /* 1020 */ 79, 117, 117, 117, 83, 72, 85, 86, 87, 88, - /* 1030 */ 28, 29, 117, 117, 32, 117, 117, 96, 72, 73, - /* 1040 */ 74, 117, 101, 102, 12, 104, 14, 15, 46, 117, - /* 1050 */ 1, 49, 50, 117, 52, 53, 54, 117, 117, 57, - /* 1060 */ 28, 29, 13, 117, 32, 117, 117, 18, 85, 20, - /* 1070 */ 117, 88, 117, 117, 72, 117, 117, 117, 46, 117, - /* 1080 */ 117, 49, 50, 117, 52, 53, 54, 104, 117, 57, - /* 1090 */ 79, 117, 117, 110, 83, 117, 85, 86, 117, 88, - /* 1100 */ 117, 117, 117, 117, 72, 117, 117, 96, 117, 117, - /* 1110 */ 79, 117, 101, 102, 83, 104, 85, 86, 117, 88, - /* 1120 */ 117, 117, 79, 117, 113, 114, 83, 96, 85, 86, - /* 1130 */ 87, 88, 101, 102, 79, 104, 117, 117, 83, 96, - /* 1140 */ 85, 86, 111, 88, 101, 102, 117, 104, 117, 117, - /* 1150 */ 117, 96, 117, 117, 79, 117, 101, 102, 83, 104, - /* 1160 */ 85, 86, 117, 88, 117, 117, 79, 117, 117, 114, - /* 1170 */ 83, 96, 85, 86, 117, 88, 101, 102, 117, 104, - /* 1180 */ 117, 117, 117, 96, 117, 117, 111, 117, 101, 102, - /* 1190 */ 79, 104, 117, 117, 83, 117, 85, 86, 111, 88, - /* 1200 */ 117, 117, 79, 117, 117, 117, 83, 96, 85, 86, - /* 1210 */ 87, 88, 101, 102, 79, 104, 117, 117, 83, 96, - /* 1220 */ 85, 86, 111, 88, 101, 102, 91, 104, 117, 117, - /* 1230 */ 117, 96, 117, 117, 79, 117, 101, 102, 83, 104, - /* 1240 */ 85, 86, 117, 88, 117, 117, 79, 117, 117, 117, - /* 1250 */ 83, 96, 85, 86, 117, 88, 101, 102, 117, 104, - /* 1260 */ 117, 117, 117, 96, 117, 117, 79, 117, 101, 102, - /* 1270 */ 83, 104, 85, 86, 117, 88, 117, 117, 79, 117, - /* 1280 */ 117, 117, 83, 96, 85, 86, 117, 88, 101, 102, - /* 1290 */ 79, 104, 117, 117, 83, 96, 85, 86, 117, 88, - /* 1300 */ 101, 102, 79, 104, 117, 117, 83, 96, 85, 86, - /* 1310 */ 117, 88, 101, 102, 79, 104, 117, 117, 83, 96, - /* 1320 */ 85, 86, 117, 88, 101, 102, 79, 104, 117, 117, - /* 1330 */ 83, 96, 85, 86, 117, 88, 101, 102, 117, 104, - /* 1340 */ 117, 117, 117, 96, 117, 117, 79, 117, 101, 102, - /* 1350 */ 83, 104, 85, 86, 117, 88, 117, 117, 79, 117, - /* 1360 */ 117, 117, 83, 96, 85, 86, 117, 88, 101, 102, - /* 1370 */ 79, 104, 117, 117, 83, 96, 85, 86, 117, 88, - /* 1380 */ 101, 102, 79, 104, 117, 117, 83, 96, 85, 86, - /* 1390 */ 117, 88, 101, 102, 79, 104, 117, 117, 83, 96, - /* 1400 */ 85, 86, 117, 88, 101, 102, 79, 104, 117, 117, - /* 1410 */ 83, 96, 85, 86, 117, 88, 101, 102, 117, 104, - /* 1420 */ 117, 117, 117, 96, 117, 117, 79, 117, 101, 102, - /* 1430 */ 83, 104, 85, 86, 117, 88, 117, 117, 79, 117, - /* 1440 */ 117, 117, 83, 96, 85, 86, 117, 88, 101, 102, - /* 1450 */ 79, 104, 117, 117, 83, 96, 85, 86, 117, 88, - /* 1460 */ 101, 102, 79, 104, 117, 117, 83, 96, 85, 86, - /* 1470 */ 117, 88, 101, 102, 79, 104, 117, 117, 83, 96, - /* 1480 */ 85, 86, 117, 88, 101, 102, 79, 104, 117, 117, - /* 1490 */ 83, 96, 85, 86, 117, 88, 101, 102, 117, 104, - /* 1500 */ 117, 117, 117, 96, 117, 117, 79, 117, 101, 102, - /* 1510 */ 83, 104, 85, 86, 117, 88, 117, 117, 79, 117, - /* 1520 */ 117, 117, 83, 96, 85, 86, 117, 88, 101, 102, - /* 1530 */ 79, 104, 117, 117, 83, 96, 85, 86, 117, 88, - /* 1540 */ 101, 102, 79, 104, 117, 117, 83, 96, 85, 86, - /* 1550 */ 117, 88, 101, 102, 79, 104, 117, 117, 83, 96, - /* 1560 */ 85, 86, 117, 88, 101, 102, 79, 104, 1, 117, - /* 1570 */ 83, 96, 85, 86, 117, 88, 101, 102, 117, 104, - /* 1580 */ 13, 117, 117, 96, 117, 18, 79, 20, 101, 102, - /* 1590 */ 83, 104, 85, 79, 117, 88, 117, 83, 117, 85, - /* 1600 */ 117, 117, 88, 96, 117, 117, 117, 117, 101, 102, - /* 1610 */ 96, 104, 117, 46, 117, 101, 102, 79, 104, 117, - /* 1620 */ 117, 83, 55, 85, 117, 117, 88, 79, 117, 117, - /* 1630 */ 117, 83, 117, 85, 117, 117, 88, 117, 117, 101, - /* 1640 */ 102, 117, 104, 117, 117, 117, 117, 79, 117, 101, - /* 1650 */ 102, 83, 104, 85, 117, 79, 88, 117, 117, 83, - /* 1660 */ 117, 85, 117, 117, 88, 117, 117, 117, 117, 101, - /* 1670 */ 102, 117, 104, 117, 117, 79, 117, 101, 102, 83, - /* 1680 */ 104, 85, 79, 117, 88, 117, 83, 117, 85, 8, - /* 1690 */ 79, 88, 117, 12, 83, 117, 85, 101, 102, 88, - /* 1700 */ 104, 117, 117, 117, 101, 102, 117, 104, 117, 28, - /* 1710 */ 117, 117, 101, 102, 117, 104, 79, 117, 117, 117, - /* 1720 */ 83, 117, 85, 117, 117, 88, 117, 117, 117, 117, - /* 1730 */ 117, 117, 117, 117, 117, 117, 117, 117, 101, 102, - /* 1740 */ 117, 104, 117, 117, 117, 117, 117, 117, 117, 117, - /* 1750 */ 117, 117, 117, 72, 73, 74, + /* 200 */ 1, 60, 61, 62, 63, 64, 65, 66, 67, 68, + /* 210 */ 69, 70, 71, 57, 84, 60, 61, 62, 63, 64, + /* 220 */ 65, 66, 67, 68, 69, 70, 71, 105, 98, 107, + /* 230 */ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + /* 240 */ 41, 42, 43, 44, 1, 12, 47, 14, 15, 46, + /* 250 */ 12, 105, 85, 15, 16, 88, 13, 105, 55, 60, + /* 260 */ 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + /* 270 */ 71, 104, 90, 27, 31, 32, 33, 34, 35, 36, + /* 280 */ 37, 38, 39, 40, 41, 42, 43, 44, 1, 2, + /* 290 */ 57, 45, 12, 12, 12, 15, 15, 15, 12, 2, + /* 300 */ 14, 15, 18, 60, 61, 62, 63, 64, 65, 66, + /* 310 */ 67, 68, 69, 70, 71, 29, 15, 20, 31, 32, + /* 320 */ 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + /* 330 */ 43, 44, 1, 13, 13, 51, 56, 56, 52, 53, + /* 340 */ 20, 20, 58, 23, 23, 15, 2, 60, 61, 62, + /* 350 */ 63, 64, 65, 66, 67, 68, 69, 70, 71, 29, + /* 360 */ 16, 26, 31, 32, 33, 34, 35, 36, 37, 38, + /* 370 */ 39, 40, 41, 42, 43, 44, 1, 12, 13, 22, + /* 380 */ 15, 13, 12, 13, 57, 15, 79, 30, 20, 84, + /* 390 */ 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + /* 400 */ 69, 70, 71, 98, 14, 30, 31, 32, 33, 34, + /* 410 */ 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + /* 420 */ 46, 13, 115, 116, 13, 51, 13, 13, 20, 55, + /* 430 */ 1, 20, 16, 59, 20, 60, 61, 62, 63, 64, + /* 440 */ 65, 66, 67, 68, 69, 70, 71, 1, 79, 20, + /* 450 */ 1, 15, 83, 45, 85, 86, 87, 88, 45, 45, + /* 460 */ 12, 13, 13, 15, 2, 96, 20, 18, 48, 20, + /* 470 */ 101, 102, 80, 104, 82, 27, 15, 31, 32, 33, + /* 480 */ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + /* 490 */ 44, 1, 13, 13, 13, 46, 108, 109, 13, 20, + /* 500 */ 20, 20, 14, 13, 55, 20, 60, 61, 62, 63, + /* 510 */ 64, 65, 66, 67, 68, 69, 70, 71, 91, 92, + /* 520 */ 20, 31, 32, 33, 34, 35, 36, 37, 38, 39, + /* 530 */ 40, 41, 42, 43, 44, 1, 13, 51, 13, 13, + /* 540 */ 29, 13, 13, 20, 58, 20, 20, 13, 20, 20, + /* 550 */ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + /* 560 */ 70, 71, 14, 15, 15, 31, 32, 33, 34, 35, + /* 570 */ 36, 37, 38, 39, 40, 41, 42, 43, 44, 1, + /* 580 */ 13, 13, 13, 12, 57, 90, 15, 20, 20, 20, + /* 590 */ 59, 13, 84, 1, 60, 61, 62, 63, 64, 65, + /* 600 */ 66, 67, 68, 69, 70, 71, 98, 46, 14, 31, + /* 610 */ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + /* 620 */ 42, 43, 44, 31, 32, 33, 34, 35, 36, 37, + /* 630 */ 38, 39, 40, 41, 42, 43, 44, 16, 60, 61, + /* 640 */ 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + /* 650 */ 1, 15, 60, 61, 62, 63, 64, 65, 66, 67, + /* 660 */ 68, 69, 70, 71, 84, 73, 15, 46, 13, 89, + /* 670 */ 12, 22, 15, 15, 15, 20, 55, 47, 98, 15, + /* 680 */ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + /* 690 */ 41, 42, 43, 44, 1, 89, 103, 13, 13, 20, + /* 700 */ 14, 45, 24, 110, 79, 99, 100, 56, 94, 60, + /* 710 */ 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + /* 720 */ 71, 107, 16, 51, 31, 32, 33, 34, 35, 36, + /* 730 */ 37, 38, 39, 40, 41, 42, 43, 44, 1, 94, + /* 740 */ 47, 116, 14, 47, 26, 23, 47, 18, 13, 106, + /* 750 */ 98, 84, 107, 60, 61, 62, 63, 64, 65, 66, + /* 760 */ 67, 68, 69, 70, 71, 98, 93, 18, 31, 32, + /* 770 */ 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + /* 780 */ 43, 44, 94, 94, 55, 109, 20, 105, 20, 97, + /* 790 */ 107, 20, 14, 2, 90, 107, 107, 60, 61, 62, + /* 800 */ 63, 64, 65, 66, 67, 68, 69, 70, 71, 95, + /* 810 */ 12, 84, 14, 15, 105, 17, 90, 19, 84, 21, + /* 820 */ 12, 107, 14, 15, 84, 98, 28, 29, 12, 13, + /* 830 */ 32, 15, 98, 91, 93, 112, 28, 29, 98, 112, + /* 840 */ 32, 105, 81, 27, 46, 10, 112, 49, 50, 84, + /* 850 */ 52, 53, 54, 46, 46, 57, 58, 49, 50, 84, + /* 860 */ 52, 53, 54, 98, 89, 57, 58, 59, 117, 12, + /* 870 */ 72, 14, 15, 98, 99, 100, 117, 112, 94, 12, + /* 880 */ 72, 14, 15, 84, 84, 28, 29, 84, 89, 32, + /* 890 */ 117, 107, 89, 117, 117, 28, 29, 98, 98, 32, + /* 900 */ 117, 98, 117, 46, 117, 94, 49, 50, 117, 52, + /* 910 */ 53, 54, 117, 46, 57, 58, 49, 50, 107, 52, + /* 920 */ 53, 54, 94, 94, 57, 58, 117, 117, 12, 72, + /* 930 */ 14, 15, 117, 94, 117, 107, 107, 84, 12, 72, + /* 940 */ 14, 15, 89, 117, 28, 29, 107, 117, 32, 117, + /* 950 */ 117, 98, 99, 100, 28, 29, 117, 117, 32, 117, + /* 960 */ 117, 117, 46, 117, 117, 49, 50, 117, 52, 53, + /* 970 */ 54, 117, 46, 57, 58, 49, 50, 117, 52, 53, + /* 980 */ 54, 117, 117, 57, 58, 117, 117, 12, 72, 14, + /* 990 */ 15, 117, 117, 117, 117, 117, 84, 12, 72, 14, + /* 1000 */ 15, 89, 117, 28, 29, 117, 117, 32, 117, 117, + /* 1010 */ 98, 99, 100, 28, 29, 117, 117, 32, 117, 117, + /* 1020 */ 117, 46, 117, 117, 49, 50, 117, 52, 53, 54, + /* 1030 */ 117, 46, 57, 58, 49, 50, 84, 52, 53, 54, + /* 1040 */ 117, 89, 57, 58, 117, 117, 12, 72, 14, 15, + /* 1050 */ 98, 99, 100, 117, 117, 117, 12, 72, 14, 15, + /* 1060 */ 117, 117, 28, 29, 117, 117, 32, 117, 117, 117, + /* 1070 */ 117, 117, 28, 29, 117, 117, 32, 117, 117, 117, + /* 1080 */ 46, 117, 117, 49, 50, 117, 52, 53, 54, 117, + /* 1090 */ 46, 57, 58, 49, 50, 117, 52, 53, 54, 117, + /* 1100 */ 117, 57, 58, 117, 117, 12, 72, 14, 15, 117, + /* 1110 */ 117, 117, 117, 117, 117, 12, 72, 14, 15, 117, + /* 1120 */ 117, 28, 29, 117, 117, 32, 117, 117, 117, 117, + /* 1130 */ 117, 28, 29, 117, 117, 32, 117, 117, 117, 46, + /* 1140 */ 117, 117, 49, 50, 117, 52, 53, 54, 117, 46, + /* 1150 */ 57, 117, 49, 50, 117, 52, 53, 54, 117, 117, + /* 1160 */ 57, 117, 117, 79, 117, 72, 117, 83, 117, 85, + /* 1170 */ 86, 117, 88, 117, 117, 72, 117, 117, 117, 117, + /* 1180 */ 96, 117, 117, 117, 117, 101, 102, 79, 104, 117, + /* 1190 */ 117, 83, 117, 85, 86, 117, 88, 113, 114, 117, + /* 1200 */ 117, 117, 79, 8, 96, 117, 83, 12, 85, 101, + /* 1210 */ 102, 88, 104, 117, 117, 117, 117, 117, 117, 111, + /* 1220 */ 117, 117, 79, 28, 101, 102, 83, 104, 85, 86, + /* 1230 */ 87, 88, 117, 117, 117, 117, 117, 79, 117, 96, + /* 1240 */ 117, 83, 117, 85, 101, 102, 88, 104, 117, 79, + /* 1250 */ 117, 117, 117, 83, 96, 85, 86, 87, 88, 101, + /* 1260 */ 102, 117, 104, 117, 117, 117, 96, 72, 73, 74, + /* 1270 */ 117, 101, 102, 79, 104, 117, 117, 83, 117, 85, + /* 1280 */ 86, 117, 88, 8, 117, 117, 117, 12, 117, 117, + /* 1290 */ 96, 117, 117, 117, 117, 101, 102, 117, 104, 117, + /* 1300 */ 117, 117, 79, 28, 117, 111, 83, 117, 85, 86, + /* 1310 */ 87, 88, 117, 117, 117, 117, 117, 79, 117, 96, + /* 1320 */ 117, 83, 117, 85, 101, 102, 88, 104, 117, 79, + /* 1330 */ 117, 117, 117, 83, 96, 85, 86, 117, 88, 101, + /* 1340 */ 102, 117, 104, 117, 117, 117, 96, 72, 73, 74, + /* 1350 */ 117, 101, 102, 79, 104, 117, 117, 83, 117, 85, + /* 1360 */ 86, 111, 88, 117, 117, 91, 117, 117, 117, 117, + /* 1370 */ 96, 117, 117, 117, 117, 101, 102, 117, 104, 117, + /* 1380 */ 117, 117, 79, 117, 117, 117, 83, 117, 85, 86, + /* 1390 */ 117, 88, 117, 117, 117, 117, 117, 117, 117, 96, + /* 1400 */ 117, 117, 117, 117, 101, 102, 117, 104, 117, 117, + /* 1410 */ 117, 117, 117, 117, 117, 79, 117, 114, 117, 83, + /* 1420 */ 117, 85, 86, 87, 88, 117, 117, 117, 117, 117, + /* 1430 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 1440 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 1450 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 1460 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 1470 */ 83, 111, 85, 86, 117, 88, 117, 117, 117, 117, + /* 1480 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 1490 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 1500 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 1510 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 1520 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 1530 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 1540 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 1550 */ 83, 117, 85, 86, 117, 88, 117, 117, 117, 117, + /* 1560 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 1570 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 1580 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 1590 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 1600 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 1610 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 1620 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 1630 */ 83, 117, 85, 86, 117, 88, 117, 117, 117, 117, + /* 1640 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 1650 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 1660 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 1670 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 1680 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 1690 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 1700 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 1710 */ 83, 117, 85, 86, 117, 88, 117, 117, 117, 117, + /* 1720 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 1730 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 1740 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 1750 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 1760 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 1770 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 1780 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 1790 */ 83, 117, 85, 86, 117, 88, 117, 117, 117, 117, + /* 1800 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 1810 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 1820 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 1830 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 1840 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 1850 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 1860 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 1870 */ 83, 117, 85, 86, 117, 88, 117, 117, 117, 117, + /* 1880 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 1890 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 1900 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 1910 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 1920 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 1930 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 1940 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 1950 */ 83, 117, 85, 86, 117, 88, 117, 117, 117, 117, + /* 1960 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 1970 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 1980 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 1990 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 2000 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 2010 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 2020 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 2030 */ 83, 117, 85, 86, 117, 88, 117, 117, 117, 117, + /* 2040 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 2050 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 2060 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 2070 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 2080 */ 104, 117, 117, 83, 117, 85, 86, 117, 88, 117, + /* 2090 */ 117, 117, 117, 117, 117, 117, 96, 117, 117, 117, + /* 2100 */ 117, 101, 102, 117, 104, 117, 79, 117, 117, 117, + /* 2110 */ 83, 117, 85, 86, 117, 88, 117, 117, 117, 117, + /* 2120 */ 117, 117, 117, 96, 117, 117, 117, 117, 101, 102, + /* 2130 */ 117, 104, 117, 117, 117, 79, 117, 117, 117, 83, + /* 2140 */ 117, 85, 86, 117, 88, 117, 117, 117, 117, 117, + /* 2150 */ 117, 117, 96, 117, 117, 117, 117, 101, 102, 79, + /* 2160 */ 104, 117, 117, 83, 117, 85, 79, 117, 88, 117, + /* 2170 */ 83, 117, 85, 117, 117, 88, 96, 117, 117, 117, + /* 2180 */ 117, 101, 102, 117, 104, 117, 79, 117, 101, 102, + /* 2190 */ 83, 104, 85, 79, 117, 88, 117, 83, 117, 85, + /* 2200 */ 117, 117, 88, 117, 117, 117, 117, 117, 101, 102, + /* 2210 */ 117, 104, 117, 117, 117, 101, 102, 117, 104, 79, + /* 2220 */ 117, 117, 117, 83, 117, 85, 117, 117, 88, 117, + /* 2230 */ 117, 117, 117, 117, 117, 117, 117, 117, 117, 79, + /* 2240 */ 117, 101, 102, 83, 104, 85, 117, 117, 88, 117, + /* 2250 */ 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, + /* 2260 */ 117, 101, 102, 117, 104, ); - const YY_SHIFT_USE_DFLT = -10; + const YY_SHIFT_USE_DFLT = -3; const YY_SHIFT_MAX = 225; static public $yy_shift_ofst = array( - /* 0 */ 316, 894, 707, 707, 766, 766, 766, 835, 825, 776, - /* 10 */ 825, 766, 894, 717, 766, 766, 766, 766, 766, 766, - /* 20 */ 766, 766, 766, 766, 766, 766, 766, 766, 766, 766, - /* 30 */ 766, 766, 766, 766, 766, 766, 766, 766, 766, 943, - /* 40 */ 884, 1002, 953, 1002, 1002, 1002, 1032, 1002, 1002, -1, - /* 50 */ 141, 70, 212, 212, 42, 270, 155, 84, 226, 314, - /* 60 */ 456, 602, 514, 558, 470, 399, 328, 385, 646, 646, - /* 70 */ 646, 646, 646, 646, 646, 646, 646, 646, 646, 646, - /* 80 */ 646, 646, 646, 646, 316, 1567, 1681, 1049, 143, 40, - /* 90 */ 566, 53, 53, 53, 11, 966, 147, 37, 552, 550, - /* 100 */ 217, 215, 682, 799, 685, 814, 685, 685, 685, 689, - /* 110 */ 685, 36, 685, 685, 685, 689, 970, 962, 968, 700, - /* 120 */ 968, 700, 700, 725, 735, 67, 62, -9, 13, 548, - /* 130 */ 461, 464, 462, 465, 221, 151, 109, 109, 393, 459, - /* 140 */ 216, 109, 109, 739, 109, 635, 553, 637, 822, 789, - /* 150 */ 638, 592, 974, 962, 959, 968, 968, 1016, 968, 959, - /* 160 */ 965, 968, -10, -10, -10, -10, -10, -10, -10, 601, - /* 170 */ 679, 41, 187, 678, 687, 648, 381, 643, 526, 360, - /* 180 */ 562, 645, 596, 562, 541, 562, 562, 414, 186, 122, - /* 190 */ 388, 379, 430, 1, 311, 952, 914, 878, 871, 900, - /* 200 */ 954, 457, 904, 918, 912, 944, 947, 949, 938, 921, - /* 210 */ 934, 881, 829, 649, 680, 642, 572, 471, 472, 619, - /* 220 */ 690, 806, 879, 841, 755, 823, + /* 0 */ 1, 857, 798, 798, 916, 867, 867, 916, 926, 857, + /* 10 */ 1044, 867, 867, 808, 867, 867, 867, 867, 867, 867, + /* 20 */ 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, + /* 30 */ 867, 867, 867, 867, 867, 867, 867, 867, 867, 1034, + /* 40 */ 985, 975, 1093, 1103, 1093, 1093, 1093, 1093, 1093, -1, + /* 50 */ 141, 70, 446, 446, 233, 490, 534, 649, 375, 693, + /* 60 */ 287, 155, 13, 199, 331, 243, 578, 592, 737, 737, + /* 70 */ 737, 737, 737, 737, 737, 737, 737, 737, 737, 737, + /* 80 */ 737, 737, 737, 737, 1, 449, 1195, 145, 284, 156, + /* 90 */ 429, 297, 297, 297, 11, 1275, 105, 103, 320, 107, + /* 100 */ 280, 408, 321, 282, 282, 571, 282, 282, 282, 282, + /* 110 */ 658, 548, 571, 282, 282, 729, 768, 778, 768, 749, + /* 120 */ 771, 749, 768, 448, 77, 816, 238, 281, 365, 370, + /* 130 */ -2, 368, 567, 529, 528, 568, 411, 569, 526, 481, + /* 140 */ 479, 485, 486, 486, 523, 525, 480, 486, 655, 114, + /* 150 */ 486, 486, 766, 749, 766, 835, 807, 749, 749, 778, + /* 160 */ 791, 749, -3, -3, -3, -3, -3, -3, -3, 286, + /* 170 */ 374, 109, 621, 45, 414, 413, 203, 86, 203, 330, + /* 180 */ 74, 203, 651, 344, 357, 246, 203, 42, 301, 335, + /* 190 */ 416, 390, 144, 84, 735, 686, 656, 679, 685, 594, + /* 200 */ 684, 678, 706, 722, 699, 718, 696, 672, 728, 664, + /* 210 */ 630, 500, 511, 488, 462, 436, 327, 420, 461, 549, + /* 220 */ 527, 657, 659, 561, 636, 531, ); - const YY_REDUCE_USE_DFLT = -104; + const YY_REDUCE_USE_DFLT = -86; const YY_REDUCE_MAX = 168; static public $yy_reduce_ofst = array( - /* 0 */ -32, 1011, -7, 941, 1111, 1075, 1087, 1135, 1123, 1043, - /* 10 */ -78, 1031, 1055, 1223, 1315, 1439, 1487, 1359, 1383, 1371, - /* 20 */ 1167, 1267, 1291, 1199, 1395, 1475, 1211, 1279, 1187, 1247, - /* 30 */ 1155, 1327, 1463, 1347, 1407, 1427, 1451, 1235, 1303, 1514, - /* 40 */ 1507, 1637, 1603, 1548, 1568, 1576, 1611, 1538, 1596, 861, - /* 50 */ 821, 684, 762, 861, 983, 315, 315, 315, 315, 315, - /* 60 */ 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, - /* 70 */ 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, - /* 80 */ 315, 315, 315, 315, 238, 712, 294, 708, 484, -95, - /* 90 */ 688, 715, 733, 709, 790, 639, 832, 736, 501, 736, - /* 100 */ 782, 782, 760, 779, 808, 501, 796, 779, 761, 807, - /* 110 */ 797, 749, 636, 693, 647, 779, 827, 540, 435, 660, - /* 120 */ 234, 201, 200, 880, 880, 891, 880, 880, 880, 880, - /* 130 */ 882, 882, 882, 882, 882, 882, 867, 867, 882, 882, - /* 140 */ 882, 867, 867, 865, 867, 882, 882, 882, 882, 882, - /* 150 */ 882, 882, 902, 886, 898, 889, 889, 907, 889, 915, - /* 160 */ 899, 889, 919, 923, 922, 795, 24, 75, -103, + /* 0 */ 9, 1084, 1223, 1336, 1170, 1194, 1108, 369, 1274, 1303, + /* 10 */ 1143, 1360, 1250, 1416, 1387, 1440, 2056, 1656, 1680, 1707, + /* 20 */ 1736, 1627, 1600, 1496, 1520, 1547, 1576, 1760, 1787, 1947, + /* 30 */ 1976, 2000, 2027, 1920, 1896, 1816, 1840, 1867, 1467, 1158, + /* 40 */ 1238, 2080, 65, 2140, 2114, 2107, 1123, 2087, 2160, 853, + /* 50 */ 952, 775, 853, 912, 39, 606, 606, 606, 606, 606, + /* 60 */ 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, + /* 70 */ 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, + /* 80 */ 606, 606, 606, 606, -77, 803, 307, 580, -81, 167, + /* 90 */ 799, 727, 765, 734, 392, 625, 714, 122, 508, 43, + /* 100 */ 122, 667, 508, 614, 645, 689, 688, 828, 839, 829, + /* 110 */ 811, 593, 811, 811, 784, 43, 800, 427, 740, 388, + /* 120 */ 305, -85, 130, 683, 692, 683, 683, 683, 683, 683, + /* 130 */ 652, 652, 652, 652, 652, 652, 652, 652, 652, 652, + /* 140 */ 652, 652, 643, 643, 652, 652, 652, 643, 652, 682, + /* 150 */ 643, 643, 673, 676, 741, 761, 709, 676, 676, 742, + /* 160 */ 723, 676, 736, 704, 726, 495, 152, 182, 146, ); static public $yyExpectedTokens = array( /* 0 */ array(3, 4, 5, 6, 7, 8, 9, 12, 28, ), @@ -659,7 +761,7 @@ static public $yy_action = array( /* 38 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 58, 72, ), /* 39 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 58, 72, ), /* 40 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 58, 72, ), - /* 41 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 72, ), + /* 41 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 58, 72, ), /* 42 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 72, ), /* 43 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 72, ), /* 44 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 72, ), @@ -668,24 +770,24 @@ static public $yy_action = array( /* 47 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 72, ), /* 48 */ array(12, 14, 15, 28, 29, 32, 46, 49, 50, 52, 53, 54, 57, 72, ), /* 49 */ array(1, 13, 20, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 50 */ array(1, 20, 25, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 51 */ array(1, 13, 20, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 50 */ array(1, 13, 20, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 51 */ array(1, 20, 25, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), /* 52 */ array(1, 20, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), /* 53 */ array(1, 20, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), /* 54 */ array(12, 14, 15, 57, ), - /* 55 */ array(1, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 55 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), /* 56 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 57 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 58 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 59 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 57 */ array(1, 22, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 58 */ array(1, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 59 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 47, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), /* 60 */ array(1, 2, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 61 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 47, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 62 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 47, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 63 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 64 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 61 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 62 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 63 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 47, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 64 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), /* 65 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), - /* 66 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, ), - /* 67 */ array(1, 22, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 66 */ array(1, 13, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), + /* 67 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, ), /* 68 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), /* 69 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), /* 70 */ array(1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, ), @@ -706,8 +808,8 @@ static public $yy_action = array( /* 85 */ array(1, 13, 18, 20, 46, 55, ), /* 86 */ array(8, 12, 28, 72, 73, 74, ), /* 87 */ array(1, 13, 18, 20, ), - /* 88 */ array(14, 15, 57, ), - /* 89 */ array(18, 51, 58, ), + /* 88 */ array(18, 51, 58, ), + /* 89 */ array(14, 15, 57, ), /* 90 */ array(1, 20, ), /* 91 */ array(2, 20, ), /* 92 */ array(2, 20, ), @@ -716,14 +818,14 @@ static public $yy_action = array( /* 95 */ array(8, 12, 28, 72, 73, 74, ), /* 96 */ array(12, 15, 16, 23, ), /* 97 */ array(12, 15, 16, 56, ), - /* 98 */ array(16, 18, 55, ), - /* 99 */ array(12, 15, 56, ), - /* 100 */ array(13, 20, 23, ), - /* 101 */ array(13, 20, 23, ), - /* 102 */ array(13, 20, 45, ), + /* 98 */ array(13, 20, 23, ), + /* 99 */ array(16, 18, 55, ), + /* 100 */ array(12, 15, 56, ), + /* 101 */ array(13, 20, 45, ), + /* 102 */ array(13, 20, 23, ), /* 103 */ array(12, 15, ), /* 104 */ array(12, 15, ), - /* 105 */ array(18, 55, ), + /* 105 */ array(12, 15, ), /* 106 */ array(12, 15, ), /* 107 */ array(12, 15, ), /* 108 */ array(12, 15, ), @@ -733,52 +835,52 @@ static public $yy_action = array( /* 112 */ array(12, 15, ), /* 113 */ array(12, 15, ), /* 114 */ array(12, 15, ), - /* 115 */ array(12, 15, ), + /* 115 */ array(18, 55, ), /* 116 */ array(20, ), /* 117 */ array(14, ), - /* 118 */ array(18, ), - /* 119 */ array(20, ), - /* 120 */ array(18, ), - /* 121 */ array(20, ), + /* 118 */ array(20, ), + /* 119 */ array(18, ), + /* 120 */ array(20, ), + /* 121 */ array(18, ), /* 122 */ array(20, ), /* 123 */ array(12, 13, 15, 27, ), - /* 124 */ array(12, 13, 15, 27, ), - /* 125 */ array(15, 17, 19, 21, ), - /* 126 */ array(12, 13, 15, ), - /* 127 */ array(12, 13, 15, ), - /* 128 */ array(12, 15, 16, ), - /* 129 */ array(12, 15, 56, ), + /* 124 */ array(15, 17, 19, 21, ), + /* 125 */ array(12, 13, 15, 27, ), + /* 126 */ array(12, 15, 16, ), + /* 127 */ array(12, 15, 56, ), + /* 128 */ array(12, 13, 15, ), + /* 129 */ array(12, 13, 15, ), /* 130 */ array(13, 20, ), /* 131 */ array(13, 20, ), /* 132 */ array(13, 20, ), /* 133 */ array(13, 20, ), /* 134 */ array(13, 20, ), /* 135 */ array(13, 20, ), - /* 136 */ array(51, 58, ), - /* 137 */ array(51, 58, ), + /* 136 */ array(13, 20, ), + /* 137 */ array(13, 20, ), /* 138 */ array(13, 20, ), /* 139 */ array(13, 20, ), /* 140 */ array(13, 20, ), - /* 141 */ array(51, 58, ), + /* 141 */ array(13, 20, ), /* 142 */ array(51, 58, ), - /* 143 */ array(12, 46, ), - /* 144 */ array(51, 58, ), + /* 143 */ array(51, 58, ), + /* 144 */ array(13, 20, ), /* 145 */ array(13, 20, ), /* 146 */ array(13, 20, ), - /* 147 */ array(13, 20, ), + /* 147 */ array(51, 58, ), /* 148 */ array(13, 20, ), - /* 149 */ array(13, 20, ), - /* 150 */ array(13, 20, ), - /* 151 */ array(13, 20, ), - /* 152 */ array(10, ), - /* 153 */ array(14, ), + /* 149 */ array(12, 46, ), + /* 150 */ array(51, 58, ), + /* 151 */ array(51, 58, ), + /* 152 */ array(20, ), + /* 153 */ array(18, ), /* 154 */ array(20, ), - /* 155 */ array(18, ), - /* 156 */ array(18, ), - /* 157 */ array(2, ), + /* 155 */ array(10, ), + /* 156 */ array(46, ), + /* 157 */ array(18, ), /* 158 */ array(18, ), - /* 159 */ array(20, ), - /* 160 */ array(46, ), + /* 159 */ array(14, ), + /* 160 */ array(2, ), /* 161 */ array(18, ), /* 162 */ array(), /* 163 */ array(), @@ -788,62 +890,62 @@ static public $yy_action = array( /* 167 */ array(), /* 168 */ array(), /* 169 */ array(12, 14, 15, 29, 52, 53, ), - /* 170 */ array(13, 20, 46, 55, ), - /* 171 */ array(46, 51, 55, 59, ), - /* 172 */ array(27, 46, 55, ), - /* 173 */ array(13, 20, 45, ), - /* 174 */ array(16, 46, 55, ), + /* 170 */ array(46, 51, 55, 59, ), + /* 171 */ array(13, 20, 46, 55, ), + /* 172 */ array(16, 46, 55, ), + /* 173 */ array(27, 46, 55, ), + /* 174 */ array(13, 20, 45, ), /* 175 */ array(13, 45, ), - /* 176 */ array(22, 30, ), - /* 177 */ array(16, 51, ), - /* 178 */ array(2, 16, ), - /* 179 */ array(27, 45, ), - /* 180 */ array(46, 55, ), - /* 181 */ array(15, 29, ), + /* 176 */ array(46, 55, ), + /* 177 */ array(30, 59, ), + /* 178 */ array(46, 55, ), + /* 179 */ array(15, 29, ), + /* 180 */ array(23, 73, ), + /* 181 */ array(46, 55, ), /* 182 */ array(15, 56, ), - /* 183 */ array(46, 55, ), - /* 184 */ array(23, 73, ), - /* 185 */ array(46, 55, ), + /* 183 */ array(2, 16, ), + /* 184 */ array(22, 30, ), + /* 185 */ array(27, 45, ), /* 186 */ array(46, 55, ), - /* 187 */ array(30, 59, ), - /* 188 */ array(45, ), - /* 189 */ array(47, ), - /* 190 */ array(14, ), - /* 191 */ array(29, ), - /* 192 */ array(46, ), - /* 193 */ array(26, ), - /* 194 */ array(15, ), - /* 195 */ array(2, ), - /* 196 */ array(14, ), - /* 197 */ array(51, ), - /* 198 */ array(47, ), - /* 199 */ array(24, ), - /* 200 */ array(15, ), - /* 201 */ array(23, ), - /* 202 */ array(13, ), - /* 203 */ array(13, ), - /* 204 */ array(20, ), - /* 205 */ array(20, ), - /* 206 */ array(16, ), - /* 207 */ array(13, ), - /* 208 */ array(15, ), - /* 209 */ array(14, ), - /* 210 */ array(15, ), - /* 211 */ array(14, ), - /* 212 */ array(47, ), - /* 213 */ array(26, ), - /* 214 */ array(16, ), - /* 215 */ array(14, ), - /* 216 */ array(15, ), - /* 217 */ array(15, ), - /* 218 */ array(57, ), - /* 219 */ array(57, ), - /* 220 */ array(15, ), - /* 221 */ array(59, ), + /* 187 */ array(16, 51, ), + /* 188 */ array(15, ), + /* 189 */ array(26, ), + /* 190 */ array(16, ), + /* 191 */ array(14, ), + /* 192 */ array(13, ), + /* 193 */ array(15, ), + /* 194 */ array(13, ), + /* 195 */ array(14, ), + /* 196 */ array(45, ), + /* 197 */ array(20, ), + /* 198 */ array(13, ), + /* 199 */ array(14, ), + /* 200 */ array(13, ), + /* 201 */ array(24, ), + /* 202 */ array(16, ), + /* 203 */ array(23, ), + /* 204 */ array(47, ), + /* 205 */ array(26, ), + /* 206 */ array(47, ), + /* 207 */ array(51, ), + /* 208 */ array(14, ), + /* 209 */ array(15, ), + /* 210 */ array(47, ), + /* 211 */ array(20, ), + /* 212 */ array(29, ), + /* 213 */ array(14, ), + /* 214 */ array(2, ), + /* 215 */ array(15, ), + /* 216 */ array(57, ), + /* 217 */ array(48, ), + /* 218 */ array(15, ), + /* 219 */ array(15, ), + /* 220 */ array(57, ), + /* 221 */ array(15, ), /* 222 */ array(15, ), - /* 223 */ array(15, ), - /* 224 */ array(48, ), - /* 225 */ array(13, ), + /* 223 */ array(46, ), + /* 224 */ array(15, ), + /* 225 */ array(59, ), /* 226 */ array(), /* 227 */ array(), /* 228 */ array(), @@ -983,50 +1085,51 @@ static public $yy_action = array( /* 362 */ array(), /* 363 */ array(), /* 364 */ array(), + /* 365 */ array(), ); static public $yy_default = array( - /* 0 */ 555, 538, 555, 555, 509, 509, 509, 555, 555, 555, - /* 10 */ 555, 509, 555, 555, 555, 555, 555, 555, 555, 555, - /* 20 */ 555, 555, 555, 555, 555, 555, 555, 555, 555, 555, - /* 30 */ 555, 555, 555, 555, 555, 555, 555, 555, 555, 555, - /* 40 */ 555, 555, 555, 555, 555, 555, 555, 555, 555, 555, - /* 50 */ 423, 555, 423, 423, 555, 508, 555, 555, 555, 555, - /* 60 */ 555, 555, 555, 555, 555, 555, 555, 555, 445, 405, - /* 70 */ 432, 540, 541, 446, 444, 539, 441, 454, 425, 449, - /* 80 */ 457, 450, 429, 453, 365, 434, 555, 555, 555, 517, - /* 90 */ 423, 423, 423, 423, 555, 555, 555, 480, 473, 480, - /* 100 */ 458, 458, 433, 555, 555, 473, 555, 555, 555, 555, - /* 110 */ 555, 555, 555, 555, 555, 555, 423, 555, 513, 423, - /* 120 */ 512, 423, 423, 555, 555, 555, 555, 555, 555, 481, - /* 130 */ 555, 555, 555, 555, 555, 555, 478, 501, 555, 555, - /* 140 */ 555, 502, 500, 480, 503, 555, 555, 555, 555, 555, - /* 150 */ 555, 555, 379, 555, 554, 514, 515, 440, 496, 554, - /* 160 */ 480, 518, 520, 520, 520, 480, 480, 520, 480, 555, - /* 170 */ 434, 434, 434, 433, 428, 433, 555, 463, 494, 433, - /* 180 */ 434, 555, 555, 455, 458, 522, 555, 555, 433, 555, - /* 190 */ 555, 555, 516, 555, 555, 494, 555, 463, 555, 430, - /* 200 */ 555, 458, 555, 555, 555, 555, 555, 555, 555, 555, - /* 210 */ 555, 555, 555, 555, 428, 555, 555, 555, 555, 555, - /* 220 */ 555, 555, 555, 555, 468, 555, 547, 420, 544, 431, - /* 230 */ 521, 468, 548, 546, 414, 486, 408, 417, 427, 542, - /* 240 */ 416, 543, 415, 407, 551, 404, 506, 485, 406, 504, - /* 250 */ 483, 495, 505, 507, 491, 456, 552, 484, 487, 545, - /* 260 */ 366, 490, 553, 389, 467, 466, 471, 435, 474, 465, - /* 270 */ 464, 462, 459, 460, 461, 479, 482, 492, 499, 475, - /* 280 */ 476, 477, 472, 470, 493, 494, 436, 469, 519, 422, - /* 290 */ 374, 373, 375, 376, 377, 372, 371, 367, 368, 369, - /* 300 */ 370, 378, 380, 421, 413, 418, 419, 386, 385, 381, - /* 310 */ 382, 383, 384, 488, 489, 392, 391, 393, 394, 395, - /* 320 */ 390, 550, 439, 535, 537, 536, 497, 498, 410, 409, - /* 330 */ 411, 412, 402, 397, 400, 396, 398, 399, 401, 534, - /* 340 */ 533, 447, 443, 448, 451, 452, 442, 438, 437, 387, - /* 350 */ 549, 388, 510, 511, 529, 530, 531, 532, 528, 527, - /* 360 */ 523, 524, 525, 526, 403, + /* 0 */ 557, 540, 557, 557, 557, 510, 510, 557, 557, 557, + /* 10 */ 557, 510, 510, 557, 557, 557, 557, 557, 557, 557, + /* 20 */ 557, 557, 557, 557, 557, 557, 557, 557, 557, 557, + /* 30 */ 557, 557, 557, 557, 557, 557, 557, 557, 557, 557, + /* 40 */ 557, 557, 557, 557, 557, 557, 557, 557, 557, 557, + /* 50 */ 557, 424, 424, 424, 557, 557, 557, 557, 509, 557, + /* 60 */ 557, 557, 557, 557, 557, 557, 557, 557, 450, 447, + /* 70 */ 451, 542, 426, 454, 455, 433, 543, 445, 541, 430, + /* 80 */ 442, 458, 446, 406, 366, 435, 557, 557, 518, 557, + /* 90 */ 424, 424, 424, 424, 557, 557, 557, 481, 459, 474, + /* 100 */ 481, 434, 459, 557, 557, 557, 557, 557, 557, 557, + /* 110 */ 557, 557, 557, 557, 557, 474, 424, 557, 424, 513, + /* 120 */ 424, 514, 424, 557, 557, 557, 557, 482, 557, 557, + /* 130 */ 557, 557, 557, 557, 557, 557, 557, 557, 557, 557, + /* 140 */ 557, 557, 479, 504, 557, 557, 557, 503, 557, 481, + /* 150 */ 501, 502, 556, 497, 556, 380, 481, 516, 519, 557, + /* 160 */ 441, 515, 481, 521, 521, 521, 481, 521, 481, 557, + /* 170 */ 435, 435, 429, 435, 434, 434, 435, 557, 524, 557, + /* 180 */ 459, 557, 557, 495, 557, 434, 456, 464, 557, 557, + /* 190 */ 557, 557, 557, 557, 557, 557, 434, 557, 557, 557, + /* 200 */ 557, 431, 429, 459, 557, 557, 557, 464, 557, 557, + /* 210 */ 557, 557, 557, 557, 495, 557, 557, 469, 557, 557, + /* 220 */ 557, 557, 557, 517, 557, 557, 377, 449, 488, 376, + /* 230 */ 378, 473, 471, 448, 496, 485, 470, 486, 484, 505, + /* 240 */ 487, 492, 549, 453, 548, 382, 383, 545, 546, 550, + /* 250 */ 553, 381, 379, 452, 375, 491, 554, 547, 437, 507, + /* 260 */ 421, 489, 415, 388, 551, 522, 523, 416, 417, 369, + /* 270 */ 368, 367, 438, 428, 418, 370, 389, 469, 384, 476, + /* 280 */ 477, 493, 506, 508, 500, 444, 373, 457, 371, 439, + /* 290 */ 478, 443, 372, 374, 408, 475, 462, 390, 391, 411, + /* 300 */ 490, 392, 412, 552, 480, 460, 463, 539, 413, 461, + /* 310 */ 538, 410, 393, 400, 396, 467, 468, 498, 397, 399, + /* 320 */ 395, 402, 465, 436, 394, 398, 401, 472, 466, 537, + /* 330 */ 440, 407, 555, 432, 511, 512, 525, 405, 422, 483, + /* 340 */ 386, 385, 409, 499, 495, 387, 494, 526, 414, 423, + /* 350 */ 420, 535, 404, 536, 520, 403, 534, 533, 529, 528, + /* 360 */ 527, 419, 530, 532, 531, 544, ); const YYNOCODE = 118; const YYSTACKDEPTH = 100; - const YYNSTATE = 365; - const YYNRULE = 190; + const YYNSTATE = 366; + const YYNRULE = 191; const YYERRORSYMBOL = 75; const YYERRSYMDT = 'yy0'; const YYFALLBACK = 0; @@ -1246,39 +1349,40 @@ static public $yy_action = array( /* 154 */ "modparameters ::= modparameters modparameter", /* 155 */ "modparameters ::=", /* 156 */ "modparameter ::= COLON value", - /* 157 */ "modparameter ::= COLON ID", - /* 158 */ "ifcond ::= EQUALS", - /* 159 */ "ifcond ::= NOTEQUALS", - /* 160 */ "ifcond ::= GREATERTHAN", - /* 161 */ "ifcond ::= LESSTHAN", - /* 162 */ "ifcond ::= GREATEREQUAL", - /* 163 */ "ifcond ::= LESSEQUAL", - /* 164 */ "ifcond ::= IDENTITY", - /* 165 */ "ifcond ::= NONEIDENTITY", - /* 166 */ "ifcond ::= MOD", - /* 167 */ "lop ::= LAND", - /* 168 */ "lop ::= LOR", - /* 169 */ "lop ::= LXOR", - /* 170 */ "array ::= OPENB arrayelements CLOSEB", - /* 171 */ "arrayelements ::= arrayelement", - /* 172 */ "arrayelements ::= arrayelements COMMA arrayelement", - /* 173 */ "arrayelements ::=", - /* 174 */ "arrayelement ::= value APTR expr", - /* 175 */ "arrayelement ::= ID APTR expr", - /* 176 */ "arrayelement ::= expr", - /* 177 */ "doublequoted_with_quotes ::= QUOTE QUOTE", - /* 178 */ "doublequoted_with_quotes ::= QUOTE doublequoted QUOTE", - /* 179 */ "doublequoted ::= doublequoted doublequotedcontent", - /* 180 */ "doublequoted ::= doublequotedcontent", - /* 181 */ "doublequotedcontent ::= BACKTICK variable BACKTICK", - /* 182 */ "doublequotedcontent ::= BACKTICK expr BACKTICK", - /* 183 */ "doublequotedcontent ::= DOLLARID", - /* 184 */ "doublequotedcontent ::= LDEL variable RDEL", - /* 185 */ "doublequotedcontent ::= LDEL expr RDEL", - /* 186 */ "doublequotedcontent ::= smartytag", - /* 187 */ "doublequotedcontent ::= OTHER", - /* 188 */ "optspace ::= SPACE", - /* 189 */ "optspace ::=", + /* 157 */ "modparameter ::= COLON array", + /* 158 */ "modparameter ::= COLON ID", + /* 159 */ "ifcond ::= EQUALS", + /* 160 */ "ifcond ::= NOTEQUALS", + /* 161 */ "ifcond ::= GREATERTHAN", + /* 162 */ "ifcond ::= LESSTHAN", + /* 163 */ "ifcond ::= GREATEREQUAL", + /* 164 */ "ifcond ::= LESSEQUAL", + /* 165 */ "ifcond ::= IDENTITY", + /* 166 */ "ifcond ::= NONEIDENTITY", + /* 167 */ "ifcond ::= MOD", + /* 168 */ "lop ::= LAND", + /* 169 */ "lop ::= LOR", + /* 170 */ "lop ::= LXOR", + /* 171 */ "array ::= OPENB arrayelements CLOSEB", + /* 172 */ "arrayelements ::= arrayelement", + /* 173 */ "arrayelements ::= arrayelements COMMA arrayelement", + /* 174 */ "arrayelements ::=", + /* 175 */ "arrayelement ::= value APTR expr", + /* 176 */ "arrayelement ::= ID APTR expr", + /* 177 */ "arrayelement ::= expr", + /* 178 */ "doublequoted_with_quotes ::= QUOTE QUOTE", + /* 179 */ "doublequoted_with_quotes ::= QUOTE doublequoted QUOTE", + /* 180 */ "doublequoted ::= doublequoted doublequotedcontent", + /* 181 */ "doublequoted ::= doublequotedcontent", + /* 182 */ "doublequotedcontent ::= BACKTICK variable BACKTICK", + /* 183 */ "doublequotedcontent ::= BACKTICK expr BACKTICK", + /* 184 */ "doublequotedcontent ::= DOLLARID", + /* 185 */ "doublequotedcontent ::= LDEL variable RDEL", + /* 186 */ "doublequotedcontent ::= LDEL expr RDEL", + /* 187 */ "doublequotedcontent ::= smartytag", + /* 188 */ "doublequotedcontent ::= OTHER", + /* 189 */ "optspace ::= SPACE", + /* 190 */ "optspace ::=", ); function tokenName($tokenType) @@ -1710,6 +1814,7 @@ static public $yy_action = array( array( 'lhs' => 90, 'rhs' => 0 ), array( 'lhs' => 112, 'rhs' => 2 ), array( 'lhs' => 112, 'rhs' => 2 ), + array( 'lhs' => 112, 'rhs' => 2 ), array( 'lhs' => 99, 'rhs' => 1 ), array( 'lhs' => 99, 'rhs' => 1 ), array( 'lhs' => 99, 'rhs' => 1 ), @@ -1762,7 +1867,7 @@ static public $yy_action = array( 105 => 0, 110 => 0, 147 => 0, - 171 => 0, + 172 => 0, 1 => 1, 2 => 2, 3 => 3, @@ -1808,7 +1913,7 @@ static public $yy_action = array( 57 => 41, 143 => 41, 151 => 41, - 176 => 41, + 177 => 41, 42 => 42, 43 => 43, 44 => 44, @@ -1838,7 +1943,7 @@ static public $yy_action = array( 73 => 71, 74 => 74, 127 => 74, - 188 => 74, + 189 => 74, 75 => 75, 76 => 76, 79 => 76, @@ -1881,7 +1986,7 @@ static public $yy_action = array( 123 => 123, 124 => 124, 126 => 126, - 189 => 126, + 190 => 126, 128 => 128, 129 => 129, 130 => 130, @@ -1906,7 +2011,7 @@ static public $yy_action = array( 153 => 153, 154 => 154, 156 => 156, - 157 => 157, + 157 => 156, 158 => 158, 159 => 159, 160 => 160, @@ -1920,25 +2025,26 @@ static public $yy_action = array( 168 => 168, 169 => 169, 170 => 170, - 172 => 172, + 171 => 171, 173 => 173, 174 => 174, 175 => 175, - 177 => 177, + 176 => 176, 178 => 178, 179 => 179, 180 => 180, 181 => 181, - 182 => 181, - 184 => 181, - 183 => 183, - 185 => 185, + 182 => 182, + 183 => 182, + 185 => 182, + 184 => 184, 186 => 186, 187 => 187, + 188 => 188, ); #line 85 "smarty_internal_templateparser.y" function yy_r0(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 1936 "smarty_internal_templateparser.php" +#line 2042 "smarty_internal_templateparser.php" #line 91 "smarty_internal_templateparser.y" function yy_r1(){if ($this->template->extract_code == false) { $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; @@ -1947,7 +2053,7 @@ static public $yy_action = array( $this->template->extracted_compiled_code .= $this->yystack[$this->yyidx + 0]->minor; } } -#line 1945 "smarty_internal_templateparser.php" +#line 2051 "smarty_internal_templateparser.php" #line 99 "smarty_internal_templateparser.y" function yy_r2(){if ($this->template->extract_code == false) { $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; @@ -1957,7 +2063,7 @@ static public $yy_action = array( $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } } -#line 1955 "smarty_internal_templateparser.php" +#line 2061 "smarty_internal_templateparser.php" #line 112 "smarty_internal_templateparser.y" function yy_r3(){ if ($this->compiler->has_code) { @@ -1969,10 +2075,10 @@ static public $yy_action = array( $this->compiler->has_variable_string = false; $this->block_nesting_level = count($this->compiler->_tag_stack); } -#line 1967 "smarty_internal_templateparser.php" +#line 2073 "smarty_internal_templateparser.php" #line 124 "smarty_internal_templateparser.y" function yy_r4(){ $this->_retvalue = ''; } -#line 1970 "smarty_internal_templateparser.php" +#line 2076 "smarty_internal_templateparser.php" #line 130 "smarty_internal_templateparser.y" function yy_r6(){ if ($this->sec_obj->php_handling == SMARTY_PHP_PASSTHRU) { @@ -1985,7 +2091,7 @@ static public $yy_action = array( $this->_retvalue = ''; } } -#line 1983 "smarty_internal_templateparser.php" +#line 2089 "smarty_internal_templateparser.php" #line 142 "smarty_internal_templateparser.y" function yy_r7(){if ($this->is_xml) { $this->compiler->tag_nocache = true; @@ -2001,7 +2107,7 @@ static public $yy_action = array( $this->_retvalue = ''; } } -#line 1999 "smarty_internal_templateparser.php" +#line 2105 "smarty_internal_templateparser.php" #line 157 "smarty_internal_templateparser.y" function yy_r8(){if ($this->lex->strip) { $this->_retvalue = preg_replace('![\$this->yystack[$this->yyidx + 0]->minor ]*[\r\n]+[\$this->yystack[$this->yyidx + 0]->minor ]*!', '', self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor)); @@ -2009,10 +2115,10 @@ static public $yy_action = array( $this->_retvalue = self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor); } } -#line 2007 "smarty_internal_templateparser.php" +#line 2113 "smarty_internal_templateparser.php" #line 165 "smarty_internal_templateparser.y" function yy_r9(){ $this->compiler->tag_nocache = true; $this->is_xml = true; $this->_retvalue = $this->compiler->processNocacheCode("", $this->compiler, true); } -#line 2010 "smarty_internal_templateparser.php" +#line 2116 "smarty_internal_templateparser.php" #line 168 "smarty_internal_templateparser.y" function yy_r10(){if ($this->lex->strip) { $this->_retvalue = preg_replace('![\t ]*[\r\n]+[\t ]*!', '', $this->yystack[$this->yyidx + 0]->minor); @@ -2020,279 +2126,279 @@ static public $yy_action = array( $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } } -#line 2018 "smarty_internal_templateparser.php" +#line 2124 "smarty_internal_templateparser.php" #line 176 "smarty_internal_templateparser.y" function yy_r11(){ $this->_retvalue = ''; } -#line 2021 "smarty_internal_templateparser.php" +#line 2127 "smarty_internal_templateparser.php" #line 177 "smarty_internal_templateparser.y" function yy_r12(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } -#line 2024 "smarty_internal_templateparser.php" +#line 2130 "smarty_internal_templateparser.php" #line 179 "smarty_internal_templateparser.y" function yy_r13(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2027 "smarty_internal_templateparser.php" +#line 2133 "smarty_internal_templateparser.php" #line 184 "smarty_internal_templateparser.y" function yy_r17(){ $this->_retvalue = self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor); } -#line 2030 "smarty_internal_templateparser.php" +#line 2136 "smarty_internal_templateparser.php" #line 186 "smarty_internal_templateparser.y" function yy_r19(){ $this->_retvalue = self::escape_end_tag($this->yystack[$this->yyidx + 0]->minor); } -#line 2033 "smarty_internal_templateparser.php" +#line 2139 "smarty_internal_templateparser.php" #line 194 "smarty_internal_templateparser.y" function yy_r20(){ $this->_retvalue = $this->compiler->compileTag('private_print_expression',array('value'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2036 "smarty_internal_templateparser.php" +#line 2142 "smarty_internal_templateparser.php" #line 195 "smarty_internal_templateparser.y" function yy_r21(){ $this->_retvalue = $this->compiler->compileTag('private_print_expression',array_merge(array('value'=>$this->yystack[$this->yyidx + -2]->minor),$this->yystack[$this->yyidx + -1]->minor)); } -#line 2039 "smarty_internal_templateparser.php" +#line 2145 "smarty_internal_templateparser.php" #line 206 "smarty_internal_templateparser.y" function yy_r25(){ $this->_retvalue = $this->compiler->compileTag('assign',array('value'=>$this->yystack[$this->yyidx + -1]->minor,'var'=>"'".$this->yystack[$this->yyidx + -3]->minor."'")); } -#line 2042 "smarty_internal_templateparser.php" +#line 2148 "smarty_internal_templateparser.php" #line 208 "smarty_internal_templateparser.y" function yy_r27(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array('value'=>$this->yystack[$this->yyidx + -2]->minor,'var'=>"'".$this->yystack[$this->yyidx + -4]->minor."'"),$this->yystack[$this->yyidx + -1]->minor)); } -#line 2045 "smarty_internal_templateparser.php" +#line 2151 "smarty_internal_templateparser.php" #line 210 "smarty_internal_templateparser.y" function yy_r29(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array('value'=>$this->yystack[$this->yyidx + -2]->minor),$this->yystack[$this->yyidx + -4]->minor,$this->yystack[$this->yyidx + -1]->minor)); } -#line 2048 "smarty_internal_templateparser.php" +#line 2154 "smarty_internal_templateparser.php" #line 213 "smarty_internal_templateparser.y" function yy_r31(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor,$this->yystack[$this->yyidx + -1]->minor); } -#line 2051 "smarty_internal_templateparser.php" +#line 2157 "smarty_internal_templateparser.php" #line 215 "smarty_internal_templateparser.y" function yy_r33(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor,array()); } -#line 2054 "smarty_internal_templateparser.php" +#line 2160 "smarty_internal_templateparser.php" #line 217 "smarty_internal_templateparser.y" function yy_r34(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor,array_merge(array('object_methode'=>$this->yystack[$this->yyidx + -2]->minor),$this->yystack[$this->yyidx + -1]->minor)); } -#line 2057 "smarty_internal_templateparser.php" +#line 2163 "smarty_internal_templateparser.php" #line 219 "smarty_internal_templateparser.y" function yy_r35(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor,$this->yystack[$this->yyidx + -1]->minor).'_retvalue .= $this->compiler->compileTag('private_modifier',array('modifier'=>$this->yystack[$this->yyidx + -3]->minor,'params'=>'ob_get_clean()'.$this->yystack[$this->yyidx + -2]->minor)).'?>'; } -#line 2062 "smarty_internal_templateparser.php" +#line 2168 "smarty_internal_templateparser.php" #line 223 "smarty_internal_templateparser.y" function yy_r36(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -6]->minor,array_merge(array('object_methode'=>$this->yystack[$this->yyidx + -4]->minor),$this->yystack[$this->yyidx + -1]->minor)).'_retvalue .= $this->compiler->compileTag('private_modifier',array('modifier'=>$this->yystack[$this->yyidx + -3]->minor,'params'=>'ob_get_clean()'.$this->yystack[$this->yyidx + -2]->minor)).'?>'; } -#line 2067 "smarty_internal_templateparser.php" +#line 2173 "smarty_internal_templateparser.php" #line 227 "smarty_internal_templateparser.y" function yy_r37(){ $this->_retvalue = $this->compiler->compileTag(($this->yystack[$this->yyidx + -3]->minor == 'else if')? 'elseif' : $this->yystack[$this->yyidx + -3]->minor,array('if condition'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2070 "smarty_internal_templateparser.php" +#line 2176 "smarty_internal_templateparser.php" #line 230 "smarty_internal_templateparser.y" function yy_r39(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -11]->minor,array('start'=>$this->yystack[$this->yyidx + -9]->minor,'ifexp'=>$this->yystack[$this->yyidx + -6]->minor,'varloop'=>$this->yystack[$this->yyidx + -2]->minor,'loop'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2074 "smarty_internal_templateparser.php" +#line 2180 "smarty_internal_templateparser.php" #line 233 "smarty_internal_templateparser.y" function yy_r40(){ $this->_retvalue = '='.$this->yystack[$this->yyidx + 0]->minor; } -#line 2077 "smarty_internal_templateparser.php" +#line 2183 "smarty_internal_templateparser.php" #line 234 "smarty_internal_templateparser.y" function yy_r41(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2080 "smarty_internal_templateparser.php" +#line 2186 "smarty_internal_templateparser.php" #line 235 "smarty_internal_templateparser.y" function yy_r42(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -6]->minor,array_merge(array('start'=>$this->yystack[$this->yyidx + -4]->minor,'to'=>$this->yystack[$this->yyidx + -2]->minor),$this->yystack[$this->yyidx + -1]->minor)); } -#line 2083 "smarty_internal_templateparser.php" +#line 2189 "smarty_internal_templateparser.php" #line 236 "smarty_internal_templateparser.y" function yy_r43(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -7]->minor,array('start'=>$this->yystack[$this->yyidx + -5]->minor,'to'=>$this->yystack[$this->yyidx + -3]->minor,'step'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2086 "smarty_internal_templateparser.php" +#line 2192 "smarty_internal_templateparser.php" #line 238 "smarty_internal_templateparser.y" function yy_r44(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -6]->minor,array('from'=>$this->yystack[$this->yyidx + -4]->minor,'item'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2090 "smarty_internal_templateparser.php" +#line 2196 "smarty_internal_templateparser.php" #line 240 "smarty_internal_templateparser.y" function yy_r45(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -9]->minor,array('from'=>$this->yystack[$this->yyidx + -7]->minor,'item'=>$this->yystack[$this->yyidx + -1]->minor,'key'=>$this->yystack[$this->yyidx + -4]->minor)); } -#line 2094 "smarty_internal_templateparser.php" +#line 2200 "smarty_internal_templateparser.php" #line 242 "smarty_internal_templateparser.y" function yy_r46(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -6]->minor,array('from'=>$this->yystack[$this->yyidx + -4]->minor,'item'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2098 "smarty_internal_templateparser.php" +#line 2204 "smarty_internal_templateparser.php" #line 244 "smarty_internal_templateparser.y" function yy_r47(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -9]->minor,array('from'=>$this->yystack[$this->yyidx + -7]->minor,'item'=>$this->yystack[$this->yyidx + -1]->minor,'key'=>$this->yystack[$this->yyidx + -4]->minor)); } -#line 2102 "smarty_internal_templateparser.php" +#line 2208 "smarty_internal_templateparser.php" #line 248 "smarty_internal_templateparser.y" function yy_r48(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor.'close',array()); } -#line 2105 "smarty_internal_templateparser.php" +#line 2211 "smarty_internal_templateparser.php" #line 253 "smarty_internal_templateparser.y" function yy_r53(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor.'close',$this->yystack[$this->yyidx + -1]->minor); } -#line 2108 "smarty_internal_templateparser.php" +#line 2214 "smarty_internal_templateparser.php" #line 254 "smarty_internal_templateparser.y" function yy_r54(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor.'close',$this->yystack[$this->yyidx + -1]->minor).'_retvalue .= $this->compiler->compileTag('private_modifier',array('modifier'=>$this->yystack[$this->yyidx + -3]->minor,'params'=>'ob_get_clean()'.$this->yystack[$this->yyidx + -2]->minor)).'?>'; } -#line 2113 "smarty_internal_templateparser.php" +#line 2219 "smarty_internal_templateparser.php" #line 258 "smarty_internal_templateparser.y" function yy_r55(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor.'close',array('object_methode'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2116 "smarty_internal_templateparser.php" +#line 2222 "smarty_internal_templateparser.php" #line 265 "smarty_internal_templateparser.y" function yy_r56(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor); } -#line 2119 "smarty_internal_templateparser.php" +#line 2225 "smarty_internal_templateparser.php" #line 269 "smarty_internal_templateparser.y" function yy_r58(){ $this->_retvalue = array(); } -#line 2122 "smarty_internal_templateparser.php" +#line 2228 "smarty_internal_templateparser.php" #line 272 "smarty_internal_templateparser.y" function yy_r59(){ $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>"'".$this->yystack[$this->yyidx + 0]->minor."'"); } -#line 2125 "smarty_internal_templateparser.php" +#line 2231 "smarty_internal_templateparser.php" #line 273 "smarty_internal_templateparser.y" function yy_r60(){ $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2128 "smarty_internal_templateparser.php" +#line 2234 "smarty_internal_templateparser.php" #line 276 "smarty_internal_templateparser.y" function yy_r63(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor=>'true'); } -#line 2131 "smarty_internal_templateparser.php" +#line 2237 "smarty_internal_templateparser.php" #line 283 "smarty_internal_templateparser.y" function yy_r65(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } -#line 2134 "smarty_internal_templateparser.php" +#line 2240 "smarty_internal_templateparser.php" #line 284 "smarty_internal_templateparser.y" function yy_r66(){ $this->yystack[$this->yyidx + -2]->minor[]=$this->yystack[$this->yyidx + 0]->minor; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor; } -#line 2137 "smarty_internal_templateparser.php" +#line 2243 "smarty_internal_templateparser.php" #line 286 "smarty_internal_templateparser.y" function yy_r67(){ $this->_retvalue = array('var' => $this->yystack[$this->yyidx + -2]->minor, 'value'=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2140 "smarty_internal_templateparser.php" +#line 2246 "smarty_internal_templateparser.php" #line 294 "smarty_internal_templateparser.y" function yy_r69(){ $this->_retvalue = "'".$this->yystack[$this->yyidx + 0]->minor."'"; } -#line 2143 "smarty_internal_templateparser.php" +#line 2249 "smarty_internal_templateparser.php" #line 296 "smarty_internal_templateparser.y" function yy_r70(){$this->_retvalue = '$_smarty_tpl->getStreamVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'://'. $this->yystack[$this->yyidx + 0]->minor . '\')'; } -#line 2146 "smarty_internal_templateparser.php" +#line 2252 "smarty_internal_templateparser.php" #line 298 "smarty_internal_templateparser.y" function yy_r71(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor . trim($this->yystack[$this->yyidx + -1]->minor) . $this->yystack[$this->yyidx + 0]->minor; } -#line 2149 "smarty_internal_templateparser.php" +#line 2255 "smarty_internal_templateparser.php" #line 304 "smarty_internal_templateparser.y" function yy_r74(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2152 "smarty_internal_templateparser.php" +#line 2258 "smarty_internal_templateparser.php" #line 307 "smarty_internal_templateparser.y" function yy_r75(){ $this->_retvalue = $this->compiler->compileTag('private_modifier',array('modifier'=>$this->yystack[$this->yyidx + -1]->minor,'params'=>$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor)); } -#line 2155 "smarty_internal_templateparser.php" +#line 2261 "smarty_internal_templateparser.php" #line 311 "smarty_internal_templateparser.y" function yy_r76(){$this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2158 "smarty_internal_templateparser.php" +#line 2264 "smarty_internal_templateparser.php" #line 312 "smarty_internal_templateparser.y" function yy_r77(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2161 "smarty_internal_templateparser.php" +#line 2267 "smarty_internal_templateparser.php" #line 313 "smarty_internal_templateparser.y" function yy_r78(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.',(array)'.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2164 "smarty_internal_templateparser.php" +#line 2270 "smarty_internal_templateparser.php" #line 315 "smarty_internal_templateparser.y" function yy_r80(){$this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2167 "smarty_internal_templateparser.php" +#line 2273 "smarty_internal_templateparser.php" #line 316 "smarty_internal_templateparser.y" function yy_r81(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2170 "smarty_internal_templateparser.php" +#line 2276 "smarty_internal_templateparser.php" #line 317 "smarty_internal_templateparser.y" function yy_r82(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2173 "smarty_internal_templateparser.php" +#line 2279 "smarty_internal_templateparser.php" #line 318 "smarty_internal_templateparser.y" function yy_r83(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2176 "smarty_internal_templateparser.php" +#line 2282 "smarty_internal_templateparser.php" #line 319 "smarty_internal_templateparser.y" function yy_r84(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2179 "smarty_internal_templateparser.php" +#line 2285 "smarty_internal_templateparser.php" #line 320 "smarty_internal_templateparser.y" function yy_r85(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2182 "smarty_internal_templateparser.php" +#line 2288 "smarty_internal_templateparser.php" #line 326 "smarty_internal_templateparser.y" function yy_r91(){$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 2185 "smarty_internal_templateparser.php" +#line 2291 "smarty_internal_templateparser.php" #line 332 "smarty_internal_templateparser.y" function yy_r92(){ $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.' ? '.$this->yystack[$this->yyidx + -2]->minor.' : '.$this->yystack[$this->yyidx + 0]->minor; } -#line 2188 "smarty_internal_templateparser.php" +#line 2294 "smarty_internal_templateparser.php" #line 339 "smarty_internal_templateparser.y" function yy_r95(){ $this->_retvalue = '!'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2191 "smarty_internal_templateparser.php" +#line 2297 "smarty_internal_templateparser.php" #line 344 "smarty_internal_templateparser.y" function yy_r99(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2194 "smarty_internal_templateparser.php" +#line 2300 "smarty_internal_templateparser.php" #line 354 "smarty_internal_templateparser.y" function yy_r103(){ $this->_retvalue = "(". $this->yystack[$this->yyidx + -1]->minor .")"; } -#line 2197 "smarty_internal_templateparser.php" +#line 2303 "smarty_internal_templateparser.php" #line 360 "smarty_internal_templateparser.y" function yy_r106(){if (!$this->template->security || $this->smarty->security_handler->isTrustedStaticClass($this->yystack[$this->yyidx + -2]->minor, $this->compiler)) { $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } } -#line 2202 "smarty_internal_templateparser.php" +#line 2308 "smarty_internal_templateparser.php" #line 364 "smarty_internal_templateparser.y" function yy_r107(){ $this->prefix_number++; $this->compiler->prefix_code[] = ''.$this->yystack[$this->yyidx + 0]->minor.'prefix_number.'=ob_get_clean();?>'; $this->_retvalue = '$_tmp'.$this->prefix_number; } -#line 2205 "smarty_internal_templateparser.php" -#line 375 "smarty_internal_templateparser.y" +#line 2311 "smarty_internal_templateparser.php" +#line 373 "smarty_internal_templateparser.y" function yy_r108(){if ($this->yystack[$this->yyidx + 0]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('private_special_variable',$this->yystack[$this->yyidx + 0]->minor['smarty_internal_index']);} else { $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + 0]->minor['var'] .')->value'.$this->yystack[$this->yyidx + 0]->minor['smarty_internal_index']; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + 0]->minor['var'],"'"), null, true, false)->nocache;} } -#line 2209 "smarty_internal_templateparser.php" -#line 378 "smarty_internal_templateparser.y" +#line 2315 "smarty_internal_templateparser.php" +#line 376 "smarty_internal_templateparser.y" function yy_r109(){ $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->'.$this->yystack[$this->yyidx + 0]->minor; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"), null, true, false)->nocache; } -#line 2212 "smarty_internal_templateparser.php" -#line 382 "smarty_internal_templateparser.y" +#line 2318 "smarty_internal_templateparser.php" +#line 380 "smarty_internal_templateparser.y" function yy_r111(){$this->_retvalue = '$_smarty_tpl->getConfigVariable(\''. $this->yystack[$this->yyidx + -1]->minor .'\')'; } -#line 2215 "smarty_internal_templateparser.php" -#line 383 "smarty_internal_templateparser.y" +#line 2321 "smarty_internal_templateparser.php" +#line 381 "smarty_internal_templateparser.y" function yy_r112(){$this->_retvalue = '$_smarty_tpl->getConfigVariable('. $this->yystack[$this->yyidx + -1]->minor .')'; } -#line 2218 "smarty_internal_templateparser.php" -#line 386 "smarty_internal_templateparser.y" +#line 2324 "smarty_internal_templateparser.php" +#line 384 "smarty_internal_templateparser.y" function yy_r113(){$this->_retvalue = array('var'=>$this->yystack[$this->yyidx + -1]->minor, 'smarty_internal_index'=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2221 "smarty_internal_templateparser.php" -#line 392 "smarty_internal_templateparser.y" +#line 2327 "smarty_internal_templateparser.php" +#line 390 "smarty_internal_templateparser.y" function yy_r114(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2224 "smarty_internal_templateparser.php" -#line 394 "smarty_internal_templateparser.y" +#line 2330 "smarty_internal_templateparser.php" +#line 392 "smarty_internal_templateparser.y" function yy_r115(){return; } -#line 2227 "smarty_internal_templateparser.php" -#line 398 "smarty_internal_templateparser.y" +#line 2333 "smarty_internal_templateparser.php" +#line 396 "smarty_internal_templateparser.y" function yy_r116(){ $this->_retvalue = '[$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + 0]->minor .')->value]'; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable('$this->yystack[$this->yyidx + 0]->minor', null, true, false)->nocache; } -#line 2230 "smarty_internal_templateparser.php" -#line 399 "smarty_internal_templateparser.y" +#line 2336 "smarty_internal_templateparser.php" +#line 397 "smarty_internal_templateparser.y" function yy_r117(){ $this->_retvalue = '[$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->'.$this->yystack[$this->yyidx + 0]->minor.']'; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"), null, true, false)->nocache; } -#line 2233 "smarty_internal_templateparser.php" -#line 400 "smarty_internal_templateparser.y" +#line 2339 "smarty_internal_templateparser.php" +#line 398 "smarty_internal_templateparser.y" function yy_r118(){ $this->_retvalue = "['". $this->yystack[$this->yyidx + 0]->minor ."']"; } -#line 2236 "smarty_internal_templateparser.php" -#line 404 "smarty_internal_templateparser.y" +#line 2342 "smarty_internal_templateparser.php" +#line 402 "smarty_internal_templateparser.y" function yy_r121(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + 0]->minor ."]"; } -#line 2239 "smarty_internal_templateparser.php" -#line 405 "smarty_internal_templateparser.y" +#line 2345 "smarty_internal_templateparser.php" +#line 403 "smarty_internal_templateparser.y" function yy_r122(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + -1]->minor ."]"; } -#line 2242 "smarty_internal_templateparser.php" -#line 407 "smarty_internal_templateparser.y" +#line 2348 "smarty_internal_templateparser.php" +#line 405 "smarty_internal_templateparser.y" function yy_r123(){ $this->_retvalue = '['.$this->compiler->compileTag('private_special_variable','[\'section\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\'][\'index\']').']'; } -#line 2245 "smarty_internal_templateparser.php" -#line 408 "smarty_internal_templateparser.y" +#line 2351 "smarty_internal_templateparser.php" +#line 406 "smarty_internal_templateparser.y" function yy_r124(){ $this->_retvalue = '['.$this->compiler->compileTag('private_special_variable','[\'section\'][\''.$this->yystack[$this->yyidx + -3]->minor.'\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\']').']'; } -#line 2248 "smarty_internal_templateparser.php" -#line 412 "smarty_internal_templateparser.y" +#line 2354 "smarty_internal_templateparser.php" +#line 410 "smarty_internal_templateparser.y" function yy_r126(){$this->_retvalue = ''; } -#line 2251 "smarty_internal_templateparser.php" -#line 420 "smarty_internal_templateparser.y" +#line 2357 "smarty_internal_templateparser.php" +#line 418 "smarty_internal_templateparser.y" function yy_r128(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2254 "smarty_internal_templateparser.php" -#line 422 "smarty_internal_templateparser.y" +#line 2360 "smarty_internal_templateparser.php" +#line 420 "smarty_internal_templateparser.y" function yy_r129(){$this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 2257 "smarty_internal_templateparser.php" -#line 425 "smarty_internal_templateparser.y" +#line 2363 "smarty_internal_templateparser.php" +#line 423 "smarty_internal_templateparser.y" function yy_r130(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2260 "smarty_internal_templateparser.php" -#line 430 "smarty_internal_templateparser.y" +#line 2366 "smarty_internal_templateparser.php" +#line 428 "smarty_internal_templateparser.y" function yy_r131(){ if ($this->yystack[$this->yyidx + -1]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('private_special_variable',$this->yystack[$this->yyidx + -1]->minor['smarty_internal_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['smarty_internal_index'].$this->yystack[$this->yyidx + 0]->minor; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -1]->minor['var'],"'"), null, true, false)->nocache;} } -#line 2264 "smarty_internal_templateparser.php" -#line 432 "smarty_internal_templateparser.y" +#line 2370 "smarty_internal_templateparser.php" +#line 430 "smarty_internal_templateparser.y" function yy_r132(){ if ($this->yystack[$this->yyidx + -2]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('private_special_variable',$this->yystack[$this->yyidx + -2]->minor['smarty_internal_index']).'::'.$this->yystack[$this->yyidx + 0]->minor;} else { $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor['var'] .')->value'.$this->yystack[$this->yyidx + -2]->minor['smarty_internal_index'].'::'.$this->yystack[$this->yyidx + 0]->minor; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor['var'],"'"), null, true, false)->nocache;} } -#line 2268 "smarty_internal_templateparser.php" -#line 435 "smarty_internal_templateparser.y" +#line 2374 "smarty_internal_templateparser.php" +#line 433 "smarty_internal_templateparser.y" function yy_r133(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2271 "smarty_internal_templateparser.php" -#line 437 "smarty_internal_templateparser.y" +#line 2377 "smarty_internal_templateparser.php" +#line 435 "smarty_internal_templateparser.y" function yy_r134(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2274 "smarty_internal_templateparser.php" -#line 439 "smarty_internal_templateparser.y" +#line 2380 "smarty_internal_templateparser.php" +#line 437 "smarty_internal_templateparser.y" function yy_r135(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2277 "smarty_internal_templateparser.php" -#line 440 "smarty_internal_templateparser.y" +#line 2383 "smarty_internal_templateparser.php" +#line 438 "smarty_internal_templateparser.y" function yy_r136(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2280 "smarty_internal_templateparser.php" -#line 441 "smarty_internal_templateparser.y" +#line 2386 "smarty_internal_templateparser.php" +#line 439 "smarty_internal_templateparser.y" function yy_r137(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2283 "smarty_internal_templateparser.php" -#line 442 "smarty_internal_templateparser.y" +#line 2389 "smarty_internal_templateparser.php" +#line 440 "smarty_internal_templateparser.y" function yy_r138(){ $this->_retvalue = '->{\''.$this->yystack[$this->yyidx + -4]->minor.'\'.'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2286 "smarty_internal_templateparser.php" -#line 444 "smarty_internal_templateparser.y" +#line 2392 "smarty_internal_templateparser.php" +#line 442 "smarty_internal_templateparser.y" function yy_r139(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2289 "smarty_internal_templateparser.php" -#line 450 "smarty_internal_templateparser.y" +#line 2395 "smarty_internal_templateparser.php" +#line 448 "smarty_internal_templateparser.y" function yy_r140(){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 .")"; @@ -2300,123 +2406,123 @@ static public $yy_action = array( $this->compiler->trigger_template_error ("unknown function \"" . $this->yystack[$this->yyidx + -3]->minor . "\""); } } } -#line 2298 "smarty_internal_templateparser.php" -#line 461 "smarty_internal_templateparser.y" +#line 2404 "smarty_internal_templateparser.php" +#line 459 "smarty_internal_templateparser.y" function yy_r141(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". $this->yystack[$this->yyidx + -1]->minor .")"; } -#line 2301 "smarty_internal_templateparser.php" -#line 465 "smarty_internal_templateparser.y" +#line 2407 "smarty_internal_templateparser.php" +#line 463 "smarty_internal_templateparser.y" function yy_r142(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.",".$this->yystack[$this->yyidx + 0]->minor; } -#line 2304 "smarty_internal_templateparser.php" -#line 469 "smarty_internal_templateparser.y" +#line 2410 "smarty_internal_templateparser.php" +#line 467 "smarty_internal_templateparser.y" function yy_r144(){ return; } -#line 2307 "smarty_internal_templateparser.php" -#line 474 "smarty_internal_templateparser.y" +#line 2413 "smarty_internal_templateparser.php" +#line 472 "smarty_internal_templateparser.y" function yy_r145(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2310 "smarty_internal_templateparser.php" -#line 479 "smarty_internal_templateparser.y" +#line 2416 "smarty_internal_templateparser.php" +#line 477 "smarty_internal_templateparser.y" function yy_r148(){ $this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -3]->minor .'\')->value;?>'; $this->_retvalue = '$_tmp'.$this->prefix_number.'('. $this->yystack[$this->yyidx + -1]->minor .')'; } -#line 2313 "smarty_internal_templateparser.php" -#line 482 "smarty_internal_templateparser.y" +#line 2419 "smarty_internal_templateparser.php" +#line 480 "smarty_internal_templateparser.y" function yy_r150(){ $this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -4]->minor .'\')->value;?>'; $this->_retvalue = '$_tmp'.$this->prefix_number.'('. $this->yystack[$this->yyidx + -2]->minor .')'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2316 "smarty_internal_templateparser.php" -#line 486 "smarty_internal_templateparser.y" +#line 2422 "smarty_internal_templateparser.php" +#line 484 "smarty_internal_templateparser.y" function yy_r152(){ $this->_retvalue = '$'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2319 "smarty_internal_templateparser.php" -#line 488 "smarty_internal_templateparser.y" +#line 2425 "smarty_internal_templateparser.php" +#line 486 "smarty_internal_templateparser.y" function yy_r153(){ $this->_retvalue = '$'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2322 "smarty_internal_templateparser.php" -#line 499 "smarty_internal_templateparser.y" +#line 2428 "smarty_internal_templateparser.php" +#line 497 "smarty_internal_templateparser.y" function yy_r154(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2325 "smarty_internal_templateparser.php" -#line 503 "smarty_internal_templateparser.y" +#line 2431 "smarty_internal_templateparser.php" +#line 501 "smarty_internal_templateparser.y" function yy_r156(){$this->_retvalue = ','.$this->yystack[$this->yyidx + 0]->minor; } -#line 2328 "smarty_internal_templateparser.php" -#line 504 "smarty_internal_templateparser.y" - function yy_r157(){$this->_retvalue = ',\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 2331 "smarty_internal_templateparser.php" +#line 2434 "smarty_internal_templateparser.php" +#line 503 "smarty_internal_templateparser.y" + function yy_r158(){$this->_retvalue = ',\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } +#line 2437 "smarty_internal_templateparser.php" +#line 506 "smarty_internal_templateparser.y" + function yy_r159(){$this->_retvalue = '=='; } +#line 2440 "smarty_internal_templateparser.php" #line 507 "smarty_internal_templateparser.y" - function yy_r158(){$this->_retvalue = '=='; } -#line 2334 "smarty_internal_templateparser.php" + function yy_r160(){$this->_retvalue = '!='; } +#line 2443 "smarty_internal_templateparser.php" #line 508 "smarty_internal_templateparser.y" - function yy_r159(){$this->_retvalue = '!='; } -#line 2337 "smarty_internal_templateparser.php" + function yy_r161(){$this->_retvalue = '>'; } +#line 2446 "smarty_internal_templateparser.php" #line 509 "smarty_internal_templateparser.y" - function yy_r160(){$this->_retvalue = '>'; } -#line 2340 "smarty_internal_templateparser.php" + function yy_r162(){$this->_retvalue = '<'; } +#line 2449 "smarty_internal_templateparser.php" #line 510 "smarty_internal_templateparser.y" - function yy_r161(){$this->_retvalue = '<'; } -#line 2343 "smarty_internal_templateparser.php" + function yy_r163(){$this->_retvalue = '>='; } +#line 2452 "smarty_internal_templateparser.php" #line 511 "smarty_internal_templateparser.y" - function yy_r162(){$this->_retvalue = '>='; } -#line 2346 "smarty_internal_templateparser.php" + function yy_r164(){$this->_retvalue = '<='; } +#line 2455 "smarty_internal_templateparser.php" #line 512 "smarty_internal_templateparser.y" - function yy_r163(){$this->_retvalue = '<='; } -#line 2349 "smarty_internal_templateparser.php" + function yy_r165(){$this->_retvalue = '==='; } +#line 2458 "smarty_internal_templateparser.php" #line 513 "smarty_internal_templateparser.y" - function yy_r164(){$this->_retvalue = '==='; } -#line 2352 "smarty_internal_templateparser.php" + function yy_r166(){$this->_retvalue = '!=='; } +#line 2461 "smarty_internal_templateparser.php" #line 514 "smarty_internal_templateparser.y" - function yy_r165(){$this->_retvalue = '!=='; } -#line 2355 "smarty_internal_templateparser.php" -#line 515 "smarty_internal_templateparser.y" - function yy_r166(){$this->_retvalue = '%'; } -#line 2358 "smarty_internal_templateparser.php" + function yy_r167(){$this->_retvalue = '%'; } +#line 2464 "smarty_internal_templateparser.php" +#line 516 "smarty_internal_templateparser.y" + function yy_r168(){$this->_retvalue = '&&'; } +#line 2467 "smarty_internal_templateparser.php" #line 517 "smarty_internal_templateparser.y" - function yy_r167(){$this->_retvalue = '&&'; } -#line 2361 "smarty_internal_templateparser.php" + function yy_r169(){$this->_retvalue = '||'; } +#line 2470 "smarty_internal_templateparser.php" #line 518 "smarty_internal_templateparser.y" - function yy_r168(){$this->_retvalue = '||'; } -#line 2364 "smarty_internal_templateparser.php" -#line 519 "smarty_internal_templateparser.y" - function yy_r169(){$this->_retvalue = ' XOR '; } -#line 2367 "smarty_internal_templateparser.php" -#line 524 "smarty_internal_templateparser.y" - function yy_r170(){ $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2370 "smarty_internal_templateparser.php" + function yy_r170(){$this->_retvalue = ' XOR '; } +#line 2473 "smarty_internal_templateparser.php" +#line 523 "smarty_internal_templateparser.y" + function yy_r171(){ $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2476 "smarty_internal_templateparser.php" +#line 525 "smarty_internal_templateparser.y" + function yy_r173(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor; } +#line 2479 "smarty_internal_templateparser.php" #line 526 "smarty_internal_templateparser.y" - function yy_r172(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor; } -#line 2373 "smarty_internal_templateparser.php" + function yy_r174(){ return; } +#line 2482 "smarty_internal_templateparser.php" #line 527 "smarty_internal_templateparser.y" - function yy_r173(){ return; } -#line 2376 "smarty_internal_templateparser.php" + function yy_r175(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2485 "smarty_internal_templateparser.php" #line 528 "smarty_internal_templateparser.y" - function yy_r174(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2379 "smarty_internal_templateparser.php" -#line 529 "smarty_internal_templateparser.y" - function yy_r175(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2382 "smarty_internal_templateparser.php" + function yy_r176(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2488 "smarty_internal_templateparser.php" +#line 535 "smarty_internal_templateparser.y" + function yy_r178(){ $this->_retvalue = "''"; } +#line 2491 "smarty_internal_templateparser.php" #line 536 "smarty_internal_templateparser.y" - function yy_r177(){ $this->_retvalue = "''"; } -#line 2385 "smarty_internal_templateparser.php" -#line 537 "smarty_internal_templateparser.y" - function yy_r178(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor->to_smarty_php(); } -#line 2388 "smarty_internal_templateparser.php" + function yy_r179(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor->to_smarty_php(); } +#line 2494 "smarty_internal_templateparser.php" +#line 538 "smarty_internal_templateparser.y" + function yy_r180(){ $this->yystack[$this->yyidx + -1]->minor->append_subtree($this->yystack[$this->yyidx + 0]->minor); $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } +#line 2497 "smarty_internal_templateparser.php" #line 539 "smarty_internal_templateparser.y" - function yy_r179(){ $this->yystack[$this->yyidx + -1]->minor->append_subtree($this->yystack[$this->yyidx + 0]->minor); $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } -#line 2391 "smarty_internal_templateparser.php" -#line 540 "smarty_internal_templateparser.y" - function yy_r180(){ $this->_retvalue = new _smarty_doublequoted($this, $this->yystack[$this->yyidx + 0]->minor); } -#line 2394 "smarty_internal_templateparser.php" -#line 542 "smarty_internal_templateparser.y" - function yy_r181(){ $this->_retvalue = new _smarty_code($this, $this->yystack[$this->yyidx + -1]->minor); } -#line 2397 "smarty_internal_templateparser.php" -#line 544 "smarty_internal_templateparser.y" - function yy_r183(){ + function yy_r181(){ $this->_retvalue = new _smarty_doublequoted($this, $this->yystack[$this->yyidx + 0]->minor); } +#line 2500 "smarty_internal_templateparser.php" +#line 541 "smarty_internal_templateparser.y" + function yy_r182(){ $this->_retvalue = new _smarty_code($this, $this->yystack[$this->yyidx + -1]->minor); } +#line 2503 "smarty_internal_templateparser.php" +#line 543 "smarty_internal_templateparser.y" + function yy_r184(){ $this->_retvalue = new _smarty_code($this, '$_smarty_tpl->getVariable(\''. substr($this->yystack[$this->yyidx + 0]->minor,1) .'\')->value'); $this->compiler->tag_nocache = $this->compiler->tag_nocache | $this->template->getVariable(trim($this->yystack[$this->yyidx + 0]->minor,"'"), null, true, false)->nocache; } -#line 2403 "smarty_internal_templateparser.php" +#line 2509 "smarty_internal_templateparser.php" +#line 548 "smarty_internal_templateparser.y" + function yy_r186(){ $this->_retvalue = new _smarty_code($this, '('.$this->yystack[$this->yyidx + -1]->minor.')'); } +#line 2512 "smarty_internal_templateparser.php" #line 549 "smarty_internal_templateparser.y" - function yy_r185(){ $this->_retvalue = new _smarty_code($this, '('.$this->yystack[$this->yyidx + -1]->minor.')'); } -#line 2406 "smarty_internal_templateparser.php" -#line 550 "smarty_internal_templateparser.y" - function yy_r186(){ + function yy_r187(){ $this->_retvalue = new _smarty_tag($this, $this->yystack[$this->yyidx + 0]->minor); } -#line 2411 "smarty_internal_templateparser.php" -#line 553 "smarty_internal_templateparser.y" - function yy_r187(){ $this->_retvalue = new _smarty_dq_content($this, $this->yystack[$this->yyidx + 0]->minor); } -#line 2414 "smarty_internal_templateparser.php" +#line 2517 "smarty_internal_templateparser.php" +#line 552 "smarty_internal_templateparser.y" + function yy_r188(){ $this->_retvalue = new _smarty_dq_content($this, $this->yystack[$this->yyidx + 0]->minor); } +#line 2520 "smarty_internal_templateparser.php" private $_retvalue; @@ -2478,7 +2584,7 @@ static public $yy_action = array( $this->internalError = true; $this->yymajor = $yymajor; $this->compiler->trigger_template_error(); -#line 2477 "smarty_internal_templateparser.php" +#line 2583 "smarty_internal_templateparser.php" } function yy_accept() @@ -2495,7 +2601,7 @@ static public $yy_action = array( $this->internalError = false; $this->retvalue = $this->_retvalue; //echo $this->retvalue."\n\n"; -#line 2495 "smarty_internal_templateparser.php" +#line 2601 "smarty_internal_templateparser.php" } function doParse($yymajor, $yytokenvalue) diff --git a/libs/sysplugins/smarty_internal_utility.php b/libs/sysplugins/smarty_internal_utility.php index 631006f7..9949e7a3 100644 --- a/libs/sysplugins/smarty_internal_utility.php +++ b/libs/sysplugins/smarty_internal_utility.php @@ -50,13 +50,7 @@ class Smarty_Internal_Utility { * @return integer number of template files recompiled */ function compileAllTemplates($extention = '.tpl', $force_compile = false, $time_limit = 0, $max_errors = null) - { - function _get_time() - { - $_mtime = microtime(); - $_mtime = explode(" ", $_mtime); - return (double)($_mtime[1]) + (double)($_mtime[0]); - } + { // switch off time limit if (function_exists('set_time_limit')) { @set_time_limit($time_limit); @@ -79,12 +73,12 @@ class Smarty_Internal_Utility { } echo '
', $_dir, '---', $_template_file; flush(); - $_start_time = _get_time(); + $_start_time = $this->_get_time(); try { $_tpl = $this->smarty->createTemplate($_template_file); if ($_tpl->mustCompile()) { $_tpl->compileTemplateSource(); - echo ' compiled in ', _get_time() - $_start_time, ' seconds'; + echo ' compiled in ', $this->_get_time() - $_start_time, ' seconds'; flush(); } else { echo ' is up to date'; @@ -114,8 +108,8 @@ class Smarty_Internal_Utility { * @return integer number of template files recompiled */ function compileAllConfig($extention = '.conf', $force_compile = false, $time_limit = 0, $max_errors = null) - { - // switch off time limit + { + // switch off time limit if (function_exists('set_time_limit')) { @set_time_limit($time_limit); } @@ -137,12 +131,12 @@ class Smarty_Internal_Utility { } echo '
', $_dir, '---', $_config_file; flush(); - $_start_time = _get_time(); + $_start_time = $this->_get_time(); try { $_config = new Smarty_Internal_Config($_config_file, $this->smarty); if ($_config->mustCompile()) { $_config->compileConfigSource(); - echo ' compiled in ', _get_time() - $_start_time, ' seconds'; + echo ' compiled in ', $this->_get_time() - $_start_time, ' seconds'; flush(); } else { echo ' is up to date'; @@ -279,4 +273,15 @@ class Smarty_Internal_Utility { return true; } + /** + * Get Micro Time + * + * @return double micro time + */ + function _get_time() + { + $_mtime = microtime(); + $_mtime = explode(" ", $_mtime); + return (double)($_mtime[1]) + (double)($_mtime[0]); + } }