protected function _parseCallTemplateCallback($m) {
        $vars = explode(',', $m[2]);
        $varList = '';
        foreach ($vars as $value) {
            if ($value == '*') {
                foreach ($this->_template->vars as $key => $value2) {
                    if (!in_array('$' . $key, $vars)) {
                        $varList .= '$' . $key . ',';
                    }
                    else {
                        $this->addError('the template function "template' . $m[1] . '" has already this parameter (' . $value . ')', __FILE__, __LINE__, ERROR_FATAL);
                        $varList .= '$' . $key . ',';
                    }
                }
            }
            elseif ($value != '') {
                $varList .= $value . ',';
            }
        }

        $varList = trim($varList, ',');

        return '<?php $template' . $m[1] . ' = new template' . $m[1] . '(); $template' . $m[1] . '->' . $m[1] . '(' . $varList . '); ?>';
    }