summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorHartmut Holzgraefe <hholzgra@php.net>2000-11-20 10:05:57 +0000
committerHartmut Holzgraefe <hholzgra@php.net>2000-11-20 10:05:57 +0000
commitdf816636140b4c357b23b5ba902c09867002b16a (patch)
tree47a2f8abf1871a159aebfde2d2cc1b321d09e480 /ext
parent6d2a433ec583a57964918f89f2028fe9addf4336 (diff)
downloadphp-git-df816636140b4c357b23b5ba902c09867002b16a.tar.gz
first step towards auto-generated credits
Diffstat (limited to 'ext')
-rw-r--r--ext/standard/Makefile.in2
-rw-r--r--ext/standard/credits.c97
-rw-r--r--ext/standard/credits.h32
-rw-r--r--ext/standard/credits_ext.h64
-rw-r--r--ext/standard/credits_sapi.h12
-rw-r--r--ext/standard/info.c147
-rw-r--r--ext/standard/info.h1
7 files changed, 207 insertions, 148 deletions
diff --git a/ext/standard/Makefile.in b/ext/standard/Makefile.in
index e8446a4737..244e988aa6 100644
--- a/ext/standard/Makefile.in
+++ b/ext/standard/Makefile.in
@@ -8,7 +8,7 @@ LTLIBRARY_SOURCES=\
parsedate.c quot_print.c rand.c reg.c soundex.c string.c scanf.c \
syslog.c type.c uniqid.c url.c url_scanner.c var.c output.c assert.c \
strnatcmp.c levenshtein.c incomplete_class.c url_scanner_ex.c \
- ftp_fopen_wrapper.c http_fopen_wrapper.c php_fopen_wrapper.c
+ ftp_fopen_wrapper.c http_fopen_wrapper.c php_fopen_wrapper.c credits.c
include $(top_srcdir)/build/dynlib.mk
diff --git a/ext/standard/credits.c b/ext/standard/credits.c
new file mode 100644
index 0000000000..ee041e74fc
--- /dev/null
+++ b/ext/standard/credits.c
@@ -0,0 +1,97 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP version 4.0 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997, 1998, 1999, 2000 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 2.02 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available at through the world-wide-web at |
+ | http://www.php.net/license/2_02.txt. |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | license@php.net so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Authors: Rasmus Lerdorf <rasmus@lerdorf.on.ca> |
+ | Zeev Suraski <zeev@zend.com> |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+#include "php.h"
+#include "info.h"
+
+#define CREDIT_LINE(module, authors) php_info_print_table_row(2, module, authors)
+
+PHPAPI void php_print_credits(int flag)
+{
+ if (flag & PHP_CREDITS_FULLPAGE) {
+ PUTS("<html><head><title>PHP Credits</title></head><body>\n");
+ }
+
+ php_info_print_style();
+
+ PUTS("<h1 align=\"center\">PHP 4.0 Credits</h1>\n");
+
+ if (flag & PHP_CREDITS_GROUP) {
+ /* Group */
+
+ php_info_print_table_start();
+ php_info_print_table_header(1, "PHP Group");
+ php_info_print_table_row(1, "Thies C. Arntzen, Stig Bakken, Andi Gutmans, Rasmus Lerdorf, Sam Ruby,\
+ Sascha Schumann, Zeev Suraski, Jim Winstead, Andrei Zmievski");
+ php_info_print_table_end();
+ }
+
+ if (flag & PHP_CREDITS_GENERAL) {
+ /* Design & Concept */
+ php_info_print_table_start();
+ php_info_print_table_header(1, "Language Design & Concept");
+ php_info_print_table_row(1, "Andi Gutmans, Rasmus Lerdorf, Zeev Suraski");
+ php_info_print_table_end();
+
+ /* PHP 4.0 Language */
+ php_info_print_table_start();
+ php_info_print_table_colspan_header(2, "PHP 4.0 Authors");
+ php_info_print_table_header(2, "Contribution", "Authors");
+ CREDIT_LINE("Zend Scripting Language Engine", "Andi Gutmans, Zeev Suraski");
+ CREDIT_LINE("Extension Module API", "Andi Gutmans, Zeev Suraski");
+ CREDIT_LINE("UNIX Build and Modularization", "Stig Bakken, Sascha Schumann");
+ CREDIT_LINE("Win32 Port", "Shane Caraveo, Zeev Suraski");
+ CREDIT_LINE("Server API (SAPI) Abstraction Layer", "Andi Gutmans, Shane Caraveo, Zeev Suraski");
+ php_info_print_table_end();
+ }
+
+ if (flag & PHP_CREDITS_SAPI) {
+ /* SAPI Modules */
+
+ php_info_print_table_start();
+ php_info_print_table_colspan_header(2, "SAPI Modules");
+ php_info_print_table_header(2, "Contribution", "Authors");
+#include "credits_sapi.h"
+ php_info_print_table_end();
+ }
+
+ if (flag & PHP_CREDITS_MODULES) {
+ /* Modules */
+
+ php_info_print_table_start();
+ php_info_print_table_colspan_header(2, "Module Authors");
+ php_info_print_table_header(2, "Module", "Authors");
+#include "credits_ext.h"
+ php_info_print_table_end();
+ }
+
+ if (flag & PHP_CREDITS_DOCS) {
+ php_info_print_table_start();
+ php_info_print_table_header(1, "PHP Documentation Team");
+ php_info_print_table_row(1, "Alexander Aulbach, Stig Bakken, Rasmus Lerdorf, Egon Schmid, Zeev Suraski, Lars Torben Wilson, Jim Winstead");
+ php_info_print_table_row(1, "Edited by: Stig Bakken and Egon Schmid");
+ php_info_print_table_end();
+ }
+
+ if (flag & PHP_CREDITS_FULLPAGE) {
+ PUTS("</body></html>\n");
+ }
+}
diff --git a/ext/standard/credits.h b/ext/standard/credits.h
new file mode 100644
index 0000000000..95a8cd6791
--- /dev/null
+++ b/ext/standard/credits.h
@@ -0,0 +1,32 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP version 4.0 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997, 1998, 1999, 2000 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 2.02 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available at through the world-wide-web at |
+ | http://www.php.net/license/2_02.txt. |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | license@php.net so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Authors: Rasmus Lerdorf <rasmus@lerdorf.on.ca> |
+ | Zeev Suraski <zeev@zend.com> |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+
+#define PHP_CREDITS_GROUP (1<<0)
+#define PHP_CREDITS_GENERAL (1<<1)
+#define PHP_CREDITS_SAPI (1<<2)
+#define PHP_CREDITS_MODULES (1<<3)
+#define PHP_CREDITS_DOCS (1<<4)
+#define PHP_CREDITS_FULLPAGE (1<<5)
+#define PHP_CREDITS_ALL 0xFFFFFFFF
+
+PHPAPI void php_print_credits(int flag);
+
diff --git a/ext/standard/credits_ext.h b/ext/standard/credits_ext.h
new file mode 100644
index 0000000000..23ecbe0283
--- /dev/null
+++ b/ext/standard/credits_ext.h
@@ -0,0 +1,64 @@
+CREDIT_LINE("Apache","Rasmus Lerdorf, Stig Bakken, David Sklar");
+CREDIT_LINE("aspell","Rasmus Lerdorf");
+CREDIT_LINE("Assert","Thies C. Arntzen");
+CREDIT_LINE("BC Math","Andi Gutmans");
+CREDIT_LINE("bz2","Sterling Hughes");
+CREDIT_LINE("ccvs","Brendan W. McAdams, Doug DeJulio");
+CREDIT_LINE("cpdf","Uwe Steinmann");
+CREDIT_LINE("CURL","Sterling Hughes");
+CREDIT_LINE("CyberCash","Evan Klinger");
+CREDIT_LINE("DAV","Stig Bakken");
+CREDIT_LINE("DBA","Sascha Schumann");
+CREDIT_LINE("dBase","Jim Winstead");
+CREDIT_LINE("DBM","Rasmus Lerdorf, Jim Winstead");
+CREDIT_LINE("domxml","Uwe Steinmann");
+CREDIT_LINE("dotnet","Sam Ruby");
+CREDIT_LINE("EXIF","Rasmus Lerdorf");
+CREDIT_LINE("FDF","Uwe Steinmann");
+CREDIT_LINE("FilePro","Chad Robinson");
+CREDIT_LINE("FTP","Andrew Skalski");
+CREDIT_LINE("GD imaging","Rasmus Lerdorf, Stig Bakken, Jim Winstead, Jouni Ahto");
+CREDIT_LINE("GetText","Alex Plotnick");
+CREDIT_LINE("HyperWave","Uwe Steinmann");
+CREDIT_LINE("icap","Mark Musone");
+CREDIT_LINE("iisfunc","Frank M. Kromann");
+CREDIT_LINE("IMAP","Rex Logan, Mark Musone, Brian Wang, Kaj-Michael Lang, Antoni Pamies Olive, Rasmus Lerdorf, Andrew Skalski, Chuck Hagenbuch");
+CREDIT_LINE("Informix","Danny Heijl, Christian Cartus");
+CREDIT_LINE("Ingres II","David Hénot");
+CREDIT_LINE("InterBase","Jouni Ahto, Andrew Avdeev");
+CREDIT_LINE("Java","Sam Ruby");
+CREDIT_LINE("LDAP","Amitay Isaacs, Eric Warnke, Rasmus Lerdorf, Gerrit Thomson");
+CREDIT_LINE("MCAL","Mark Musone, Chuck Hagenbuch");
+CREDIT_LINE("mcrypt","Sascha Schumann, Derick Rethans");
+CREDIT_LINE("mhash","Sascha Schumann");
+CREDIT_LINE("mSQL","Zeev Suraski");
+CREDIT_LINE("MS SQL","Frank M. Kromann");
+CREDIT_LINE("MySQL","Zeev Suraski");
+CREDIT_LINE("OCI8","Stig Bakken, Thies C. Arntzen");
+CREDIT_LINE("ODBC","Stig Bakken, Andreas Karajannis, Frank M. Kromann");
+CREDIT_LINE("Oracle","Stig Bakken, Mitch Golden, Rasmus Lerdorf, Andreas Karajannis, Thies C. Arntzen");
+CREDIT_LINE("Ovrimos","Nikos Mavroyanopoulos");
+CREDIT_LINE("PDF","Uwe Steinmann");
+CREDIT_LINE("Perl Compatible Regexps","Andrei Zmievski");
+CREDIT_LINE("Posix","Kristian Köhntopp");
+CREDIT_LINE("PostgreSQL","Jouni Ahto, Zeev Suraski");
+CREDIT_LINE("Readline","Thies C. Arntzen");
+CREDIT_LINE("Recode","Kristian Köhntopp");
+CREDIT_LINE("Sablot","Sterling Hughes");
+CREDIT_LINE("Satellite (CORBA)","David Eriksson");
+CREDIT_LINE("Sessions","Sascha Schumann, Andrei Zmievski");
+CREDIT_LINE("Shared Memory Operations","Slava Poliakov, Ilia Alshanetsky");
+CREDIT_LINE("SNMP","Rasmus Lerdorf");
+CREDIT_LINE("Sockets","Chris Vandomelen, Sterling Hughes");
+CREDIT_LINE("SWF","Sterling Hughes");
+CREDIT_LINE("Sybase-CT","Zeev Suraski, Tom May");
+CREDIT_LINE("Sybase-DB","Zeev Suraski");
+CREDIT_LINE("System V Semaphores","Tom May");
+CREDIT_LINE("System V Shared Memory","Christian Cartus");
+CREDIT_LINE("Verisign Payflow Pro","John Donagher, David Croft");
+CREDIT_LINE("WDDX","Andrei Zmievski");
+CREDIT_LINE("Win32 COM","Zeev Suraski");
+CREDIT_LINE("XML","Stig Bakken, Thies C. Arntzen");
+CREDIT_LINE("YAZ","Adam Dickmeiss");
+CREDIT_LINE("Yellow Pages","Stephanie Wehner");
+CREDIT_LINE("Zlib","Rasmus Lerdorf, Stefan Roehrich");
diff --git a/ext/standard/credits_sapi.h b/ext/standard/credits_sapi.h
new file mode 100644
index 0000000000..d0f0a05547
--- /dev/null
+++ b/ext/standard/credits_sapi.h
@@ -0,0 +1,12 @@
+CREDIT_LINE("AOLserver","Sascha Schumann");
+CREDIT_LINE("Apache 1.3","Rasmus Lerdorf, Zeev Suraski");
+CREDIT_LINE("Apache 2.0","Sascha Schumann");
+CREDIT_LINE("Caudium / Roxen","David Hedbor");
+CREDIT_LINE("CGI","Rasmus Lerdorf, Stig Bakken");
+CREDIT_LINE("fhttpd","Alex Belits");
+CREDIT_LINE("ISAPI","Andi Gutmans, Zeev Suraski");
+CREDIT_LINE("Java Servlet","Sam Ruby");
+CREDIT_LINE("NSAPI","Jayakumar Muthukumarasamy");
+CREDIT_LINE("phttpd","Thies C. Arntzen");
+CREDIT_LINE("pi3web","Holger Zimmermann");
+CREDIT_LINE("thttpd","Sascha Schumann");
diff --git a/ext/standard/info.c b/ext/standard/info.c
index 744750169c..15ae2e53e3 100644
--- a/ext/standard/info.c
+++ b/ext/standard/info.c
@@ -24,6 +24,7 @@
#include "php_globals.h"
#include "ext/standard/head.h"
#include "info.h"
+#include "credits.h"
#include "SAPI.h"
#include <time.h>
#if !defined(PHP_WIN32)
@@ -38,7 +39,6 @@
#define SECTION(name) PUTS("<H2 align=\"center\">" name "</H2>\n")
-#define CREDIT_LINE(module, authors) php_info_print_table_row(2, module, authors)
PHPAPI extern char *php_ini_path;
static int _display_module_info(zend_module_entry *module, void *arg)
@@ -330,151 +330,6 @@ PHPAPI void php_print_info(int flag)
}
-void php_print_credits(int flag)
-{
- if (flag & PHP_CREDITS_FULLPAGE) {
- PUTS("<html><head><title>PHP Credits</title></head><body>\n");
- }
-
- php_info_print_style();
-
- PUTS("<h1 align=\"center\">PHP 4.0 Credits</h1>\n");
-
- if (flag & PHP_CREDITS_GROUP) {
- /* Group */
-
- php_info_print_table_start();
- php_info_print_table_header(1, "PHP Group");
- php_info_print_table_row(1, "Thies C. Arntzen, Stig Bakken, Andi Gutmans, Rasmus Lerdorf, Sam Ruby,\
- Sascha Schumann, Zeev Suraski, Jim Winstead, Andrei Zmievski");
- php_info_print_table_end();
- }
-
- if (flag & PHP_CREDITS_GENERAL) {
- /* Design & Concept */
- php_info_print_table_start();
- php_info_print_table_header(1, "Language Design & Concept");
- php_info_print_table_row(1, "Andi Gutmans, Rasmus Lerdorf, Zeev Suraski");
- php_info_print_table_end();
-
- /* PHP 4.0 Language */
- php_info_print_table_start();
- php_info_print_table_colspan_header(2, "PHP 4.0 Authors");
- php_info_print_table_header(2, "Contribution", "Authors");
- CREDIT_LINE("Zend Scripting Language Engine", "Andi Gutmans, Zeev Suraski");
- CREDIT_LINE("Extension Module API", "Andi Gutmans, Zeev Suraski");
- CREDIT_LINE("UNIX Build and Modularization", "Stig Bakken, Sascha Schumann");
- CREDIT_LINE("Win32 Port", "Shane Caraveo, Zeev Suraski");
- CREDIT_LINE("Server API (SAPI) Abstraction Layer", "Andi Gutmans, Shane Caraveo, Zeev Suraski");
- php_info_print_table_end();
- }
-
- if (flag & PHP_CREDITS_SAPI) {
- /* SAPI Modules */
-
- php_info_print_table_start();
- php_info_print_table_colspan_header(2, "SAPI Modules");
- php_info_print_table_header(2, "Contribution", "Authors");
- CREDIT_LINE("AOLserver", "Sascha Schumann");
- CREDIT_LINE("Apache 1.3", "Rasmus Lerdorf, Zeev Suraski");
- CREDIT_LINE("Apache 2.0", "Sascha Schumann");
- CREDIT_LINE("Caudium / Roxen", "David Hedbor");
- CREDIT_LINE("CGI", "Rasmus Lerdorf, Stig Bakken");
- CREDIT_LINE("fhttpd", "Alex Belits");
- CREDIT_LINE("ISAPI", "Andi Gutmans, Zeev Suraski");
- CREDIT_LINE("Java Servlet", "Sam Ruby");
- CREDIT_LINE("NSAPI", "Jayakumar Muthukumarasamy");
- CREDIT_LINE("phttpd", "Thies C. Arntzen");
- CREDIT_LINE("pi3web", "Holger Zimmermann");
- CREDIT_LINE("thttpd", "Sascha Schumann");
- php_info_print_table_end();
- }
-
- if (flag & PHP_CREDITS_MODULES) {
- /* Modules */
-
- php_info_print_table_start();
- php_info_print_table_colspan_header(2, "Module Authors");
- php_info_print_table_header(2, "Module", "Authors");
- CREDIT_LINE("Apache", "Rasmus Lerdorf, Stig Bakken, David Sklar");
- CREDIT_LINE("aspell", "Rasmus Lerdorf");
- CREDIT_LINE("Assert", "Thies C. Arntzen");
- CREDIT_LINE("BC Math", "Andi Gutmans");
- CREDIT_LINE("bz2", "Sterling Hughes");
- CREDIT_LINE("ccvs", "Brendan W. McAdams, Doug DeJulio");
- CREDIT_LINE("Win32 COM", "Zeev Suraski");
- CREDIT_LINE("cpdf", "Uwe Steinmann");
- CREDIT_LINE("CURL", "Sterling Hughes");
- CREDIT_LINE("CyberCash", "Evan Klinger");
- CREDIT_LINE("DAV", "Stig Bakken");
- CREDIT_LINE("DBA", "Sascha Schumann");
- CREDIT_LINE("DBM", "Rasmus Lerdorf, Jim Winstead");
- CREDIT_LINE("dBase", "Jim Winstead");
- CREDIT_LINE("domxml", "Uwe Steinmann");
- CREDIT_LINE("dotnet", "Sam Ruby");
- CREDIT_LINE("EXIF", "Rasmus Lerdorf");
- CREDIT_LINE("FDF", "Uwe Steinmann");
- CREDIT_LINE("FilePro", "Chad Robinson");
- CREDIT_LINE("FTP", "Andrew Skalski");
- CREDIT_LINE("GD imaging", "Rasmus Lerdorf, Stig Bakken, Jim Winstead, Jouni Ahto");
- CREDIT_LINE("GetText", "Alex Plotnick");
- CREDIT_LINE("HyperWave", "Uwe Steinmann");
- CREDIT_LINE("icap", "Mark Musone");
- CREDIT_LINE("iisfunc", "Frank M. Kromann");
- CREDIT_LINE("IMAP", "Rex Logan, Mark Musone, Brian Wang, Kaj-Michael Lang, Antoni Pamies Olive, Rasmus Lerdorf, Andrew Skalski, Chuck Hagenbuch");
- CREDIT_LINE("Informix", "Danny Heijl, Christian Cartus");
- CREDIT_LINE("Ingres II", "David Hénot");
- CREDIT_LINE("InterBase", "Jouni Ahto, Andrew Avdeev");
- CREDIT_LINE("Java", "Sam Ruby");
- CREDIT_LINE("LDAP", "Amitay Isaacs, Eric Warnke, Rasmus Lerdorf, Gerrit Thomson");
- CREDIT_LINE("MCAL", "Mark Musone, Chuck Hagenbuch");
- CREDIT_LINE("mcrypt", "Sascha Schumann, Derick Rethans");
- CREDIT_LINE("mhash", "Sascha Schumann");
- CREDIT_LINE("MS SQL", "Frank M. Kromann");
- CREDIT_LINE("mSQL", "Zeev Suraski");
- CREDIT_LINE("MySQL", "Zeev Suraski");
- CREDIT_LINE("OCI8", "Stig Bakken, Thies C. Arntzen");
- CREDIT_LINE("ODBC", "Stig Bakken, Andreas Karajannis, Frank M. Kromann");
- CREDIT_LINE("Oracle", "Stig Bakken, Mitch Golden, Rasmus Lerdorf, Andreas Karajannis, Thies C. Arntzen");
- CREDIT_LINE("Ovrimos", "Nikos Mavroyanopoulos");
- CREDIT_LINE("Perl Compatible Regexps", "Andrei Zmievski");
- CREDIT_LINE("PDF", "Uwe Steinmann");
- CREDIT_LINE("Verisign Payflow Pro", "John Donagher, David Croft");
- CREDIT_LINE("Posix", "Kristian Köhntopp");
- CREDIT_LINE("PostgreSQL", "Jouni Ahto, Zeev Suraski");
- CREDIT_LINE("Readline", "Thies C. Arntzen");
- CREDIT_LINE("Recode", "Kristian Köhntopp");
- CREDIT_LINE("Sablot", "Sterling Hughes");
- CREDIT_LINE("Satellite (CORBA)", "David Eriksson");
- CREDIT_LINE("Sessions", "Sascha Schumann, Andrei Zmievski");
- CREDIT_LINE("Shared Memory Operations", "Slava Poliakov, Ilia Alshanetsky");
- CREDIT_LINE("SNMP", "Rasmus Lerdorf");
- CREDIT_LINE("Sockets", "Chris Vandomelen, Sterling Hughes");
- CREDIT_LINE("SWF", "Sterling Hughes");
- CREDIT_LINE("Sybase-DB", "Zeev Suraski");
- CREDIT_LINE("Sybase-CT", "Zeev Suraski, Tom May");
- CREDIT_LINE("System V Semaphores", "Tom May");
- CREDIT_LINE("System V Shared Memory", "Christian Cartus");
- CREDIT_LINE("WDDX", "Andrei Zmievski");
- CREDIT_LINE("XML", "Stig Bakken, Thies C. Arntzen");
- CREDIT_LINE("YAZ", "Adam Dickmeiss");
- CREDIT_LINE("Yellow Pages", "Stephanie Wehner");
- CREDIT_LINE("Zlib", "Rasmus Lerdorf, Stefan Roehrich");
- php_info_print_table_end();
- }
-
- if (flag & PHP_CREDITS_DOCS) {
- php_info_print_table_start();
- php_info_print_table_header(1, "PHP Documentation Team");
- php_info_print_table_row(1, "Alexander Aulbach, Stig Bakken, Rasmus Lerdorf, Egon Schmid, Zeev Suraski, Lars Torben Wilson, Jim Winstead");
- php_info_print_table_row(1, "Edited by: Stig Bakken and Egon Schmid");
- php_info_print_table_end();
- }
-
- if (flag & PHP_CREDITS_FULLPAGE) {
- PUTS("</body></html>\n");
- }
-}
PHPAPI void php_info_print_table_start()
{
diff --git a/ext/standard/info.h b/ext/standard/info.h
index 1a7b8250b7..67248a706d 100644
--- a/ext/standard/info.h
+++ b/ext/standard/info.h
@@ -58,7 +58,6 @@ PHP_FUNCTION(php_egg_logo_guid);
PHP_FUNCTION(php_sapi_name);
PHP_FUNCTION(php_uname);
PHPAPI void php_print_info(int flag);
-PHPAPI void php_print_credits(int flag);
PHPAPI void php_print_style(void);
PHPAPI void php_info_print_style(void);
PHPAPI void php_info_print_table_colspan_header(int num_cols, char *header);