From 66a90a066901aae2be827c94978018967a08faf2 Mon Sep 17 00:00:00 2001
From: Tilman
Date: Wed, 26 Oct 2011 09:16:58 +0200
Subject: [PATCH] Inital commit
---
.settings/org.eclipse.core.resources.prefs | 3 +
.settings/org.eclipse.core.runtime.prefs | 3 +
ToDo.txt | 103 +++
htaccess-content.txt | 23 +
installation.txt | 30 +
lister.php | 574 +++++++++++++++++
lister_download_icon.gif | Bin 0 -> 1021 bytes
old/installation.txt | 21 +
old/lister.php | 534 ++++++++++++++++
old/lister_download_button.bmp | Bin 0 -> 822 bytes
old/lister_download_button.gif | Bin 0 -> 1021 bytes
test/.htaccess | 23 +
test/Text 01.txt | 700 +++++++++++++++++++++
test/Text 02.txt | 87 +++
test/Text 03.txt | 9 +
test/installation.txt | 21 +
test/lister.php | 542 ++++++++++++++++
17 files changed, 2673 insertions(+)
create mode 100644 .settings/org.eclipse.core.resources.prefs
create mode 100644 .settings/org.eclipse.core.runtime.prefs
create mode 100644 ToDo.txt
create mode 100644 htaccess-content.txt
create mode 100644 installation.txt
create mode 100644 lister.php
create mode 100644 lister_download_icon.gif
create mode 100644 old/installation.txt
create mode 100644 old/lister.php
create mode 100644 old/lister_download_button.bmp
create mode 100644 old/lister_download_button.gif
create mode 100644 test/.htaccess
create mode 100644 test/Text 01.txt
create mode 100644 test/Text 02.txt
create mode 100644 test/Text 03.txt
create mode 100644 test/installation.txt
create mode 100644 test/lister.php
diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..8bbb1a6
--- /dev/null
+++ b/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Fri Feb 23 11:41:38 CET 2007
+eclipse.preferences.version=1
+encoding/=ISO-8859-1
diff --git a/.settings/org.eclipse.core.runtime.prefs b/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 0000000..d6b83d4
--- /dev/null
+++ b/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,3 @@
+#Fri Feb 23 11:41:38 CET 2007
+eclipse.preferences.version=1
+line.separator=\r\n
diff --git a/ToDo.txt b/ToDo.txt
new file mode 100644
index 0000000..41028a3
--- /dev/null
+++ b/ToDo.txt
@@ -0,0 +1,103 @@
+- Sicherheit: Wieviel besser ist es, das Lister-Verzeichnis dem PHP-Nutzer zu übereignen, anstatt
+ die Rechte auf 757 zu setzen? Lässt sich dass sinnvoll nutzen?
+
+ IST DER NUTZER IMMER "nobody/nogroup"?
+
+- Es sollte erst das Passwort geprüft und *danach* hochgeladen werden!
+- Pause nach Passworteingabe ist kein Sicherheitsgewinn, da das Skript einfach
+ erneut aufgerufen werden kann. Lässt sich die Anzahl der Aufrufe aktiv begrenzen?
+- Erweiterung:
+ Zugriff auf Unterverzeichnisse (im Moment wird bei 'show' & 'download' aber noch geprüft, ob sich die
+ angeforderte Datei im selben Verzeichnis befindet!)
+ Upload-Limit in Byte setzen
+ Beschreibungen in Textdatei speichern
+ Passwort für lesenden Zugriff (optional)
+ /*
+ * If true, the password is requested for up- AND download of files.
+ * (The password has to be set for this, see installation.txt)
+ *
+ * Default: false
+ */
+ define('REQUEST_PASSWORD_FOR_DOWNLOAD', false);
+ Umbenennen von Dateien
+ MIME-Types für Downloads mitschicken, so dass man z.B. Bilder direkt im Browser ansehen kann
+ Systeminfo mit Werten von "post_max_size" und "upload_max_filesize"
+
+http://www.simonstenhouse.net/index.php?area=projects
+
+Passwort-Schutz: Man könnte das Passwort auch als Textdatei in das Upload-Verzeichnis legen. Ist das Verzeichnis
+ sicher, ist auch das Passwort sicher, auch bei Fehlkonfiguration des Servers
+
+Verzeichnisrechte & htaccess analog zu Gallery2: http://codex.gallery2.org/Gallery2:Security#Short_Check_List
+-------------------------------
+Eingetragen bei:
+ http://www.php-resource.de/
+ http://resourceindex.com/
+ http://www.scripts.com/
+
+-------------------------------
+Sicherheits-Check! Die Datei darf nicht ausführbar sein
+ -> Opt-In oder Opt-Out Lösung mit Extension-Liste (nicht gut, immer unvollständig)
+
+BESSERE SICHERHEITSLÖSUNG: Statt irgendwelche Dateichecks wird einfach der Inhalt der
+ Datei direkt vom Skript gelesen und an den Browser übermittelt. Hochgeladene Dateien dürfen
+ nicht direkt aufrufbar sein!
+ http://www.acunetix.de/websitesecurity/php-security-4.htm
+ http://lists.phpbar.de/pipermail/php/Week-of-Mon-20030915/001656.html
+ http://lists.phpbar.de/pipermail/php/Week-of-Mon-20030915/001652.html
+-------------------------------
+
+Größenprobleme: http://se2.php.net/manual/de/function.readfile.php#48683
+
+Informationen zu PHP-Variablen post_max_size und upload_max_filesize anzeigen
+upload_tmp_dir ist sicherheitstechnisch ebenfalls interessant
+
+Sicherheit:
+Am Schluss noch einmal http://www.acunetix.de/websitesecurity/php-security-4.htm lesen
+Meta-Probleme wie "Upload von Schadcode, Ausführung durch ein anderes, unsicheres
+ Skript auf demselben Server" beachten
+Auf jeden Fall auf Sicherheitsproblematik hinweisen!
+
+======================================
+Vereinfachung, .htaccess, etc.
+
+Kozept für die Vereinfachung:
+1. Passwort wird über (reservierte) Datei "password.txt" definiert. Ist sie vorhanden,
+wird ein Passwort gebraucht, sonst nicht.
+2. Am schönsten wäre: Hochgeladene Dateien wieder im selben Verzeichnis wie das Skript,
+das als einzige Datei ausführbar ist - funktioniert das mit htaccess?
+Idee: Irgendwas mit zum aktivieren von index.php und sonst Deny from all
+ --> http://httpd.apache.org/docs/2.2/howto/htaccess.html#cgi
+ --> http://aktuell.de.selfhtml.org/artikel/server/htaccess-faq/
+ --> http://httpd.apache.org/docs/2.2/mod/core.html#filesmatch
+ --> http://www.lrz-muenchen.de/services/schulung/unterlagen/regul/regul-14.html
+ --> http://www.danielfett.de/df_artikel_regex#hnegativelookaheadsundlookbehinds
+ --> http://www.drweb.de/php/regulaere-ausdruecke.shtml
+
+Funktoniert:
+# Set lister.php as index file
+DirectoryIndex lister.php
+
+# Deny access to all files
+
+Deny from all
+
+
+# Allow access access only for lister.php
+
+Allow from all
+
+
+---------------
+
+Funktioniert fast, aber DirectoryIndex wird ignoriert:
+# Set lister.php as index file
+DirectoryIndex lister.php
+
+# Deny access to all files
+Order Allow,Deny
+
+# Allow access access only for lister.php
+
+Allow from all
+
diff --git a/htaccess-content.txt b/htaccess-content.txt
new file mode 100644
index 0000000..5df33a0
--- /dev/null
+++ b/htaccess-content.txt
@@ -0,0 +1,23 @@
+# No additional options are allowed
+Options None
+
+# Deny all access by default
+Order Allow,Deny
+
+# Set lister.php as index page
+DirectoryIndex lister.php
+
+# If something is accessed directly, it should be trated as text (not code)
+# This is a fallback directive
+ForceType text/plain
+
+# Allow access for the directory (the index page, that is)
+
+Allow from all
+
+
+# Allow access for lister.php
+
+ForceType application/x-httpd-php
+Allow from all
+
diff --git a/installation.txt b/installation.txt
new file mode 100644
index 0000000..7baed38
--- /dev/null
+++ b/installation.txt
@@ -0,0 +1,30 @@
+ENGLISH
+ 1. Make a directory on your web server and set the permissions to 757
+ 2. Copy "lister.php" and ".htaccess" into the directory
+ 3. If you want to set a password for upload and deletion, write it into a file
+ named "password.txt" and also copy it into the directory
+ 4. Security check: Open Lister and upload a file. Try to access it directly via
+ URL on the server (e.g. http://www.myserver.com/lister/uploaded-file.txt).
+ If an error message appears ("Access Denied"), your installation should
+ be secure.
+
+ Setting Options:
+ If needed, various options can be set in the setup area at the beginning
+ of lister.php.
+
+
+DEUTSCH
+ 1. Verzeichnis auf dem Server anlegen und Rechte auf 757 setzen
+ 2. Die Dateien "lister.php" und ".htaccess" in das Verzeichnis kopieren
+ 3. Falls ein Passwort für das Hochladen und Löschen von Dateien gesetzt werden
+ soll, das Passwort in eine Datei mit Namen "password.txt" schreiben und
+ diese ebenfalls in das Verzeichnis legen.
+ 4. Sicherheits-Check: Lister auf dem Server öffnen und eine Datei hochladen.
+ Danach versuchen, die hochgeladene Datei direkt über die URL zu öffnen.
+ (z.B. http://www.meinserver.com/lister/hochgeladene-datei.txt)
+ Wenn eine Fehlermeldung angezeigt wird ("Zugriff verweigert"), sollte die
+ Installation sicher sein.
+
+ Optionen setzen:
+ Falls benötigt, können verschiedene Optionen im Bereich "Setup" am Anfang
+ der Datei lister.php verändert werden.
diff --git a/lister.php b/lister.php
new file mode 100644
index 0000000..562bc86
--- /dev/null
+++ b/lister.php
@@ -0,0 +1,574 @@
+
+
+
+
+
+
+
+
+
+
+ $filename) {
+ if (SAVE_NAMES_URLENCODED)
+ $physicalFileName = urlencode($filename);
+ else
+ $physicalFileName = $filename;
+
+ // security check - the file has to be in the same directory
+ $physicalFileName = basename($physicalFileName);
+
+ // security check - reserved files can not be deleted
+ if (!isReserved($physicalFileName)) {
+ if (unlink($physicalFileName))
+ $message = $message.$filename.DELETION_MESSAGE."
\n";
+ else
+ $message = $message.DELETION_ERROR.' '.$filename."
\n";
+ }
+ else {
+ $message = $message.DELETION_ERROR.' '.$filename."
\n";
+ }
+ }
+ showMessage($message);
+ }
+ else {
+ showMessage(NO_SELECTION_ERROR);
+ }
+ }
+ // wrong password: show error message
+ else {
+ showMessage(PASSWORD_ERROR);
+ }
+ exit;
+}
+else if (($_GET['action'] == 'show') || ($_GET['action'] == 'download')) {
+ if (SAVE_NAMES_URLENCODED)
+ $physicalFileName = urlencode($_GET['file']);
+ else
+ $physicalFileName = $_GET['file'];
+
+ // security check - the file has to be in the same directory
+ $physicalFileName = basename($physicalFileName);
+
+ // security check
+ if (file_exists($physicalFileName) & (!isReserved($physicalFileName))) {
+
+ // the MIME type
+ $contentType = '';
+
+ // if ($_GET['action'] == 'show') try to set MIME type for content delivery from file name extension
+ if ($_GET['action'] == 'show') {
+
+ $extension = strtolower(substr($physicalFileName, strrpos($physicalFileName, '.')));
+
+ if (($extension == '.aif') || ($extension == '.aiff')) $contentType = 'Content-Type: audio/x-aiff';
+ else if (($extension == '.asc') || ($extension == '.txt')) $contentType = 'Content-Type: text/plain';
+ else if (($extension == '.asf') || ($extension == '.asx')) $contentType = 'Content-Type: video/x-ms-asf';
+ else if ($extension == '.avi') $contentType = 'Content-Type: video/x-msvideo';
+ else if ($extension == '.bmp') $contentType = 'Content-Type: image/bmp';
+ else if ($extension == '.css') $contentType = 'Content-Type: text/css';
+ else if ($extension == '.doc') $contentType = 'Content-Type: application/msword';
+ else if ($extension == '.gif') $contentType = 'Content-Type: image/gif';
+ else if (($extension == '.htm') || ($extension == '.html')) $contentType = 'Content-Type: text/html';
+ else if ($extension == '.ico') $contentType = 'Content-Type: image/x-icon';
+ else if (($extension == '.jpeg') || ($extension == '.jpg')) $contentType = 'Content-Type: image/jpeg';
+ else if ($extension == '.m3u') $contentType = 'Content-Type: audio/x-mpegurl';
+ else if (($extension == '.mid') || ($extension == '.midi')) $contentType = 'Content-Type: audio/midi';
+ else if (($extension == '.mp2') || ($extension == '.mp3')) $contentType = 'Content-Type: audio/mpeg';
+ else if (($extension == '.mpeg') || ($extension == '.mpg')) $contentType = 'Content-Type: video/mpeg';
+ else if (($extension == '.ogg') || ($extension == '.ogm')) $contentType = 'Content-Type: application/ogg';
+ else if ($extension == '.pdf') $contentType = 'Content-Type: application/pdf';
+ else if ($extension == '.png') $contentType = 'Content-Type: image/png';
+ else if ($extension == '.ppt') $contentType = 'Content-Type: application/vnd.ms-powerpoint';
+ else if (($extension == '.ps') || ($extension == '.eps')) $contentType = 'Content-Type: application/postscript';
+ else if (($extension == '.qt') || ($extension == '.mov')) $contentType = 'Content-Type: video/quicktime';
+ else if (($extension == '.ram') || ($extension == '.rm')) $contentType = 'Content-Type: audio/x-pn-realaudio';
+ else if ($extension == '.rtf') $contentType = 'Content-Type: text/rtf';
+ else if ($extension == '.svg') $contentType = 'Content-Type: image/svg+xml';
+ else if ($extension == '.swf') $contentType = 'Content-Type: application/x-shockwave-flash';
+ else if ($extension == '.tar') $contentType = 'Content-Type: application/x-tar';
+ else if (($extension == '.tif') || ($extension == '.tiff')) $contentType = 'Content-Type: image/tiff';
+ else if ($extension == '.vrml') $contentType = 'Content-Type: model/vrml';
+ else if ($extension == '.wav') $contentType = 'Content-Type: audio/x-wav';
+ else if ($extension == '.wma') $contentType = 'Content-Type: audio/x-ms-wma';
+ else if ($extension == '.wmv') $contentType = 'Content-Type: audio/x-ms-wmv';
+ else if ($extension == '.wvx') $contentType = 'Content-Type: audio/x-ms-wvx';
+ else if ($extension == '.xhtml') $contentType = 'Content-Type: application/xhtml+xml';
+ else if ($extension == '.xls') $contentType = 'Content-Type: application/x-msexcel';
+ else if ($extension == '.xml') $contentType = 'Content-Type: application/xml';
+ else if ($extension == '.zip') $contentType = 'Content-Type: application/zip';
+ }
+
+ // if no valid Content-Type is available and SHOW_UNKNOWN_FILETYPES_IN_BROWSER set true
+ // send the file with Content-Type
+ if (($contentType == '') && (SHOW_UNKNOWN_FILETYPES_IN_BROWSER)) {
+ $contentType = 'text/html';
+ }
+
+ // if
+ // ($_GET['action'] == 'show') and valid Content-Type available
+ // or
+ // SHOW_UNKNOWN_FILETYPES_IN_BROWSER == true
+ // send file to be shown in browser
+ if (($_GET['action'] == 'show') && ($contentType != '')) {
+ // send file to the browser
+ header($contentType);
+ header('Content-Length: '.(string)filesize($physicalFileName));
+ readfile($physicalFileName);
+ }
+ else {
+ // if
+ // ($_GET['action'] == 'download')
+ // or
+ // file extension unknown and SHOW_UNKNOWN_FILETYPES_IN_BROWSER == false
+ // send file for download
+
+ header('Content-Type: application/octet-stream');
+ //header('Content-type: application/force-download');
+
+ header('Content-Disposition: attachment; filename="'.$_GET['file'].'"');
+ header('Content-Length: '.(string)filesize($physicalFileName));
+ header('Cache-Control: no-store, no-cache, must-revalidate');
+ header('Pragma: no-cache');
+ header('Expires: 0');
+ readfile($physicalFileName);
+ }
+ }
+ else {
+ showMessage(NO_FILE_ERROR);
+ }
+ exit;
+}
+else if ($_GET['action'] == 'info') {
+ // TODO HIER GEHT'S WEITER - Umgebungsvariablen anzeigen
+ showMessage();
+}
+else if ($_GET['action'] == 'icon') {
+ header('Content-type: image/gif');
+ echo pack('H*',
+ '47494638396110001000F7000033333310346F0C3D7E153974143B7A153F7B0D417620507C4242454343474B4B4E4C4C5151'.
+ '51515050565555555656575B5B5B55694D6161616666666A6A6A6B6B6B617566687D656D6D736F6F7471717174747477777C'.
+ '7878787A7A7A7B7B7C7C7C7C7F7F7F57BD31778C7F10498317508A13548C13558F2D51833050832A658324659D2977AB506B'.
+ '9675758476768A39879F3389BB318CBD7F93B23D90C33D94C6349DCA42A1D045ADDA50BDE85AC8F380808081818182828286'.
+ '868684848E88888888888D8A8A8F8C8C8C8E8E8E80809392929298989899999A9C9C9C9E9E9E9F9F9F8799B79898B7A3A3A3'.
+ 'A4A4A4A5A5A5A7A7A7AEAEAEB5B5B5B9B9B9BABABABFBFBF9FAEC5BEC8D8C0C0C0C3C3C3C4C4C4C7C7C7C9C9C9CACACACECE'.
+ 'CECCCCDED0D0D0D1D1D1D3D3D3D8D8D8DADADADBDBDBDDDDDDDCDDDEDEDEDEDFDFDFCFD6E2E0E0E0E1E1E1E2E2E2E4E4E4E5'.
+ 'E5E5E6E6E6E9E9E9EAEAEAEAEAEEECECECEFEFEFF0F0F0F2F2F2F4F4F4F5F5F5F6F6F6F7F7F7F8F8F8F9F9F9FAFAFAFCFCFC'.
+ 'FDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C00000000100010000008E2000709C4326000'.
+ '168108130E0C404040812B6A14225C1360069A16274C3039237110453967D4A4B041624DC739730496992123C68C101D059E'.
+ '384102C78D1233636681C122878E152A602ACC72A70D99033568A848034849C4416ED854E95061CB1E0328E4F4F19225CC9F'.
+ '4154C6A4E1D2464D9E4078E0F0A103464890384B924C211B270C19315A9070B830C2050828528EF47842450C11AA3C246010'.
+ 'F180C21D2040BA3809D1E30382222E305888C0C0C3203B56766C1802250380262F1438D010C58C403F75BE1899F023410306'.
+ '40ACBCD123E8751D40C0272C80E003F86E4100003B');
+}
+else {
+?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lister_download_icon.gif b/lister_download_icon.gif
new file mode 100644
index 0000000000000000000000000000000000000000..61edde90ec631bd183482da9693f94523d8cac08
GIT binary patch
literal 1021
zcmZ?wbhEHb6krfw_|Cv!Y-}uGlFwsXCu&(DVqGO_U(M@SrVvo$~XiHV76X=zzmS=rgyiKS^7wW+ze#rgRqg@uJBB_-wMH5C;V
zRaI5h)ipp+Utb@-*RZ^&Ucj?iJfKTBq(?ZkUpKJXAfQ<*wOJ)~u4eh_fb40dr7dM;
zU6$?hjXQT6_Ux^nyvcULVcRLkOy-_)T6n>A?X7^lFQQI-ZfIy|Y;0_5YHDk1Yia50
z0D<1FuKu2$p1!`mhK9+LCQX_#W5v*yg1GjHC!`Sa(u&)hy^#`eXF7cW_|Wa-kS
z%a<=-w{G3mty_2Q+_`JluKoM>&tG?R--#Os4jedq`0$YRXyJ9qBP
znR^#5T)24g;^oViZ``(;H?w{PFQd-u-Wdq8mi{{8dU9zA&Q;NioEj~+dG^5n_W
zr%#_fd-n3>%U2-q?#-Jw@87@w@ZrO!PoKVg`SSJa*KgmxegFRb$B!RBfByXS>(`$@
zfBydc`|sbs|D#|aLO_QB2tav(f#VSaJLeIj1O~B24q-kX2M32n?JNLx9Ydrb#agyqp`HmsSmOQ-V<~z@!;=zZ7%x)eNEW9WA
zC`zmINE${>DA-|eh?PSlsP9XKlPizlDjSsqfsYM`WEC8CS#Vx_%-p1;XAsc=Os)#n
zVP!cIOsdQcYWgA;7X*&>IM|o&lbHEI*^!yeVa=Y4$}dV~9S*4LG(2Gbk>|+3U=09%
C)4GQM
literal 0
HcmV?d00001
diff --git a/old/installation.txt b/old/installation.txt
new file mode 100644
index 0000000..5cc747d
--- /dev/null
+++ b/old/installation.txt
@@ -0,0 +1,21 @@
+ENGLISH
+0. If you want to set a password for upload and deletion, open lister.php with an editor
+ an define your password in line 15:
+ define('PASSWORD', 'My-secret-Passwort');
+ If you do not change this, no password is needed.
+1. Make a new directory on the server
+2. Change file permissions: chmod 757 directory
+3. Copy lister.php and lister_download_button.gif in the new directory
+4. Change file permissions of the script: chmod 646 lister.php
+5. Done.
+
+DEUTSCH
+0. Falls gewünscht: lister.php mit einem Editor öffnen und in Zeile 15 ein Passwort
+ für das Hochladen und Löschen festlegen:
+ define('PASSWORD', 'Mein-geheimes-Passwort');
+ Wenn die Zeile nicht verändert wird, muss kein Passwort eingegeben werden.
+1. Das Verzeichnis auf dem Server anlegen
+2. Rechte setzen: chmod 757 verzeichnis
+3. lister.php und lister_download_button.gif in das Verzeichnis kopieren
+4. Rechte setzen: chmod 646 lister.php
+5. Fertig. Jetzt kann das Skript aufgerufen werden.
diff --git a/old/lister.php b/old/lister.php
new file mode 100644
index 0000000..095f288
--- /dev/null
+++ b/old/lister.php
@@ -0,0 +1,534 @@
+
+
+
+
+
+
+
+
+ Lister
+
+
+
+
+zurück zur Liste
';
+
+ // massive Login-Versuche abblocken
+ sleep(1);
+
+ // Passwort checken
+ if ($_POST['password'] == PASSWORD) {
+
+ $already_exists = file_exists(urlencode($_FILES['datei']['name']));
+
+ if (($already_exists) and (!$_POST['overwrite'] == 'on')) {
+ echo "Fehler: Datei mit Namen " . htmlspecialchars($_FILES['datei']['name']) . " ist bereits vorhanden. (Überschreiben abgeschaltet.)
\n";
+ }
+ else {
+
+ $filename = $_FILES['datei']['name'];
+
+ if (move_uploaded_file($_FILES['datei']['tmp_name'], urlencode($filename))) {
+
+ echo "Die Datei " . htmlspecialchars($_FILES['datei']['name']) . " wurde übertragen.
\n";
+
+ $liste = readFileList();
+
+ if ($liste !== false) {
+
+ if ($liste !== NULL) {
+ foreach($liste as $v) $s[] = $v[0];
+ $idx = array_search($filename, $s);
+ }
+
+// FUNKY!
+ if (gettype($idx) == 'integer') { // Dateiname bereits in Liste enthalten
+
+ $lines = file(SCRIPTNAME);
+
+ if ($lines) {
+
+ $fp = fopen(SCRIPTNAME,'w+'); // Index-Datei zum Schreiben öffnen
+ $i = 0;
+
+ while (!strstr(substr($lines[$i],0,14), "* Filelist:")) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ while (!strstr(substr($lines[$i], 0, strpos($lines[$i], '//')), $filename)) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ $i++;
+ fputs($fp, $filename."//".$_POST['description']."\n");
+
+ while ($i < count($lines)) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ fclose($fp);
+
+ echo "Tabelleneintrag wurde aktualisiert.
\n";
+ }
+ else {
+ echo "Fehler: ".$_SERVER['PHP_SELF']." wurde nicht gefunden!
\n";
+ }
+ }
+ else { // Dateiname noch nicht in Liste enthalten
+
+ $lines = file(SCRIPTNAME);
+
+ if ($lines) {
+
+ $fp = fopen(SCRIPTNAME,'w+'); // Index-Datei zum Schreiben öffnen
+ $i = 0;
+
+ while (!strstr(substr($lines[$i],0,14), "* Filelist:")) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ while (!strstr($lines[$i], "*/")) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ fputs($fp, $filename."//".$_POST['description']."\n");
+
+ while ($i < count($lines)) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ fclose($fp);
+ echo "Tabelleneintrag wurde erzeugt.
\n";
+ }
+ else {
+ echo "Fehler: ".$_SERVER['PHP_SELF']." wurde nicht gefunden!
\n";
+ }
+ }
+ }
+ else {
+ echo "Fehler: Liste mit Dateien konnte nicht gefunden werden.
\n";
+ }
+
+ }
+ else {
+ echo "Fehler: Datei konnte nicht übertragen werden!
\n";
+ echo "\n";
+ print_r($_FILES);
+ echo "\n
\n";
+ }
+ }
+ }
+ else { // Passwort falsch
+ echo "Fehler: Falsches Passwort!
\n";
+ }
+ }
+
+ //-- Sicherheitsabfrage vor Löschen -------------------------------------------------------------------
+
+ else if ($_GET['action'] == 'deleteCheck') {
+
+ echo '';
+
+ if (isset($_REQUEST['delButton'])) {
+
+ echo "\n";
+ echo "
Auswahl löschen:\n";
+ echo "
\n";
+ echo "
\n";
+
+ } else {
+ echo "Fehler: Keine Datei ausgewählt.
\n";
+ }
+
+ }
+
+ //-- Löschen ---------------------------------------------------------------------------------------
+
+ else if ($_GET['action'] == 'delete') {
+
+ echo '';
+
+ // massive Login-Versuche abblocken
+ sleep(1);
+
+ // Passwort checken
+ if ($_POST['password'] == PASSWORD) {
+
+ if (isset($_REQUEST['delButton'])) {
+
+ reset($_REQUEST['delButton']);
+
+ foreach ($_REQUEST['delButton'] as $idx => $filename) {
+
+ echo "Lösche $filename...
\n";
+ unlink(urlencode($filename));
+
+ $lines = file(SCRIPTNAME);
+
+ if ($lines) {
+
+ $fp = fopen(SCRIPTNAME,'w+'); // Index-Datei zum Schreiben öffnen
+ $i = 0;
+
+ while (!strstr(substr($lines[$i],0,14), "* Filelist:")) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ while (!strstr(substr($lines[$i], 0, strpos($lines[$i], '//')), $filename)) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ $i++;
+
+ while ($i < count($lines)) {
+ fputs($fp, $lines[$i]);
+ $i++;
+ }
+
+ fclose($fp);
+ echo "Tabelleneintrag wurde entfernt.
\n";
+ }
+ else {
+ echo "Fehler: ".$_SERVER['PHP_SELF']." wurde nicht gefunden!
\n";
+ }
+ }
+ }
+ else {
+ echo "Fehler: Keine Dateien ausgewählt.
\n";
+ }
+ }
+ else { // Passwort falsch
+ echo "Fehler: Falsches Passwort!
\n";
+ }
+ }
+
+ //-- Anzeigen --------------------------------------------------------------------------------------
+
+ else {
+?>
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
diff --git a/old/lister_download_button.bmp b/old/lister_download_button.bmp
new file mode 100644
index 0000000000000000000000000000000000000000..aa8fbc718f95011cccec2902e640b367e4d66ed9
GIT binary patch
literal 822
zcmZ?rHDhJ~12Z700mK4O%*Y@C7H0s;AK`;whyVk_e=zv@^XHp4Z~nkQT3TA5k56=T
zbX!{+MC{3vCttsQ{rB%5vifu9&P|#$38=WQrN!OZIV>O`Ffg#AqhtU6{mAOyzkd%D
zX=rFDDJkjc=~=pTX-R&*v9a;?88f=d%KW^&LqkIg3k#PoUw-@c?GGP508IdblP6Cu
zUc9)zzP_ocsiwNx)yZjcLqkhxX>o3DT4|zhW+>3Es;VlWY3tUln=xYsP}!0tOLp$u
zdGX@KzP`SSii+&)?8e5%#Kc6P7Q?;a;bCD}Sy}Vv&!01A&epA4j~_q&@ZrN}&z@bl
zaN)*{8$ex$4d1`G&eNQ>iu9}(}pn;b!U%q$m9z^~9`}e1zpvQsk0lK6nK;hUF+rtxVn^U!b_5#Cy-n@B0d*O=V
z44|(0?Ut*{HDBxv_?v?-t?Pw_PF(@w5D_$GufPBz
zc~XiHV76X=zzmS=rgyiKS^7wW+ze#rgRqg@uJBB_-wMH5C;V
zRaI5h)ipp+Utb@-*RZ^&Ucj?iJfKTBq(?ZkUpKJXAfQ<*wOJ)~u4eh_fb40dr7dM;
zU6$?hjXQT6_Ux^nyvcULVcRLkOy-_)T6n>A?X7^lFQQI-ZfIy|Y;0_5YHDk1Yia50
z0D<1FuKu2$p1!`mhK9+LCQX_#W5v*yg1GjHC!`Sa(u&)hy^#`eXF7cW_|Wa-kS
z%a<=-w{G3mty_2Q+_`JluKoM>&tG?R--#Os4jedq`0$YRXyJ9qBP
znR^#5T)24g;^oViZ``(;H?w{PFQd-u-Wdq8mi{{8dU9zA&Q;NioEj~+dG^5n_W
zr%#_fd-n3>%U2-q?#-Jw@87@w@ZrO!PoKVg`SSJa*KgmxegFRb$B!RBfByXS>(`$@
zfBydc`|sbs|D#|aLO_QB2tav(f#VSaJLeIj1O~B24q-kX2M32n?JNLx9Ydrb#agyqp`HmsSmOQ-V<~z@!;=zZ7%x)eNEW9WA
zC`zmINE${>DA-|eh?PSlsP9XKlPizlDjSsqfsYM`WEC8CS#Vx_%-p1;XAsc=Os)#n
zVP!cIOsdQcYWgA;7X*&>IM|o&lbHEI*^!yeVa=Y4$}dV~9S*4LG(2Gbk>|+3U=09%
C)4GQM
literal 0
HcmV?d00001
diff --git a/test/.htaccess b/test/.htaccess
new file mode 100644
index 0000000..5df33a0
--- /dev/null
+++ b/test/.htaccess
@@ -0,0 +1,23 @@
+# No additional options are allowed
+Options None
+
+# Deny all access by default
+Order Allow,Deny
+
+# Set lister.php as index page
+DirectoryIndex lister.php
+
+# If something is accessed directly, it should be trated as text (not code)
+# This is a fallback directive
+ForceType text/plain
+
+# Allow access for the directory (the index page, that is)
+
+Allow from all
+
+
+# Allow access for lister.php
+
+ForceType application/x-httpd-php
+Allow from all
+
diff --git a/test/Text 01.txt b/test/Text 01.txt
new file mode 100644
index 0000000..dd79c63
--- /dev/null
+++ b/test/Text 01.txt
@@ -0,0 +1,700 @@
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
diff --git a/test/Text 02.txt b/test/Text 02.txt
new file mode 100644
index 0000000..08c25f0
--- /dev/null
+++ b/test/Text 02.txt
@@ -0,0 +1,87 @@
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltIn
diff --git a/test/Text 03.txt b/test/Text 03.txt
new file mode 100644
index 0000000..43b5bfc
--- /dev/null
+++ b/test/Text 03.txt
@@ -0,0 +1,9 @@
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
+InhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhaltInhalt
diff --git a/test/installation.txt b/test/installation.txt
new file mode 100644
index 0000000..e6ff3e5
--- /dev/null
+++ b/test/installation.txt
@@ -0,0 +1,21 @@
+ENGLISH
+1. Make a directory on your web server and set the permissions to 757
+2. Copy "lister.php" and ".htaccess" into the directory
+3. If you want to set a password for upload and deletion, write it into a file
+ named "password.txt" and also copy it into the directory
+4. Security check: Open Lister and upload a file. Try to access it directly via
+ URL on the server (e.g. http://www.myserver.com/lister/uploaded-file.txt).
+ If an error message appears ("Access Denied"), your installation should
+ be secure.
+
+DEUTSCH
+1. Verzeichnis auf dem Server anlegen und Rechte auf 757 setzen
+2. Die Dateien "lister.php" und ".htaccess" in das Verzeichnis kopieren
+3. Falls ein Passwort für das Hochladen und Löschen von Dateien gesetzt werden
+ soll, das Passwort in eine Datei mit Namen "password.txt" schreiben und
+ diese ebenfalls in das Verzeichnis legen.
+4. Sicherheits-Check: Lister auf dem Server öffnen und eine Datei hochladen.
+ Danach versuchen, die hochgeladene Datei direkt über die URL zu öffnen.
+ (z.B. http://www.meinserver.com/lister/hochgeladene-datei.txt)
+ Wenn eine Fehlermeldung angezeigt wird ("Zugriff verweigert"), sollte die
+ Installation sicher sein.
diff --git a/test/lister.php b/test/lister.php
new file mode 100644
index 0000000..244f979
--- /dev/null
+++ b/test/lister.php
@@ -0,0 +1,542 @@
+
+
+
+
+
+
+
+
+
+
+ $filename) {
+ if (SAVE_NAMES_URLENCODED)
+ $physicalFileName = urlencode($filename);
+ else
+ $physicalFileName = $filename;
+
+ // security check - the file has to be in the same directory
+ $physicalFileName = basename($physicalFileName);
+
+ // security check - reserved files can not be deleted
+ if (!isReserved($physicalFileName)) {
+ if (unlink($physicalFileName))
+ $message = $message.$filename.DELETION_MESSAGE."
\n";
+ else
+ $message = $message.DELETION_ERROR.' '.$filename."
\n";
+ }
+ else {
+ $message = $message.DELETION_ERROR.' '.$filename."
\n";
+ }
+ }
+ showMessage($message);
+ }
+ else {
+ showMessage(NO_SELECTION_ERROR);
+ }
+ }
+ // wrong password: show error message
+ else {
+ showMessage(PASSWORD_ERROR);
+ }
+ exit;
+}
+else if ($_GET['action'] == 'show') {
+ if (SAVE_NAMES_URLENCODED)
+ $physicalFileName = urlencode($_GET['file']);
+ else
+ $physicalFileName = $_GET['file'];
+
+ // security check - the file has to be in the same directory
+ $physicalFileName = basename($physicalFileName);
+
+ // security check
+ if (file_exists($physicalFileName) & (!isReserved($physicalFileName))) {
+
+ // set MIME type for content delivery from file name extension
+
+ $extension = strtolower(substr($physicalFileName, strrpos($physicalFileName, '.')));
+
+ // text/plain is the default MIME type
+ $contentType = 'Content-Type: text/plain';
+
+ if (($extension == '.aif') || ($extension == '.aiff')) $contentType = 'Content-Type: audio/x-aiff';
+ else if (($extension == '.asc') || ($extension == '.txt')) $contentType = 'Content-Type: text/plain';
+ else if (($extension == '.asf') || ($extension == '.asx')) $contentType = 'Content-Type: video/x-ms-asf';
+ else if ($extension == '.avi') $contentType = 'Content-Type: video/x-msvideo';
+ else if ($extension == '.bmp') $contentType = 'Content-Type: image/bmp';
+ else if ($extension == '.css') $contentType = 'Content-Type: text/css';
+ else if ($extension == '.doc') $contentType = 'Content-Type: application/msword';
+ else if ($extension == '.gif') $contentType = 'Content-Type: image/gif';
+ else if (($extension == '.htm') || ($extension == '.html')) $contentType = 'Content-Type: text/html';
+ else if ($extension == '.ico') $contentType = 'Content-Type: image/x-icon';
+ else if (($extension == '.jpeg') || ($extension == '.jpg')) $contentType = 'Content-Type: image/jpeg';
+ else if ($extension == '.m3u') $contentType = 'Content-Type: audio/x-mpegurl';
+ else if (($extension == '.mid') || ($extension == '.midi')) $contentType = 'Content-Type: audio/midi';
+ else if (($extension == '.mp2') || ($extension == '.mp3')) $contentType = 'Content-Type: audio/mpeg';
+ else if (($extension == '.mpeg') || ($extension == '.mpg')) $contentType = 'Content-Type: video/mpeg';
+ else if (($extension == '.ogg') || ($extension == '.ogm')) $contentType = 'Content-Type: application/ogg';
+ else if ($extension == '.pdf') $contentType = 'Content-Type: application/pdf';
+ else if ($extension == '.png') $contentType = 'Content-Type: image/png';
+ else if ($extension == '.ppt') $contentType = 'Content-Type: application/vnd.ms-powerpoint';
+ else if (($extension == '.ps') || ($extension == '.eps')) $contentType = 'Content-Type: application/postscript';
+ else if (($extension == '.qt') || ($extension == '.mov')) $contentType = 'Content-Type: video/quicktime';
+ else if (($extension == '.ram') || ($extension == '.rm')) $contentType = 'Content-Type: audio/x-pn-realaudio';
+ else if ($extension == '.rtf') $contentType = 'Content-Type: text/rtf';
+ else if ($extension == '.svg') $contentType = 'Content-Type: image/svg+xml';
+ else if ($extension == '.swf') $contentType = 'Content-Type: application/x-shockwave-flash';
+ else if ($extension == '.tar') $contentType = 'Content-Type: application/x-tar';
+ else if (($extension == '.tif') || ($extension == '.tiff')) $contentType = 'Content-Type: image/tiff';
+ else if ($extension == '.vrml') $contentType = 'Content-Type: model/vrml';
+ else if ($extension == '.wav') $contentType = 'Content-Type: audio/x-wav';
+ else if ($extension == '.wma') $contentType = 'Content-Type: audio/x-ms-wma';
+ else if ($extension == '.wmv') $contentType = 'Content-Type: audio/x-ms-wmv';
+ else if ($extension == '.wvx') $contentType = 'Content-Type: audio/x-ms-wvx';
+ else if ($extension == '.xhtml') $contentType = 'Content-Type: application/xhtml+xml';
+ else if ($extension == '.xls') $contentType = 'Content-Type: application/x-msexcel';
+ else if ($extension == '.xml') $contentType = 'Content-Type: application/xml';
+ else if ($extension == '.zip') $contentType = 'Content-Type: application/zip';
+
+ // send file to the browser
+ header($contentType);
+ header('Content-Length: '.(string)filesize($physicalFileName));
+ readfile($physicalFileName);
+ }
+ else {
+ showMessage(NO_FILE_ERROR);
+ }
+ exit;
+}
+else if ($_GET['action'] == 'download') {
+ if (SAVE_NAMES_URLENCODED)
+ $physicalFileName = urlencode($_GET['file']);
+ else
+ $physicalFileName = $_GET['file'];
+
+ // security check - the file has to be in the same directory
+ $physicalFileName = basename($physicalFileName);
+
+ // security check
+ if (file_exists($physicalFileName) & (!isReserved($physicalFileName))) {
+ header('Content-Type: application/octet-stream');
+ //header('Content-type: application/force-download');
+
+ header('Content-Disposition: attachment; filename="'.$_GET['file'].'"');
+ header('Content-Length: '.(string)filesize($physicalFileName));
+ header('Cache-Control: no-store, no-cache, must-revalidate');
+ header('Pragma: no-cache');
+ header('Expires: 0');
+ readfile($physicalFileName);
+ }
+ else {
+ showMessage(NO_FILE_ERROR);
+ }
+ exit;
+}
+else if ($_GET['action'] == 'info') {
+ // TODO HIER GEHT'S WEITER - Umgebungsvariablen anzeigen
+ showMessage();
+}
+else if ($_GET['action'] == 'icon') {
+ header('Content-type: image/gif');
+ echo pack('H*',
+ '47494638396110001000F7000033333310346F0C3D7E153974143B7A153F7B0D417620507C4242454343474B4B4E4C4C5151'.
+ '51515050565555555656575B5B5B55694D6161616666666A6A6A6B6B6B617566687D656D6D736F6F7471717174747477777C'.
+ '7878787A7A7A7B7B7C7C7C7C7F7F7F57BD31778C7F10498317508A13548C13558F2D51833050832A658324659D2977AB506B'.
+ '9675758476768A39879F3389BB318CBD7F93B23D90C33D94C6349DCA42A1D045ADDA50BDE85AC8F380808081818182828286'.
+ '868684848E88888888888D8A8A8F8C8C8C8E8E8E80809392929298989899999A9C9C9C9E9E9E9F9F9F8799B79898B7A3A3A3'.
+ 'A4A4A4A5A5A5A7A7A7AEAEAEB5B5B5B9B9B9BABABABFBFBF9FAEC5BEC8D8C0C0C0C3C3C3C4C4C4C7C7C7C9C9C9CACACACECE'.
+ 'CECCCCDED0D0D0D1D1D1D3D3D3D8D8D8DADADADBDBDBDDDDDDDCDDDEDEDEDEDFDFDFCFD6E2E0E0E0E1E1E1E2E2E2E4E4E4E5'.
+ 'E5E5E6E6E6E9E9E9EAEAEAEAEAEEECECECEFEFEFF0F0F0F2F2F2F4F4F4F5F5F5F6F6F6F7F7F7F8F8F8F9F9F9FAFAFAFCFCFC'.
+ 'FDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'.
+ 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C00000000100010000008E2000709C4326000'.
+ '168108130E0C404040812B6A14225C1360069A16274C3039237110453967D4A4B041624DC739730496992123C68C101D059E'.
+ '384102C78D1233636681C122878E152A602ACC72A70D99033568A848034849C4416ED854E95061CB1E0328E4F4F19225CC9F'.
+ '4154C6A4E1D2464D9E4078E0F0A103464890384B924C211B270C19315A9070B830C2050828528EF47842450C11AA3C246010'.
+ 'F180C21D2040BA3809D1E30382222E305888C0C0C3203B56766C1802250380262F1438D010C58C403F75BE1899F023410306'.
+ '40ACBCD123E8751D40C0272C80E003F86E4100003B');
+}
+else {
+?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+