%PDF- %PDF-
Direktori : /usr/share/perl5/vendor_perl/ |
Current File : //usr/share/perl5/vendor_perl/stdcgi_languages.pm |
package stdcgi_languages; #use lib '/www/cgi-bin/std/lib'; #use LifeMedien::IDNA::Punycode; ### Get Language from .lifedata lang file sub customer_lang { local($lang, $langfile, $vhost, $domhost); # $vhost = $ENV{SERVER_NAME} || $ENV{VIRTUAL_HOST}; # $vhost =~ tr/A-Z/a-z/; # $vhost =~ s/\.$//; # "." am Ende des Hostname im Aufruf zulaessig # $vhost =~ /([^\.]+\.[^\.]+)$/; # $domhost = $vhost; # $domhost =~ s/^[^\.]+\.//; #$domhost=to_puny($domhost); #$langfile = $ENV{'DOCUMENT_ROOT'}."www.".$domhost."/.lifedata/lang"; # if (-e $langfile) { # open(LANGFILE, "<$langfile"); # $lang = <LANGFILE>; # close(LANGFILE); # chomp($lang); # } if (!$lang || $lang eq '') { $lang = "de"; # "de" ist die Life Medien Default Languages } return $lang; } ### Get Language from Browser settings sub guest_language { my $lang; my @valid_langs = ('de','en','pl'); # if ($ENV{"HTTP_ACCEPT_LANGUAGE"}) { # $lang = $ENV{"HTTP_ACCEPT_LANGUAGE"}; # $lang = substr($lang,0,2); # } else { $lang = "de"; # } my $valid = 0; foreach my $key (@valid_langs) { if ($lang eq $key){ $valid = 1; } } if ($valid ne 1) { $lang = "de"; } return $lang; } ### Tage sub days ($) { $lang = shift; if ($lang eq "de") { @days = ('Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'); } elsif ($lang eq "en") { @days = ('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'); } elsif ($lang eq "pl") { @days = ('Niedziela','Poniedziałek','Wtorek','Środa','Czwartek','Piątek','Sobota'); } return @days; } sub daysascii ($) { $lang = shift; if ($lang eq "de") { @days = ('Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'); } elsif ($lang eq "en") { @days = ('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'); } elsif ($lang eq "pl") { @days = ('Niedziela','Poniedzia�ek','Wtorek','�roda','Czwartek','Pi�tek','Sobota'); } return @days; } ### Monate sub month ($) { $lang = shift; if ($lang eq "de") { @months = ('Januar','Februar','M�rz','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'); } elsif ($lang eq "en") { @months = ('January','February','March','April','May','June','July','August','September','October','November','December'); } elsif ($lang eq "pl") { @months = ('stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia;'); } return @months; } sub monthascii ($) { $lang = shift; if ($lang eq "de") { @months = ('Januar','Februar','M�rz','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'); } elsif ($lang eq "en") { @months = ('January','February','March','April','May','June','July','August','September','October','November','December'); } elsif ($lang eq "pl") { @months = ('stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','wrzesnia','pazdziernika','listopada','grudnia'); } return @months; } ### Texte fuer das Formail STD-CGI (mail.pl) sub formmail_trans ($) { $lang = shift; if ($lang eq "de") { %texts = ( 'belowmess1' => 'Untenstehende Mitteilung wurde an', 'belowmess2' => 'gesendet', 'at' => 'am', 'thankyou' => 'Vielen Dank', 'sendok' => 'Vielen Dank! Das Formular wurde abgeschickt.', 'subject' => 'Aus WWW-Formular', 'formfrom' => 'Aus WWW Formular von:', 'wronghost1' => 'Unzulässiger Host', 'wronghost2' => 'Falscher Referrer - Zugriff verweigert', 'wronghost3' => 'Das von Ihnen benutze Formular liegt nicht auf unserem Server, sondern auf ', 'wronghost4' => '.<br> Der Zugang zum Skript wurde verweigert.<br> Beim Senden Ihrer E-Mail trat ein Fehler auf. Bitte versuchen Sie es noch einmal oder informieren Sie den', 'emailform' => 'E-Mail-Formular', 'methoderr1' => 'Fehler: Request Methode unzulässig', 'methoderr2' => 'Das Formular darf nur über POST aufgerufen werden.<br>Beim Senden Ihrer E-Mail trat ein Fehler auf. Bitte versuchen Sie es noch einmal oder informieren Sie den', 'wrongrcpt1' => 'Fehler: Unzulässiger/Kein Empfänger', 'wrongrcpt2' => 'Es wurde kein oder ein ungültiger Empfänger definiert. Ein gültiger Empfänger ist eine E-Mail Adresse die mit', 'wrongrcpt3' => 'endet.<br>Beim Senden Ihrer E-Mail trat ein Fehler auf. Bitte versuchen Sie es noch einmal oder informieren Sie den', 'wrongcaptcha1' => 'Fehler: Keine Sicherheitscode eingegeben', 'wrongcaptcha2' => 'Es wurde keine Sicherheitscode eingegeben', 'wrongheader1' => 'Fehler: Unzulässige/Fehlerhafte Header Felder', 'wrongheader2' => 'Ein oder mehrere Header Felder enthalten einen ungütigen Wert. Header Felder sind z.B. <tt>recipient</tt>, <tt>email</tt>, <tt>realname</tt> und <tt>subject</tt><br>Es dürfen keine Zeilenumbrüche im HTML Quelltext innerhalb der Felder vorkommen.<br>Bitte versuchen Sie es noch einmal oder informieren Sie den', 'uncompleted1' => 'Fehler: Formular unvollständig', 'uncompleted2' => 'Sie haben das Formular nicht vollständig bzw. fehlerhaft ausgefüllt. Folgende, nicht optionale Felder fehlen bzw. sind falsch ausgefüllt:<p>', 'uncompleted3' => '<p>Bitte kehren Sie zum Formular zurück und ergänzen Sie die fehlenden Felder<p>', ); } elsif ($lang eq "pl") { %texts = ( 'belowmess1' => 'Niniejsza wiadomość została wysłana do', 'belowmess2' => '', 'at' => 'w', 'thankyou' => 'Dziękuję bardzo', 'sendok' => 'Dziękuję bardzo! Formularz został wysłany.', 'subject' => 'Z formularza WWW', 'formfrom' => 'Z formularza WWW od:', 'wronghost1' => 'niedopuszczalny host', 'wronghost2' => 'błędny Refferer - odmowa dostępu', 'wronghost3' => 'Wywołano formularz znajdujący się poza naszym serwerem (', 'wronghost4' => ')<br>dostęp został zablokowany.<br> Przy wysyłaniu Twojego eMaila wystąpił błąd - spróbuj jeszcze raz albo poinformuj', 'emailform' => 'Formularz Email', 'methoderr1' => 'Błą: Niedopuszczalna metoda zapytania', 'methoderr2' => 'Fomularz można wywołać poprzez POST.<br>Przy wysyłaniu Twojego eMaila wystąpił błąd - spróbuj jeszcze raz albo poinformuj', 'wrongrcpt1' => 'Błąd: Niedopuszczalny adres odbiorcy / brak adresu', 'wrongrcpt2' => 'Zdefiniowano błędny lub żaden adres orbiorcy. Poprawny adres odbiorcy musi być zakończony domeną', 'wrongrcpt3' => '.<br> Przy wysyłaniu Twojego eMaila wystąpił błąd - spróbuj jeszcze raz albo poinformuj', 'wrongheader1' => 'Błąd: Niedopuszczalne / błędne pola naglówkowe', 'wrongheader2' => 'Jedno albo parę pól nagłówkowych zawiera niedozwoloną wartość. Polami nagłówkowymi są na przykład: <tt>recipient</tt>, <tt>email</tt>, <tt>realname</tt> und <tt>subject</tt><br> Pamiętaj, że w zakresie pól nagłówkowych - w zródle HTML - nie może nastąpić lamanie linii.<br> Spróbuj jeszcze raz albo poinformuj', 'uncompleted1' => 'Błąd: formularz niekompletny', 'uncompleted2' => 'Formularz nie został kompletnie (lub błędnie) wypełniony. Następujące nieopcjonalne pola nie zawierają danych lub zostały błędnie wypełnione:<p>', 'uncompleted3' => '<p>Proszę powrócić do formularza i poprawić wyżej wymienione pola.<p>', ); } elsif ($lang eq "en") { %texts = ( 'belowmess1' => 'Below is what you submitted to', 'belowmess2' => '', 'at' => 'on', 'thankyou' => 'Thank You', 'sendok' => 'Thank You For Filling Out This Form', 'subject' => 'WWW Form Submission', 'formfrom' => 'Sent by mail form from:', 'wronghost1' => 'Bad Referrer - Access Denied', 'wronghost2' => 'Bad Referrer - Access Denied', 'wronghost3' => 'The form that you were trying to use is not located on our server, but on (', 'wronghost4' => '). Access to the script has been denied. An error occured while trying to send your e-mail. Please try again later or contact', 'emailform' => 'mail form', 'methoderr1' => 'Error: Request Method', 'methoderr2' => 'The Request Method of the Form you submitted did not match either <tt>GET</tt> or <tt>POST</tt>. Please check the form and make sure the <tt>method=</tt> statement is in upper case and matches <tt>GET</tt> or <tt>POST</tt>.<p>', 'wrongrcpt1' => 'Error: Bad/No Recipient', 'wrongrcpt2' => 'No valid recipient has been defined. Valid recipient addresses contain a local account followed by a domain name:', 'wrongrcpt3' => '.<br> An error occured while trying to send your e-mail. Please try again later or contact', 'wrongheader1' => 'Error: Bad Header Fields', 'wrongheader2' => 'The header fields, which include <tt>recipient</tt>, <tt>email</tt>, <tt>realname</tt> and <tt>subject</tt> were filled in with invalid values. You may not include any newline characters in these parameters. Please try again later or contact the', 'uncompleted1' => 'Error: Blank Fields', 'uncompleted2' => 'The following fields were left blank in your submission form:<p>', 'uncompleted3' => '<p>These fields must be filled in before you can successfully submit the form.<p>', ); } return %texts; } ### Texte fuer das Gaestebuch STD-CGI (gaestebuch.cgi) sub guestbook_trans ($) { $lang = shift; if ($lang eq "de") { %texts = ( 'VielenDank' => 'Vielen Dank für Ihren Eintrag.', 'Bittewarten' => 'Wir leiten Sie jetzt zum Gästebuch zurück, bitte warten Sie zwei Sekunden.', 'Weiterleitung' => 'Klicken Sie hier, wenn Sie nicht länger warten möchten oder Ihr Browser keine automatische Weiterleitung unterstützt.', 'IhrEintrag' => 'Ihr Eintrag', 'Pflichtfelder' => '"Name" und "Kommentar" sind Pflichtfelder!', 'Und' => 'und', 'Kommentar' => 'Kommentar', 'Vorschau' => 'Vorschau', 'Hinzufuegen' => 'Eintrag hinzufügen', 'ZurueckzuGB' => 'Zurück zum Gästebuch', 'Fehler1' => 'Es ist ein Fehler aufgetreten:', 'AlteEintraege' => 'Ältere Einträge', 'NeueEintraege' => 'Neuere Einträge', 'ZeigeEintraege'=> 'Zeige Einträge', 'Erstelltam' => 'erstellt am', 'Um' => 'um', 'Uhr' => 'Uhr', 'NameMuss' => 'Das Feld "Name" muss ausgefüllt werden!', 'KommentarMuss' => 'Das Feld "Kommentar" muss ausgefüllt werden!', 'Vorschau2' => 'Vorschau auf den Beitrag:', 'Name' => 'Name', 'KeineEintraege'=> 'Keine Einträge vorhanden', 'Title' => 'Gästebuch', 'Emailan' => 'Email an', 'Homepagevon' => 'Homepage von', 'Eintragen' => 'Tragen Sie sich ein!', 'ParamFehlt' => 'Eingabeparameter fehlt.', 'Fehler2' => 'Aufgrund eines Fehlers kann zur Zeit nicht auf für diese Aktion notwendige Daten zugegriffen werden. Bitte versuchen Sie zu einem späteren Zeitpunkt noch einmal, die entsprechende Aktion durchzuführen.', 'Fehler3' => 'Das gewünschte Gästebuch existiert nicht.', 'Fehler4' => 'Fehler', 'GBEintrag' => 'Gaestebucheintrag', 'Von' => 'von', 'NeuerEintrag' => 'Neuer Gaestebucheintrag', 'NeuerEintragMeldung' => 'Es gab einen neuen Eintrag in Ihrem Gaestebuch:', 'Zeit' => 'Zeit', 'SieErreichen' => 'Sie erreichen Ihr Gaestebuch unter', 'AutoEmail' => 'Dies ist eine automatisch erzeugte eMail, die bei jedem Eintrag in Ihr Gaestebuch verschickt wird. Zum Deaktivieren der automatischen Benachrichtigung gehen Sie in den Kundenservice-Bereich Ihrer Domain und folgen den Links Homepage >> Standard-CGIs >> Gaestebuch >> Status.', 'CaptchaHinweis'=> 'Bitte geben Sie die Zeichen, die Sie in der nebenstehenden Grafik sehen, in das Textfeld ein. Dies ist erforderlich, um sicherzugehen, dass der Eintrag nicht durch einen automatischen Prozess erfolgt. <b>Für die Vorschau ist das nicht erforderlich.</b>', 'CaptchaMuss' => 'Das Feld für die grafische Überprüfung muss ausgefüllt werden!', 'CaptchaFalsch' => 'Die Zeichenfolge, die Sie zur Überprüfung eingegeben haben, stimmt nicht mit der in der Grafik angezeigten Zeichenfolge überein.', 'Scriptname' => 'gaestebuch.cgi', 'DefaultTitle' => 'Gästebuch', ); } elsif ($lang eq "en") { %texts = ( 'VielenDank' => 'Thank you for your message.', 'Bittewarten' => 'Please wait 2 seconds to be redirected to the guestbook.', 'Weiterleitung' => 'Click here if your browser does not support redirection.', 'IhrEintrag' => 'Your comment', 'Pflichtfelder' => '"Name" and "comment" are mandatory fields!', 'Und' => 'and', 'Kommentar' => 'Comment', 'Vorschau' => 'Preview', 'Hinzufuegen' => 'Post message', 'ZurueckzuGB' => 'Back to guestbook', 'Fehler1' => 'An error occured', 'AlteEintraege' => 'Older records', 'NeueEintraege' => 'Newer records', 'ZeigeEintraege'=> 'Show records', 'Erstelltam' => 'Created at', 'Um' => '', 'Uhr' => '', 'NameMuss' => 'Please enter a "Name"!', 'KommentarMuss' => 'Please enter a "Comment"!', 'Vorschau2' => 'Preview to message', 'Name' => 'Name', 'KeineEintraege'=> 'No records found', 'Title' => 'Guestbook', 'Emailan' => 'Mail to', 'Homepagevon' => 'Homepage', 'Eintragen' => 'Sign my guestbook!', 'ParamFehlt' => 'Missing parameter', 'Fehler2' => 'Due to an error it is not possible to access required data for this action. Please try again later.', 'Fehler3' => 'The requested guestbook does not exist.', 'Fehler4' => 'Error', 'GBEintrag' => 'guestbook message', 'Von' => 'from', 'NeuerEintrag' => 'New guestbook message', 'NeuerEintragMeldung' => 'There is a new message in your guestbook:', 'Zeit' => 'Date', 'SieErreichen' => 'Get to your guestbook here:', 'AutoEmail' => 'This is an automatically created e-mail which is sent with every new message in your guestbook. If you want to deactivate the automatic notification, please login to your domain administration service and follow the links Homepage >> Standard CGIs >> Guestbook >> Status.', 'CaptchaHinweis'=> 'Please type in the following field the script code which is shown beside. This is necessary to assure that the login is not done by a program. <b>The preview is available without typing the code.</b>', 'CaptchaMuss' => 'Please enter the script code.', 'CaptchaFalsch' => 'The script code you typed in was incorrect.', 'Scriptname' => 'guestbook.cgi', 'DefaultTitle' => 'guest book', ); } elsif ($lang eq "pl") { %texts = ( 'VielenDank' => 'Dziękuję za dokonanie wpisu.', 'Bittewarten' => 'Za dwie sekundy zostaniesz przekierowany do Książki Gości.', 'Weiterleitung' => 'Kliknij tutaj, jeśli nie chcesz czekać lub Twoja przeglądarka nie wspomaga przekierowania.', 'IhrEintrag' => 'Twój wpis', 'Pflichtfelder' => 'Pola "Nick" i "Komentarz" muszą być wypełnione!', 'Und' => 'i', 'Kommentar' => 'Komentarz', 'Vorschau' => 'Podgląd', 'Hinzufuegen' => 'Zapisz', 'ZurueckzuGB' => 'Powrót do Książki Gości', 'Fehler1' => 'Wystąpił błąd', 'AlteEintraege' => 'Starsze wpisy', 'NeueEintraege' => 'Nowsze wpisy', 'ZeigeEintraege'=> 'Pokaż wpisy', 'Erstelltam' => 'dodane dnia', 'Um' => 'o godzinie', 'Uhr' => '', 'NameMuss' => 'Pole Nicka musi być wypełnione!', 'KommentarMuss' => 'Pole komentarza musi być wypełnione!', 'Vorschau2' => 'Podgląd wpisu', 'Name' => 'Nick', 'KeineEintraege'=> 'Brak wpisów', 'Title' => 'Książka Gości', 'Emailan' => 'eMail do', 'Homepagevon' => 'Strona domowa', 'Eintragen' => 'Dokonaj wpisu!', 'ParamFehlt' => 'Brak parametru wejściowego', 'Fehler2' => 'Z powodu błędu nie można uzyskać dostępu do niezbędnych danych. Powtórz przerwaną akcję później', 'Fehler3' => 'Żądana książka gości nie istnieje', 'Fehler4' => 'Błąd', 'GBEintrag' => 'Wpis do Książki Gości', 'Von' => 'z', 'NeuerEintrag' => 'Nowy wpis do Ksiegi gosci', 'NeuerEintragMeldung' => 'Do Ksiegi gosci zostal dodany nowy wpis', 'Zeit' => 'Czas', 'SieErreichen' => 'Twoja Ksiega gosci znajduje sie pod ', 'AutoEmail' => 'Automatycznie generowany E-mail po kazdym wpisie do Twojej Ksiegi gosci. Deaktywacji tej opcji mozna dokonac tutaj: Serwis domen >> Moja witryna >> Standardowe CGI >> Ksiega gosci >> Status ', 'CaptchaHinweis'=> 'Prosimy wpisać tekst z obrazka obok do pola tekstowego. Jest to konieczne, żeby zabezpieczyć wpisy przed automatami sieciowymi. Do podglądu nie jest to konieczne.', 'CaptchaMuss' => 'Pole z graficznym tekstem musi być wypełnione.', 'CaptchaFalsch' => 'Wpisany tekst nie zgadza się z tekstem podanym na obrazku.', 'Scriptname' => 'guestbook.cgi', 'DefaultTitle' => 'Księga gości', ); } return %texts; } ### Texte fuer das Newsletter STD-CGI (newsletter.pl) sub newsletter_trans ($) { $lang = shift; if ($lang eq "de") { %texts = ( 'reportsubject' => 'Sendebericht Newsletterversand', 'nodomain' => 'Es konnte keine Domain bestimmt werden!', 'novalid' => 'Die angegebene E-Mail-Adresse ist ungültig!', 'emailaddok' => 'Die angegebene E-Mail-Adresse wurde in den Verteiler aufgenommen!', 'emaildelok' => 'Die angegebene E-Mail-Adresse wurde aus dem Verteiler gelöscht!', 'thankyou' => 'Vielen Dank', 'emailnotfound' => 'Die angegebene E-Mail-Adresse konnte nicht gefunden werden!', 'subscribe' => 'Newsletter abonnieren', 'unsubscribe' => 'Newsletter abbestellen', 'error' => 'Es trat ein Fehler auf!', 'error2' => 'Fehler!', 'youremail' => 'Ihre E-Mail-Adresse:', 'newsletter' => 'Newsletter', 'Newsversand' => 'Der Newsletter-Versand an', 'Ergebnis' => 'Adresse(n) wurde erfolgreich eingeleitet.', 'Ergebnis1' => 'Unzustellbare E-Mails werden an Ihre Adresse', 'Zurueck' => 'zurueckgeschickt.', 'AnFolgenden' => 'An die folgenden', 'NichtVersendet'=> 'eMail-Adresse(n) konnte der Newsletter nicht versendet werden:', 'Lesefehler' => 'Es ist ein technischer Fehler aufgetreten. Die zustaendige Technikabteilung wurde bereits ueber diesen Fehler informiert.', 'EmpfaengerLeer'=> 'Es sind keine eMail-Adressen eingetragen, an die Ihr Newsletter versendet werden kann.', 'SubjectLeer' => 'Es wurde kein Betreff fuer den Newsletter angegeben.', 'BodyLeer' => 'Es wurde kein Inhaltstext fuer den Newsletter angegeben.', 'go' => 'Los', 'Grund' => 'Der Newsletter konnte aus folgendem Grund nicht versendet werden:' ); } elsif ($lang eq "pl") { %texts = ( 'reportsubject' => "Raport wysy�ki newslettera", 'nodomain' => "Nie znaleziono domeny!", 'novalid' => "Podano błędny adres eMail!", 'emailaddok' => "Podany adres eMail został dodany do listy dystrybucyjnej!", 'emaildelok' => "Podany adres eMail został skasowany z listy dystrybucyjnej!", 'thankyou' => "Dziękuję bardzo", 'emailnotfound' => "Podany adres eMail nie został znaleziony!", 'subscribe' => "renumerata Newslettera", 'unsubscribe' => "Rezygnacja z Newslettera", 'error' => "Wystąpił błąd!", 'error2' => "Błąd!", 'youremail' => "Pański adres eMail:", 'newsletter' => "Newslettera", 'go' => "Dalej", 'Newsversand' => "Przesy�anie newslettera do", 'Ergebnis' => "adres�w zota�o rozpocz�te.", 'Ergebnis1' => "Ewentualne zwroty zostan� dostarczone na adres", 'Zurueck' => ".", 'AnFolgenden' => "Do nast�puj�cych", 'NichtVersendet'=> "adres�w nie wys�ano Newslettera:", 'Lesefehler' => "Wyst�pi� b��d techniczny. Dzia� Techniczny zosta� ju� o tym b��dzie poinformowany.", 'EmpfaengerLeer'=> "Nie podano �adnych adres�w eMail, na kt�re mo�na wys�a� Newsletter.", 'SubjectLeer' => "Nie podano �adnego tytu�u dla Newslettera.", 'BodyLeer' => "Nie podano �adnej tre�ci dla Newslettera.", 'Grund' => "Newsletter nie m�g� by� dostarczony z nast�puj�cego powodu:" ); } elsif ($lang eq 'en') { %texts = ( 'reportsubject' => "Newsletter delivery report", 'nodomain' => "No domain name could be found!", 'novalid' => "The given e-mail address is not valid!", 'emailaddok' => "The given e-mail address has been added to the distribution list!", 'emaildelok' => "The given e-mail address has been deleted from the distribution list!", 'thankyou' => "Thank You", 'emailnotfound' => "The given e-mail address could not be found!", 'subscribe' => "subscribe to newsletter", 'unsubscribe' => "unsubscribe from newsletter", 'error' => "An error occured!", 'error2' => "Error!", 'youremail' => "Your e-mail address:", 'newsletter' => "Newsletter", 'Newsversand' => "The newsletter transmission to", 'Ergebnis' => "address(es) has been successfully initiated.", 'Ergebnis1' => "Undeliverable e-mails will be sent back to your address", 'Zurueck' => ".", 'AnFolgenden' => "The newsletter could not be sent to the following", 'NichtVersendet'=> "e-mail address(es):", 'Lesefehler' => "A technical error occured. The appropriate technical staff has already been notified about this error.", 'EmpfaengerLeer'=> "There are no e-mail addresses subscribed to your newsletter.", 'SubjectLeer' => "You did not specify a subject for your newsletter.", 'BodyLeer' => "You did not specify a content for your newsletter.", 'go' => "Go", 'Grund' => "The newsletter could not be sent due to the following reason:" ); } return %texts; } 1;