<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;"># -*- mode: Perl -*-
######################################################################
### Localization of mrtg output pages
######################################################################
#                                                                    #
#   This is a generated perl module file.                            #
#   Please see the perl script mergelocale.pl and the language       #
#   databasefiles skelton.pm0 and locale.*.pmd in translate/.        #
#   If you want to contribute to mrtg change in the *.pmd files.     #
#   If you just want to change your own mrtg: Go ahead and edit!     #
#                                                                    #
######################################################################
### Defines programs which handles centralized pattern matching and pattern 
### replacements in order to translate the given strings
######################################################################
### Created by:  Morten Storgaard Nielsen &lt;msn@ipt.dtu.dk&gt;
###################################################################
#
# Distributed under the GNU copyleft
#
###################################################################
### Locale by: 
###      Belarusian/Ð‘ÐµÐ»Ð°Ñ€ÑƒÑÐºÐ°Ñ
###      =&gt; Ð“Ð»ÐµÐ± Ð’Ð°Ð»Ð¾ÑˆÐºÐ° &lt;375gnu@gmail.com&gt;
###      Chinese/¤¤¤åÁcÅé
###      =&gt; Tate Chen ³¯¥@°¶ &lt;tate@joy-tech.com.tw&gt;
###      =&gt; Ryan Huang ¶ÀªF¶© &lt;ryan@asplord.com&gt;
###      Brazil/Brazilian Portuguese
###      =&gt; Luiz Felipe R E &lt;luizfelipe@encarnacao.com&gt;
###      =&gt; Gleydson Mazoli da Silva &lt;gleydson@debian.org&gt; (Atualização)
###      Bulgarian/Áúëãàðñêè
###      =&gt; Yovko Lambrev &lt;yovko@sdf.lonestar.org&gt;
###      catalan/Català
###      =&gt; LLuís Gras &lt;lluis@seccat.com&gt;
###      Simplified Chinese/¼òÌåÖÐÎÄ
###      =&gt; »Æ»ª¶° &lt;webmaster@kingisme.com&gt;
###	 =&gt; QQ:582955 »¶Ó­ÌÖÂÛFreeBSD
###	 =&gt; ÐÞÕýÁËÔ­À´µÄ´íÎó.·¢²¼ÐÂ°æ±¾.
###      cn/ÖÐÎÄºº×Ö
###      =&gt; Àî³¿¹â &lt;zurkabsd@yahoo.com.cn&gt;
###	 =&gt; MSN:chenguang2001@hotmail.com FreeBSD Fan
###	 =&gt; MRTGÍêÃÀºº»¯.
###      Croatian/Hrvatski
###      =&gt; Dinko Korunic &lt;kreator@fly.srk.fer.hr&gt;
###      Czech/Èesky
###      =&gt; Martin Och &lt;martin@och.cz&gt;
###      Danish/Dansk   
###      =&gt; Morten Storgaard Nielsen &lt;msn@ipt.dtu.dk&gt;
###      Dutch/Nederlands
###      =&gt; Barry van Dijk &lt;barry@dijk.com&gt;
###      Estonian/Eesti   
###      =&gt; Klemens Kasemaa &lt;klem@linux.ee&gt;
###      ÆüËÜ¸ì(EUC-JP)
###      =&gt; Fuminori Uematsu &lt;uematsu@kgz.com&gt;
###      Finnish/Suomi
###      =&gt; Jussi Siponen &lt;jussi.siponen@online.tietokone.fi&gt;
###      French/Francais
###      =&gt; Fabrice Prigent &lt;fabrice.prigent@univ-tlse1.fr&gt;
###         and Stéphane Marzloff &lt;secrer@le-bar.fdn.fr&gt;
###      Galician/Galego
###      =&gt; David Garabana Barro &lt;dgaraban@arrakis.es&gt;
###      Chinese/¼òÌåºº×Ö
###      =&gt; Zhanghui ÕÅ»Ô &lt;zhanghui2@asiainfo.com&gt;
###      Chinese/ÖÐÎÄ¼òÌå
###      =&gt; Peter Wong ×ÓÈÙ&lt;me@tcpip.com.cn&gt;
###      German/Deutsch   
###      =&gt; Ilja Pavkovic &lt;illsen@gumblfarz.de&gt;
###      Greek/Ellinika
###      =&gt; Simos Xenitellis &lt;simos@hellug.gr&gt;
###      Hungarian/Magyar   
###      =&gt; Levente Nagy &lt;levinet@euroweb.hu&gt;
###      Icelandic/Islenska   
###      =&gt; Halldor Karl Högnason &lt;halldor.hognason@islandssimi.is&gt;
###      Indonesian/Indonesia   
###      =&gt; Jamaludin Ahmad &lt;jamaludin@jamalinux.com&gt;
###      taken from malaysian translation 
###        by  Assakhof Ab. Satar &lt;assakhof@mimos.my&gt; 
###      $BF|K\8l(B(ISO-2022-JP)
###      =&gt; Fuminori Uematsu &lt;uematsu@kgz.com&gt;
###      Italian/Italiano
###      =&gt; Andrea Rossi &lt;rouge@shiny.it&gt;
###      Korean
###      =&gt; Kensoon Hwang &lt;lovesh@static.co.kr&gt;
###         CHOI Junho &lt;cjh@kr.FreeBSD.org&gt;
###      Lithuanian/Lietuviðkai
###      =&gt; ve &lt;ve@hardcore.lt&gt;
###      Macedonian/Makedonski   
###      =&gt; Delev Zoran &lt;delevz@esmak.com.mk&gt;
###      Malaysian/Malay   
###      =&gt; Assakhof Ab. Satar &lt;assakhof@mimos.my&gt;
###      Norwegian/norsk   
###      =&gt; Knut Grøneng &lt;knut.groneng@merkantildata.no
###      Polish/Polski
###      =&gt; Lukasz Jokiel &lt;Lukasz.Jokiel@klonex.com.pl&gt;
###      Portuguese/Português   
###      =&gt; Diogo Gomes &lt;etdgomes@ua.pt&gt; 
###      Romãn/Romanian
###      =&gt; József Szilágyi &lt;jozsi@maxiq.ro&gt;
###      Russian/òÕÓÓËÉÊ
###      =&gt; äÍÉÔÒÉÊ óÉ×ÁÞÅÎËÏ &lt;dima@chg.ru&gt;
###      Russian1251/Ðóññêèé1251
###      =&gt; Àëåêñàíäð Ðåäþê &lt;aredyuk@irmcity.com&gt;
###      Serbian/Srpski
###      =&gt; Ratko Bucic &lt;ratko@ni.ac.yu&gt;
###      Slovak/Slovensky
###      =&gt; Ladislav Mihok &lt;laco@mrokh.shmu.sk&gt;
###      Slovenian/Slovensko
###      =&gt; Aljosa Us &lt;us@sweet-sorrow.com&gt;
###      Spanish/Español
###      =&gt; Marcelo Roccasalva &lt;marcelo@linuxfan.com&gt;
###      Swedish/Svenska   
###      =&gt; Clas Mayer &lt;clas@mayer.se&gt;
###      Turkish/Türkçe
###      =&gt; Özgür C. Demir &lt;ozgurcd@koc.net&gt;
###      Ukrainian/õËÒÁ§ÎÓØËÁ
###      =&gt; óÅÒÇ¦Ê çÕÍ¦Î¦ÌÏ×ÉÞ &lt;gray@arte-fact.net&gt;
###      Ukrainian/Óêðà¿íñüêà
###      =&gt; Olexander Kunytsa &lt;xakep@snark.ukma.kiev.ua&gt;
###
### Contributions and fixes by:
###
###      0.05 fixed DARK GREEN entry		(msn@ipt.dtu.dk)
###           fixed credits for native language (msn@ipt.dtu.dk)
###	 0.06 added the PATCHTAGs               (msn@ipt.dtu.dk)
###           fixed several small errors        (msn@ipt.dtu.dk)
###	 0.07 changed PATCHTAG to support 
###           mergelocale.pl                    (msn@ipt.dtu.dk)
###
######################################################################
###
package locales_mrtg;

require 5.002;
# make sure we do not get hit by UTF-8 here
no locale;
use strict;
use vars qw(@ISA @EXPORT $VERSION);
use Exporter;

$VERSION = '0.07';

@ISA = qw(Exporter);

@EXPORT = qw
(
  &amp;english
  &amp;belarusian
  &amp;big5
  &amp;brazilian 
  &amp;bulgarian
  &amp;catalan
  &amp;chinese
  &amp;cn
  &amp;croatian
  &amp;czech
  &amp;danish
  &amp;dutch
  &amp;estonian
  &amp;eucjp
  &amp;german
  &amp;french
  &amp;galician
  &amp;gb
  &amp;gb2312
  &amp;german
  &amp;greek
  &amp;hungarian
  &amp;icelandic 
  &amp;indonesia
  &amp;iso2022jp
  &amp;italian
  &amp;korean
  &amp;lithuanian
  &amp;macedonian
  &amp;malay
  &amp;norwegianh
  &amp;polish
  &amp;portuguese
  &amp;romanian
  &amp;russian
  &amp;russian1251
  &amp;serbian
  &amp;slovak
  &amp;slovenian
  &amp;spanish
  &amp;swedish
  &amp;turkish
  &amp;ukrainian
  &amp;ukrainian1251
);

%lang2tran::LOCALE=  
(
  'english'      =&gt; \&amp;english,
  'default'      =&gt; \&amp;english, 
  'belarusian'       =&gt; \&amp;belarusian, 
  'Ð±ÐµÐ»Ð°Ñ€ÑƒÑÐºÐ°Ñ'       =&gt; \&amp;belarusian,
  'big5'         =&gt; \&amp;big5, 
  '¤¤¤åÁcÅé'     =&gt; \&amp;big5,
  'brazil'       =&gt; \&amp;brazilian,
  'brazilian'    =&gt; \&amp;brazilian,
  'bulgarian'	 =&gt; \&amp;bulgarian,
  'áúëãàðñêè'    =&gt; \&amp;bulgarian,
  'catalan'	 =&gt; \&amp;catalan,
  'catalan'	 =&gt; \&amp;catalan,
  'chinese'          =&gt; \&amp;chinese,
  '¼òÌåÖÐÎÄ'         =&gt; \&amp;chinese,
  'cn'          =&gt; \&amp;cn,
  'ÖÐÎÄºº×Ö'         =&gt; \&amp;cn,
  'croatian'	 =&gt; \&amp;croatian,
  'hrvatski'       =&gt; \&amp;croatian,
  'czech' 	 =&gt; \&amp;czech,
  'danish'       =&gt; \&amp;danish, 
  'dansk'        =&gt; \&amp;danish,
  'dutch'        =&gt; \&amp;dutch,
  'nederlands'   =&gt; \&amp;dutch,
  'estonian'       =&gt; \&amp;estonian, 
  'eesti'        =&gt; \&amp;estonian,
  'eucjp'        =&gt; \&amp;eucjp,
  'euc-jp'       =&gt; \&amp;eucjp, 
  'finnish'       =&gt; \&amp;finnish, 
  'suomi'        =&gt; \&amp;finnish,
  'french'       =&gt; \&amp;french,
  'francais'     =&gt; \&amp;french,
  'galician'       =&gt; \&amp;galician,
  'galego'        =&gt; \&amp;galician,
  'gb'         =&gt; \&amp;gb, 
  '¼òÌåºº×Ö'     =&gt; \&amp;gb,
  'gb2312'         =&gt; \&amp;gb2312, 
  'ÖÐÎÄ¼òÌå'     =&gt; \&amp;gb2312,
  'german'       =&gt; \&amp;german, 
  'german'        =&gt; \&amp;german,
  'greek'    	 =&gt; \&amp;greek,
  'ellinika' 	 =&gt; \&amp;greek,
  'hungarian'       =&gt; \&amp;hungarian, 
  'magyar'        =&gt; \&amp;hungarian,
  'icelandic'       =&gt; \&amp;icelandic, 
  'islenska'        =&gt; \&amp;icelandic,
  'indonesia'     =&gt; \&amp;indonesia, 
  'indonesian'	  =&gt; \&amp;indonesia, 
  'iso2022jp'    =&gt; \&amp;iso2022jp,
  'iso-2022-jp'  =&gt; \&amp;iso2022jp, 
  'italian'    	 =&gt; \&amp;italian,
  'italiano' 	 =&gt; \&amp;italian,
  'korean'      =&gt; \&amp;korean,
  'lithuanian'       =&gt; \&amp;lithuanian, 
  'lietuviðkai'        =&gt; \&amp;lithuanian,
  'macedonian'       =&gt; \&amp;macedonian, 
  'makedonski'        =&gt; \&amp;macedonian,
  'malay'       =&gt; \&amp;malay, 
  'malaysian'   =&gt; \&amp;malay,
  'norwegian'       =&gt; \&amp;norwegian, 
  'norsk'        =&gt; \&amp;norwegian,
  'polish'	 =&gt; \&amp;polish,
  'polski'       =&gt; \&amp;polish,
  'portuguese'     =&gt; \&amp;portuguese,
  'romanian'     =&gt; \&amp;romanian,
  'romãn'        =&gt; \&amp;romanian,
  'russian'	 =&gt; \&amp;russian,
  'òÕÓÓËÉÊ'      =&gt; \&amp;russian,
  'russian1251'	 =&gt; \&amp;russian1251,
  'Ðóññêèé1251'      =&gt; \&amp;russian1251,
  'serbian' 	 =&gt; \&amp;serbian,
  'slovak' 	 =&gt; \&amp;slovak,
  'slovenian' 	 =&gt; \&amp;slovenian,
  'spanish'	 =&gt; \&amp;spanish,
  'espanol'	 =&gt; \&amp;spanish,
  'swedish'       =&gt; \&amp;swedish, 
  'svenska'        =&gt; \&amp;swedish,
  'turkish'	 =&gt; \&amp;turkish,
  'turkce'	 =&gt; \&amp;turkish,
  'ukrainian'	 =&gt; \&amp;ukrainian,
  'õËÒÁ§ÎÓØËÁ'      =&gt; \&amp;ukrainian,
  'ukrainian1251'	=&gt; \&amp;ukrainian1251,
  'Óêðà¿íñüêà1251'	=&gt; \&amp;ukrainian1251,
);

%credits::LOCALE=
  (
# default
   'default' =&gt;
   "Prepared for localization by
				&lt;a href=\"http://www.ipt.dtu.dk\"&gt;Morten S. Nielsen&lt;/a&gt;
				&lt;a href=\"mailto:msn\@ipt.dtu.dk\"&gt;&amp;lt;msn\@ipt.dtu.dk&amp;gt;&lt;/a&gt;",
# Belarusian/Ð±ÐµÐ»Ð°Ñ€ÑƒÑÐºÐ°Ñ
   'belarusian' =&gt;
   "Ð‘ÐµÐ»Ð°Ñ€ÑƒÑÐºÑ– Ð¿ÐµÑ€Ð°ÐºÐ»Ð°Ð´:
				&lt;a href=\"http://375gnu.wordpress.com\"&gt;Ð“Ð»ÐµÐ± Ð’Ð°Ð»Ð¾ÑˆÐºÐ°&lt;/a&gt;
				&lt;a href=\"mailto:375gnu\@gmail.com\"&gt;&amp;lt;375gnu\@gmail.com&amp;gt;&lt;/a&gt;",
# Chinese/¤¤¤åÁcÅé
   'big5' =&gt;
   "¤¤¤å¤Æ§@ªÌ
				&lt;a href=\"http://www.joy-tech.com.tw/~tate\"&gt;Tate Chen&lt;/a&gt;
				&lt;a href=\"mailto:tate\@joy-tech.com.tw\"&gt;&amp;lt;tate\@joy-tech.com.tw&amp;gt;&lt;/a&gt;&lt;br /&gt;
				and &lt;a href=\"http://asplord.com\"&gt;¶ÀªF¶©&lt;/a&gt;
				&lt;a href=\"mailto:ryan\@asplord.com\"&gt;&amp;lt;ryan\@asplord.com&amp;gt;&lt;/a&gt;",
# Brazil/brazilian
   'brazilian' =&gt;
   "Localiza&amp;ccedil;&amp;atilde;o efetuada por
				&lt;a href=\"http://www.encarnacao.com\"&gt;Luiz Felipe R E&lt;/a&gt;
				&lt;a href=\"mailto:luizfelipe\@encarnacao.com\"&gt;&amp;lt;luizfelipe\@encarnacao.com&amp;gt;&lt;/a&gt;&lt;br /&gt;
				atualização por Gleydson Mazioli da Silva
				&lt;a href=\"mailto:gleydson\@debian.org\"&gt;&amp;lt;gleydson\@debian.org&amp;gt;&lt;/a&gt;",
# Bulgarian/Áúëãàðñêè
   'bulgarian' =&gt;
   "Ëîêàëèçàöèÿ íà áúëãàðñêè åçèê: 
				&lt;a href=\"http://linux.gyuvet.ch/\"&gt;Éîâêî Ëàìáðåâ&lt;/a&gt;
				&lt;a href=\"mailto:yovko\@sdf.lonestar.org\"&gt;&amp;lt;yovko\@sdf.lonestar.org&amp;gt;&lt;/a&gt;",
# catalan/catalan
    'catalan' =&gt;
    "Preparat per a localització per:
				&lt;a hre=\"mailto:lluis\@seccat.com\"&gt;LLuís Gras&lt;/a&gt;",
# Simplified Chinese/¼òÌåÖÐÎÄ
   'chinese' =&gt;
   "È«ÐÂ¼òÌåÖÐÎÄºº»¯£º
				&lt;a href=\"http://www.kingisme.com\"&gt;»Æ»ª¶°&lt;/a&gt;
				&lt;a href=\"mailto:webmaster\@kingisme.com\"&gt;&amp;lt;webmaster\@kingisme.com&amp;gt;&lt;/a&gt;",
# cn/ÖÐÎÄºº×Ö
   'cn' =&gt;
   "  &lt;HR NOSHADE&gt;
    MRTGÍêÃÀºº»¯£º
    &lt;NOBR&gt;&lt;A HREF=\"http://www.darkstage.net\"&gt;Àî³¿¹â&lt;/A&gt;
  &lt;A HREF=\"mailto:zurkabsd\@yahoo.com.cn\"&gt;
  &amp;lt;zurkabsd\@yahoo.com.cn&amp;gt;&lt;/A&gt;&lt;/NOBR&gt;",
# Croatian/hrvatski
   'croatian' =&gt;
   "Hrvatska lokalizacija - 
				Dinko Korunic
				&lt;a href=\"mailto:kreator\@fly.srk.fer.hr\"&gt;&amp;lt;kreator\@fly.srk.fer.hr&amp;gt;&lt;/a&gt;",
# Czech/Èesky
   'czech' =&gt;
   "Èeský pøeklad pøipravil
				&lt;a href=\"http://www.och.cz\"&gt;Martin Och&lt;/a&gt;
				&lt;a href=\"mailto:martin\@och.cz\"&gt; &amp;lt;martin\@och.cz&amp;gt;&lt;/a&gt;",
# Danish/dansk
   'danish' =&gt;
   "Forberedt for sprog samt oversat til dansk af
				&lt;a href=\"http://www.ipt.dtu.dk\"&gt;Morten S. Nielsen&lt;/a&gt;
				&lt;a href=\"mailto:msn\@ipt.dtu.dk\"&gt;&amp;lt;msn\@ipt.dtu.dk&amp;gt;&lt;/a&gt;",
# the danish string means: "Prepared for languages and translated to danish by"
# Dutch/nederlands
   'dutch' =&gt;
   "Vertaald naar het Nederlands door
				&lt;a href=\"http://doema.peterson.nl\"&gt;Barry van Dijk&lt;/a&gt;
				&lt;a href=\"mailto:barry\@dijk.com\"&gt;&amp;lt;barry\@dijk.com&amp;gt;&lt;/a&gt;&lt;br /&gt;;
  Aangepast door Paul Slootman
				&lt;a href=\"mailto:paul\@debian.org\"&gt;&amp;lt;paul\@debian.org&amp;gt;&lt;/a&gt;",
# Estonian/Eesti
   'estonian' =&gt;
   "T&amp;otilde;lge eesti keelde 
				&lt;a href=\"http://www.linux.ee/~klem\"&gt;Klemens Kasemaa&lt;/a&gt;
				&lt;a href=\"mailto:klem\@linux.ee\"&gt;&amp;lt;klem\@linux.ee&amp;gt;&lt;/a&gt;",
# the estonian string means: "Translation to estonian by"
# eucjp/euc-jp
   'eucjp' =&gt;
   "ÆüËÜ¸ìÌõ(EUC-JP)ºîÀ®
				&lt;a href=\"http://www.kgz.com/~uematsu/\"&gt;¿¢¾¾ Ê¸ÆÁ&lt;/a&gt;
				&lt;a href=\"mailto:uematsu\@kgz.com\"&gt;&amp;lt;uematsu\@kgz.com&amp;gt;&lt;/a&gt;",
# Finnish/Suomi
   'finnish' =&gt;
   "Lokalisoinut
				Jussi Siponen
				&lt;a href=\"mailto:jussi.siponen\@online.tietokone.fi\"&gt;&amp;lt;jussi.siponen\@online.tietokone.fi&amp;gt;&lt;/a&gt;",
# the Finnish string means: "Localized by"
# French/francais
   'french' =&gt;
   "Localisation effectu&amp;eacute;e par
				&lt;a href=\"http://cache.univ-tlse1.fr/les.personnes/fabrice.prigent\"&gt;Fabrice Prigent&lt;/a&gt;
				&lt;a href=\"mailto:fabrice.prigent\@univ-tlse1.fr\"&gt;&amp;lt;fabrice.prigent\@univ-tlse1.fr&amp;gt;&lt;/a&gt;",
# Galician/Galego
   'galician' =&gt;
   "Traducido ao galego por
				David Garabana Barro
				&lt;a href=\"mailto:dgaraban\@arrakis.es\"&gt;&amp;lt;dgaraban\@arrakis.es&amp;gt;&lt;/a&gt;",
# Chinese/¼òÌåºº×Ö
   'gb' =&gt;
   "¤¤¤å¤Æ§@ªÌ
				&lt;a href=\"http://www.asiainfo.com/~zhanghui\"&gt;Hui Zhang&lt;/a&gt;
				&lt;a href=\"mailto:zhanghui2\@asiainfo.com\"&gt;&amp;lt;zhanghui\@asiainfo.com&amp;gt;&lt;/a&gt;",
# Chinese/ÖÐÎÄ¼òÌå
   'gb2312' =&gt;
   "ÖÐÎÄ»¯×÷Õß
				&lt;a href=\"http://linux.tcpip.com.cn\"&gt;Peter Wong&lt;/a&gt;
				&lt;a href=\"mailto:webmaster\@tcpip.com.cn\"&gt;&amp;webmaster\@tcpip.com.cn&amp;gt;&lt;/a&gt;",
# German/deutsch
   'german' =&gt;
   "Vorbereitet f&amp;uuml;r die Lokalisation von
				&lt;a href=\"http://www.gumblfarz.de/~illsen\"&gt;Ilja Pavkovic&lt;/a&gt;
				&lt;a href=\"mailto:illsen\@gumblfarz.de\"&gt;&amp;lt;illsen\@gumblfarz.de&amp;gt;&lt;/a&gt;",
# Greek/Ellinika
   'greek' =&gt;
   "Ðñïåôïéìáóßá óôá åëëçíéêÜ áðü ôï
				&lt;a href=\"http://hq.hellug.gr/~nls\"&gt;Óßìï ÎåíéôÝëëç&lt;/a&gt;
				&lt;a href=\"mailto:S.Xenitellis\@hellug.gr\"&gt;&amp;lt;S.Xenitellis\@hellug.gr&amp;gt;&lt;/a&gt;",
# Hungarian/magyar
   'hungarian' =&gt;
   "Magyaros&amp;iacute;totta
				Nagy Levente
				&lt;a href=\"mailto:levinet\@euroweb.hu\"&gt;&amp;lt;levinet\@euroweb.hu&amp;gt;&lt;/a&gt;",
# the hungarian string means: "Prepared for languages and translated to Hungarian by"
# Icelandic/islenska
   'icelandic' =&gt;
   "&amp;THORN;&amp;yacute;tt yfir &amp;aacute; &amp;iacute;slensku af  
				&lt;a href=\"http://www.islandssimi.is\"&gt;Halld&amp;oacute;r Karl H&amp;ouml;gnason&lt;/a&gt;
				&lt;a href=\"mailto:halldor.hognason\@islandssimi.is\"&gt;&amp;lt;halldor.hognason\@islandssimi.is&amp;gt;&lt;/a&gt;",
# Indonesian/Indonesia
   'indonesia' =&gt;
   "Terjemahan ke bahasa Indonesia oleh:
				&lt;a href=\"http://www.jamalinux.com\"&gt;Jamaludin Ahmad&lt;/a&gt;
				&lt;a href=\"mailto:jamaludin_at_jamalinux_dot_com\"&gt;&amp;lt;jamaludin\@jamalinux.com&amp;gt;&lt;/a&gt;",
# iso2022jp/iso-2022-jp
   'iso2022jp' =&gt;
   "\e\$BF|K\\8lLu\e(B(ISO-2022-JP)\e\$B:n\@.\e(B
				&lt;a href=\"http://www.kgz.com/~uematsu/\"&gt;\e\$B?\"&gt;&gt;\e(B \e\$BJ8FA\e(B&lt;/a&gt;
				&lt;a href=\"mailto:uematsu\@kgz.com\"&gt;&amp;lt;uematsu\@kgz.com&amp;gt;&lt;/a&gt;",
# Italian/Italiano
   'italian' =&gt;
   "Localizzazione effettuata da
				&lt;a href=\"http://www.shinystat.it\"&gt;Andrea Rossi&lt;/a&gt;
				&lt;a href=\"mailto:rouge\@shiny.it\"&gt;&amp;lt;rouge\@shiny.it&amp;gt;&lt;/a&gt;",
# korean
   ,'korean' =&gt;
   "ÇÑ±Û¸Þ½ÃÁö ¹ø¿ª:
				&lt;a href=\"mailto:lovesh\@static.co.kr\"&gt;È²°Ç¼ø&lt;/a&gt;,
				&lt;a href=\"mailto:cjh\@kr.FreeBSD.org\"&gt;ÃÖÁØÈ£&lt;/a&gt;",
# Lithuanian/lietuviðkai
   'lithuanian' =&gt;
   "Paruoðë ir á lietuviø kalbà iðvertë
				&lt;a href=\"http://www.hardcore.lt\"&gt;ve&lt;/a&gt;
				&lt;a href=\"mailto:ve\@hardcore.lt\"&gt;&amp;lt;ve\@hardcore.lt&amp;gt;&lt;/a&gt;",
# the lithuanian string means: "Prepared for languages and translated to lithuanian by"
# Macedonian/makedonski
   'macedonian' =&gt;
   "Makedonska lokalizacija - 
				&lt;a href=\"http://www.esmak.com.mk\"&gt;Delev D Zoran&lt;/a&gt;
				&lt;a href=\"mailto:delevz\@esmak.com.mk\"&gt;&amp;lt;delevz\@esmak.com.mk&amp;gt;&lt;/a&gt;",
# the macedonian string means: "Prepared for languages and translated to macedonian by"
# Malaysian/Malay
   'malay' =&gt;
   "Terjemahan ke bahasa Malaysia/Indonesia oleh:
				&lt;a href=\"http://www.mimos.my\"&gt;Assakhof Ab. Satar&lt;/a&gt;
				&lt;a href=\"mailto:assakhof\@mimos.my\"&gt;&amp;lt;assakhof\@mimos.my&amp;gt;&lt;/a&gt;",
# Danish/dansk
   'norwegian' =&gt;
   "Oversatt til norsk av
				Knut Grøneng
				&lt;a href=\"mailto:knut.groneng\@merkantildata.no\"&gt;&amp;lt;knut.groneng\@merkantildata.no&amp;gt;&lt;/a&gt;",
# the norwegian string means: "Translated to norwegian by"
# Polish/polski
   'polish' =&gt;
   "Polska lokalizacja
				&lt;a href=\"http://www.klonex.com.pl/~lcj\"&gt;Lukasz Jokiel&lt;/a&gt;
				&lt;a href=\"mailto:Lukasz.Jokiel\@klonex.com.pl\"&gt;&amp;lt;Lukasz.Jokiel\@klonex.com.pl&amp;gt;&lt;/a&gt;",
# Português/portuguese 
   'portuguese' =&gt;
   "Traduzido por 
				&lt;a href=\"http://sweet.ua.pt/~etdgomes\"&gt;Diogo Gomes&lt;/&gt;
				&lt;a href=\"mailto:etdgomes\@ua.pt\"&gt;&amp;lt;etdgomes\@ua.pt&amp;gt;&lt;/a&gt;",
# Romãn/romanian
   'romanian' =&gt;
   "Tradus de
				&lt;a href=\"http://szjozsef.go.ro/\"&gt;József Szilágyi&lt;/a&gt;
				&lt;a href=\"mailto:jozsi\@maxiq.ro\"&gt;&amp;lt;jozsi\@maxiq.ro&amp;gt;&lt;/a&gt;",
# Russian/òÕÓÓËÉÊ
   'russian' =&gt;
   "ðÅÒÅ×ÏÄ ÎÁ ÒÕÓÓËÉÊ ÑÚÙË:
				&lt;a href=\"http://mitya.pp.ru/\"&gt;äÍÉÔÒÉÊ óÉ×ÁÞÅÎËÏ&lt;/a&gt;
				&lt;a href=\"mailto:mitya\@cavia.pp.ru\"&gt;&amp;lt;mitya\@cavia.pp.ru&amp;gt;&lt;/a&gt;",
# Russian1251/Ðóññêèé1251
   'russian1251' =&gt;
   "Ïåðåâîä íà ðóññêèé ÿçûê (êîäèðîâêà 1251):
				&lt;a href=\"http://www.irmcity.com\"&gt;Àëåêñàíäð Ðåäþê&lt;/a&gt;
				&lt;a href=\"mailto:aredyuk\@irmcity.com\"&gt;&amp;lt;aredyuk\@irmcity.com&amp;gt;&lt;/a&gt;",
# Serbian/Srpski
   'serbian' =&gt;
   "Ported to Serbian by / Srpski prevod uradio: 
				Ratko Buèiæ
				&lt;a href=\"mailto:ratko\@ni.ac.yu\"&gt;&amp;lt;ratko\@ni.ac.yu&amp;gt;&lt;/a&gt;",
# Slovak/Slovensky
   'slovak' =&gt;
   "Slovenský preklad pripravil
				Ing. Ladislav Mihok
				&lt;a href=\"mailto:laco\@mrokh.shmu.sk\"&gt;&amp;lt;laco\@mrokh.shmu.sk&amp;gt;&lt;/a&gt;",
# Slovenian/Slovensko
   'slovenian' =&gt;
   "Slovenski prevod pripravil
				Ragnar Belial Us
				&lt;a href=\"mailto:us\@sweet-sorrow.com\"&gt;&amp;lt;us\@sweet-sorrow.com&amp;gt;&lt;/a&gt;",
# Spanish/español
    'spanish' =&gt;
    "Preparado para localización por
				&lt;a href=\"mailto:marcelo\@linuxfan.com\"&gt;Marcelo Roccasalva&lt;/a&gt;",
# Swedish/Svenska
   'swedish' =&gt;
   "&amp;Oumlversatt till svenska av
				Clas Mayer
				&lt;a href=\"mailto:clas\@mayer.se\"&gt;&amp;lt;clas\@mayer.se&amp;gt;&lt;/a&gt;",
# the Swedish string means: "Prepared for languages and translated to Swedish by"
# Turkish/Türkçe
    'turkish' =&gt;
    "Türkçeleþtiren
				&lt;a href=\"mailto:ozgurcd\@koc.net\"&gt;Özgür C. Demir&lt;/a&gt;",
# Ukrainian/õËÒÁ§ÎÓØËÁ
   'ukrainian' =&gt;
   "ðÅÒÅËÌÁÄ ÎÁ ÕËÒÁ§ÎÓØËÕ ÍÏ×Õ:
				&lt;a href=\"http://www.arte-fact.net/~gray/\"&gt;óÅÒÇ¦Ê çÕÍ¦Î¦ÌÏ×ÉÞ&lt;/a&gt;
				&lt;a href=\"mailto:gray\@arte-fact.net\"&gt;&amp;lt;gray\@arte-fact.net&amp;gt;&lt;/a&gt;",
# Ukrainian1251/Óêðà¿íñüêà1251
   'ukrainian1251'	=&gt;
   "Ïåðåêëàä óêðà¿íñüêîþ (cp1251):
				Îëåêñàíäð Êóíèöÿ
				&lt;a href=\"mailto:xakep\@snark.ukma.kiev.ua\"&gt;&amp;lt;xakep\@snark.ukma.kiev.ua&amp;gt;&lt;/a&gt;",
  );

$credits::LOCALE{'Ð±ÐµÐ»Ð°Ñ€ÑƒÑÐºÐ°Ñ'}=$credits::LOCALE{'belarusian'};
$credits::LOCALE{'¤¤¤åÁcÅé'}=$credits::LOCALE{'big5'};
$credits::LOCALE{'brazil'}=$credits::LOCALE{'brazilian'};
$credits::LOCALE{'áúëãàðñêè'}=$credits::LOCALE{'bulgarian'};
$credits::LOCALE{'catalan'}=$credits::LOCALE{'catalan'};
$credits::LOCALE{'¼òÌåÖÐÎÄ'}=$credits::LOCALE{'Chinese'};
$credits::LOCALE{'ÖÐÎÄºº×Ö'}=$credits::LOCALE{'cn'};
$credits::LOCALE{'hrvatski'}=$credits::LOCALE{'croatian'};
$credits::LOCALE{'czech'}=$credits::LOCALE{'czech'};
$credits::LOCALE{'dansk'}=$credits::LOCALE{'danish'};
$credits::LOCALE{'nederlands'}=$credits::LOCALE{'dutch'};
$credits::LOCALE{'eesti'}=$credits::LOCALE{'estonian'};
$credits::LOCALE{'euc-jp'}=$credits::LOCALE{'eucjp'};
$credits::LOCALE{'finnish'}=$credits::LOCALE{'finnish'};
$credits::LOCALE{'francais'}=$credits::LOCALE{'french'};
$credits::LOCALE{'galego'}=$credits::LOCALE{'galician'};
$credits::LOCALE{'¼òÌåºº×Ö'}=$credits::LOCALE{'gb'};
$credits::LOCALE{'ÖÐÎÄ¼òÌå'}=$credits::LOCALE{'gb2312'};
$credits::LOCALE{'deutsch'}=$credits::LOCALE{'german'};
$credits::LOCALE{'ellinika'}=$credits::LOCALE{'greek'};
$credits::LOCALE{'magyar'}=$credits::LOCALE{'hungarian'};
$credits::LOCALE{'islenska'}=$credits::LOCALE{'icelandic'};
$credits::LOCALE{'indonesian'}=$credits::LOCALE{'indonesia'};
$credits::LOCALE{'iso-2022-jp'}=$credits::LOCALE{'iso2022jp'};
$credits::LOCALE{'italiano'}=$credits::LOCALE{'italian'};
$credits::LOCALE{'korean'}=$credits::LOCALE{'korean'};
$credits::LOCALE{'lietuviðkai'}=$credits::LOCALE{'lithuanian'};
$credits::LOCALE{'macedonian'}=$credits::LOCALE{'macedonian'};
$credits::LOCALE{'malaysian'}=$credits::LOCALE{'malay'};
$credits::LOCALE{'norsk'}=$credits::LOCALE{'norwegian'};
$credits::LOCALE{'polski'}=$credits::LOCALE{'polish'};
$credits::LOCALE{'portuguese'}=$credits::LOCALE{'portuguese'};
$credits::LOCALE{'romãn'}=$credits::LOCALE{'romanian'};
$credits::LOCALE{'òÕÓÓËÉÊ'}=$credits::LOCALE{'russian'};
$credits::LOCALE{'Ðóññêèé1251'}=$credits::LOCALE{'russian1251'};
$credits::LOCALE{'serbian'}=$credits::LOCALE{'serbian'};
$credits::LOCALE{'slovak'}=$credits::LOCALE{'slovak'};
$credits::LOCALE{'slovenian'}=$credits::LOCALE{'slovenian'};
$credits::LOCALE{'espanol'}=$credits::LOCALE{'spanish'};
$credits::LOCALE{'svenska'}=$credits::LOCALE{'swedish'};
$credits::LOCALE{'turkce'}=$credits::LOCALE{'turkish'};
$credits::LOCALE{'õËÒÁ§ÎÓØËÁ'}=$credits::LOCALE{'ukrainian'};
$credits::LOCALE{'Óêðà¿íñüêà1251'}=$credits::LOCALE{'ukrainian1251'};

# English - default
sub english
{
  return shift;
};

# Belarusian

sub belarusian
{
  my $string = shift;
  return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=utf-8

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'utf-8',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'ÐÐ°Ð¹Ð±Ð¾Ð»ÑŒÑˆÑ‹ ÑžÐ²Ð°Ñ…Ð¾Ð´Ð½Ñ‹ Ñ‚Ñ€Ð°Ñ„Ñ–Ðº Ð·Ð° 5 Ñ…Ð²Ñ–Ð»Ñ–Ð½',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'ÐÐ°Ð¹Ð±Ð¾Ð»ÑŒÑˆÑ‹ Ð²Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹ Ñ‚Ñ€Ð°Ñ„Ñ–Ðº Ð·Ð° 5 Ñ…Ð²Ñ–Ð»Ñ–Ð½',
     'the device'                             =&gt; 'Ð¿Ñ€Ñ‹Ð»Ð°Ð´Ð°',
     'The statistics were last updated(.*)'   =&gt; 'ÐÐ¿Ð¾ÑˆÐ½Ñ– Ñ€Ð°Ð· ÑÑ‚Ð°Ñ‚Ñ‹ÑÑ‚Ñ‹ÐºÐ° Ð°Ð±Ð½Ð°ÑžÐ»ÑÐ»Ð°ÑÑ: $1',
     ' Average\)'                             =&gt; ')',
     'Average'                                =&gt; 'ÑÐ¿Ð°ÑÑÑ€ÑÐ´Ð½ÐµÐ½Ñ‹',
     'Max'                                    =&gt; 'Ð½Ð°Ð¹Ð±Ð¾Ð»ÑŒÑˆÑ‹',
     'Current'                                =&gt; 'Ð±ÑÐ³ÑƒÑ‡Ñ‹',
     'version'                                =&gt; 'Ð²ÑÑ€ÑÑ–Ñ',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Ð“Ñ€Ð°Ñ„Ñ–Ðº Ñ‚Ñ€Ð°Ñ„Ñ–ÐºÑƒ Ð·Ð° ÑÑƒÑ‚ÐºÑ– (Ð·Ð° $1 Ñ…Ð²Ñ–Ð»Ñ–Ð½ ',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Ð“Ñ€Ð°Ñ„Ñ–Ðº Ñ‚Ñ€Ð°Ñ„Ñ–ÐºÑƒ Ð·Ð° Ñ‚Ñ‹Ð´Ð·ÐµÐ½ÑŒ (Ð·Ð° 30 Ñ…Ð²Ñ–Ð»Ñ–Ð½ ',
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Ð“Ñ€Ð°Ñ„Ñ–Ðº Ñ‚Ñ€Ð°Ñ„Ñ–ÐºÑƒ Ð·Ð° Ð¼ÐµÑÑÑ† (Ð·Ð° 2 Ð³Ð°Ð´Ð·Ñ–Ð½Ñ‹ ',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Ð“Ñ€Ð°Ñ„Ñ–Ðº Ñ‚Ñ€Ð°Ñ„Ñ–ÐºÑƒ Ð·Ð° Ð³Ð¾Ð´ (Ð·Ð° 1 Ð´Ð·ÐµÐ½ÑŒ ', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Ð£Ð²Ð°Ñ…Ð¾Ð´Ð½Ñ‹ Ñ‚Ñ€Ð°Ñ„Ñ–Ðº $1 Ð·Ð° ÑÑÐºÑƒÐ½Ð´Ñƒ',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Ð’Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹ Ñ‚Ñ€Ð°Ñ„Ñ–Ðº $1 Ð·Ð° ÑÑÐºÑƒÐ½Ð´Ñƒ',
     'Incoming Traffic in (\S+) per Minute'   =&gt; 'Ð£Ð²Ð°Ñ…Ð¾Ð´Ð½Ñ‹ Ñ‚Ñ€Ð°Ñ„Ñ–Ðº $1 Ð·Ð° Ñ…Ð²Ñ–Ð»Ñ–Ð½Ñƒ',
     'Outgoing Traffic in (\S+) per Minute'   =&gt; 'Ð’Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹ Ñ‚Ñ€Ð°Ñ„Ñ–Ðº $1 Ð·Ð° Ñ…Ð²Ñ–Ð»Ñ–Ð½Ñƒ',
     'Incoming Traffic in (\S+) per Hour'     =&gt; 'Ð£Ð²Ð°Ñ…Ð¾Ð´Ð½Ñ‹ Ñ‚Ñ€Ð°Ñ„Ñ–Ðº $1 Ð·Ð° Ð³Ð°Ð´Ð·Ñ–Ð½Ñƒ',
     'Outgoing Traffic in (\S+) per Hour'     =&gt; 'Ð’Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹ Ñ‚Ñ€Ð°Ñ„Ñ–Ðº $1 Ð·Ð° Ð³Ð°Ð´Ð·Ñ–Ð½Ñƒ',
     'at which time (.*) had been up for(.*)' =&gt; 'ÐºÐ°Ð»Ñ– $1 Ð¿Ñ€Ð°Ñ†Ð°Ð²Ð°Ñž $2',
     '(\S+) per minute'			      =&gt; '$1 Ð·Ð° Ñ…Ð²Ñ–Ð»Ñ–Ð½Ñƒ',
     '(\S+) per hour'			      =&gt; '$1 Ð·Ð° Ð³Ð°Ð´Ð·Ñ–Ð½Ñƒ',    
     '(.+)/s$'                                =&gt; '$1/Ñ',
     '(.+)/min'                               =&gt; '$1/Ñ…Ð²',
     '(.+)/h$'                                =&gt; '$1/Ð³',
     '([kMG]?)([bB])/s'                       =&gt; '$1$2/Ñ',
     '([kMG]?)([bB])/min'                     =&gt; '$1$2/Ñ…Ð²',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/Ð³',
     'Bits'                                   =&gt; 'Ð±Ñ–Ñ‚Ð°Ñ…',
     'Bytes'                                  =&gt; 'Ð±Ð°Ð¹Ñ‚Ð°Ñ…',
     'In'                                     =&gt; 'Ð£Ð²Ð°Ñ…Ð¾Ð´Ð½Ñ‹',
     'Out'                                    =&gt; 'Ð’Ñ‹Ñ…Ð¾Ð´Ð½Ñ‹',
     'Percentage'                             =&gt; 'ÐÐ´ÑÐ¾Ñ‚ÐºÑ–',
     'Ported to OpenVMS Alpha by'             =&gt; 'ÐŸÐµÑ€Ð°Ð½Ð¾Ñ Ð½Ð° OpenVMS:', 
     'Ported to WindowsNT by'                 =&gt; 'ÐŸÐµÑ€Ð°Ð½Ð¾Ñ Ð½Ð° WindowsNT:',
     'and'                                    =&gt; 'Ñ–',
     '^GREEN'                                 =&gt; 'Ð—Ð¯Ð›ÐÐÐ«',
     'BLUE'                                   =&gt; 'Ð¡Ð†ÐÐ†',
     'DARK GREEN'                             =&gt; 'Ð¦ÐÐœÐÐÐ—Ð¯Ð›ÐÐÐ«',
     'MAGENTA'                                =&gt; 'Ð&nbsp;Ð£Ð–ÐžÐ’Ð«',
     'AMBER'                                  =&gt; 'Ð‘Ð£Ð&nbsp;Ð¨Ð¢Ð«ÐÐÐ’Ð«'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'ÐÑÐ´Ð·ÐµÐ»Ñ',     'Sun' =&gt; 'ÐÐ´',
      'Monday'    =&gt; 'ÐŸÐ°Ð½ÑÐ´Ð·ÐµÐ»Ð°Ðº',  'Mon' =&gt; 'ÐŸÐ½',
      'Tuesday'   =&gt; 'ÐÑžÑ‚Ð¾Ñ€Ð°Ðº',     'Tue' =&gt; 'ÐÑž',
      'Wednesday' =&gt; 'Ð¡ÐµÑ€Ð°Ð´Ð°',      'Wed' =&gt; 'Ð¡Ñ€',
      'Thursday'  =&gt; 'Ð§Ð°Ñ†ÑŒÐ²ÐµÑ€',     'Thu' =&gt; 'Ð§Ñ†',
      'Friday'    =&gt; 'ÐŸÑÑ‚Ð½Ñ–Ñ†Ð°',     'Fri' =&gt; 'ÐŸÑ‚',
      'Saturday'  =&gt; 'Ð¡ÑƒÐ±Ð¾Ñ‚Ð°',      'Sat' =&gt; 'Ð¡Ð±' 
    );

%month = 
    (
      'January'   =&gt; 'Ð¡Ñ‚ÑƒÐ´Ð·ÐµÐ½ÑŒ',  'February'  =&gt; 'Ð›ÑŽÑ‚Ñ‹' ,       'March'     =&gt; 'Ð¡Ð°ÐºÐ°Ð²Ñ–Ðº',
      'Jan'       =&gt; 'Ð¡Ñ‚Ñƒ',       'Feb'       =&gt; 'Ð›ÑŽÑ‚',         'Mar'       =&gt; 'Ð¡Ð°Ðº',
      'April'     =&gt; 'ÐšÑ€Ð°ÑÐ°Ð²Ñ–Ðº',  'May'       =&gt; 'Ð¢Ñ€Ð°Ð²ÐµÐ½ÑŒ',     'June'      =&gt; 'Ð§ÑÑ€Ð²ÐµÐ½ÑŒ', 
      'Apr'       =&gt; 'ÐšÑ€Ð°',       'May'       =&gt; 'Ð¢Ñ€Ð°',         'Jun'       =&gt; 'Ð§ÑÑ€',
      'July'      =&gt; 'Ð›Ñ–Ð¿ÐµÐ½ÑŒ',    'August'    =&gt; 'Ð–Ð½Ñ–Ð²ÐµÐ½ÑŒ',     'September' =&gt; 'Ð’ÐµÑ€Ð°ÑÐµÐ½ÑŒ', 
      'Jul'       =&gt; 'Ð›Ñ–Ð¿',       'Aug'       =&gt; 'Ð–Ð½Ñ–',         'Sep'       =&gt; 'Ð’ÐµÑ€', 
      'October'   =&gt; 'ÐšÐ°ÑÑ‚Ñ€Ñ‹Ñ‡Ð½Ñ–Ðº','November'  =&gt; 'Ð›Ñ–ÑÑ‚Ð°Ð¿Ð°Ð´',    'December'  =&gt; 'Ð¡ÑŒÐ½ÐµÐ¶Ð°Ð½ÑŒ', 
      'Oct'       =&gt; 'ÐšÐ°Ñ',       'Nov'       =&gt; 'Ð›Ñ–Ñ',         'Dec'       =&gt; 'Ð¡ÑŒÐ½' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." Ñƒ ".$quux[1]; 
      };
      return "$wday{$foo[0]}, $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};



# Chinese Big5 Code

sub big5
{
  my $string = shift;
  return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'big5',
     'Maximal 5 Minute Incoming Traffic'      =&gt; '5¤ÀÄÁ³Ì¤j¬y¤J¶q',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; '5¤ÀÄÁ³Ì¤j¬y¥X¶q',
     'the device'                             =&gt; '¸Ë¸m',
     'The statistics were last updated(.*)'   =&gt; '¤W¦¸²Î­p§ó·s®É¶¡: $1',
     ' Average\)'                             =&gt; ' ¥­§¡)',
     'Average'                                =&gt; '¥­§¡',
     'Max$'                                   =&gt; '³Ì¤j',
     'Current'                                =&gt; '¥Ø«e',
     'version'                                =&gt; 'ª©¥»',
     '`Daily\' Graph \((.*) Minute'           =&gt; '¨C¤é ¹Ïªí ($1 ¤ÀÄÁ',
     '`Weekly\' Graph \(30 Minute'            =&gt; '¨C¶g ¹Ïªí (30 ¤ÀÄÁ' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '¨C¤ë ¹Ïªí (2 ¤p®É',
     '`Yearly\' Graph \(1 Day'                =&gt; '¨C¦~ ¹Ïªí (1 ¤Ñ',
     'Incoming Traffic in (\S+) per Second'   =&gt; '¨C¬í¬y¤J¶q (³æ¦ì $1)',
     'Outgoing Traffic in (\S+) per Second'   =&gt; '¨C¬í¬y¥X¶q (³æ¦ì $1)',
     'Incoming Traffic in (\S+) per Minute'   =&gt; '¨C¤ÀÄÁ¬y¤J¶q (³æ¦ì $1)',
     'Outgoing Traffic in (\S+) per Minute'   =&gt; '¨C¤ÀÄÁ¬y¥X¶q (³æ¦ì $1)',
     'Incoming Traffic in (\S+) per Hour'     =&gt; '¨C¤p®É¬y¤J¶q (³æ¦ì $1)',
     'Outgoing Traffic in (\S+) per Hour'     =&gt; '¨C¤p®É¬y¥X¶q (³æ¦ì $1)',
     'at which time (.*) had been up for(.*)' =&gt; '³]³Æ¦WºÙ $1¡A¤w¹B§@®É¶¡(UPTIME): $2',
     '(\S+) per minute'			              =&gt; '$1/¤À',
     '(\S+) per hour'			              =&gt; '$1/¤p®É',    
     '(.+)/s$'                                =&gt; '$1/¬í',
     '(.+)/min$'                              =&gt; '$1/¤À',
     '(.+)/h$'                                =&gt; '$1/¤p®É',
     #'([kMG]?)([bB])/s'                      =&gt; '$1$2/s',
     #'([kMG]?)([bB])/min'                    =&gt; '$1$2/min',
     #'([kMG]?)([bB])/h'                      =&gt; '$1$2/std',
     # 'Bits'                                 =&gt; 'Bits',
     # 'Bytes'                                =&gt; 'Bytes'
     'In'                                     =&gt; '¬y¤J',
     'Out$'                                   =&gt; '¬y¥X',
     'Percentage'                             =&gt; '¦Ê¤À¤ñ',
     'Ported to OpenVMS Alpha by'             =&gt; '²¾´Ó¨ì OpenVM Alpha §@ªÌ',
     'Ported to WindowsNT by'                 =&gt; '²¾´Ó¨ì WindowsNT §@ªÌ',
     'and'                                    =&gt; '¤Î',
     '^GREEN'                                 =&gt; 'ºñ¦â',
     'BLUE'                                   =&gt; 'ÂÅ¦â',
     'DARK GREEN'                             =&gt; '¾¥ºñ¦â',
     'MAGENTA'                                =&gt; 'µµ¦â',
     'AMBER'                                  =&gt; 'µ[¬Ä¦â'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday =
    (
      'Sunday'    =&gt; '¬P´Á¤é',        'Sun' =&gt; '¤é',
      'Monday'    =&gt; '¬P´Á¤@',        'Mon' =&gt; '¤@',
      'Tuesday'   =&gt; '¬P´Á¤G',        'Tue' =&gt; '¤G',
      'Wednesday' =&gt; '¬P´Á¤T',        'Wed' =&gt; '¤T',
      'Thursday'  =&gt; '¬P´Á¥|',        'Thu' =&gt; '¥|',
      'Friday'    =&gt; '¬P´Á¤­',        'Fri' =&gt; '¤­',
      'Saturday'  =&gt; '¬P´Á¤»',        'Sat' =&gt; '¤»'
    );

%month =
    (
      'January'   =&gt; '¤@¤ë',   'February'  =&gt; '¤G¤ë',    'March'     =&gt; '¤T¤ë',
      'Jan'       =&gt; '¤@',     'Feb'       =&gt; '¤G',      'Mar'       =&gt; '¤T',
      'April'     =&gt; '¥|¤ë',   'May'       =&gt; '¤­¤ë',    'June'      =&gt; '¤»¤ë',
      'Apr'       =&gt; '¥|',     'May'       =&gt; '¤­',      'Jun'       =&gt; '¤»',
      'July'      =&gt; '¤C¤ë',   'August'    =&gt; '¤K¤ë',    'September' =&gt; '¤E¤ë',
      'Jul'       =&gt; '¤C',     'Aug'       =&gt; '¤K',      'Sep'       =&gt; '¤E',
      'October'   =&gt; '¤Q¤ë',   'November'  =&gt; '¤Q¤@¤ë',  'December'  =&gt; '¤Q¤G¤ë',
      'Oct'       =&gt; '¤Q',     'Nov'       =&gt; '¤Q¤@',    'Dec'       =&gt; '¤Q¤G'
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      {
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0];
        $foo[4]=$quux[1];
      };
      return "$foo[3] ¦~ $month{$foo[2]} $foo[1] ¤é $wday{$foo[0]} $foo[4]";
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Brazilian (Portugues)

sub brazilian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Tr&amp;aacute;fego M&amp;aacute;ximo de Entrada em 5 minutos',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Tr&amp;aacute;fego M&amp;aacute;ximo de Sa&amp;iacute;da em 5 minutos',
     'the device'                             =&gt; 'dispositivo',
     'The statistics were last updated (.*)'  =&gt; '&amp;Uacute;ltima atualiza&amp;ccedil;&amp;atilde;o das estat&amp;iacute;sticas: $1',
     ' Average\)'                             =&gt; ' - m&amp;eacute;dia)',
     'Average'                                =&gt; 'M&amp;eacute;dia',
     'Max'                                    =&gt; 'M&amp;aacute;x',
     'Current'                                =&gt; 'Atual',
     'version'                                =&gt; 'vers&amp;atilde;o',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Gr&amp;aacute;fico `Di&amp;aacute;rio\' ($1 minutos',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Gr&amp;aacute;fico `Semanal\' (30 minutos' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Gr&amp;aacute;fico `Mensal\' (2 horas',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Gr&amp;aacute;fico `Anual\' (1 dia', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Tr&amp;aacute;fego de Entrada em $1 por segundo',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Tr&amp;aacute;fego de Sa&amp;iacute;da em $1 por segundo',
     'at which time (.*) had been up for(.*)' =&gt; 'nesta hora $1 estava ativo por $2',
     # '([kMG]?)([bB])/s'                     =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'                   =&gt; '\$1\$2/min',
     # '([kMG]?)([bB])/h'                     =&gt; '$1$2/t',
     # 'Bits'                                 =&gt; 'Bits',
     # 'Bytes'                                =&gt; 'Bytes'
     'In'                                     =&gt; 'Entr.',
     'Out'                                    =&gt; 'Sa&amp;iacute;',
     'Percentage'                             =&gt; 'Porc.',
     'Ported to OpenVMS Alpha by'             =&gt; 'Adaptado para o Alpha OpenVMS por', 
     'Ported to WindowsNT by'                 =&gt; 'Adaptado para o WindowsNT por',
     'and'                                    =&gt; 'e',
     '^GREEN'                                  =&gt; 'VERDE',
     'BLUE'                                   =&gt; 'AZUL',
     'DARK GREEN'                             =&gt; 'VERDE ESCURO',
     'MAGENTA'                                =&gt; 'LIL&amp;Aacute;S',
     'AMBER'                                  =&gt; 'AMBAR'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Domingo',       'Sun' =&gt; 'Dom',
      'Monday'    =&gt; 'Segunda',       'Mon' =&gt; 'Seg',
      'Tuesday'   =&gt; 'Ter&amp;ccedil;a',  'Tue' =&gt; 'Ter',
      'Wednesday' =&gt; 'Quarta',        'Wed' =&gt; 'Qua',
      'Thursday'  =&gt; 'Quinta',        'Thu' =&gt; 'Qui',
      'Friday'    =&gt; 'Sexta',         'Fri' =&gt; 'Sex',
      'Saturday'  =&gt; 'S&amp;aacute;bado', 'Sat' =&gt; 'S&amp;aacute;b' 

    );

%month = 
    (
      'January'   =&gt; 'Janeiro',   'February'  =&gt; 'Fevereiro' ,  'March'     =&gt; 'Mar&amp;ccedil;o',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Fev',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'Abril',     'May'       =&gt; 'Maio',        'June'      =&gt; 'Junho', 
      'Apr'       =&gt; 'Abr',       'May'       =&gt; 'Mai',         'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Julho',     'August'    =&gt; 'Agosto',      'September' =&gt; 'Setembro', 
      'Jul'       =&gt; 'Jul',       'Aug'       =&gt; 'Ago',         'Sep'       =&gt; 'Set', 
      'October'   =&gt; 'Outubro',   'November'  =&gt; 'Novembro',    'December'  =&gt; 'Dezembro', 
      'Oct'       =&gt; 'Out',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Dez' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." &amp;agrave;s ".$quux[1]; 
      };
      return "$wday{$foo[0]}, $foo[1] de $month{$foo[2]} de $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};


# Bulgarian

sub bulgarian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'windows-1251',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Ìàêñèìàëåí âõîäÿù òðàôèê çà 5 ìèíóòè',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Ìàêñèìàëåí èçõîäÿù òðàôèê çà 5 ìèíóòè',
     'the device'                             =&gt; 'óñòðîéñòâîòî',
     'The statistics were last updated(.*)'   =&gt; 'Ñòàòèñòè÷åñêèòå äàííè ñà îò÷åòåíè íà: $1',
     ' Average\)'                             =&gt; ' ñðåäíî)',
     'Average'                                =&gt; 'Ñðåäíî',
     'Max'                                    =&gt; 'Ìàêñ.',
     'Current'                                =&gt; 'Òåêóùî',
     'version'                                =&gt; 'âåðñèÿ',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Äíåâíà ãðàôèêà (ïðåç $1 ìèíóòè',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Ñåäìè÷íà ãðàôèêà (ïðåç 30 ìèíóòè' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Ìåñå÷íà ãðàôèêà (ïðåç 2 ÷àñà',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Ãîäèøíà ãðàôèêà (ïðåç 1 äåí', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Âõîäÿù òðàôèê â $1 çà ñåêóíäà',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Èçõîäÿù òðàôèê â $1 çà ñåêóíäà',
     'at which time (.*) had been up for(.*)' =&gt; 'â êîåòî âðåìå $1 ðàáîòè îò $2',
     #'([kMG]?)([bB])/s'                      =&gt; '$1$1/ñåê',
     #'([kMG]?)([bB])/min'                    =&gt; '$1$2/ìèí',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/÷',
     'Bits'                                  =&gt; 'áèòà',
     'Bytes'                                 =&gt; 'áàéòà',
     'In'                                     =&gt; 'Âõ.',
     'Out'                                    =&gt; 'Èçõ.',
     'Percentage'                             =&gt; 'Ïðîöåíò',
     'Ported to OpenVMS Alpha by'             =&gt; 'Ïîðò çà OpenVMS Alpha îò',
     'Ported to WindowsNT by'                 =&gt; 'Ïîðò çà WindowsNT îò',
     'and'                                    =&gt; 'è',
     '^GREEN'                                  =&gt; 'çåëåí',
     'BLUE'                                   =&gt; 'ñèí',
     'DARK GREEN'                             =&gt; 'òúìíîçåëåí',
     'MAGENTA'                                =&gt; 'êåðåìèäåí',
     'AMBER'                                  =&gt; 'êåõëèáàð'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; ' Íåäåëÿ',		'Sun' =&gt; 'Íä',
      'Monday'    =&gt; ' Ïîíåäåëíèê',	'Mon' =&gt; 'Ïí',
      'Tuesday'   =&gt; ' Âòîðíèê',	'Tue' =&gt; 'Âò',
      'Wednesday' =&gt; ' Ñðÿäà',		'Wed' =&gt; 'Ñð',
      'Thursday'  =&gt; ' ×åòâúðòúê',	'Thu' =&gt; '×ò',
      'Friday'    =&gt; ' Ïåòúê',		'Fri' =&gt; 'Ïò',
      'Saturday'  =&gt; ' Ñúáîòà',		'Sat' =&gt; 'Ñá' 
    );

%month = 
    (
      'January'   =&gt; 'ßíóàðè',   'February'  =&gt; 'Ôåâðóàðè' ,    'March'     =&gt; 'Ìàðò',
      'Jan'       =&gt; 'ßíó',       'Feb'       =&gt; 'Ôåâ',         'Mar'       =&gt; 'Ìàð',
      'April'     =&gt; 'Àïðèë',     'May'       =&gt; 'Ìàé',         'June'      =&gt; 'Þíè', 
      'Apr'       =&gt; 'Àïð',       'May'       =&gt; 'Ìàé',         'Jun'       =&gt; 'Þíè',
      'July'      =&gt; 'Þëè',   'August'    =&gt; 'Àâãóñò',        'September' =&gt; 'Ñåïòåìâðè', 
      'Jul'       =&gt; 'Þëè',       'Aug'       =&gt; 'Àâã',         'Sep'       =&gt; 'Ñåï', 
      'October'   =&gt; 'Îêòîìâðè',   'November'  =&gt; 'Íîåìâðè',    'December'  =&gt; 'Äåêåìâðè', 
      'Oct'       =&gt; 'Îêò',       'Nov'       =&gt; 'Íîå',         'Dec'       =&gt; 'Äåê' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]."Ç. × ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# catalan

sub catalan
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Tr&amp;agrave;fic entrant m&amp;agrave;xim en 5 minuts',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Tr&amp;agrave;fic sortint m&amp;agrave;xim en 5 minuts',
     'the device'                             =&gt; 'el dispositiu',
     'The statistics were last updated(.*)'   =&gt; 'Estad&amp;iacute;stiques actualitzades el $1',
     ' Average\)'                             =&gt; ' Promig)',
     'Average'                                =&gt; 'Promig',
     'Max'                                    =&gt; 'M&amp;agrave;xim',
     'Current'                                =&gt; 'Actual',
     'version'                                =&gt; 'versi&amp;oacute',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Gr&amp;agrave;fic diari ($1 minuts :',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Gr&amp;agrave;fic setmanal (30 minuts :' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Gr&amp;agrave;fic mensual (2 hores :',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Gr&amp;agrave;fic anual (1 dia :', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Tr&amp;agrave;fic entrant en $1 per segon',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Tr&amp;agrave;fic sortint en $1 per segon',
     'at which time (.*) had been up for(.*)' =&gt; '$1 ha estat funcionant durant $2',
     # '([kMG]?)([bB])/s'                      =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'                    =&gt; '\$1\$2/min',
     # '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     # 'Bits'                                  =&gt; 'Bits',
     # 'Bytes'                                 =&gt; 'Bytes'
     'In'                                     =&gt; 'Entrant',
     'Out'                                    =&gt; 'Sortint',
     'Percentage'                             =&gt; 'Percentatge',
     'Ported to OpenVMS Alpha by'             =&gt; 'Portat a OpenVMS Alpha per',
     'Ported to WindowsNT by'                 =&gt; 'Portat a WindowsNT per',
     'and'                                    =&gt; 'i',
     '^GREEN'                                  =&gt; 'VERD',
     'BLUE'                                   =&gt; 'BLAU',
     'DARK GREEN'                             =&gt; 'VERD FOSC',
     'MAGENTA'                                =&gt; 'MAGENTA',
     'AMBER'                                  =&gt; 'AMBAR'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Diumenge',	'Sun' =&gt; 'Dg',
      'Monday'    =&gt; 'Dilluns',		'Mon' =&gt; 'Dl',
      'Tuesday'   =&gt; 'Dimarts',		'Tue' =&gt; 'Dm',
      'Wednesday' =&gt; 'Dimecres',	'Wed' =&gt; 'Dc',
      'Thursday'  =&gt; 'Dijous',		'Thu' =&gt; 'Dj',
      'Friday'    =&gt; 'Divendres',	'Fri' =&gt; 'Dv',
      'Saturday'  =&gt; 'Dissabte',	'Sat' =&gt; 'Ds' 
    );

%month = 
    (
      'January'   =&gt; 'Gener',     'February' =&gt; 'Febrer' ,    'March'     =&gt; 'Març',
      'Jan'       =&gt; 'Gen',       'Feb'      =&gt; 'Feb',        'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'Abril',     'May'      =&gt; 'Maig',       'June'      =&gt; 'Juny', 
      'Apr'       =&gt; 'Abr',       'May'      =&gt; 'Mai',        'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Juliol',    'August'   =&gt; 'Agost',      'September' =&gt; 'Setembre', 
      'Jul'       =&gt; 'Jul',       'Aug'      =&gt; 'Ago',        'Sep'       =&gt; 'Set', 
      'October'   =&gt; 'Octubre',   'November' =&gt; 'Novembre',   'December'  =&gt; 'Desembre', 
      'Oct'       =&gt; 'Oct',       'Nov'      =&gt; 'Nov',        'Dec'       =&gt; 'Des' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." a les ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] de $month{$foo[2]} de $foo[3]"; 
    };
   return $string;

};

# Simplified Chinese

sub chinese
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'gb2312',
     'Maximal 5 Minute Incoming Traffic'      =&gt; '5·ÖÖÓ×î´óÁ÷ÈëÁ¿',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; '5·ÖÖÓ×î´óÁ÷³öÁ¿',
     'the device'                             =&gt; 'Éè±¸',
     'The statistics were last updated(.*)'   =&gt; '×îºóÍ³¼Æ¸üÐÂÊ±¼ä£º$1',
     ' Average\)'                             =&gt; ' Æ½¾ù)',
     'Average'                                =&gt; 'Æ½¾ù',
     'Max'                                    =&gt; '×î´ó',
     'Current'                                =&gt; 'µ±Ç°',
     'version'                                =&gt; '°æ±¾',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Ã¿ÈÕ Í¼±í ($1 ·ÖÖÓ',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Ã¿ÖÜ Í¼±í (30 ·ÖÖÓ' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Ã¿ÔÂ Í¼±í (2 Ð¡Ê±',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Ã¿Äê Í¼±í (1 Ìì', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Ã¿ÃëÁ÷ÈëÁ¿ (µ¥Î» $1 )',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Ã¿ÃëÁ÷³öÁ¿ (µ¥Î» $1 )',
     'at which time (.*) had been up for(.*)' =&gt; ' $1 ÒÑÔËÐÐÁË£º $2 ',
     '(.+)/s$'                                =&gt; '$1/Ãë',
     '(.+)/min$'                              =&gt; '$1/·Ö',
     '(.+)/h$'                                =&gt; '$1/Ê±',
     # 'Bits'                                 =&gt; 'Bits',
     # 'Bytes'                                =&gt; 'Bytes'
     'In'                                     =&gt; 'Á÷Èë£º',
     'Out'                                    =&gt; 'Á÷³ö£º',
     'Percentage'                             =&gt; '°Ù·Ö±È£º',
     'Ported to OpenVMS Alpha by'             =&gt; 'ÒÆÖ²µ½ OpenVMS µÄÊÇ', 
     'Ported to WindowsNT by'                 =&gt; 'ÒÆÖ²µ½ WindowsNT µÄÊÇ',
     'and'                                    =&gt; 'Óë',
     '^GREEN'                                 =&gt; 'ÂÌÉ«',
     'BLUE'                                   =&gt; 'À¶É«',
     'DARK GREEN'                             =&gt; 'Ä«ÂÌ',
     'MAGENTA'                                =&gt; '×ÏÉ«',
     'AMBER'                                  =&gt; 'çúçêÉ«'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'ÐÇÆÚÌì',    'Sun' =&gt; 'ÈÕ',
      'Monday'    =&gt; 'ÐÇÆÚÒ»',    'Mon' =&gt; 'Ò»',
      'Tuesday'   =&gt; 'ÐÇÆÚ¶þ',    'Tue' =&gt; '¶þ',
      'Wednesday' =&gt; 'ÐÇÆÚÈý',    'Wed' =&gt; 'Èý',
      'Thursday'  =&gt; 'ÐÇÆÚËÄ',    'Thu' =&gt; 'ËÄ',
      'Friday'    =&gt; 'ÐÇÆÚÎå',    'Fri' =&gt; 'Îå',
      'Saturday'  =&gt; 'ÐÇÆÚÁù',    'Sat' =&gt; 'Áù' 

    );

%month = 
    (
      'January'   =&gt; ' Ò» ÔÂ',    'February'  =&gt; ' ¶þ ÔÂ',      'March'     =&gt; ' Èý ÔÂ',
      'April'     =&gt; ' ËÄ ÔÂ',    'May'       =&gt; ' Îå ÔÂ',      'June'      =&gt; ' Áù ÔÂ', 
      'July'      =&gt; ' Æß ÔÂ',    'August'    =&gt; ' °Ë ÔÂ',      'September' =&gt; ' ¾Å ÔÂ', 
      'October'   =&gt; ' Ê® ÔÂ',    'November'  =&gt; 'Ê®Ò»ÔÂ',      'December'  =&gt; 'Ê®¶þÔÂ', 
      'Jan'       =&gt; '£±ÔÂ',      'Feb'       =&gt; '£²ÔÂ',        'Mar'       =&gt; '£³ÔÂ',
      'Apr'       =&gt; '£´ÔÂ',      'May'       =&gt; '£µÔÂ',        'Jun'       =&gt; '£¶ÔÂ',
      'Jul'       =&gt; '£·ÔÂ',      'Aug'       =&gt; '£¸ÔÂ',        'Sep'       =&gt; '£¹ÔÂ', 
      'Oct'       =&gt; '10ÔÂ',      'Nov'       =&gt; '11ÔÂ',        'Dec'       =&gt; '12ÔÂ' 

	);


  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	  if($foo[3]=~(/(.*)at(.*)/))
        { 
          @quux=split(/at/,$foo[3]);
	      $foo[3]=$quux[0];
          $foo[4]=$quux[1]; 
        };
      return "$foo[3]Äê $month{$foo[2]} $foo[1] ÈÕ £¬$wday{$foo[0]} £¬$foo[4]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# cn s-Chinese

sub cn
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...

  %translations =
  (  
     'charset=iso-8859-1'                     =&gt; 'charset=gb2312',
     'Maximal 5 Minute Incoming Traffic'      =&gt; '5·ÖÖÓ×î´óÁ÷ÈëÁ¿',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; '5·ÖÖÓ×î´óÁ÷³öÁ¿',
     'the device'                             =&gt; 'Éè±¸',
     'The statistics were last updated(.*)'   =&gt; 'Í³¼Æ×îºó¸üÐÂÊ±¼ä£º$1',
     ' Average\)&lt;/B&gt;&lt;BR&gt;'                     =&gt; ' Æ½¾ù)&lt;/B&gt;&lt;BR&gt;',
     '&lt;TD ALIGN=right&gt;&lt;SMALL&gt;Average(.*)'     =&gt; '&lt;TD ALIGN=right&gt;&lt;SMALL&gt;Æ½¾ù$1',
     '&lt;TD ALIGN=right&gt;&lt;SMALL&gt;Max(.*)'         =&gt; '&lt;TD ALIGN=right&gt;&lt;SMALL&gt;×î´ó$1',
     '&lt;TD ALIGN=right&gt;&lt;SMALL&gt;Current(.*)'     =&gt; '&lt;TD ALIGN=right&gt;&lt;SMALL&gt;µ±Ç°$1',
     'version'                                =&gt; '°æ±¾',
     '&lt;B&gt;`Daily\' Graph \((.*) Minute'        =&gt; '&lt;B&gt;"Ã¿ÈÕ" Í¼±í ($1 ·ÖÖÓ',
     '&lt;B&gt;`Weekly\' Graph \(30 Minute'         =&gt; '&lt;B&gt;"Ã¿ÖÜ" Í¼±í (30 ·ÖÖÓ' ,
     '&lt;B&gt;`Monthly\' Graph \(2 Hour'           =&gt; '&lt;B&gt;"Ã¿ÔÂ" Í¼±í (2 Ð¡Ê±',
     '&lt;B&gt;`Yearly\' Graph \(1 Day'             =&gt; '&lt;B&gt;"Ã¿Äê" Í¼±í (1 Ìì', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Ã¿ÃëÁ÷Èë $1 Á¿',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Ã¿ÃëÁ÷³ö $1 Á¿',
     'at which time (.*) had been up for(.*)' =&gt; '´ËÊ± $1 ÒÑÔË×÷ÁË£º $2 ',
     '(.+)/s$'                                =&gt; '$1/Ãë',
     '(.+)/min$'                              =&gt; '$1/·Ö',
     '(.+)/h$'                                =&gt; '$1/Ê±',
     # 'Bits'                                 =&gt; 'Bits',
     # 'Bytes'                                =&gt; 'Bytes'
     '&amp;nbsp;In:&lt;/FONT&gt;'                       =&gt; '&amp;nbsp;Á÷Èë£º&lt;/FONT&gt;',
     '&amp;nbsp;Out:&lt;/FONT&gt;'                      =&gt; '&amp;nbsp;Á÷³ö£º&lt;/FONT&gt;',
     '&amp;nbsp;Percentage&lt;/FONT&gt;'                =&gt; '&amp;nbsp;°Ù·Ö±È£º&lt;/FONT&gt;',
     'Ported to OpenVMS Alpha by'             =&gt; 'ÒÆÖ²µ½ OpenVMS Õß', 
     'Ported to WindowsNT by'                 =&gt; 'ÒÆÖ²µ½ WindowsNT Õß',
     'and'                                    =&gt; 'ºÍ',
     '^GREEN'                                 =&gt; 'ÂÌ',
     'BLUE'                                   =&gt; 'À¶',
     'DARK GREEN'                             =&gt; 'Ä«ÂÌ',
     'MAGENTA'                                =&gt; '×Ï',
     'AMBER'                                  =&gt; 'çúçêÉ«'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'ÐÇÆÚÌì',    'Sun' =&gt; 'ÈÕ',
      'Monday'    =&gt; 'ÐÇÆÚÒ»',    'Mon' =&gt; 'Ò»',
      'Tuesday'   =&gt; 'ÐÇÆÚ¶þ',    'Tue' =&gt; '¶þ',
      'Wednesday' =&gt; 'ÐÇÆÚÈý',    'Wed' =&gt; 'Èý',
      'Thursday'  =&gt; 'ÐÇÆÚËÄ',    'Thu' =&gt; 'ËÄ',
      'Friday'    =&gt; 'ÐÇÆÚÎå',    'Fri' =&gt; 'Îå',
      'Saturday'  =&gt; 'ÐÇÆÚÁù',    'Sat' =&gt; 'Áù' 

    );

%month = 
    (
      'January'   =&gt; ' Ò» ÔÂ',    'February'  =&gt; ' ¶þ ÔÂ',      'March'     =&gt; ' Èý ÔÂ',
      'April'     =&gt; ' ËÄ ÔÂ',    'May'       =&gt; ' Îå ÔÂ',      'June'      =&gt; ' Áù ÔÂ', 
      'July'      =&gt; ' Æß ÔÂ',    'August'    =&gt; ' °Ë ÔÂ',      'September' =&gt; ' ¾Å ÔÂ', 
      'October'   =&gt; ' Ê® ÔÂ',    'November'  =&gt; 'Ê®Ò»ÔÂ',      'December'  =&gt; 'Ê®¶þÔÂ', 
      'Jan'       =&gt; '£±ÔÂ',      'Feb'       =&gt; '£²ÔÂ',        'Mar'       =&gt; '£³ÔÂ',
      'Apr'       =&gt; '£´ÔÂ',      'May'       =&gt; '£µÔÂ',        'Jun'       =&gt; '£¶ÔÂ',
      'Jul'       =&gt; '£·ÔÂ',      'Aug'       =&gt; '£¸ÔÂ',        'Sep'       =&gt; '£¹ÔÂ', 
      'Oct'       =&gt; '£±£°ÔÂ',      'Nov'       =&gt; '£±£±ÔÂ',        'Dec'       =&gt; '£±£²ÔÂ' 

	);


  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	  if($foo[3]=~(/(.*)at(.*)/))
        { 
          @quux=split(/at/,$foo[3]);
	      $foo[3]=$quux[0];
          $foo[4]=$quux[1]; 
        };
      return "$foo[3]Äê $month{$foo[2]} $foo[1] ÈÕ £¬$wday{$foo[0]} £¬$foo[4]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};

sub croatian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);


  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp


  %translations =
  (  
     'iso-8859-1'                             =&gt; 'iso-8859-2',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maksimalni ulazni promet unutar 5 minuta',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maksimalni izlazni promet unutar 5 minuta',
     'the device'                             =&gt; 'ureðaj',
     'The statistics were last updated(.*)'   =&gt; 'Statistike su zadnji puta izmijenjene $1',
     ' Average\)'                             =&gt; ' prosjeèna vrijednost)',
     'Average'                                =&gt; 'Prosjeèno',
     'Max'                                    =&gt; 'Maksimalno',
     'Current'                                =&gt; 'Trenutno',
     'version'                                =&gt; 'verzija',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Dnevne statistike (svakih $1 minuta',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Tjedne statistike (svakih 30 minuta' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Mjeseène statistike (svakih 2 sata',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Godi¹nje statistike (svaki 1 dan', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Ulazni promet - $1 po sekundi',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Izlazni promet - $1 po sekundi',
     'at which time (.*) had been up for(.*)' =&gt; 'gdje $1 je bio aktivan $2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/g',
     'Bits'                                =&gt; 'Bitova',
     'Bytes'                              =&gt; 'Bajtova',
     'In'                                     =&gt; 'Unutra',
     'Out'                                    =&gt; 'Van',
     'Percentage'                             =&gt; 'Postotak',
     'Ported to OpenVMS Alpha by'             =&gt; 'Port na OpenVMS Alpha od', 
     'Ported to WindowsNT by'                 =&gt; 'Post od WindowsNT od',
     'and'                                    =&gt; 'i',
     '^GREEN'                                  =&gt; 'ZELENA',
     'BLUE'                                   =&gt; 'PLAVA',
     'DARK GREEN'                             =&gt; 'TAMNO ZELENA',
     'MAGENTA'                                =&gt; 'LJUBIÈASTA',
     'AMBER'                                  =&gt; 'AMBER'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Nedjelja',     'Sun' =&gt; 'Ned',
      'Monday'    =&gt; 'Ponedjeljak',  'Mon' =&gt; 'Pon',
      'Tuesday'   =&gt; 'Utorak',        'Tue' =&gt; 'Uto',
      'Wednesday' =&gt; 'Srijeda',         'Wed' =&gt; 'Sri',
      'Thursday'  =&gt; 'Èetvrtak',      'Thu' =&gt; 'Èet',
      'Friday'    =&gt; 'Petak',        'Fri' =&gt; 'Pet',
      'Saturday'  =&gt; 'Subota',        'Sat' =&gt; 'Sub' 

    );

%month = 
    (
      'January'   =&gt; 'Sijeèanj',     'February'  =&gt; 'Veljaèa',      'March'     =&gt; 'O¾ujak',
      'Jan'       =&gt; 'Sij',          'Feb'       =&gt; 'Vel',         'Mar'       =&gt; 'O¾u',
      'April'     =&gt; 'Travanj',     'May'       =&gt; 'Svibanj',        'June'      =&gt; 'Lipanj', 
      'Apr'       =&gt; 'Tra',          'May'       =&gt; 'Svi',         'Jun'       =&gt; 'Lip',
      'July'      =&gt; 'Srpanj',       'August'    =&gt; 'Kolovoz',    'September' =&gt; 'Rujan', 
      'Jul'       =&gt; 'Srp',          'Aug'       =&gt; 'Kol',         'Sep'       =&gt; 'Ruj', 
      'October'   =&gt; 'Listopad', 'November'  =&gt; 'Studeni',   'December'  =&gt; 'Prosinac', 
      'Oct'       =&gt; 'Lis',          'Nov'       =&gt; 'Stu',         'Dec'       =&gt; 'Pro' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." godine"." u".$quux[1]; 
      };
      return "$wday{$foo[0]} dana $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Czech

sub czech
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'windows-1250',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maximální 5 minutový pøíchozí tok',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maximální 5 minutový odchozí tok',
     'the device'                             =&gt; 'zaøízení',
     'The statistics were last updated(.*)'   =&gt; 'Poslední aktualizace statistiky:$1',
     ' Average\)'                             =&gt; ' prùmìr)',
     'Average'                                =&gt; 'Prùm.',
     'Max'                                    =&gt; 'Max.',
     'Current'                                =&gt; 'Akt.',
     'version'                                =&gt; 'verze',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Denní graf ($1 minutový',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Týdenní graf (30 minutový' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Mìsíèní graf (2 hodinový',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Roèní graf (1 denní', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Pøíchozí tok v $1 za sec.',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Odchozí tok v $1 za sec.',
     'at which time (.*) had been up for(.*)' =&gt; 'od posledního restartu $1 ubìhlo: $2',
     #'([kMG]?)([bB])/s'                       =&gt; '\$1\$2/s',
     #'([kMG]?)([bB])/min'     	      	      =&gt; '\$1\$2/min',
     #'([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
     'Bits'                                   =&gt; 'bitech',
     'Bytes'                                  =&gt; 'bajtech',
     #'&amp;nbsp;In:&lt;/FONT&gt;'                       =&gt; '&amp;nbsp;In:&lt;/FONT&gt;',
     #'&amp;nbsp;Out:&lt;/FONT&gt;'                      =&gt; '&amp;nbsp;Out:&lt;/FONT&gt;',
     'Percentage'                             =&gt; 'Proc.',
     'Ported to OpenVMS Alpha by'             =&gt; 'Na OpenVMS portoval', 
     'Ported to WindowsNT by'                 =&gt; 'Na WindowsNT portoval',
     'and'                                    =&gt; 'a',
     '^GREEN'                                  =&gt; 'Zelená',
     'BLUE'                                   =&gt; 'Modrá',
     'DARK GREEN'                             =&gt; 'Tmavì zelená',
     'MAGENTA'                                =&gt; 'Fialová',
     'AMBER'                                  =&gt; 'Žlutá'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Nedìle',		'Sun' =&gt; 'Ne',
      'Monday'    =&gt; 'Pondìli',		'Mon' =&gt; 'Po',
      'Tuesday'   =&gt; 'Úterý',		'Tue' =&gt; 'Út',
      'Wednesday' =&gt; 'Støeda',		'Wed' =&gt; 'St',
      'Thursday'  =&gt; 'Ètvrtek',		'Thu' =&gt; 'Èt',
      'Friday'    =&gt; 'Pátek',		'Fri' =&gt; 'Pá',
      'Saturday'  =&gt; 'Sobota',		'Sat' =&gt; 'So' 
    );

%month = 
    (
 'January' =&gt; 'Leden',   'February' =&gt; 'Únor',      'March'     =&gt; 'Bøezen',
 'Jan'     =&gt; 'Leden',   'Feb'      =&gt; 'Únor',      'Mar'       =&gt; 'Bøezen',
 'April'   =&gt; 'Duben',   'May'      =&gt; 'Kvìten',    'June'      =&gt; 'Èerven',
 'Apr'     =&gt; 'Duben',   'May'      =&gt; 'Kvìten',    'Jun'       =&gt; 'Èerven',
 'July'    =&gt; 'Èervenec','August'   =&gt; 'Srpen',     'September' =&gt; 'Záøí',
 'Jul'     =&gt; 'Èervenec','Aug'      =&gt; 'Srpen',     'Sep'       =&gt; 'Záøí', 
 'October' =&gt; 'Øíjen',   'November' =&gt; 'Listopad',  'December'  =&gt; 'Prosinec', 
 'Oct'     =&gt; 'Øíjen',   'Nov'      =&gt; 'Listopad',  'Dec'       =&gt; 'Prosinec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0].",".$quux[1]." hod."; 
      };
      return "$wday{$foo[0]} $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings

  return $string;

}
#
# Danish

sub danish
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maksimal indg&amp;aring;ende trafik i 5 minutter',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maksimal udg&amp;aring;ende trafik i 5 minutter',
     'the device'                             =&gt; 'enheden',
     'The statistics were last updated(.*)'   =&gt; 'Statistikken blev sidst opdateret$1',
     ' Average\)'                             =&gt; ' Middel)',
     'Average'                                =&gt; 'Middel',
     'Max'                                    =&gt; 'Max',
     'Current'                                =&gt; 'Nu',
     'version'                                =&gt; 'version',
     '`Daily\' Graph \((.*) Minute'           =&gt; '`Daglig\' graf ($1 minuts',
     '`Weekly\' Graph \(30 Minute'            =&gt; '`Ugentlig\' graf (30 minuts' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '`M&amp;aring;nedlig\' graf (2 times',
     '`Yearly\' Graph \(1 Day'                =&gt; '`&amp;Aring;rlig\' graf (1 dags', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Indg&amp;aring;ende trafik i $1 per sekund',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Udg&amp;aring;ende trafik i $1 per sekund',
     'at which time (.*) had been up for(.*)' =&gt; 'hvor $1 havde v&amp;aelig;ret oppe i$2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                              =&gt; 'Bytes'
     'In'                                     =&gt; 'Ind',
     'Out'                                    =&gt; 'Ud',
     'Percentage'                             =&gt; 'Procent',
     'Ported to OpenVMS Alpha by'             =&gt; 'Port til OpenVMS af', 
     'Ported to WindowsNT by'                 =&gt; 'Port til WindowsNT af',
     'and'                                    =&gt; 'og',
     '^GREEN'                                  =&gt; 'GR&amp;Oslash;N',
     'BLUE'                                   =&gt; 'BL&amp;Aring;',
     'DARK GREEN'                             =&gt; 'M&amp;Oslash;RKEGR&amp;Oslash;N',
     'MAGENTA'                                =&gt; 'LYSLILLA',
     'AMBER'                                  =&gt; 'RAV'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'S&amp;oslash;ndag',    'Sun' =&gt; 'S&amp;oslash;n',
      'Monday'    =&gt; 'Mandag',           'Mon' =&gt; 'Man',
      'Tuesday'   =&gt; 'Tirsdag',          'Tue' =&gt; 'Tir',
      'Wednesday' =&gt; 'Onsdag',           'Wed' =&gt; 'Ons',
      'Thursday'  =&gt; 'Torsdag',          'Thu' =&gt; 'Tor',
      'Friday'    =&gt; 'Fredag',           'Fri' =&gt; 'Fre',
      'Saturday'  =&gt; 'L&amp;oslash;rdag',    'Sat' =&gt; 'L&amp;oslash;r' 

    );

%month = 
    (
      'January'   =&gt; 'Januar',    'February'  =&gt; 'Februar' ,    'March'     =&gt; 'Marts',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Feb',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'April',     'May'       =&gt; 'Maj',         'June'      =&gt; 'Juni', 
      'Apr'       =&gt; 'Apr',       'May'       =&gt; 'Maj',         'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Juli',      'August'    =&gt; 'August',      'September' =&gt; 'September', 
      'Jul'       =&gt; 'Jul',       'Aug'       =&gt; 'Aug',         'Sep'       =&gt; 'Sep', 
      'October'   =&gt; 'Oktober',   'November'  =&gt; 'November',    'December'  =&gt; 'December', 
      'Oct'       =&gt; 'Okt',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." kl.".$quux[1]; 
      };
      return "$wday{$foo[0]} den $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

  };

# Dutch

sub dutch
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maximaal inkomend verkeer per 5 minuten',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maximaal uitgaand verkeer per 5 minuten',
     'the device'                             =&gt; 'het apparaat',
     'The statistics were last updated(.*)'   =&gt; 'Statistieken voor het laatst bijgewerkt op$1',
     ' Average\)'                             =&gt; ' gemiddeld)',
     'Average'                                =&gt; 'Gemiddeld',
     'Max'                                    =&gt; 'Max',
     'Current'                                =&gt; 'Actueel',
     'version'                                =&gt; 'versie',
     '`Daily\' Graph \((.*) Minute'           =&gt; '`Dagelijkse\' grafiek ($1 minuten',
     '`Weekly\' Graph \(30 Minute'            =&gt; '`Wekelijkse\' grafiek (30 minuten' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '`Maandelijkse\' grafiek (2 uur',
     '`Yearly\' Graph \(1 Day'                =&gt; '`Jaarlijkse\' grafiek (1 dag', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Inkomend verkeer in $1 per seconde',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Uitgaand verkeer in $1 per seconde',
     'at which time (.*) had been up for(.*)' =&gt; 'op het moment dat $1 reeds actief was voor$2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/u',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                              =&gt; 'Bytes'
     # '&amp;nbsp;In:&lt;/FONT&gt;'                      =&gt; '&amp;nbsp;In:&lt;/FONT&gt;',
     'Out'                                    =&gt; 'Uit',
     'Percentage'                             =&gt; 'Procent',
     'Ported to OpenVMS Alpha by'             =&gt; 'Ported naar OpenVMS door', 
     'Ported to WindowsNT by'                 =&gt; 'Ported naar WindowsNT door',
     'and'                                    =&gt; 'en',
     'DARK GREEN'                             =&gt; 'DONKER GROEN',
     '^GREEN'                                  =&gt; 'GROEN',
     'BLUE'                                   =&gt; 'BLAUW',
     'MAGENTA'                                =&gt; 'LILA',
     'AMBER'                                  =&gt; 'AMBER'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'zondag',           'Sun' =&gt; 'zon',
      'Monday'    =&gt; 'maandag',          'Mon' =&gt; 'maa',
      'Tuesday'   =&gt; 'dinsdag',          'Tue' =&gt; 'din',
      'Wednesday' =&gt; 'woensdag',         'Wed' =&gt; 'woe',
      'Thursday'  =&gt; 'donderdag',        'Thu' =&gt; 'don',
      'Friday'    =&gt; 'vrijdag',          'Fri' =&gt; 'vri',
      'Saturday'  =&gt; 'zaterdag',         'Sat' =&gt; 'zat' 

    );

%month = 
    (
      'January'   =&gt; 'januari',   'February'  =&gt; 'februari',    'March'     =&gt; 'maart',
      'Jan'       =&gt; 'jan',       'Feb'       =&gt; 'feb',         'Mar'       =&gt; 'mrt',
      'April'     =&gt; 'april',     'May'       =&gt; 'mei',         'June'      =&gt; 'juni', 
      'Apr'       =&gt; 'apr',       'May'       =&gt; 'mei',         'Jun'       =&gt; 'jun',
      'July'      =&gt; 'juli',      'August'    =&gt; 'augustus',    'September' =&gt; 'september', 
      'Jul'       =&gt; 'jul',       'Aug'       =&gt; 'aug',         'Sep'       =&gt; 'sep', 
      'October'   =&gt; 'oktober',   'November'  =&gt; 'november',    'December'  =&gt; 'december', 
      'Oct'       =&gt; 'okt',       'Nov'       =&gt; 'nov',         'Dec'       =&gt; 'dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
        if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." om".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Estonian

sub estonian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; '5 minuti maksimaalne sisenev liiklus',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; '5 minuti maksimaalne v&amp;auml;ljuv liiklus',
     'the device'                             =&gt; 'seade',
     'The statistics were last updated(.*)'   =&gt; 'Statistikat uuendati viimati$1',
     ' Average\)'                             =&gt; ' keskmine)',
     'Average'                                =&gt; 'Keskmine',
     #'Max'                                    =&gt; 'Max',
     'Current'                                =&gt; 'Hetkel',
     'version'                                =&gt; 'versioon',
     '`Daily\' Graph \((.*) Minute'           =&gt; '`P&amp;auml;evane\' graafik ($1 minuti',
     '`Weekly\' Graph \(30 Minute'            =&gt; '`N&amp;auml;dala\' graafik (30 minuti' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '`Kuu \' graafik (2 tunni',
     '`Yearly\' Graph \(1 Day'                =&gt; '`Aasta\' graafik (1 p&amp;auml;eva', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Sisenev liiklus $1 sekundi kohta',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'V&amp;auml;ljuv liiklus $1 sekundi kohta',
     'at which time (.*) had been up for(.*)' =&gt; 'kui $1 on katkematult t&amp;ouml;&amp;ouml;tanud$2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
      'Bits'                                =&gt; 'bitti',
      'Bytes'                              =&gt; 'baiti',
     'In'                                     =&gt; 'sisse',
     'Out'                                    =&gt; 'v&amp;auml;lja',
     'Percentage'                             =&gt; 'protsent',
     'Ported to OpenVMS Alpha by'             =&gt; 'portis OpenVMS-le:', 
     'Ported to WindowsNT by'                 =&gt; 'portis WindowsNT-le:',
     'and'                                    =&gt; 'ja',
     '^GREEN'                                  =&gt; 'ROHELINE',
     'BLUE'                                   =&gt; 'SININE',
     'DARK GREEN'                             =&gt; 'TUMEROHELINE',
     'MAGENTA'                                =&gt; 'LILLA',
     'AMBER'                                  =&gt; 'HELEROHELINE'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'p&amp;uuml;hap&amp;auml;ev',    'Sun' =&gt; 'P',
      'Monday'    =&gt; 'esmasp&amp;auml;ev',           'Mon' =&gt; 'E',
      'Tuesday'   =&gt; 'teisip&amp;auml;ev',          'Tue' =&gt; 'T',
      'Wednesday' =&gt; 'kolmap&amp;auml;ev',           'Wed' =&gt; 'K',
      'Thursday'  =&gt; 'neljap&amp;auml;ev',          'Thu' =&gt; 'N',
      'Friday'    =&gt; 'reede',           'Fri' =&gt; 'R',
      'Saturday'  =&gt; 'laup&amp;auml;ev',    'Sat' =&gt; 'L' 

    );

%month = 
    (
      'January'   =&gt; 'jaanuar',    'February'  =&gt; 'veebruar' ,    'March'     =&gt; 'm&amp;auml;rts',
      'Jan'       =&gt; 'jaan',       'Feb'       =&gt; 'veebr',         'Mar'       =&gt; 'm&amp;auml;rts',
      'April'     =&gt; 'aprill',     'May'       =&gt; 'mai',         'June'      =&gt; 'juuni', 
      'Apr'       =&gt; 'aprill',       'May'       =&gt; 'mai',         'Jun'       =&gt; 'juuni',
      'July'      =&gt; 'juuli',      'August'    =&gt; 'august',      'September' =&gt; 'september', 
      'Jul'       =&gt; 'juuli',       'Aug'       =&gt; 'aug',         'Sep'       =&gt; 'sept', 
      'October'   =&gt; 'oktoober',   'November'  =&gt; 'november',    'December'  =&gt; 'detsember', 
      'Oct'       =&gt; 'okt',       'Nov'       =&gt; 'nov',         'Dec'       =&gt; 'dets' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." kl.".$quux[1]; 
      };
      return "$wday{$foo[0]}, $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

  };

# eucjp

sub eucjp
{
  my $string = shift;
  return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     '^iso-8859-1'                            =&gt; 'euc-jp',
     '^Maximal 5 Minute Incoming Traffic'     =&gt; 'ºÇÂç5Ê¬¼õ¿®ÎÌ',
     '^Maximal 5 Minute Outgoing Traffic'     =&gt; 'ºÇÂç5Ê¬Á÷¿®ÎÌ',
     '^the device'                            =&gt; '¥Ç¥Ð¥¤¥¹',
     '^The statistics were last updated (.*)' =&gt; '¹¹¿·Æü»þ $1',
     '^Average\)'                             =&gt; 'Ê¿¶Ñ)',
     '^Average$'                              =&gt; 'Ê¿¶Ñ',
     '^Max$'                                  =&gt; 'ºÇÂç',
     '^Current'                               =&gt; 'ºÇ¿·',
     '^`Daily\' Graph \((.*) Minute'          =&gt; 'Æü¥°¥é¥Õ($1Ê¬´Ö',
     '^`Weekly\' Graph \(30 Minute'           =&gt; '½µ¥°¥é¥Õ(30Ê¬´Ö',
     '^`Monthly\' Graph \(2 Hour'             =&gt; '·î¥°¥é¥Õ(2»þ´Ö',
     '^`Yearly\' Graph \(1 Day'               =&gt; 'Ç¯¥°¥é¥Õ(1Æü',
     '^Incoming Traffic in (\S+) per Second'  =&gt; 'ËèÉÃ¤Î¼õ¿®$1¿ô',
     '^Incoming Traffic in (\S+) per Minute'  =&gt; 'ËèÊ¬¤Î¼õ¿®$1¿ô',
     '^Incoming Traffic in (\S+) per Hour'    =&gt; 'Ëè»þ¤Î¼õ¿®$1¿ô',
     '^Outgoing Traffic in (\S+) per Second'  =&gt; 'ËèÉÃ¤ÎÁ÷¿®$1¿ô',
     '^Outgoing Traffic in (\S+) per Minute'  =&gt; 'ËèÊ¬¤ÎÁ÷¿®$1¿ô',
     '^Outgoing Traffic in (\S+) per Hour'    =&gt; 'Ëè»þ¤ÎÁ÷¿®$1¿ô',
     '^at which time (.*) had been up for (.*)' =&gt; '$1¤Î²ÔÆ¯»þ´Ö $2',
     '^Average max 5 min values for `Daily\' Graph \((.*) Minute interval\):' =&gt; 'Æü¥°¥é¥Õ¤Ç¤ÎºÇÂç5Ê¬ÃÍ¤ÎÊ¿¶Ñ($1Ê¬´Ö³Ö):',
     '^Average max 5 min values for `Weekly\' Graph \(30 Minute interval\):' =&gt; '½µ¥°¥é¥Õ¤Ç¤ÎºÇÂç5Ê¬ÃÍ¤ÎÊ¿¶Ñ(30Ê¬´Ö³Ö):',
     '^Average max 5 min values for `Monthly\' Graph \(2 Hour interval\):' =&gt; '·î¥°¥é¥Õ¤Ç¤ÎºÇÂç5Ê¬ÃÍ¤ÎÊ¿¶Ñ(2»þ´Ö´Ö³Ö):',
     '^Average max 5 min values for `Yearly\' Graph \(1 Day interval\):' =&gt; 'Ç¯¥°¥é¥Õ¤Ç¤ÎºÇÂç5Ê¬ÃÍ¤ÎÊ¿¶Ñ(1Æü´Ö³Ö):',
     #'^([kMG]?)([bB])/s'                      =&gt; '$1$2/ÉÃ',
     #'^([kMG]?)([bB])/min'                    =&gt; '$1$2/Ê¬',
     #'^([kMG]?)([bB])/h'                      =&gt; '$1$2/»þ',
     '^Bits$'                                 =&gt; '¥Ó¥Ã¥È',
     '^Bytes$'                                =&gt; '¥Ð¥¤¥È',
     '^In$'                                   =&gt; '¼õ¿®',
     '^Out$'                                  =&gt; 'Á÷¿®',
     '^Percentage'                            =&gt; 'ÈæÎ¨',
     '^Ported to OpenVMS Alpha by'            =&gt; 'OpenVMS Alpha¤Ø¤Î°Ü¿¢',
     '^Ported to WindowsNT by'                =&gt; 'WindowsNT¤Ø¤Î°Ü¿¢',
     #'^and'                                   =&gt; 'and',
     '^GREEN'                                 =&gt; 'ÎÐ',
     '^BLUE'                                  =&gt; 'ÀÄ',
     '^DARK GREEN'                            =&gt; '¿¼ÎÐ',
     '^MAGENTA'                               =&gt; '¥Þ¥¼¥ó¥¿',
     '^AMBER'                                 =&gt; 'àèàá'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; '(Æü)',
      'Monday'    =&gt; '(·î)',
      'Tuesday'   =&gt; '(²Ð)',
      'Wednesday' =&gt; '(¿å)',
      'Thursday'  =&gt; '(ÌÚ)',
      'Friday'    =&gt; '(¶â)',
      'Saturday'  =&gt; '(ÅÚ)',
    );

%month = 
    (
      'January'   =&gt; '1·î',    'February' =&gt; '2·î',
      'March'     =&gt; '3·î',    'April'    =&gt; '4·î',
      'May'       =&gt; '5·î',    'June'     =&gt; '6·î',
      'July'      =&gt; '7·î',    'August'   =&gt; '8·î',
      'September' =&gt; '9·î',    'October'  =&gt; '10·î',
      'November'  =&gt; '11·î',   'December' =&gt; '12·î',
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)\s+(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~/at/)
      { 
        @quux=split(/\s+at\s+/,$foo[3]);
      }
	else
      { 
        @quux=split(/ /,$foo[3],2);
      };
      return "$quux[0]Ç¯$month{$foo[2]}$foo[1]Æü$wday{$foo[0]} $quux[1]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Finnish

sub finnish
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Tulevan liikenteen maksimi 5 minuutin aikana',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'L&amp;auml;htev&amp;auml;n liikenteen maksimi 5 minuutin aikana',
     'the device'                             =&gt; 'laite',
     'The statistics were last updated(.*)'   =&gt; 'Tiedot p&amp;auml;ivitetty viimeksi $1',
     ' Average\)'                             =&gt; '',
     'Average'                                =&gt; 'Keskim&amp;auml;&amp;auml;rin',
     'Max'                                    =&gt; 'Maksimi',
     'Current'                                =&gt; 'T&amp;auml;ll&amp;auml; hetkell&amp;auml;',
     'version'                                =&gt; 'versio',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'P&amp;auml;iv&amp;auml;raportti (skaala $1 minuutti(a))',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Viikkoraportti (skaala 30 minuuttia)' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Kuukausiraportti (skaala 2 tuntia)',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Vuosiraportti (skaala 1 vuorokausi)', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Tuleva liikenne $1 sekunnissa',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'L&amp;auml;htev&amp;auml; liikenne $1 sekunnissa',
     'Incoming Traffic in (\S+) per Minute'   =&gt; 'Tuleva liikenne $1 minuutissa',
     'Outgoing Traffic in (\S+) per Minute'   =&gt; 'L&amp;auml;htev&amp;auml; liikenne $1 minuutissa',
     'Incoming Traffic in (\S+) per Hour'     =&gt; 'Tuleva liikenne $1 tunnissa',
     'Outgoing Traffic in (\S+) per Hour'     =&gt; 'L&amp;auml;htev&amp;auml; liikenne $1 tunnissa',
     'at which time (.*) had been up for(.*)' =&gt; 'jolloin $1 on toiminut yht&amp;auml;jaksoisesti $2',
     '(\S+) per minute'			      =&gt; '$1 minuutissa',
     '(\S+) per hour'			      =&gt; '$1 tunnissa',    
     '(.+)/s$'                                =&gt; '$1/s',
     # '(.+)/min'                             =&gt; '$1/min',
     #'(.+)/h$'                               =&gt; '$1/h',
     #'([kMG]?)([bB])/s'                      =&gt; '$1$2/s',
     #'([kMG]?)([bB])/min'                    =&gt; '$1$2/min',
     #'([kMG]?)([bB])/h'                      =&gt; '$1$2/h',
     'Bits'                                   =&gt; 'bitti&amp;auml;',
     'Bytes'                                  =&gt; 'tavua',
     'In'                                     =&gt; 'Tuleva',
     'Out'                                    =&gt; 'L&amp;auml;htev&amp;auml;',
     'Percentage'                             =&gt; 'Prosenttia',
     'Ported to OpenVMS Alpha by'             =&gt; 'OpenVMS -j&amp;auml;rjestelm&amp;auml;lle sovittanut', 
     'Ported to WindowsNT by'                 =&gt; 'WindowsNT -j&amp;auml;rjestelm&amp;auml;lle sovittanut',
     'and'                                    =&gt; 'ja',
     '^GREEN'                                 =&gt; 'VIHRE&amp;Auml;',
     'BLUE'                                   =&gt; 'SININEN',
     'DARK GREEN'                             =&gt; 'TUMMANVIHRE&amp;Auml;',
     'MAGENTA'                                =&gt; 'PINKKI',
     'AMBER'                                  =&gt; 'PUNAINEN',
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Sunnuntai',   'Sun' =&gt; 'Su',
      'Monday'    =&gt; 'Maanantai',   'Mon' =&gt; 'Ma',
      'Tuesday'   =&gt; 'Tiistai',     'Tue' =&gt; 'Ti',
      'Wednesday' =&gt; 'Keskiviikko', 'Wed' =&gt; 'Ke',
      'Thursday'  =&gt; 'Torstai',     'Thu' =&gt; 'To',
      'Friday'    =&gt; 'Perjantai',   'Fri' =&gt; 'Pe',
      'Saturday'  =&gt; 'Lauantai',    'Sat' =&gt; 'La' 
    );

%month = 
    (
      'January'   =&gt; 'Tammi',      'February'  =&gt; 'Helmi' , 'March'     =&gt; 'Maalis',
      'Jan'       =&gt; 'Tam',        'Feb'       =&gt; 'Hel',    'Mar'       =&gt; 'Maa',
      'April'     =&gt; 'Huhti',      'May'       =&gt; 'Touko',  'June'      =&gt; 'Kes&amp;auml;', 
      'Apr'       =&gt; 'Huh',        'May'       =&gt; 'Tou',    'Jun'       =&gt; 'Kes',
      'July'      =&gt; 'Hein&amp;auml;', 'August'    =&gt; 'Elo',    'September' =&gt; 'Syys', 
      'Jul'       =&gt; 'Hei',        'Aug'       =&gt; 'Elo',    'Sep'       =&gt; 'Syy', 
      'October'   =&gt; 'Loka',       'November'  =&gt; 'Marras', 'December'  =&gt; 'Joulu', 
      'Oct'       =&gt; 'Lok',        'Nov'       =&gt; 'Mar',    'Dec'       =&gt; 'Kou' 
    );

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if( $wday{$foo[0]} &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." kello ".$quux[1]; 
      };
      return "$wday{$foo[0]}, $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};



# French

sub french
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Trafic maximal en entr&amp;eacute;e sur 5 minutes',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Trafic maximal en sortie sur 5 minutes',
     'the device'                             =&gt; 'le mat&amp;eacute;riel',
     'The statistics were last updated(.*)'   =&gt; 'Les statistiques ont &amp;eacute;t&amp;eacute; mises &amp;agrave; jour le $1',
     ' Average\)'                             =&gt; ' Moyenne)',
     'Average'                                =&gt; 'Moyenne',
     '&gt;Max'                                   =&gt; 'Max',
     'Current'                                =&gt; 'Actuel',
     #'version'                                =&gt; 'version',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Graphique quotidien (sur $1 minutes :',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Graphique hebdomadaire (sur 30 minutes :' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Graphique mensuel  (sur 2 heures :',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Graphique annuel (sur 1 jour :', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Trafic d\'entr&amp;eacute;e en $1 par seconde',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Trafic de sortie en $1 par seconde',
     'at which time (.*) had been up for(.*)' =&gt; '$1 &amp;eacute;tait alors en marche depuis $2',
     # '([kMG]?)([bB])/s'                      =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'                    =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     # 'Bits'                                  =&gt; 'Bits',
     # 'Bytes'                                 =&gt; 'Bytes'
     'In'                                     =&gt; 'Entr&amp;eacute;e',
     'Out'                                    =&gt; 'Sortie',
     'Percentage'                             =&gt; 'Pourcentage',
     'Ported to OpenVMS Alpha by'             =&gt; 'Port&amp;eacute; sur OpenVMS Alpha par',
     'Ported to WindowsNT by'                 =&gt; 'Port&amp;eacute; sur WindowsNT par',
     'and'                                    =&gt; 'et',
     '^GREEN'                                  =&gt; 'VERT',
     'BLUE'                                   =&gt; 'BLEU',
     'DARK GREEN'                             =&gt; 'VERT SOMBRE',
     'MAGENTA'                                =&gt; 'MAGENTA',
     'AMBER'                                  =&gt; 'AMBRE'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Dimanche',	'Sun' =&gt; 'Dim',
      'Monday'    =&gt; 'Lundi',		'Mon' =&gt; 'Lun',
      'Tuesday'   =&gt; 'Mardi',		'Tue' =&gt; 'Mar',
      'Wednesday' =&gt; 'Mercredi',	'Wed' =&gt; 'Mer',
      'Thursday'  =&gt; 'Jeudi',		'Thu' =&gt; 'Jeu',
      'Friday'    =&gt; 'Vendredi',	'Fri' =&gt; 'Ven',
      'Saturday'  =&gt; 'Samedi',		'Sat' =&gt; 'Sam' 
    );

%month = 
    (
      'January'   =&gt; 'Janvier',   'February'  =&gt; 'F&amp;eacute;vrier' ,    'March'     =&gt; 'Mars',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Fev',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'Avril',     'May'       =&gt; 'Mai',         'June'      =&gt; 'Juin', 
      'Apr'       =&gt; 'Avr',       'May'       =&gt; 'Mai',         'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Juillet',   'August'    =&gt; 'Ao&amp;ucirc;t',        'September' =&gt; 'Septembre', 
      'Jul'       =&gt; 'Jul',       'Aug'       =&gt; 'Aou',         'Sep'       =&gt; 'Sep', 
      'October'   =&gt; 'Octobre',   'November'  =&gt; 'Novembre',    'December'  =&gt; 'D&amp;eacute;cembre', 
      'Oct'       =&gt; 'Oct',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." &amp;agrave; ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." &amp;agrave; $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};


# Galician

sub galician
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Tr&amp;&amp;aacute;fico entrante m&amp;aacute;ximo en 5 minutos',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Tr&amp;&amp;aacute;fico sa&amp;iacute;nte m&amp;aacute;ximo en 5 minutos',
     'the device'                             =&gt; 'o dispositivo',
     'The statistics were last updated(.*)'   =&gt; 'Estas estat&amp;iacute;sticas actualiz&amp;aacute;ronse o $1',
     ' Average\)'                             =&gt; ' de Media)',
     'Average'                                =&gt; 'Media',
     'Max'                                    =&gt; 'M&amp;aacute;x',
     'Current'                                =&gt; 'Actual',
     'version'                                =&gt; 'versi&amp;oacute;n',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Gr&amp;aacute;fica diaria ($1 minutos',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Gr&amp;aacute;fica semanal (30 minutos' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Gr&amp;aacute;fica mensual (2 horas',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Gr&amp;aacute;fica anual (1 d&amp;iacute;a', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Tr&amp;aacute;fico entrante en $1 por segundo',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Tr&amp;aacute;fico sa&amp;iacute;nte en $1 por segundo',
     'at which time (.*) had been up for(.*)' =&gt; 'nese intre $1 levaba prendida $2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                              =&gt; 'Bytes'
     'In'                                     =&gt; 'Entrante',
     'Out'                                    =&gt; 'Sa&amp;iacute;nte',
     'Percentage'                             =&gt; 'Tanto por ciento',
     'Ported to OpenVMS Alpha by'             =&gt; 'Portado a OpenVMS Alpha por', 
     'Ported to WindowsNT by'                 =&gt; 'Portado a Windows NT por',
     'and'                                    =&gt; 'e',
     '^GREEN'                                  =&gt; 'VERDE',
     'BLUE'                                   =&gt; 'AZUL',
     'DARK GREEN'                             =&gt; 'VERDE OSCURO',
     'MAGENTA'                                =&gt; 'ROSA',
     'AMBER'                                  =&gt; 'AMBAR'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Domingo',         'Sun' =&gt; 'Dom',
      'Monday'    =&gt; 'Luns',            'Mon' =&gt; 'Lun',
      'Tuesday'   =&gt; 'Martes',          'Tue' =&gt; 'Mar',
      'Wednesday' =&gt; 'M&amp;eacute;rcores', 'Wed' =&gt; 'm&amp;eacute;r',
      'Thursday'  =&gt; 'Xoves',           'Thu' =&gt; 'Xov',
      'Friday'    =&gt; 'Venres',          'Fri' =&gt; 'Ven',
      'Saturday'  =&gt; 'S&amp;aacute;bado',   'Sat' =&gt; 'S&amp;aacute;b' 

    );

%month = 
    (
      'January'   =&gt; 'Xaneiro',   'February'  =&gt; 'Febreiro' ,   'March'     =&gt; 'Marzo',
      'Jan'       =&gt; 'Xan',       'Feb'       =&gt; 'Feb',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'Abril',     'May'       =&gt; 'Maio',        'June'      =&gt; 'Xu&amp;ntilde;o', 
      'Apr'       =&gt; 'Abr',       'May'       =&gt; 'Mai',         'Jun'       =&gt; 'Xu&amp;ntilde;',
      'July'      =&gt; 'Xullo',     'August'    =&gt; 'Agosto',      'September' =&gt; 'Setembro', 
      'Jul'       =&gt; 'Xul',       'Aug'       =&gt; 'Ago',         'Sep'       =&gt; 'Set', 
      'October'   =&gt; 'Outubro',   'November'  =&gt; 'Novembro',    'December'  =&gt; 'Decembro', 
      'Oct'       =&gt; 'Out',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." &amp;aacute;s ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] de $month{$foo[2]} de $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

  };
# Chinese gb Code

sub gb
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'gb',
     'Maximal 5 Minute Incoming Traffic'      =&gt; '5·ÖÖÓ×î´óµÄÁ÷Á¿',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; '5·ÖÖÓ×î´óµÄÁ÷³öÁ÷Á¿',
     'the device'                             =&gt; 'µ±Ç°Éè±¸',
     'The statistics were last updated(.*)'   =&gt; 'Í³¼ÆÐÅÏ¢¸üÐÂÓÚ: $1',
     ' Average\)'                             =&gt; 'Æ½¾ù)',
     'Average'                                =&gt; 'Æ½¾ù',
     'Max'                                    =&gt; '×î´ó',
     'Current'                                =&gt; 'µ±Ç°',
     'version'                                =&gt; '°æ±¾',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'ÈÕ·ÖÎöÍ¼($1·ÖÖÓ',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'ÖÜ·ÖÎöÍ¼(30·ÖÖÓ'  ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'ÔÂ·ÖÎöÍ¼(2Ð¡Ê±',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Äê·ÖÎöÍ¼(1Ìì',
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Ã¿ÃëµÄÁ÷ÈëÁ÷Á¿(µ¥Î»$1)',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Ã¿ÃëµÄÁ÷³öÁ÷Á¿(µ¥Î»$1)',
     'at which time (.*) had been up for(.*)' =&gt; 'ÆäÊ± $1ÒÑ¾­¸üÐÂ(UPTIME): $2',
     '([kMG]?)([bB])/s'                       =&gt; '$1$2/s',
     '([kMG]?)([bB])/min'                     =&gt; '$1$2/m',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
    # 'Bits'                                   =&gt; 'Bits',
    # 'Bytes'                                  =&gt; 'Bytes'
     'In'                                     =&gt; 'Á÷Èë',
     'Out'                                    =&gt; 'Á÷³ö',
     'Percentage'                             =&gt; '°Ù·Ö±È',
     'Ported to OpenVMS Alpha by'             =&gt; 'OpenVMSµÄ¶Ë¿Ú',
     'Ported to WindowsNT by'                 =&gt; 'WindowsNTµÄ¶Ë¿Ú',
     'and'                                    =&gt; 'Óë',
     '^GREEN'                                 =&gt; 'ÂÌÉ«',
     'BLUE'                                   =&gt; 'À¼É«',
     'DARK GREEN'                             =&gt; '°µÂÌ',
     'MAGENTA'                                =&gt; 'ºÖÉ«',
     'AMBER'                                  =&gt; '×ÏÉ«'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday =
    (
      'Sunday'    =&gt; 'ÖÜÈÕ',        'Sun' =&gt; 'ÖÜÈÕ',
      'Monday'    =&gt; 'ÖÜÒ»',        'Mon' =&gt; 'ÖÜÒ»¤@',
      'Tuesday'   =&gt; 'ÖÜ¶þ',        'Tue' =&gt; 'ÖÜ¶þ¤G',
      'Wednesday' =&gt; 'ÖÜÈý',        'Wed' =&gt; 'ÖÜÈý¤T',
      'Thursday'  =&gt; 'ÖÜËÄ',        'Thu' =&gt; 'ÖÜËÄ¥|',
      'Friday'    =&gt; 'ÖÜÎå',        'Fri' =&gt; 'ÖÜÎå',
      'Saturday'  =&gt; 'ÖÜÁù',        'Sat' =&gt; 'ÖÜÁù'

    );

%month =
    (
      'January'   =&gt; '1ÔÂ',   'February'  =&gt; '2ÔÂ',    'March'     =&gt; '3ÔÂ',
      'Jan'       =&gt; '1ÔÂ',     'Feb'       =&gt; '2ÔÂ',      'Mar'       =&gt; '3ÔÂ',
      'April'     =&gt; '4ÔÂ',   'May'       =&gt; '5ÔÂ',    'June'      =&gt; '6ÔÂ',
      'Apr'       =&gt; '4ÔÂ',     'May'       =&gt; '5ÔÂ',      'Jun'       =&gt; '6ÔÂ',
      'July'      =&gt; '7ÔÂ',   'August'    =&gt; '8ÔÂ',    'September' =&gt; '9ÔÂ',
      'Jul'       =&gt; '7ÔÂ',     'Aug'       =&gt; '8ÔÂ',      'Sep'       =&gt; '9ÔÂ',
      'October'   =&gt; '10ÔÂ',   'November'  =&gt; '11ÔÂ',  'December'  =&gt; '12ÔÂ',
      'Oct'       =&gt; '10ÔÂ',     'Nov'       =&gt; '11ÔÂ',    'Dec'       =&gt; '12ÔÂ'

    );


  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
        @quux=split(/at/,$foo[3]);
	if($foo[3]=~(/(.*)at(.*)/))
      { 
         $foo[3]=$quux[0];
         $foo[4]=$quux[1];
      };
       return "$foo[3]Äê $month{$foo[2]} $foo[1]ÈÕ, $wday{$foo[0]}, $foo[4]";
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Chinese gb2312 Code

sub gb2312
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'gb2312',
     'Maximal 5 Minute Incoming Traffic'      =&gt; '5·ÖÖÓ×î´óÁ÷ÈëÁ¿',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; '5·ÖÖÓ×î´óÁ÷³öÁ¿',
     'the device'                             =&gt; '×°ÖÃ',
     'The statistics were last updated(.*)'   =&gt; 'ÉÏ´ÎÍ³¼Æ¸üÐÂÊ±¼ä: $1',
     ' Average\)'                             =&gt; ' Æ½¾ù)',
     'Average'                                =&gt; 'Æ½¾ù',
     'Max'                                    =&gt; '×î´ó',
     'Current'                                =&gt; 'Ä¿Ç°',
     'version'                                =&gt; '°æ±¾',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Ã¿ÈÕ Í¼±í ($1 ·ÖÖÓ',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Ã¿ÖÜ Í¼±í (30 ·ÖÖÓ' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Ã¿ÔÂ Í¼±í (2 Ð¡Ê±',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Ã¿Äê Í¼±í (1 Ìì',
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Ã¿ÃëÁ÷ÈëÁ¿ (µ¥Î» $1)',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Ã¿ÃëÁ÷³öÁ¿ (µ¥Î» $1)',
     'at which time (.*) had been up for(.*)' =&gt; 'Éè±¸Ãû³Æ $1£¬ÒÑÔË×÷Ê±¼ä(UPTIME): $2',
     '([kMG]?)([bB])/s'                       =&gt; '\$1\$2/Ãë',
     '([kMG]?)([bB])/min'                     =&gt; '\$1\$2/·Ö',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/Ê±',
    # 'Bits'                                   =&gt; 'Bits',
    # 'Bytes'                                  =&gt; 'Bytes'
     'In'                                     =&gt; 'Á÷Èë',
     'Out'                                    =&gt; 'Á÷³ö',
     'Percentage'                             =&gt; '°Ù·Ö±È',
     'Ported to OpenVMS Alpha by'             =&gt; 'ÒÆÖ²µ½ OpenVM Alpha ×÷Õß',
     'Ported to WindowsNT by'                 =&gt; 'ÒÆÖ²µ½ WindowsNT ×÷Õß',
     'and'                                    =&gt; '¼°',
     '^GREEN'                                 =&gt; 'ÂÌÉ«',
     'BLUE'                                   =&gt; 'À¶É«',
     'DARK GREEN'                             =&gt; 'Ä«ÂÌÉ«',
     'MAGENTA'                                =&gt; '×ÏÉ«',
     'AMBER'                                  =&gt; 'çúçêÉ«'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday =
    (
      'Sunday'    =&gt; 'ÐÇÆÚÌì',        'Sun' =&gt; 'ÈÕ',
      'Monday'    =&gt; 'ÐÇÆÚÒ»',        'Mon' =&gt; 'Ò»',
      'Tuesday'   =&gt; 'ÐÇÆÚ¶þ',        'Tue' =&gt; '¶þ',
      'Wednesday' =&gt; 'ÐÇÆÚÈý',        'Wed' =&gt; 'Èý',
      'Thursday'  =&gt; 'ÐÇÆÚËÄ',        'Thu' =&gt; 'ËÄ',
      'Friday'    =&gt; 'ÐÇÆÚÎå',        'Fri' =&gt; 'Îå',
      'Saturday'  =&gt; 'ÐÇÆÚÁù',        'Sat' =&gt; 'Áù'

    );

%month =
    (
      'January'   =&gt; 'Ò»ÔÂ',   'February'  =&gt; '¶þÔÂ',    'March'     =&gt; 'ÈýÔÂ',
      'Jan'       =&gt; 'Ò»',     'Feb'       =&gt; '¶þ',      'Mar'       =&gt; 'Èý',
      'April'     =&gt; 'ËÄÔÂ',   'May'       =&gt; 'ÎåÔÂ',    'June'      =&gt; 'ÁùÔÂ',
      'Apr'       =&gt; 'ËÄ',     'May'       =&gt; 'Îå',      'Jun'       =&gt; 'Áù',
      'July'      =&gt; 'ÆßÔÂ',   'August'    =&gt; '°ËÔÂ',    'September' =&gt; '¾ÅÔÂ',
      'Jul'       =&gt; 'Æß',     'Aug'       =&gt; '°Ë',      'Sep'       =&gt; '¾Å',
      'October'   =&gt; 'Ê®ÔÂ',   'November'  =&gt; 'Ê®Ò»ÔÂ',  'December'  =&gt; 'Ê®¶þÔÂ',
      'Oct'       =&gt; 'Ê®',     'Nov'       =&gt; 'Ê®Ò»',    'Dec'       =&gt; 'Ê®¶þ'

    );


  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
        @quux=split(/at/,$foo[3]);
	if($foo[3]=~(/(.*)at(.*)/))
      { 
         $foo[3]=$quux[0];
         $foo[4]=$quux[1];
      };
       return "$foo[3] $month{$foo[2]} $foo[1] ÈÕ, $wday{$foo[0]}, $foo[4]";
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# German

sub german
{
  my $string = shift;
  return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maximaler hereinkommender Traffic in 5 Minuten',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maximaler hinausgehender Traffic in 5 Minuten',
     'the device'                             =&gt; 'das Gerät',
     'The statistics were last updated(.*)'   =&gt; 'Die Statistiken wurden am $1 zuletzt aktualisiert',
     ' Average\)'                             =&gt; '',
     'Average'                                =&gt; 'Mittel',
     'Max'                                    =&gt; 'Maximal',
     'Current'                                =&gt; 'Aktuell',
     'version'                                =&gt; 'Version',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Tages&amp;uuml;bersicht (Skalierung $1 Minute(n)',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Wochen&amp;uuml;bersicht (Skalierung 30 Minuten',
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Monats&amp;uuml;bersicht (Skalierung 2 Stunden',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Jahres&amp;uuml;bersicht (Skalierung 1 Tag', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Hereinkommender Traffic in $1 pro Sekunde',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Hinausgehender Traffic in $1 pro Sekunde',
     'Incoming Traffic in (\S+) per Minute'   =&gt; 'Hereinkommender Traffic in $1 pro Minute',
     'Outgoing Traffic in (\S+) per Minute'   =&gt; 'Hinausgehender Traffic in $1 pro Minute',
     'Incoming Traffic in (\S+) per Hour'     =&gt; 'Hereinkommender Traffic in $1 pro Stunde',
     'Outgoing Traffic in (\S+) per Hour'     =&gt; 'Hinausgehender Traffic in $1 pro Stunde',
     'at which time (.*) had been up for(.*)' =&gt; 'zu diesem Zeitpunkt lief $1 seit $2',
     '(\S+) per minute'			      =&gt; '$1 pro Minute',
     '(\S+) per hour'			      =&gt; '$1 pro Stunde',    
     '(.+)/s$'                                 =&gt; '$1/s',
     # '(.+)/min'                     =&gt; '$1/min',
     '(.+)/h$'                       =&gt; '$1/std',
     #'([kMG]?)([bB])/s'                       =&gt; '$1$2/s',
     #'([kMG]?)([bB])/min'                     =&gt; '$1$2/min',
     #'([kMG]?)([bB])/h'                       =&gt; '$1$2/std',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                               =&gt; 'Bytes'
     'In'                                     =&gt; 'Herein',
     'Out'                                    =&gt; 'Hinaus',
     'Percentage'                             =&gt; 'Prozent',
     'Ported to OpenVMS Alpha by'             =&gt; 'Portierung nach OpenVMS von', 
     'Ported to WindowsNT by'                 =&gt; 'Portierung nach WindowsNT von',
     'and'                                    =&gt; 'und',
     '^GREEN'                                 =&gt; 'GR&amp;Uuml;N',
     'BLUE'                                   =&gt; 'BLAU',
     'DARK GREEN'                             =&gt; 'DUNKELGR&amp;Uuml;N',
     # 'MAGENTA'                                =&gt; 'ROSA',
     # 'AMBER'                               =&gt; 'AMBER',
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Sonntag',     'Sun' =&gt; 'So',
      'Monday'    =&gt; 'Montag',      'Mon' =&gt; 'Mo',
      'Tuesday'   =&gt; 'Dienstag',    'Tue' =&gt; 'Di',
      'Wednesday' =&gt; 'Mittwoch',    'Wed' =&gt; 'Mi',
      'Thursday'  =&gt; 'Donnerstag',  'Thu' =&gt; 'Do',
      'Friday'    =&gt; 'Freitag',     'Fri' =&gt; 'Fr',
      'Saturday'  =&gt; 'Samstag',     'Sat' =&gt; 'Sa' 
    );

%month = 
    (
      'January'   =&gt; 'Januar',    'February'  =&gt; 'Februar' ,    'March'     =&gt; 'M&amp;auml;rz',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Feb',         'Mar'       =&gt; 'M&amp;auml;r',
      'April'     =&gt; 'April',     'May'       =&gt; 'Mai',         'June'      =&gt; 'Juni', 
      'Apr'       =&gt; 'Apr',       'May'       =&gt; 'Mai',         'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Juli',      'August'    =&gt; 'August',      'September' =&gt; 'September', 
      'Jul'       =&gt; 'Jul',       'Aug'       =&gt; 'Aug',         'Sep'       =&gt; 'Sep', 
      'October'   =&gt; 'Oktober',   'November'  =&gt; 'November',    'December'  =&gt; 'Dezember', 
      'Oct'       =&gt; 'Okt',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Dez' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." um ".$quux[1]; 
      };
      return "$wday{$foo[0]}, den $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};



# Greek 

sub greek
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'iso-8859-7',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'ÌÝãéóôï Åéóåñ÷üìåíï Öïñôßï óôá 5 ËåðôÜ',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'ÌÝãéóôï Åîåñ÷üìåíï Öïñôßï óôá 5 ËåðôÜ',
     'the device'                             =&gt; 'ç óõóêåõÞ',
     'The statistics were last updated(.*)'   =&gt; 'Ôá óôáôéóôéêÜ åíçìåñþèçêáí ôåëåõôáßá öïñÜ ôç(í)/ôï $1',
     ' Average\)'                             =&gt; ' ÌÝóïò ¼ñïò)',
     'Average'                                =&gt; 'ÌÝóïò ¼ñïò',
     'Max'                                    =&gt; 'ÌÝãéóôï',
     'Current'                                =&gt; 'ÔñÝ÷ïí',
     'version'                                =&gt; 'Ýêäïóç',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'ÇìåñÞóéï ÃñÜöçìá (êÜèå $1 ëåðôÜ :',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Åâäïìáäéáßï ÃñÜöçìá (êÜèå 30 ëåðôÜ :' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Ìçíéáßï ÃñÜöçìá  (êÜèå 2 þñåò :',
     '`Yearly\' Graph \(1 Day'                =&gt; 'ÅôÞóéï ÃñÜöçìá (êÜèå 1 ìÝñá :', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Åéóåñ÷üìåíï Öïñôßï óå $1 áíÜ äåõôåñüëåðôï',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Åîåñ÷üìåíï Öïñôßï óå $1 áíÜ äåõôåñüëåðôï',
     'at which time (.*) had been up for(.*)' =&gt; 'óôïí ïðïßï ÷ñüíï $1 Þôáí åíåñãÞ ãéá $2',
     # '([kMG]?)([bB])/s'                      =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'                    =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     # 'Bits'                                  =&gt; 'Bits',
     # 'Bytes'                                 =&gt; 'Bytes'
     'In'                                     =&gt; 'Åéóåñ÷üìåíá',
     'Out'                                    =&gt; 'Åîåñ÷üìåíá',
     'Percentage'                             =&gt; 'Ðïóïóôü',
     'Ported to OpenVMS Alpha by'             =&gt; 'ÌåôáöåñìÝíï óå OpenVMS Alpha áðü',
     'Ported to WindowsNT by'                 =&gt; 'ÌåôáöåñìÝíï óå WindowsNT áðü',
     'and'                                    =&gt; 'êáé',
     '^GREEN'                                  =&gt; 'ÐÑÁÓÉÍÏ',
     'BLUE'                                   =&gt; 'ÌÐËÅ',
     'DARK GREEN'                             =&gt; 'ÓÊÏÕÑÏ ÐÑÁÓÉÍÏ',
     'MAGENTA'                                =&gt; 'ÌÙÂ',
     'AMBER'                                  =&gt; 'ÐÏÑÔÏÊÁËÉ'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'ÊõñéáêÞ',		'Sun' =&gt; 'Êõñ',
      'Monday'    =&gt; 'ÄåõôÝñá',		'Mon' =&gt; 'Äåõ',
      'Tuesday'   =&gt; 'Ôñßôç',		'Tue' =&gt; 'Ôñé',
      'Wednesday' =&gt; 'ÔåôÜñôç',		'Wed' =&gt; 'Ôåô',
      'Thursday'  =&gt; 'ÐÝìðôç',		'Thu' =&gt; 'Ðåì',
      'Friday'    =&gt; 'ÐáñáóêåõÞ',	'Fri' =&gt; 'Ðáñ',
      'Saturday'  =&gt; 'ÓÜââáôï',		'Sat' =&gt; 'Óáâ' 
    );

%month = 
    (
      'January'   =&gt; 'Éáíïõñßïõ',   'February'  =&gt; 'Öåâñïõáñßïõ' ,  'March'     =&gt; 'Ìáñôßïõ',
      'Jan'       =&gt; 'Éáí',          'Feb'       =&gt; 'Öåâ',           'Mar'       =&gt; 'Ìáñ',
      'April'     =&gt; 'Áðñéëßïõ',     'May'       =&gt; 'ÌáÀïõ',         'June'      =&gt; 'Éïõíßïõ', 
      'Apr'       =&gt; 'Áðñ',          'May'       =&gt; 'Ìáé',           'Jun'       =&gt; 'Éïõ',
      'July'      =&gt; 'Éïõëßïõ',      'August'    =&gt; 'Áõãïýóôïõ',     'September' =&gt; 'Óåðôåìâñßïõ', 
      'Jul'       =&gt; 'Éïõ',          'Aug'       =&gt; 'Áõã',           'Sep'       =&gt; 'Óåð', 
      'October'   =&gt; 'Ïêôùâñßïõ',    'November'  =&gt; 'Íïåìâñßïõ',     'December'  =&gt; 'Äåêåìâñßïõ', 
      'Oct'       =&gt; 'Ïêô',          'Nov'       =&gt; 'Íïå',           'Dec'       =&gt; 'Äåê' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." óôéò ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." &amp;agrave; $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Hungarian


sub hungarian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-2',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maxim&amp;aacute;lis bej&amp;ouml;v&amp;otilde; forgalom 5 perc alatt',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maxim&amp;aacute;lis kimen&amp;otilde; forgalom 5 perc alatt',
     'the device'                             =&gt; 'az eszk&amp;ouml;z',
     'The statistics were last updated(.*)'   =&gt; 'A statisztika utols&amp;oacute; friss&amp;iacute;t&amp;eacute;se:$1',
     ' Average\)'                             =&gt; ' &amp;aacute;tlag)',
     'Average'                                =&gt; '&amp;Aacute;tlagos',
     'Max'                                    =&gt; 'Maximum',
     'Current'                                =&gt; 'Pillanatnyi',
     'version'                                =&gt; 'verzi&amp;oacute;',
     '`Daily\' Graph \((.*) Minute'           =&gt; '`Napi\' grafikon ($1 perces',
     '`Weekly\' Graph \(30 Minute'            =&gt; '`Heti\' grafikon (30 perces' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '`Havi\' grafikon (2 &amp;oacute;r&amp;aacute;s',
     '`Yearly\' Graph \(1 Day'                =&gt; '`&amp;Eacute;ves\' grafikon (1 napos', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Bej&amp;ouml;v&amp;otilde; forgalom $1 per m&amp;aacute;sodpercben',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Kimen&amp;otilde; forgalom $1 per m&amp;aacute;sodpercben',
     'at which time (.*) had been up for(.*)' =&gt; 'amikor a $1 &amp;uuml;zemideje $2 volt.',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     'Bits'                                =&gt; 'Bit',
     'Bytes'                              =&gt; 'Byte',
     'In'                                     =&gt; 'be',
     'Out'                                    =&gt; 'ki',
     'Percentage'                             =&gt; 'sz&amp;aacute;zale&amp;acute;k',
     'Ported to OpenVMS Alpha by'             =&gt; 'OpenVMS-re portolta', 
     'Ported to WindowsNT by'                 =&gt; 'WindowsNT-re portolta',
     'and'                                    =&gt; '&amp;eacute;s',
     '^GREEN'                                  =&gt; 'Z&amp;Ouml;LD',
     'BLUE'                                   =&gt; 'K&amp;Eacute;K',
     'DARK GREEN'                             =&gt; 'S&amp;Ouml;T&amp;Eacute;T Z&amp;Ouml;LD',
     'MAGENTA'                                =&gt; 'B&amp;Iacute;BOR',
     'AMBER'                                  =&gt; 'S&amp;Aacute;RGA'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'vas&amp;aacute;rnap',		'Sun' =&gt; 'vas',
      'Monday'    =&gt; 'h&amp;eacute;tf&amp;otilde;',	'Mon' =&gt; 'h&amp;eacute;t',
      'Tuesday'   =&gt; 'kedd',			'Tue' =&gt; 'kedd',
      'Wednesday' =&gt; 'szerda',			'Wed' =&gt; 'sze',
      'Thursday'  =&gt; 'cs&amp;uuml;t&amp;ouml;rt&amp;ouml;k','Thu' =&gt; 'cs&amp;uuml;t',
      'Friday'    =&gt; 'p&amp;eacute;ntek',           'Fri' =&gt; 'p&amp;eacute;n',
      'Saturday'  =&gt; 'szombat',    		'Sat' =&gt; 'szo' 

    );

%month = 
    (
      'January'   =&gt; 'janu&amp;aacute;r',    'February'  =&gt; 'febru&amp;aacute;r' ,    'March'     =&gt; 'm&amp;aacute;rcius',
      'Jan'       =&gt; 'jan',       'Feb'       =&gt; 'feb',         'Mar'       =&gt; 'marc',
      'April'     =&gt; '&amp;aacute;prilis',     'May'       =&gt; 'm&amp;aacute;jus',         'June'      =&gt; 'j&amp;uacute;nius', 
      'Apr'       =&gt; 'apr',       'May'       =&gt; 'maj',         'Jun'       =&gt; 'jun',
      'July'      =&gt; 'j&amp;uacute;lius',      'August'    =&gt; 'augusztus',      'September' =&gt; 'szeptember', 
      'Jul'       =&gt; 'jul',       'Aug'       =&gt; 'aug',         'Sep'       =&gt; 'szept', 
      'October'   =&gt; 'okt&amp;oacute;ber',   'November'  =&gt; 'november',    'December'  =&gt; 'december', 
      'Oct'       =&gt; 'okt',       'Nov'       =&gt; 'nov',         'Dec'       =&gt; 'dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." kl.".$quux[1]; 
      };
	return "$quux[0]. $month{$foo[2]} $foo[1]., $wday{$foo[0]} $quux[1]";
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

  };
# Icelandic 

sub icelandic
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'H&amp;aacute;marks 5 m&amp;iacute;n&amp;uacute;tna umfer&amp;eth; inn',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'H&amp;aacute;marks 5 m&amp;iacute;n&amp;uacute;tna umfer&amp;eth; &amp;uacute;t',
     'the device'                             =&gt; 'tæki&amp;eth;',
     'The statistics were last updated(.*)'   =&gt; 'G&amp;ouml;gnin voru s&amp;iacute;&amp;eth;ast uppf&amp;aelig;r&amp;eth;$1',
     ' Average\)'                             =&gt; ' Me&amp;eth;altal)',
     'Average'                                =&gt; 'Me&amp;eth;altal',
     'Max'                                    =&gt; 'H&amp;aacute;mark',
     'Current'                                =&gt; 'N&amp;uacute;',
     'version'                                =&gt; '&amp;uacute;tg&amp;aacute;fa',
     '`Daily\' Graph \((.*) Minute'           =&gt; '`Dagleg\' sta&amp;eth;a ($1 m&amp;iacute;n&amp;uacute;tur',
     '`Weekly\' Graph \(30 Minute'            =&gt; '`Vikuleg\' sta&amp;eth;a (30 m&amp;iacute;n&amp;uacute;tur',
     '`Monthly\' Graph \(2 Hour'              =&gt; '`M&amp;aacute;na&amp;eth;arleg\' sta&amp;eth;a (2 klst.',
     '`Yearly\' Graph \(1 Day'                =&gt; '`&amp;Aarleg\' sta&amp;eth;a (1 dags', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Umfer&amp;eth; inn &amp;iacute; $1 &amp;aacute; sek&amp;uacute;ndu',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Umfer&amp;eth; &amp;uacute;t &amp;iacute; $1 &amp;aacute; sek&amp;uacute;ndu',
     'at which time (.*) had been up for(.*)' =&gt; '&amp;thorn;egar $1 haf&amp;eth;i veri&amp;eth; uppi &amp;iacute;$2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/sek',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/m&amp;iacute;n',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/klst',
     # 'Bits'                                =&gt; 'Bitar',
     # 'Bytes'                              =&gt; 'B&amp;aelig;ti'
     'In'                                     =&gt; 'Inn',
     'Out'                                    =&gt; '&amp;Uacute;t',
     'Percentage'                             =&gt; 'Pr&amp;oacute;sent',
     'Ported to OpenVMS Alpha by'             =&gt; 'Sta&amp;eth;f&amp;aelig;rt &amp;aacute; OpenVMS af', 
     'Ported to WindowsNT by'                 =&gt; 'Sta&amp;eth;f&amp;aelig;rt &amp;aacute; WindowsNT af',
     'and'                                    =&gt; 'og',
     '^GREEN'                                  =&gt; 'GR&amp;AElig;Nt',
     'BLUE'                                   =&gt; 'BL&amp;Aacute;TT',
     'DARK GREEN'                             =&gt; 'D&amp;Ouml;KK GR&amp;AElig;NN',
     'MAGENTA'                                =&gt; 'BL&amp;Aacute;RAU&amp;ETH;UR',
     'AMBER'                                  =&gt; 'GULBR&amp;Uacute;NN'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Sunnudagur',            'Sun' =&gt; 'Sun',
      'Monday'    =&gt; 'M&amp;aacute;nudagur',      'Mon' =&gt; 'M&amp;aacute;n',
      'Tuesday'   =&gt; '&amp;THORN;ri&amp;eth;judagur', 'Tue' =&gt; '&amp;THORN;ri',
      'Wednesday' =&gt; 'Mi&amp;eth;vikudagur',      'Wed' =&gt; 'Mi&amp;eth;',
      'Thursday'  =&gt; 'Fimmtudagur',           'Thu' =&gt; 'Fim',
      'Friday'    =&gt; 'F&amp;ouml;studagur',       'Fri' =&gt; 'F&amp;ouml;s',
      'Saturday'  =&gt; 'Laugardagur',           'Sat' =&gt; 'Lau' 

    );

%month = 
    (
      'January'   =&gt; 'Jan&amp;uacute;ar',    'February'  =&gt; 'Febr&amp;uacute;ar' ,    'March'     =&gt; 'Mars',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Feb',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'Apr&amp;iacute;l',     'May'       =&gt; 'Ma&amp;iacute;',         'June'      =&gt; 'J&amp;uacute;n&amp;iacute;', 
      'Apr'       =&gt; 'Apr',       'May'       =&gt; 'Ma&amp;iacute;',         'Jun'       =&gt; 'J&amp;uacute;n',
      'July'      =&gt; 'J&amp;uacute;l&amp;iacute;',      'August'    =&gt; '&amp;Aacute;g&amp;uacute;st',      'September' =&gt; 'September', 
      'Jul'       =&gt; 'J&amp;uacute;l',       'Aug'       =&gt; '&amp;Aacute;g&amp;uacute;',         'Sep'       =&gt; 'Sep', 
      'October'   =&gt; 'Okt&amp;oacute;ber',   'November'  =&gt; 'N&amp;oacute;vember',    'December'  =&gt; 'Desember', 
      'Oct'       =&gt; 'Okt',       'Nov'       =&gt; 'N&amp;oacute;v',         'Dec'       =&gt; 'Des' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." kl.".$quux[1]; 
      };
      return "$wday{$foo[0]} den $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Malaysian/Indonesian/Malay

sub indonesia
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Trafik Masuk Maksimum dalam 5 Menit',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Trafik Keluar Maksimum dalam 5 Menit',
     'the device'                             =&gt; 'device',
     'The statistics were last updated(.*)'   =&gt; 'Statistik ini terakhir kali diupdate pada $1',
     ' Average\)'                             =&gt; ')',
     'Average'                                =&gt; 'Rata-rata',
     'Max'                                    =&gt; 'Maksimum',
     'Current'                                =&gt; 'Sekarang',
     'version'                                =&gt; 'versi',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Grafik Harian (Rata-rata per $1 menit',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Grafik Mingguan (Rata-rata per 30 menit',
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Grafik Bulanan (Rata-rata per 2 jam',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Grafik Tahunan (Rata-rata per hari',
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Trafik Masuk $1 per detik',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Trafik Keluar $1 per detik',
     'at which time (.*) had been up for(.*)' =&gt; 'Pada saat $1 telah aktif selama $2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/j',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                              =&gt; 'Bytes'
     'In'                                     =&gt; 'Masuk',
     'Out'                                    =&gt; 'Keluar',
     'Percentage'                             =&gt; 'Persentase',
     'Ported to OpenVMS Alpha by'             =&gt; 'Porting ke  OpenVMS Alpha oleh',
     'Ported to WindowsNT by'                 =&gt; 'Porting ke WindowsNT oleh',
     'and'                                    =&gt; 'dan',
     '^GREEN'                                 =&gt; 'HIJAU',
     'BLUE'                                   =&gt; 'BIRU',
     'DARK GREEN'                             =&gt; 'HIJAU GELAP',
     'MAGENTA'                                =&gt; 'MAGENTA',
     'AMBER'                                  =&gt; 'AMBAR'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday =
    (
      'Sunday'    =&gt; 'Ahad',    'Sun' =&gt; 'Aha',
      'Monday'    =&gt; 'Senin',   'Mon' =&gt; 'Sen',
      'Tuesday'   =&gt; 'Selasa',  'Tue' =&gt; 'Sel',
      'Wednesday' =&gt; 'Rabu',    'Wed' =&gt; 'Rab',
      'Thursday'  =&gt; 'Kamis',   'Thu' =&gt; 'Kam',
      'Friday'    =&gt; 'Jumat',   'Fri' =&gt; 'Jum',
      'Saturday'  =&gt; 'Sabtu',   'Sat' =&gt; 'Sab'
    );

%month = 
    (
      'January'   =&gt; 'Januari',   'February'  =&gt; 'Februari' ,   'March'     =&gt; 'Maret',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Feb',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'April',     'May'       =&gt; 'Mei',         'June'      =&gt; 'Juni', 
      'Apr'       =&gt; 'Apr',       'May'       =&gt; 'Mei',         'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Juli',      'August'    =&gt; 'Agustus',     'September' =&gt; 'September', 
      'Jul'       =&gt; 'Jul',       'Aug'       =&gt; 'Ags',         'Sep'       =&gt; 'Sep', 
      'October'   =&gt; 'Oktober',   'November'  =&gt; 'November',    'December'  =&gt; 'Desember', 
      'Oct'       =&gt; 'Okt',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Des' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." pada ".$quux[1]; 
      };
	return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]";
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# iso2022jp

sub iso2022jp
{
  my $string = shift;
  return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     '^iso-8859-1'                            =&gt; 'iso-2022-jp',
     '^Maximal 5 Minute Incoming Traffic'     =&gt; '\e\\$B:GBg\e(B5\e\\$BJ,&lt;u?.NL\e(B',
     '^Maximal 5 Minute Outgoing Traffic'     =&gt; '\e\\$B:GBg\e(B5\e\\$BJ,Aw?.NL\e(B',
     '^the device'                            =&gt; '\e\\$B%G%P%\\$%9\e(B',
     '^The statistics were last updated (.*)' =&gt; '\e\\$B99?7F|;~\e(B $1',
     '^Average\)'                             =&gt; '\e\\$BJ?6Q\e(B)',
     '^Average$'                              =&gt; '\e\\$BJ?6Q\e(B',
     '^Max$'                                  =&gt; '\e\\$B:GBg\e(B',
     '^Current'                               =&gt; '\e\\$B:G?7\e(B',
     '^`Daily\' Graph \((.*) Minute'          =&gt; '\e\\$BF|%0%i%U\e(B($1\e\\$BJ,4V\e(B',
     '^`Weekly\' Graph \(30 Minute'           =&gt; '\e\\$B=5%0%i%U\e(B(30\e\\$BJ,4V\e(B',
     '^`Monthly\' Graph \(2 Hour'             =&gt; '\e\\$B7n%0%i%U\e(B(2\e\\$B;~4V\e(B',
     '^`Yearly\' Graph \(1 Day'               =&gt; '\e\\$BG/%0%i%U\e(B(1\e\\$BF|\e(B',
     '^Incoming Traffic in (\S+) per Second'  =&gt; '\e\\$BKhIC\\$N&lt;u?.\e(B$1\e\\$B?t\e(B',
     '^Incoming Traffic in (\S+) per Minute'  =&gt; '\e\\$BKhJ,\\$N&lt;u?.\e(B$1\e\\$B?t\e(B',
     '^Incoming Traffic in (\S+) per Hour'    =&gt; '\e\\$BKh;~\\$N&lt;u?.\e(B$1\e\\$B?t\e(B',
     '^Outgoing Traffic in (\S+) per Second'  =&gt; '\e\\$BKhIC\\$NAw?.\e(B$1\e\\$B?t\e(B',
     '^Outgoing Traffic in (\S+) per Minute'  =&gt; '\e\\$BKhJ,\\$NAw?.\e(B$1\e\\$B?t\e(B',
     '^Outgoing Traffic in (\S+) per Hour'    =&gt; '\e\\$BKh;~\\$NAw?.\e(B$1\e\\$B?t\e(B',
     '^at which time (.*) had been up for (.*)' =&gt; '$1\e\\$B\\$N2TF/;~4V\e(B $2',
     '^Average max 5 min values for `Daily\' Graph \((.*) Minute interval\):' =&gt; '\e\\$BF|%0%i%U\\$G\\$N:GBg\e(B5\e\\$BJ,CM\\$NJ?6Q\e(B($1\e\\$BJ,4V3V\e(B):',
     '^Average max 5 min values for `Weekly\' Graph \(30 Minute interval\):' =&gt; '\e\\$B=5%0%i%U\\$G\\$N:GBg\e(B5\e\\$BJ,CM\\$NJ?6Q\e(B(30\e\\$BJ,4V3V\e(B):',
     '^Average max 5 min values for `Monthly\' Graph \(2 Hour interval\):' =&gt; '\e\\$B7n%0%i%U\\$G\\$N:GBg\e(B5\e\\$BJ,CM\\$NJ?6Q\e(B(2\e\\$B;~4V4V3V\e(B):',
     '^Average max 5 min values for `Yearly\' Graph \(1 Day interval\):' =&gt; '\e\\$BG/%0%i%U\\$G\\$N:GBg\e(B5\e\\$BJ,CM\\$NJ?6Q\e(B(1\e\\$BF|4V3V\e(B):',
     #'^([kMG]?)([bB])/s'                      =&gt; '$1$2/\e\\$BIC\e(B',
     #'^([kMG]?)([bB])/min'                    =&gt; '$1$2/\e\\$BJ,\e(B',
     #'^([kMG]?)([bB])/h'                      =&gt; '$1$2/\e\\$B;~\e(B',
     '^Bits$'                                 =&gt; '\e\\$B%S%C%H\e(B',
     '^Bytes$'                                =&gt; '\e\\$B%P%\\$%H\e(B',
     '^In$'                                   =&gt; '\e\\$B&lt;u?.\e(B',
     '^Out$'                                  =&gt; '\e\\$BAw?.\e(B',
     '^Percentage'                            =&gt; '\e\\$BHfN(\e(B',
     '^Ported to OpenVMS Alpha by'            =&gt; 'OpenVMS Alpha\e\\$B\\$X\\$N0\\\?"\e(B',
     '^Ported to WindowsNT by'                =&gt; 'WindowsNT\e\\$B\\$X\\$N0\\\?"\e(B',
     #'^and'                                   =&gt; 'and',
     '^GREEN'                                 =&gt; '\e\\$BNP\e(B',
     '^BLUE'                                  =&gt; '\e\\$B\\@D\e(B',
     '^DARK GREEN'                            =&gt; '\e\\$B?&lt;NP\e(B',
     '^MAGENTA'                               =&gt; '\e\\$B%^%&lt;%s%?\e(B',
     '^AMBER'                                 =&gt; '\e\\$B`h`a\e(B'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; "(\e\$BF|\e(B)",
      'Monday'    =&gt; "(\e\$B7n\e(B)",
      'Tuesday'   =&gt; "(\e\$B2P\e(B)",
      'Wednesday' =&gt; "(\e\$B?e\e(B)",
      'Thursday'  =&gt; "(\e\$BLZ\e(B)",
      'Friday'    =&gt; "(\e\$B6b\e(B)",
      'Saturday'  =&gt; "(\e\$BEZ\e(B)",
    );

%month = 
    (
      'January'   =&gt; "1\e\$B7n\e(B",    'February' =&gt; "2\e\$B7n\e(B",
      'March'     =&gt; "3\e\$B7n\e(B",    'April'    =&gt; "4\e\$B7n\e(B",
      'May'       =&gt; "5\e\$B7n\e(B",    'June'     =&gt; "6\e\$B7n\e(B",
      'July'      =&gt; "7\e\$B7n\e(B",    'August'   =&gt; "8\e\$B7n\e(B",
      'September' =&gt; "9\e\$B7n\e(B",    'October'  =&gt; "10\e\$B7n\e(B",
      'November'  =&gt; "11\e\$B7n\e(B",   'December' =&gt; "12\e\$B7n\e(B",
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)\s+(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~/at/)
      { 
        @quux=split(/\s+at\s+/,$foo[3]);
      }
	else
      { 
        @quux=split(/ /,$foo[3],2);
      };
      return "$quux[0]\e\$BG/\e(B$month{$foo[2]}$foo[1]\e\$BF|\e(B$wday{$foo[0]} $quux[1]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Italian

sub italian
{
  my $string = shift;
  return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                    =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Traffico massimo in entrata su 5 minuti',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Traffico massimo in uscita su 5 minuti',
     'the device'                             =&gt; 'Il dispositivo',
     'The statistics were last updated(.*)'   =&gt; 'Le statistiche l\' ultima volta sono state aggiornate $1',
     ' Average\)'                             =&gt; ' Media)',
     'Average'                                =&gt; 'Media',
     'Max'                                    =&gt; 'Max',
     'Current'                                =&gt; 'Attuale',
     'version'                                =&gt; 'versione',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Grafico giornaliero (su $1 minuti:',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Grafico settimanale (su 30 minuti:' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Grafico mensile  (su 2 ore:',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Grafico annuale (su 1 giorno:', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Traffico in ingresso in $1 per Secondo',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Traffico in uscita in $1 per Secondo',
     'Incoming Traffic in (\S+) per Minute'   =&gt; 'Traffico in ingresso in $1 per Minuto',
     'Outgoing Traffic in (\S+) per Minute'   =&gt; 'Traffico in uscita $1 per Minuto',
     'Incoming Traffic in (\S+) per Hour'     =&gt; 'Traffico in ingresso $1 per Ora',
     'Outgoing Traffic in (\S+) per Hour'     =&gt; 'Traffico in uscita $1 per Ora',   
     'at which time (.*) had been up for(.*)' =&gt; '$1 &amp;eacute attivo da $2',
     '(\S+) per minute'                       =&gt; '$1 per Minuto',
     '(\S+) per hour'                         =&gt; '$1 per Ora',
     '(.+)/s$'                                =&gt; '$1/s',  
     # '(.+)/min'                             =&gt; '$1/min',
     '(.+)/h$'                                =&gt; '$1/ora',                  
     # '([kMG]?)([bB])/s'                     =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'                   =&gt; '\$1\$2/min',
     # '([kMG]?)([bB])/h'                     =&gt; '$1$2/t',
     # 'Bits'                                 =&gt; 'Bits',
     # 'Bytes'                                =&gt; 'Bytes'
     'In'                                     =&gt; 'Ingresso',
     'Out'                                    =&gt; 'Uscita',
     'Percentage'                             =&gt; 'Percentuale',
     'Ported to OpenVMS Alpha by'             =&gt; 'Ported su OpenVMS Alpha da',
     'Ported to WindowsNT by'                 =&gt; 'Ported su WindowsNT da',
     'and'                                    =&gt; 'e',
     '^GREEN'                                 =&gt; 'VERDE',
     'BLUE'                                   =&gt; 'BLU',
     'DARK GREEN'                             =&gt; 'VERDE SCURO',
     #'MAGENTA'                                =&gt; 'MAGENTA',
     #'AMBER'                                  =&gt; 'AMBRA'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Domenica',	'Sun' =&gt; 'Dom',
      'Monday'    =&gt; 'Lunedi',		'Mon' =&gt; 'Lun',
      'Tuesday'   =&gt; 'Martedi',		'Tue' =&gt; 'Mar',
      'Wednesday' =&gt; 'Mercoledi',	'Wed' =&gt; 'Mer',
      'Thursday'  =&gt; 'Giovedi',		'Thu' =&gt; 'Gio',
      'Friday'    =&gt; 'Venerdi',		'Fri' =&gt; 'Ven',
      'Saturday'  =&gt; 'Sabato',		'Sat' =&gt; 'Sab' 
    );

%month = 
    (
      'January'   =&gt; 'Gennaio',   'February'  =&gt; 'Febbraio' ,   'March'     =&gt; 'Marzo',
      'Jan'       =&gt; 'Gen',       'Feb'       =&gt; 'Feb',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'Aprile',    'May'       =&gt; 'Maggio',      'June'      =&gt; 'Giugno', 
      'Apr'       =&gt; 'Apr',       'May'       =&gt; 'Mag',         'Jun'       =&gt; 'Giu',
      'July'      =&gt; 'Luglio',    'August'    =&gt; 'Agosto',      'September' =&gt; 'Settembre', 
      'Jul'       =&gt; 'Lug',       'Aug'       =&gt; 'Ago',         'Sep'       =&gt; 'Set', 
      'October'   =&gt; 'Ottobre',   'November'  =&gt; 'Novembre',    'December'  =&gt; 'Dicembre', 
      'Oct'       =&gt; 'Ott',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Dic' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." alle ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." &amp;agrave; $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
   return $string;

};


# Korean

sub korean
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'euc-kr',
     'Maximal 5 Minute Incoming Traffic'      =&gt; '5ºÐ°£ ÃÖ´ë ¼ö½Å',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; '5ºÐ°£ ÃÖ´ë ¼Û½Å',
     'the device'                             =&gt; 'ÀåÄ¡',
     'The statistics were last updated(.*)'   =&gt; 'ÃÖÁ¾ °»½Å ÀÏ½Ã: $1',
     ' Average\)'                             =&gt; ' Æò±Õ°ª ±âÁØ)',
     'Average'                                =&gt; 'Æò±Õ',
     'Max'                                    =&gt; 'ÃÖ´ë',
     'Current'                                =&gt; 'ÇöÀç',
     'version'                                =&gt; '¹öÀü',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'ÀÏ°£ ±×·¡ÇÁ ($1 ºÐ ´ÜÀ§',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'ÁÖ°£ ±×·¡ÇÁ (30 ºÐ ´ÜÀ§' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '¿ù°£ ±×·¡ÇÁ (2 ½Ã°£ ´ÜÀ§',
     '`Yearly\' Graph \(1 Day'                =&gt; '¿¬°£ ±×·¡ÇÁ (1 ÀÏ ´ÜÀ§', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'ÃÊ´ç ¼ö½ÅµÈ Æ®·¡ÇÈ ($1)',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'ÃÊ´ç ¼Û½ÅµÈ Æ®·¡ÇÈ ($1)',
     'at which time (.*) had been up for(.*)' =&gt; '$1ÀÇ °¡µ¿ ½Ã°£: $2',
     '([kMG]?)([bB])/s'                       =&gt; '$1$2/ÃÊ',
     '([kMG]?)([bB])/min'                     =&gt; '$1$2/ºÐ',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/½Ã',
     'Bits'                                   =&gt; 'ºñÆ®',
     'Bytes'                                  =&gt; '¹ÙÀÌÆ®',
     'In'                                     =&gt; '¼ö½Å',
     'Out'                                    =&gt; '¼Û½Å',
     'Percentage'                             =&gt; 'ÆÛ¼¾Æ®',
     'Ported to OpenVMS Alpha by'             =&gt; 'OpenVMS Alpha Æ÷ÆÃ', 
     'Ported to WindowsNT by'                 =&gt; 'WindowsNT Æ÷ÆÃ',
     'and'                                    =&gt; '¿Í',
     '^GREEN'                                 =&gt; '³ì»ö',
     'BLUE'                                   =&gt; 'Ã»»ö',
     'DARK GREEN'                             =&gt; 'ÁøÇÑ³ì»ö',
     'MAGENTA'                                =&gt; 'ºÐÈ«»ö',
     'AMBER'                                  =&gt; 'ÁÖÈ²»ö'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'ÀÏ¿äÀÏ',    'Sun' =&gt; 'ÀÏ',
      'Monday'    =&gt; '¿ù¿äÀÏ',    'Mon' =&gt; '¿ù',
      'Tuesday'   =&gt; 'È­¿äÀÏ',    'Tue' =&gt; 'È­',
      'Wednesday' =&gt; '¼ö¿äÀÏ',    'Wed' =&gt; '¼ö',
      'Thursday'  =&gt; '¸ñ¿äÀÏ',    'Thu' =&gt; '¸ñ',
      'Friday'    =&gt; '±Ý¿äÀÏ',    'Fri' =&gt; '±Ý',
      'Saturday'  =&gt; 'Åä¿äÀÏ',    'Sat' =&gt; 'Åä' 

    );

%month = 
    (
      'January'   =&gt; '1¿ù',  'February'  =&gt; '2¿ù' ,  'March'     =&gt; '3¿ù',
      'Jan'       =&gt; '1¿ù',  'Feb'       =&gt; '2¿ù',   'Mar'       =&gt; '3¿ù',
      'April'     =&gt; '4¿ù',  'May'       =&gt; '5¿ù',   'June'      =&gt; '6¿ù', 
      'Apr'       =&gt; '4¿ù',  'May'       =&gt; '5¿ù',   'Jun'       =&gt; '6¿ù',
      'July'      =&gt; '7¿ù',  'August'    =&gt; '8¿ù',   'September' =&gt; '9¿ù', 
      'Jul'       =&gt; '7¿ù',  'Aug'       =&gt; '8¿ù',   'Sep'       =&gt; '9¿ù', 
      'October'   =&gt; '10¿ù', 'November'  =&gt; '11¿ù',  'December'  =&gt; '12¿ù', 
      'Oct'       =&gt; '10¿ù', 'Nov'       =&gt; '11¿ù',  'Dec'       =&gt; '12¿ù' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
  {
    if($foo[3]=~(/(.*)at(.*)/))
    { 
      @quux=split(/at/,$foo[3]);
#      $foo[3]=$quux[0]." kl.".$quux[1]; 
      $foo[3]=$quux[0];
      $foo[4]=$quux[1]; 
    };
    return $foo[3]."³â $month{$foo[2]} $foo[1]ÀÏ $wday{$foo[0]} $foo[4]";
#    return "$wday{$foo[0]} den $foo[1]. $month{$foo[2]} $foo[3]"; 

  };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
 return $string;
};

# Lithuanian

sub lithuanian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'windows-1257',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maksimalus 5 minuèiø áeinantis srautas',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maksimalus 5 minuèiø iðeinantis srautas',
     'the device'                             =&gt; 'árenginys',
     'The statistics were last updated(.*)'   =&gt; 'Statistika atnaujinta$1',
     ' Average\)'                             =&gt; ' vidurkis)',
     'Average'                                =&gt; 'vid',
     'Max'                                    =&gt; 'max',
     'Current'                                =&gt; 'dabar',
     'version'                                =&gt; 'versija',
     '`Daily\' Graph \((.*) Minute'           =&gt; '\'dienos\' grafikas ($1 min.',
     '`Weekly\' Graph \(30 Minute'            =&gt; '\'savaitës\' grafikas (30 min.' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '\'mënesio\' grafikas (2 val.',
     '`Yearly\' Graph \(1 Day'                =&gt; '\'metø\' grafikas (1 d.', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Áeinantis srautas, $1 per sekundæ',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Iðeinantis srautas i $1 per sekundæ',
     'at which time (.*) had been up for(.*)' =&gt; '$1 veikia jau $2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     # '([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
     'Bits'                                =&gt; 'bitai',
     'Bytes'                              =&gt; 'baitai',
     'In'                                     =&gt; 'á',
     'Out'                                    =&gt; 'ið',
     'Percentage'                             =&gt; 'procentai',
     'Ported to OpenVMS Alpha by'             =&gt; 'Perkëlë á OpenVMS Alpha:', 
     'Ported to WindowsNT by'                 =&gt; 'Perkëlë á WindowsNT:',
     'and'                                    =&gt; 'ir',
     '^GREEN'                                 =&gt; 'ÞALIA ',
     'BLUE'                                   =&gt; 'MËLYNA ',
     'DARK GREEN'                             =&gt; 'TAMSIAI ÞALIA ',
     'MAGENTA'                                =&gt; 'RAUDONA ',
     'AMBER'                                  =&gt; 'GINTARINË '
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'sekmadiená',       'Sun' =&gt; 'Sek',
      'Monday'    =&gt; 'pirmadiená',       'Mon' =&gt; 'Pir',
      'Tuesday'   =&gt; 'antradiená',       'Tue' =&gt; 'Ant',
      'Wednesday' =&gt; 'treèiadiená',      'Wed' =&gt; 'Tre',
      'Thursday'  =&gt; 'ketvirtadiená',    'Thu' =&gt; 'Ket',
      'Friday'    =&gt; 'penktadiená',      'Fri' =&gt; 'Pen',
      'Saturday'  =&gt; 'ðeðtadiená',       'Sat' =&gt; 'Ðeð' 

    );

%month = 
    (
      'January'   =&gt; 'sausio',    'February'  =&gt; 'vasario' ,    'March'     =&gt; 'kovo',
      'Jan'       =&gt; 'Sau',       'Feb'       =&gt; 'Vas',         'Mar'       =&gt; 'Kov',
      'April'     =&gt; 'balandþio', 'May'       =&gt; 'geguþës',     'June'      =&gt; 'birþelio', 
      'Apr'       =&gt; 'Bal',       'May'       =&gt; 'Geg',         'Jun'       =&gt; 'Bir',
      'July'      =&gt; 'liepos',    'August'    =&gt; 'rugpjûèio',   'September' =&gt; 'rugsëjo', 
      'Jul'       =&gt; 'Lie',       'Aug'       =&gt; 'Rgp',         'Sep'       =&gt; 'Rgs', 
      'October'   =&gt; 'spalio',    'November'  =&gt; 'lapkrièio',   'December'  =&gt; 'gruodþio', 
      'Oct'       =&gt; 'Spa',       'Nov'       =&gt; 'Lap',         'Dec'       =&gt; 'Gru' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[1].", ".$quux[0]; 
      };
      return "$foo[3] $month{$foo[2]} $foo[1], $wday{$foo[0]}" ;
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

  };
# Macedonian

sub macedonian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=windows-1251',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Ìàêñèìàëåí 5 ìèíóòåí âëåçåí ñîîáðàà¼',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Ìàêñèìàëåí 5 ìèíóòåí èçëåçåí ñîîáðàà¼',
     'the device'                             =&gt; 'óðåä',
     'The statistics were last updated(.*)'   =&gt; 'Ïîñëåäíî àæóðèðàœå íà ïîäàòîöèòå$1',
     ' Average\)'                             =&gt; ' ïðîñåê)',
     'Average'                                =&gt; 'Ïðîñå÷åí',
     'Max'                                    =&gt; 'Ìàêñèìàë',
     'Current'                                =&gt; 'Ìoìåíò',
     'version'                                =&gt; 'âåðçè¼à',
     '`Daily\' Graph \((.*) Minute'           =&gt; '`Äíåâåí\' ãðàô ($1 ìèíóòè',
     '`Weekly\' Graph \(30 Minute'            =&gt; '`Íåäåëåí\' ãðàô (30 ìèíóòè' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '`Ìåñå÷åí\' ãðàô (2 ÷àñà',
     '`Yearly\' Graph \(1 Day'                =&gt; '`Ãîäèøåí\' ãðàô (1 äåí', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Âëåçåí ñîîáðàà¼ - $1 âî ñåêóíäà',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Èçëåçåí ñîîáðàà¼ - $1 âî ñåêóíäà',
     'at which time (.*) had been up for(.*)' =&gt; 'Âðåìå íà íåïðåêèíàòî ðàáîòåœå íà ñèñòåìîò $1 : $2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
     # 'Bits'                                =&gt; 'Áèòîâè',
     # 'Bytes'                              =&gt; 'Áà¼òè'
     'In'                                     =&gt; 'Âëåç',
     'Out'                                    =&gt; 'Èçëåç',
     'Percentage'                             =&gt; 'Ïðîöåíò',
     'Ported to OpenVMS Alpha by'             =&gt; 'Ïîðòèðàíî íà OpenVMS îä', 
     'Ported to WindowsNT by'                 =&gt; 'Ïîðòèðàíî íà WindowsNT îä',
     'and'                                    =&gt; 'è',
     '^GREEN'                                  =&gt; 'Çåëåíà',
     'BLUE'                                   =&gt; 'Ñèíà',
     'DARK GREEN'                             =&gt; 'Òåìíî Çåëåíà',
     'MAGENTA'                                =&gt; 'Âèîëåòîâà',
     'AMBER'                                  =&gt; 'Ïîðòîêàëîâà'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Íåäåëà',  		'Sun' =&gt; 'Íåä',
      'Monday'    =&gt; 'Ïîíåäåëíèê',        'Mon' =&gt; 'Ïîí',
      'Tuesday'   =&gt; 'Âòîðíèê', 	      'Tue' =&gt; 'Âòî',
      'Wednesday' =&gt; 'Ñðåäà',  	      'Wed' =&gt; 'Ñðå',
      'Thursday'  =&gt; '×åòâðòîê',          'Thu' =&gt; '×åò',
      'Friday'    =&gt; 'Ïåòîê', 	      'Fri' =&gt; 'Ïåò',
      'Saturday'  =&gt; 'Ñàáîòà', 		'Sat' =&gt; 'Ñàá' 

    );

%month = 
    (
      'January'   =&gt; '£àíóàð',    'February'  =&gt; 'Ôåâðóàð' ,    'March'     =&gt; 'Ìàðò',
      'Jan'       =&gt; '£àí',       'Feb'       =&gt; 'Ôåâ',         'Mar'       =&gt; 'Ìàð',
      'April'     =&gt; 'Àïðèë',     'May'       =&gt; 'Ìà¼',         'June'      =&gt; '£óíè', 
      'Apr'       =&gt; 'Àïð',       'May'       =&gt; 'Ìà¼',         'Jun'       =&gt; '£óí',
      'July'      =&gt; '£óëè',      'August'    =&gt; 'Àâãóñò',      'September' =&gt; 'Ñåïòåìâðè', 
      'Jul'       =&gt; '£óë',       'Aug'       =&gt; 'Àâã',         'Sep'       =&gt; 'Ñåï', 
      'October'   =&gt; 'Îêòîìâðè',  'November'  =&gt; 'Íîåìâðè',     'December'  =&gt; 'Äåêåìâðè', 
      'Oct'       =&gt; 'Îêò',       'Nov'       =&gt; 'Íîå',         'Dec'       =&gt; 'Äåê' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." kl.".$quux[1]; 
      };
      return "$wday{$foo[0]} äåí $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

  };# Malaysian/Malay

sub malay
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maksimum 5 Minit Trafik Masuk',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maksimum 5 Minit Trafik Keluar',
     'the device'                             =&gt; 'alatan',
     'The statistics were last updated(.*)'   =&gt; 'Statistik ini kali terakhir dikemaskini pada $1',
     ' Average\)'                             =&gt; ' secara purata)',
     'Average'                                =&gt; 'Purata',
     'Max'                                    =&gt; 'Maksimum',
     'Current'                                =&gt; 'Kini',
     'version'                                =&gt; 'versi',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Graf `Harian\' ($1 minit :',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Graf `Mingguan\' (30 minit :' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Graf `Bulanan\' (2 jam :',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Graf `Tahunan\' (1 hari :',
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Trafik Masuk $1 per saat',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Traffic Keluar $1 per saat',
     'at which time (.*) had been up for(.*)' =&gt; 'Sehingga waktu $1 ia telah aktif selama $2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/j',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                              =&gt; 'Bytes'
     'In'                                     =&gt; 'Masuk',
     'Out'                                    =&gt; 'Keluar',
     'Percentage'                             =&gt; 'Peratus',
     'Ported to OpenVMS Alpha by'             =&gt; 'Pengubahsuaian ke  OpenVMS Alpha oleh',
     'Ported to WindowsNT by'                 =&gt; 'Pengubahsuaian ke WindowsNT oleh',
     'and'                                    =&gt; 'dan',
     '^GREEN'                                 =&gt; 'HIJAU',
     'BLUE'                                   =&gt; 'BIRU',
     'DARK GREEN'                             =&gt; 'HIJAU GELAP',
     'MAGENTA'                                =&gt; 'MAGENTA',
     'AMBER'                                  =&gt; 'AMBAR'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday =
    (
      'Sunday'    =&gt; 'Ahad',    'Sun' =&gt; 'Aha',
      'Monday'    =&gt; 'Isnin',   'Mon' =&gt; 'Isn',
      'Tuesday'   =&gt; 'Selasa',  'Tue' =&gt; 'Sel',
      'Wednesday' =&gt; 'Rabu',    'Wed' =&gt; 'Rab',
      'Thursday'  =&gt; 'Khamis',  'Thu' =&gt; 'Kha',
      'Friday'    =&gt; 'Jumaat',  'Fri' =&gt; 'Jum',
      'Saturday'  =&gt; 'Sabtu',   'Sat' =&gt; 'Sab'
    );

%month = 
    (
      'January'   =&gt; 'Januari',   'February'  =&gt; 'Februari' ,   'March'     =&gt; 'Mac',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Feb',         'Mar'       =&gt; 'Mac',
      'April'     =&gt; 'April',     'May'       =&gt; 'Mei',         'June'      =&gt; 'Jun', 
      'Apr'       =&gt; 'Apr',       'May'       =&gt; 'Mei',         'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Julai',     'August'    =&gt; 'Ogos',        'September' =&gt; 'September', 
      'Jul'       =&gt; 'Jul',       'Aug'       =&gt; 'Ogo',         'Sep'       =&gt; 'Sep', 
      'October'   =&gt; 'Oktober',   'November'  =&gt; 'November',    'December'  =&gt; 'Disember', 
      'Oct'       =&gt; 'Okt',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Dis' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." pada ".$quux[1]; 
      };
	return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]";
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Norwegian

sub norwegian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maksimal inng&amp;aring;ende trafikk i 5 minutter',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maksimal utg&amp;aring;ende trafikk i 5 minutter',
     'the device'                             =&gt; 'enhetden',
     'The statistics were last updated(.*)'   =&gt; 'Statistikken ble sist oppdatert $1',
     ' Average\)'                             =&gt; ' gjennomsnitt)',
     'Average'                                =&gt; 'Gjennomsnitt',
     'Max'                                    =&gt; 'Max',
     'Current'                                =&gt; 'N&amp;aring;',
     'version'                                =&gt; 'versjon',
     '`Daily\' Graph \((.*) Minute'           =&gt; '`Daglig\' graf ($1 minutts',
     '`Weekly\' Graph \(30 Minute'            =&gt; '`Ukentlig\' graf (30 minutts' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '`M&amp;aring;nedlig\' graf (2 times',
     '`Yearly\' Graph \(1 Day'                =&gt; '`&amp;Aring;rlig\' graf (1 dags', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Inng&amp;aring;ende trafikk i $1 per sekund',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Utg&amp;aring;ende trafikk i $1 per sekund',
     'at which time (.*) had been up for(.*)' =&gt; 'hvor $1 hadde v&amp;aelig;rt oppe i $2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                              =&gt; 'Bytes'
     'In'                                     =&gt; 'Inn',
     'Out'                                    =&gt; 'Ut',
     'Percentage'                             =&gt; 'Prosent',
     'Ported to OpenVMS Alpha by'             =&gt; 'Port til OpenVMS av', 
     'Ported to WindowsNT by'                 =&gt; 'Port til WindowsNT av',
     'and'                                    =&gt; 'og',
     '^GREEN'                                  =&gt; 'GR&amp;Oslash;NN',
     'BLUE'                                   =&gt; 'BL&amp;Aring;',
     'DARK GREEN'                             =&gt; 'M&amp;Oslash;RKEGR&amp;Oslash;NN',
     'MAGENTA'                                =&gt; 'MAGENTA',
     'AMBER'                                  =&gt; 'GUL'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'S&amp;oslash;ndag',    'Sun' =&gt; 'S&amp;oslash;n',
      'Monday'    =&gt; 'Mandag',           'Mon' =&gt; 'Man',
      'Tuesday'   =&gt; 'Tirsdag',          'Tue' =&gt; 'Tir',
      'Wednesday' =&gt; 'Onsdag',           'Wed' =&gt; 'Ons',
      'Thursday'  =&gt; 'Torsdag',          'Thu' =&gt; 'Tor',
      'Friday'    =&gt; 'Fredag',           'Fri' =&gt; 'Fre',
      'Saturday'  =&gt; 'L&amp;oslash;rdag',    'Sat' =&gt; 'L&amp;oslash;r' 

    );

%month = 
    (
      'January'   =&gt; 'Januar',    'February'  =&gt; 'Februar' ,    'March'     =&gt; 'Mars',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Feb',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'April',     'May'       =&gt; 'Mai',         'June'      =&gt; 'Juni', 
      'Apr'       =&gt; 'Apr',       'May'       =&gt; 'Mai',         'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Juli',      'August'    =&gt; 'August',      'September' =&gt; 'September', 
      'Jul'       =&gt; 'Jul',       'Aug'       =&gt; 'Aug',         'Sep'       =&gt; 'Sep', 
      'October'   =&gt; 'Oktober',   'November'  =&gt; 'November',    'December'  =&gt; 'Desember', 
      'Oct'       =&gt; 'Okt',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Des' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." kl.".$quux[1]; 
      };
      return "$wday{$foo[0]} den $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

  };

sub polish
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);


  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp


  %translations =
  (  
     'iso-8859-1'                             =&gt; 'iso-8859-2',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maksymalny ruch przychodz±cy w ci±gu 5 minut',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maksymalny ruch wychodz±cy w ci±gu 5 minut',
     'the device'                             =&gt; 'urz±dzenie',
     'The statistics were last updated(.*)'   =&gt; 'Ostatnie uaktualnienie statystyki $1',
     ' Average\)'                             =&gt; ' ¦rednia)',
     'Average'                                =&gt; '¦rednio',
     'Max'                                    =&gt; 'Maksymalnie',
     'Current'                                =&gt; 'Aktualnie',
     'version'                                =&gt; 'wersja',
     '`Daily\' Graph \((.*) Minute'           =&gt; '`Dzienny\' Graf w ci±gu ($1 Minut/y - ',
     '`Weekly\' Graph \(30 Minute'            =&gt; '`Tygodniowy\' Graf w ci±gu (30 minut - ' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; '`Miesiêczny\' Graf w ci±gu (2 Godzin - ',
     '`Yearly\' Graph \(1 Day'                =&gt; '`Roczny\' Graf w  ci±gu (1 Dnia - ', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Ruch przychodz±cy - $1 na sekundê',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Ruch wychodz±cy - $1 na sekundê',
     'at which time (.*) had been up for(.*)' =&gt; 'gdy $1 by³ w³±czony przez $2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/g',
     'Bits'                                =&gt; 'Bity',
     'Bytes'                              =&gt; 'Bajty',
     'In'                                     =&gt; 'Do',
     'Out'                                    =&gt; 'Z',
     'Percentage'                             =&gt; 'Procent',
     'Ported to OpenVMS Alpha by'             =&gt; 'Port dla OpenVMS Alpha dziêki', 
     'Ported to WindowsNT by'                 =&gt; 'Port dla WindowsNT dziêki',
     'and'                                    =&gt; 'i',
     '^GREEN'                                  =&gt; 'ZIELONY',
     'BLUE'                                   =&gt; 'NIEBIESKI',
     'DARK GREEN'                             =&gt; 'CIEMNO ZIELONY',
     'MAGENTA'                                =&gt; 'KARMAZYNOWY',
     'AMBER'                                  =&gt; 'BURSZTYNOWY'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Niedziela',     'Sun' =&gt; 'Nie',
      'Monday'    =&gt; 'Poniedzia³ek',  'Mon' =&gt; 'Pon',
      'Tuesday'   =&gt; 'Wtorek',        'Tue' =&gt; 'Wto',
      'Wednesday' =&gt; '¦roda',         'Wed' =&gt; '¦ro',
      'Thursday'  =&gt; 'Czwartek',      'Thu' =&gt; 'Czw',
      'Friday'    =&gt; 'Pi±tek',        'Fri' =&gt; 'Pi±',
      'Saturday'  =&gt; 'Sobota',        'Sat' =&gt; 'Sob' 

    );

%month = 
    (
      'January'   =&gt; 'Stycznia',     'February'  =&gt; 'Lutego',      'March'     =&gt; 'Marca',
      'Jan'       =&gt; 'Sty',          'Feb'       =&gt; 'Lut',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'Kwietnia',     'May'       =&gt; 'Maja',        'June'      =&gt; 'Czerwca', 
      'Apr'       =&gt; 'Kwi',          'May'       =&gt; 'Maj',         'Jun'       =&gt; 'Cze',
      'July'      =&gt; 'Lipca',        'August'    =&gt; 'Sierpnia',    'September' =&gt; 'Wrze¶nia', 
      'Jul'       =&gt; 'Lip',          'Aug'       =&gt; 'Sie',         'Sep'       =&gt; 'Wrz', 
      'October'   =&gt; 'Pa¼dziernika', 'November'  =&gt; 'Listopada',   'December'  =&gt; 'Grudnia', 
      'Oct'       =&gt; 'Pa¼',          'Nov'       =&gt; 'Lis',         'Dec'       =&gt; 'Gru' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." o godzinie".$quux[1]; 
      };
      return "$wday{$foo[0]} dzieñ $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Português 

sub portuguese 
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Tr&amp;aacute;fego Maximal Recebido em 5 minutos',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Tr&amp;aacute;fego Maximal Enviado em 5 minutos',
     'the device'                             =&gt; 'o dispositivo',
     'The statistics were last updated(.*)'   =&gt; 'As Estat&amp;iacute;sticas foram actualizadas pela &amp;uacute;ltima vez na $1',
     ' Average\)&lt;/B&gt;&lt;BR&gt;'                     =&gt; '',
     'Average'                                =&gt; 'M&amp;eacute;dia',
     'Max'                                    =&gt; 'Max.',
     'Current'                                =&gt; 'Actual',
     'version'                                =&gt; 'Vers&amp;atilde;o',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Gr&amp;aacute;fico Di&amp;aacute;rio (em intervalos de $1 Minutos)&lt;/B&gt;&lt;BR&gt;',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Gr&amp;aacute;fico Semanal (em intervalos de 30 Minutos)' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Gr&amp;aacute;fico Mensal (em intervalos de 2 horas)',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Gr&amp;aacute;fico Anual (em intervalos de 24 horas)', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Tr&amp;aacute;fego recebido em  $1/segundo',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Tr&amp;aacute;fego enviado em $1/segundo',
     'Incoming Traffic in (\S+) per Minute'   =&gt; 'Tr&amp;aacute;fego recebido em $1/minuto',
     'Outgoing Traffic in (\S+) per Minute'   =&gt; 'Tr&amp;aacute;fego enviado em $1/minuto',
     'Incoming Traffic in (\S+) per Hour'     =&gt; 'Tr&amp;aacute;fego recebido em $1/hora',
     'Outgoing Traffic in (\S+) per Hour'     =&gt; 'Tr&amp;aacute;fego recebido em $1/hora',
     'at which time (.*) had been up for(.*)' =&gt; 'quando o $1, tinha um &lt;em&gt;uptime&lt;/em&gt; de $2',
     '(\S+) per minute'			      =&gt; '$1/minuto',
     '(\S+) per hour'			      =&gt; '$1/hora',    
     '(.+)/s$'                                 =&gt; '$1/s',
     # '(.+)/min'                     =&gt; '$1/min',
     '(.+)/h$'                       =&gt; '$1/h',
     #'([kMG]?)([bB])/s'                       =&gt; '$1$2/s',
     #'([kMG]?)([bB])/min'                     =&gt; '$1$2/min',
     #'([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                               =&gt; 'Bytes'
     'In'                                     =&gt; 'Rec.',
     'Out'                                    =&gt; 'Env.',
     'Percentage'                             =&gt; 'Perc.',
     'Ported to OpenVMS Alpha by'             =&gt; 'Portado para OpenVMS Alpha por', 
     'Ported to WindowsNT by'                 =&gt; 'Portado para WindowsNT por',
     'and'                                    =&gt; 'e',
     '^GREEN'                                 =&gt; 'VERDE',
     'BLUE'                                   =&gt; 'AZUL',
     'DARK GREEN'                             =&gt; 'VERDE ESCURO',
     # 'MAGENTA'                                =&gt; 'MAGENTA',
     # 'AMBER'                               =&gt; 'AMBAR',
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Domingo',     'Sun' =&gt; 'Dom',
      'Monday'    =&gt; 'Segunda-Feira',      'Mon' =&gt; 'Seg',
      'Tuesday'   =&gt; 'Ter&amp;ccedil;a-Feira',    'Tue' =&gt; 'Ter',
      'Wednesday' =&gt; 'Quarta-Feira',    'Wed' =&gt; 'Qua',
      'Thursday'  =&gt; 'Quinta-Feira',  'Thu' =&gt; 'Qui',
      'Friday'    =&gt; 'Sexta-Feira',     'Fri' =&gt; 'Sex',
      'Saturday'  =&gt; 'S&amp;aacute;bado',     'Sat' =&gt; 'Sab' 
    );

%month = 
    (
      'January'   =&gt; 'Janeiro',    'February'  =&gt; 'Fevereiro' ,    'March'     =&gt; 'Mar&amp;ccedil;o',
      'Jan'       =&gt; 'Jan',       'Feb'       =&gt; 'Fev',         'Mar'       =&gt; 'Mar',
      'April'     =&gt; 'Abril',     'May'       =&gt; 'Maio',         'June'      =&gt; 'Junho', 
      'Apr'       =&gt; 'Abr',       'May'       =&gt; 'Mai',         'Jun'       =&gt; 'Jun',
      'July'      =&gt; 'Julho',      'August'    =&gt; 'Agosto',      'September' =&gt; 'Setembro', 
      'Jul'       =&gt; 'Jul',       'Aug'       =&gt; 'Ago',         'Sep'       =&gt; 'Set', 
      'October'   =&gt; 'Outubro',   'November'  =&gt; 'Novembro',    'December'  =&gt; 'Dezembro', 
      'Oct'       =&gt; 'Out',       'Nov'       =&gt; 'Nov',         'Dec'       =&gt; 'Dez' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." pelas ".$quux[1]; 
      };
      return "$wday{$foo[0]}, $foo[1] de $month{$foo[2]} de $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};



# Romanian

sub romanian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-8859-2

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'iso-8859-2',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Traficul Maxim de intrare pe 5 Minute',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Traficul Maxim de iesire pe 5 Minute',
     'the device'                             =&gt; 'echipamentul',
     'The statistics were last updated(.*)'   =&gt; 'Ultima actualizare :$1',
     ' Average\)'                             =&gt; '',
     'Average'                                =&gt; 'Medie',
     'Max'                                    =&gt; 'Maxim',
     'Current'                                =&gt; 'Curent',
     'version'                                =&gt; 'versiunea',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Graficul \'Zilnic\' (medie pe $1 minute)',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Graficul \'Sãptãmânal\' (medie pe 30 de minute)' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Graficul \'Lunar\' (medie pe 2 ore)',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Graficul \'Anual\' (medie pe 1 zi)', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Traficul de intrare [$1/secundã]',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Traficul de ieºire [$1/secundã]',
     'at which time &lt;strong&gt;(\S+)&lt;/strong&gt; had been up for &lt;strong&gt;(\S+)&lt;/strong&gt;' =&gt; 'când &lt;strong&gt;$1&lt;/strong&gt; funcþiona de &lt;strong&gt;$2&lt;/strong&gt;',
     'at which time &lt;strong&gt;(\S+)&lt;/strong&gt; had been up for &lt;strong&gt;(\S+) day, (\S+)&lt;/strong&gt;' =&gt; 'când &lt;strong&gt;$1&lt;/strong&gt; funcþiona de &lt;strong&gt;$2 zi, $3&lt;/strong&gt;',
     'at which time &lt;strong&gt;(\S+)&lt;/strong&gt; had been up for &lt;strong&gt;(\S+) days, (\S+)&lt;/strong&gt;' =&gt; 'când &lt;strong&gt;$1&lt;/strong&gt; funcþiona de &lt;strong&gt;$2 zile, $3&lt;/strong&gt;',
     #'(.+)/s$'                               =&gt; '$1/s',
     #'(.+)/min'                              =&gt; '$1/min',
     '(.+)/h$'                                =&gt; '$1/ora',
     #'([kMG]?)([bB])/s'                      =&gt; '$1$2/s',
     #'([kMG]?)([bB])/min'                    =&gt; '$1$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/ora',
     'Bits'                                   =&gt; 'Biþi',
     'Bytes'                                  =&gt; 'Octeþi',
     'In'                                     =&gt; 'int',
     'Out'                                    =&gt; 'ieº',
     'Percentage'                             =&gt; 'procent',
     'Ported to OpenVMS Alpha by'             =&gt; 'Translatat sub OpenVMS de', 
     'Ported to WindowsNT by'                 =&gt; 'Translatat sub WindowsNT de',
     'and'                                    =&gt; 'ºi',
     '^GREEN'                                 =&gt; 'VERDE',
     'BLUE'                                   =&gt; 'ALBASTRU',
     'DARK GREEN'                             =&gt; 'VERDE ÎNCHIS',
     'MAGENTA'                                =&gt; 'PURPURIU',
     'AMBER'                                  =&gt; 'GALBEN',
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'duminicã',     'Sun' =&gt; 'lu',
      'Monday'    =&gt; 'luni',         'Mon' =&gt; 'ma',
      'Tuesday'   =&gt; 'marþi',        'Tue' =&gt; 'mi',
      'Wednesday' =&gt; 'miercuri',     'Wed' =&gt; 'jo',
      'Thursday'  =&gt; 'joi',          'Thu' =&gt; 'vi',
      'Friday'    =&gt; 'vineri',       'Fri' =&gt; 'sâ',
      'Saturday'  =&gt; 'sâmbãtã',      'Sat' =&gt; 'du' 
    );

%month = 
    (
      'January'   =&gt; 'ianuarie',    'February'  =&gt; 'februarie' ,    'March'     =&gt; 'martie',
      'Jan'       =&gt; 'ian',         'Feb'       =&gt; 'feb',           'Mar'       =&gt; 'mar',
      'April'     =&gt; 'aprilie',     'May'       =&gt; 'mai',           'June'      =&gt; 'iunie', 
      'Apr'       =&gt; 'apr',         'May'       =&gt; 'mai',           'Jun'       =&gt; 'iun',
      'July'      =&gt; 'iulie',       'August'    =&gt; 'august',        'September' =&gt; 'septembrie', 
      'Jul'       =&gt; 'iul',         'Aug'       =&gt; 'aug',           'Sep'       =&gt; 'sep', 
      'October'   =&gt; 'octombrie',   'November'  =&gt; 'noiembrie',     'December'  =&gt; 'decembrie', 
      'Oct'       =&gt; 'oct',         'Nov'       =&gt; 'noi',           'Dec'       =&gt; 'dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0].", ora ".$quux[1]; 
      };
      return "$wday{$foo[0]}, $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings

  return $string;

};


# Russian

sub russian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'koi8-r',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'íÁËÓÉÍÁÌØÎÙÊ ×ÈÏÄÑÝÉÊ ÔÒÁÆÉË ÚÁ 5 ÍÉÎÕÔ',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'íÁËÓÉÍÁÌØÎÙÊ ÉÓÈÏÄÑÝÉÊ ÔÒÁÆÉË ÚÁ 5 ÍÉÎÕÔ',
     'the device'                             =&gt; 'ÕÓÔÒÏÊÓÔ×Ï',
     'The statistics were last updated(.*)'   =&gt; 'ðÏÓÌÅÄÎÅÅ ÏÂÎÏ×ÌÅÎÉÅ ÓÔÁÔÉÓÔÉËÉ: $1',
     ' Average\)'                             =&gt; ')',
     'Average'                                =&gt; 'óÒÅÄÎÉÊ',
     'Max'                                    =&gt; 'íÁËÓ.',
     'Current'                                =&gt; 'ôÅËÕÝÉÊ',
     'version'                                =&gt; '×ÅÒÓÉÑ',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'óÕÔÏÞÎÙÊ ÇÒÁÆÉË (ÓÒÅÄÎÅÅ ÚÁ $1 ÍÉÎÕÔ',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'îÅÄÅÌØÎÙÊ ÇÒÁÆÉË (ÓÒÅÄÎÅÅ ÚÁ 30 ÍÉÎÕÔ' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'íÅÓÑÞÎÙÊ ÇÒÁÆÉË  (ÓÒÅÄÎÅÅ ÚÁ 2 ÞÁÓÁ',
     '`Yearly\' Graph \(1 Day'                =&gt; 'çÏÄÏ×ÏÊ ÇÒÁÆÉË (ÓÒÅÄÎÅÅ ÚÁ 1 ÄÅÎØ', 
     'Incoming Traffic in (\S+) per Second'   =&gt; '÷ÈÏÄÑÝÉÊ ÔÒÁÆÉË × $1 × ÓÅËÕÎÄÕ',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'éÓÈÏÄÑÝÉÊ ÔÒÁÆÉË × $1 × ÓÅËÕÎÄÕ',
     'at which time (.*) had been up for(.*)' =&gt; '× ÜÔÏ ×ÒÅÍÑ $1 ÂÙÌÁ ×ËÌÀÞÅÎÁ $2',
     #'([kMG]?)([bB])/s'                      =&gt; '$1$1/ÓÅË',
     #'([kMG]?)([bB])/min'                    =&gt; '$1$2/ÍÉÎ',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/ÞÁÓ',
     'Bits'                                  =&gt; 'ÂÉÔÁÈ',
     'Bytes'                                 =&gt; 'ÂÁÊÔÁÈ',
     'In'                                     =&gt; '÷È',
     'Out'                                    =&gt; 'éÓÈ',
     'Percentage'                             =&gt; 'ðÒÏÃÅÎÔÙ',
     'Ported to OpenVMS Alpha by'             =&gt; 'áÄÁÐÔÉÒÏ×ÁÎÏ ÄÌÑ OpenVMS Alpha',
     'Ported to WindowsNT by'                 =&gt; 'áÄÁÐÔÉÒÏ×ÁÎÏ ÄÌÑ WindowsNT',
     'and'                                    =&gt; 'É',
     '^GREEN'                                  =&gt; 'úåìåîùê',
     'BLUE'                                   =&gt; 'óéîéê',
     'DARK GREEN'                             =&gt; 'ôåíîïúåìåîùê',
     'MAGENTA'                                =&gt; 'æéïìåôï÷ùê',
     'AMBER'                                  =&gt; 'ñîôáòîùê'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; ' ÷ÏÓËÒÅÓÅÎØÅ',	'Sun' =&gt; '÷Ó',
      'Monday'    =&gt; ' ðÏÎÅÄÅÌØÎÉË',	'Mon' =&gt; 'ðÎ',
      'Tuesday'   =&gt; ' ÷ÔÏÒÎÉË',	'Tue' =&gt; '÷Ô',
      'Wednesday' =&gt; ' óÒÅÄÁ',		'Wed' =&gt; 'óÒ',
      'Thursday'  =&gt; ' þÅÔ×ÅÒÇ',	'Thu' =&gt; 'þÔ',
      'Friday'    =&gt; ' ðÑÔÎÉÃÁ',	'Fri' =&gt; 'ðÔ',
      'Saturday'  =&gt; ' óÕÂÂÏÔÁ',	'Sat' =&gt; 'óÂ' 
    );

%month = 
    (
      'January'   =&gt; 'ñÎ×ÁÒÑ',   'February'  =&gt; 'æÅ×ÒÁÌÑ' ,    'March'     =&gt; 'íÁÒÔÁ',
      'Jan'       =&gt; 'ñÎ×',       'Feb'       =&gt; 'æÅ×',         'Mar'       =&gt; 'íÁÒ',
      'April'     =&gt; 'áÐÒÅÌÑ',     'May'       =&gt; 'íÁÑ',         'June'      =&gt; 'éÀÎÑ', 
      'Apr'       =&gt; 'áÐÒ',       'May'       =&gt; 'íÁÑ',         'Jun'       =&gt; 'éÀÎ',
      'July'      =&gt; 'éÀÌÑ',   'August'    =&gt; 'á×ÇÕÓÔÁ',        'September' =&gt; 'óÅÎÔÑÂÒÑ', 
      'Jul'       =&gt; 'éÀÌ',       'Aug'       =&gt; 'á×Ç',         'Sep'       =&gt; 'óÅÎ', 
      'October'   =&gt; 'ïËÔÑÂÒÑ',   'November'  =&gt; 'îÏÑÂÒÑ',    'December'  =&gt; 'äÅËÁÂÒÑ', 
      'Oct'       =&gt; 'ïËÔ',       'Nov'       =&gt; 'îÏÑ',         'Dec'       =&gt; 'äÅË' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]."Ç. × ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Russian1251 Code

sub russian1251
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'windows-1251',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Ìàêñèìàëüíûé âõîäÿùèé òðàôèê çà 5 ìèíóò',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Ìàêñèìàëüíûé èñõîäÿùèé òðàôèê çà 5 ìèíóò',
     'the device'                             =&gt; 'óñòðîéñòâî',
     'The statistics were last updated(.*)'   =&gt; 'Âðåìÿ ïîñëåäíåãî îáíîâëåíèÿ: $1',
     ' Average\)'                             =&gt; ')',
     'Average'                                =&gt; 'Â ñðåäíåì',
     'Max'                                    =&gt; 'Ìàêñèìàëüíî',
     'Current'                                =&gt; 'Ñåé÷àñ',
     'version'                                =&gt; 'âåðñèÿ',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Ñóòî÷íûé ãðàôèê (ñðåäíåå çà $1 ìèíóò',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Íåäåëüíûé ãðàôèê (ñðåäíåå çà 30 ìèíóò' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Ìåñÿ÷íûé ãðàôèê  (ñðåäíåå çà 2 ÷àñà',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Ãîäîâîé ãðàôèê (ñðåäíåå çà 1 äåíü', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Âõîäÿùèé òðàôèê â $1 â ñåêóíäó',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Èñõîäÿùèé òðàôèê â $1 â ñåêóíäó',
     'at which time &lt;strong&gt;(\S+)&lt;/strong&gt; had been up for &lt;strong&gt;(\S+)&lt;/strong&gt;' =&gt; 'âðåìÿ ïîñëå èíèöèàëèçàöèè óñòðîéñòâà &lt;strong&gt;$1&lt;/strong&gt;: &lt;strong&gt;$2&lt;/strong&gt;.',
     'at which time &lt;strong&gt;(\S+)&lt;/strong&gt; had been up for &lt;strong&gt;(\S+) day, (\S+)&lt;/strong&gt;' =&gt; 'âðåìÿ ïîñëå èíèöèàëèçàöèè óñòðîéñòâà &lt;strong&gt;$1&lt;/strong&gt;: &lt;strong&gt;$2 ñóòêè&lt;/strong&gt;, &lt;strong&gt;$3&lt;/strong&gt;.',
     'at which time &lt;strong&gt;(\S+)&lt;/strong&gt; had been up for &lt;strong&gt;(\S+) days, (\S+)&lt;/strong&gt;' =&gt; 'âðåìÿ ïîñëå èíèöèàëèçàöèè óñòðîéñòâà &lt;strong&gt;$1&lt;/strong&gt;: &lt;strong&gt;$2 ñóòîê&lt;/strong&gt;, &lt;strong&gt;$3&lt;/strong&gt;.',
     #'([kMG]?)([bB])/s'                      =&gt; '$1$1/ñåê',
     #'([kMG]?)([bB])/min'                    =&gt; '$1$2/ìèí',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/÷àñ',
     'Bits'                                  =&gt; 'áèòàõ',
     'Bytes'                                 =&gt; 'áàéòàõ',
     'In'                                     =&gt; 'Âõ',
     'Out'                                    =&gt; 'Èñõ',
     'Percentage'                             =&gt; 'Ïðîöåíòû',
     'Ported to OpenVMS Alpha by'             =&gt; 'Àäàïòèðîâàíî äëÿ OpenVMS Alpha',
     'Ported to WindowsNT by'                 =&gt; 'Àäàïòèðîâàíî äëÿ WindowsNT',
     'and'                                    =&gt; 'è',
     '^GREEN'                                  =&gt; 'ÇÅËÅÍÛÉ',
     'BLUE'                                   =&gt; 'ÑÈÍÈÉ',
     'DARK GREEN'                             =&gt; 'ÒÅÌÍÎÇÅËÅÍÛÉ',
     'MAGENTA'                                =&gt; 'ÔÈÎËÅÒÎÂÛÉ',
     'AMBER'                                  =&gt; 'ßÍÒÀÐÍÛÉ'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; ' Âîñêðåñåíüå',	'Sun' =&gt; 'Âñ',
      'Monday'    =&gt; ' Ïîíåäåëüíèê',	'Mon' =&gt; 'Ïí',
      'Tuesday'   =&gt; ' Âòîðíèê',	'Tue' =&gt; 'Âò',
      'Wednesday' =&gt; ' Ñðåäà',		'Wed' =&gt; 'Ñð',
      'Thursday'  =&gt; ' ×åòâåðã',	'Thu' =&gt; '×ò',
      'Friday'    =&gt; ' Ïÿòíèöà',	'Fri' =&gt; 'Ïò',
      'Saturday'  =&gt; ' Ñóááîòà',	'Sat' =&gt; 'Ñá' 
    );

%month = 
    (
      'January'   =&gt; 'ßíâàðÿ',   'February'  =&gt; 'Ôåâðàëÿ' ,    'March'     =&gt; 'Ìàðòà',
      'Jan'       =&gt; 'ßíâ',       'Feb'       =&gt; 'Ôåâ',         'Mar'       =&gt; 'Ìàð',
      'April'     =&gt; 'Àïðåëÿ',     'May'       =&gt; 'Ìàÿ',         'June'      =&gt; 'Èþíÿ', 
      'Apr'       =&gt; 'Àïð',       'May'       =&gt; 'Ìàÿ',         'Jun'       =&gt; 'Èþí',
      'July'      =&gt; 'Èþëÿ',   'August'    =&gt; 'Àâãóñòà',        'September' =&gt; 'Ñåíòÿáðÿ', 
      'Jul'       =&gt; 'Èþë',       'Aug'       =&gt; 'Àâã',         'Sep'       =&gt; 'Ñåí', 
      'October'   =&gt; 'Îêòÿáðÿ',   'November'  =&gt; 'Íîÿáðÿ',    'December'  =&gt; 'Äåêàáðÿ', 
      'Oct'       =&gt; 'Îêò',       'Nov'       =&gt; 'Íîÿ',         'Dec'       =&gt; 'Äåê' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]."ã. â ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};
# Serbian

sub serbian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'windows-1250',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Najveæi 5 minutni ulazni saobraæaj',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Najveæi 5 minutni izlazni saobraæaj',
     'the device'                             =&gt; 'uredjaj',
     'The statistics were last updated(.*)'   =&gt; 'Poslednje ažuriranje podataka:$1',
     ' Average\)'                             =&gt; ' prosek)',
     'Average'                                =&gt; 'Proseèni',
     'Max'                                    =&gt; 'Maksimalni',
     'Current'                                =&gt; 'Trenutni',
     'version'                                =&gt; 'verzija',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Dnevni graf ($1 minutni ',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Nedeljni graf (30 minutni ' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Meseèni graf (2 sata ',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Godišnji graf (1 dnevni ', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Ulazni saobraæaj - $1 u sekundi.',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Izlazni saobraæaj - $1 u sekundi.',
     'Incoming Traffic in (\S+) per Minute'   =&gt; 'Ulazni saobraæaj - $1 u minutu',
     'Outgoing Traffic in (\S+) per Minute'   =&gt; 'Izlazni saobraæaj - $1 u minutu',
     'Incoming Traffic in (\S+) per Hour'     =&gt; 'Ulazni saobraæaj - $1 na sat',
     'Outgoing Traffic in (\S+) per Hour'     =&gt; 'Izlazni saobraæaj - $1 na sat',
     'at which time (.*) had been up for(.*)' =&gt; 'Vreme neprekidnog rada sistema $1 : $2',
     #'([kMG]?)([bB])/s'                       =&gt; '\$1\$2/s',
     #'([kMG]?)([bB])/min'     	      	      =&gt; '\$1\$2/min',
     #'([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
     'Bits'                                   =&gt; 'Bita',
     'Bytes'                                  =&gt; 'Bajta',
     'In'                                     =&gt; 'Ulaz',
     'Out'                                    =&gt; 'Izlaz',
     'Percentage'                             =&gt; 'Procenat',
     'Ported to OpenVMS Alpha by'             =&gt; 'Na OpenVMS portovao', 
     'Ported to WindowsNT by'                 =&gt; 'Na WindowsNT portovao',
     'and'                                    =&gt; 'i',
     '^GREEN'                                  =&gt; 'Zeleno',
     'BLUE'                                   =&gt; 'Plavo',
     'DARK GREEN'                             =&gt; 'Tamnozeleno',
     'MAGENTA'                                =&gt; 'Ljubièasto',
     'AMBER'                                  =&gt; 'Narandžasto'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Nedelja',		'Sun' =&gt; 'Ned',
      'Monday'    =&gt; 'Ponedeljak',	'Mon' =&gt; 'Pon',
      'Tuesday'   =&gt; 'Utorak',		'Tue' =&gt; 'Uto',
      'Wednesday' =&gt; 'Sreda',		'Wed' =&gt; 'Sre',
      'Thursday'  =&gt; 'Èetvrtak',	'Thu' =&gt; 'Èet',
      'Friday'    =&gt; 'Petak',		'Fri' =&gt; 'Pet',
      'Saturday'  =&gt; 'Subota',		'Sat' =&gt; 'Sub' 
    );

%month = 
    (
 'January' =&gt; 'januar', 'February' =&gt; 'februar', 'March'     =&gt; 'mart',
 'Jan'     =&gt; 'Jan', 'Feb'      =&gt; 'Feb', 'Mar'       =&gt; 'Mar',
 'April'   =&gt; 'april',	'May'      =&gt; 'maj',     'June'      =&gt; 'jun',
 'Apr'     =&gt; 'Apr',  'May'      =&gt; 'Maj',     'Jun'       =&gt; 'Jun',
 'July'    =&gt; 'jul',	'August'   =&gt; 'avgust',  'September' =&gt; 'septembar',
 'Jul'     =&gt; 'Jul',	'Aug'      =&gt; 'Avg',  'Sep'       =&gt; 'Sep', 
 'October' =&gt; 'oktobar','November' =&gt; 'novembar','December'  =&gt; 'decembar', 
 'Oct'     =&gt; 'Okt',  'Nov'      =&gt; 'Nov',  'Dec'       =&gt; 'Dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0].",".$quux[1]." "; 
      };
      return "$wday{$foo[0]} $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings

  return $string;

}
#
# Slovak

sub slovak
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'iso-8859-2',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maximálny 5 minútový prichádzajúci tok',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maximálny 5 minútový odchádzajúci tok',
     'the device'                             =&gt; 'zariadenie',
     'The statistics were last updated(.*)'   =&gt; 'Posledná aktualizácia ¹tatistík:$1',
     ' Average\)'                             =&gt; ' priemer)',
     'Average'                                =&gt; 'Priem.',
     'Max'                                    =&gt; 'Max.',
     'Current'                                =&gt; 'Akt.',
     'version'                                =&gt; 'verzia',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Denný graf ($1 minútový',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Tý¾denný graf (30 minútový' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Mesaèný graf (2 hodinový',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Roèný graf (1 denný', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Prichádzajúci tok v $1 za sekundu.',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Odchádzajúci tok v $1 za sekundu.',
     'at which time (.*) had been up for(.*)' =&gt; 'Èas od posledného re¹tartu $1 : $2',
     #'([kMG]?)([bB])/s'                       =&gt; '\$1\$2/s',
     #'([kMG]?)([bB])/min'     	      	      =&gt; '\$1\$2/min',
     #'([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
     'Bits'                                   =&gt; 'bitoch',
     'Bytes'                                  =&gt; 'bytoch',
     #'&amp;nbsp;In:&lt;/FONT&gt;'                       =&gt; '&amp;nbsp;In:&lt;/FONT&gt;',
     #'&amp;nbsp;Out:&lt;/FONT&gt;'                      =&gt; '&amp;nbsp;Out:&lt;/FONT&gt;',
     'Percentage'                             =&gt; 'Perc.',
     'Ported to OpenVMS Alpha by'             =&gt; 'Na OpenVMS portoval', 
     'Ported to WindowsNT by'                 =&gt; 'Na WindowsNT portoval',
     'and'                                    =&gt; 'a',
     '^GREEN'                                  =&gt; 'Zelená',
     'BLUE'                                   =&gt; 'Modrá',
     'DARK GREEN'                             =&gt; 'Tmavozelená',
     'MAGENTA'                                =&gt; 'Fialová',
     'AMBER'                                  =&gt; '®ltá'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Nedeµa',		'Sun' =&gt; 'Ne',
      'Monday'    =&gt; 'Pondelok',	'Mon' =&gt; 'Po',
      'Tuesday'   =&gt; 'Utorok',		'Tue' =&gt; 'Ut',
      'Wednesday' =&gt; 'Streda',		'Wed' =&gt; 'St',
      'Thursday'  =&gt; '©tvrtok',		'Thu' =&gt; '©t',
      'Friday'    =&gt; 'Piatok',		'Fri' =&gt; 'Pi',
      'Saturday'  =&gt; 'Sobota',		'Sat' =&gt; 'So' 
    );

%month = 
    (
 'January' =&gt; 'Január', 'February' =&gt; 'Február', 'March'     =&gt; 'Marec',
 'Jan'     =&gt; 'Január', 'Feb'      =&gt; 'Február', 'Mar'       =&gt; 'Marec',
 'April'   =&gt; 'Apríl',	'May'      =&gt; 'Máj',     'June'      =&gt; 'Jún',
 'Apr'     =&gt; 'Apríl',  'May'      =&gt; 'Máj',     'Jun'       =&gt; 'Jún',
 'July'    =&gt; 'Júl',	'August'   =&gt; 'August',  'September' =&gt; 'September',
 'Jul'     =&gt; 'Júl',	'Aug'      =&gt; 'August',  'Sep'       =&gt; 'September', 
 'October' =&gt; 'Október','November' =&gt; 'November','December'  =&gt; 'December', 
 'Oct'     =&gt; 'Október','Nov'      =&gt; 'November','Dec'       =&gt; 'December' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0].",".$quux[1]." hod."; 
      };
      return "$wday{$foo[0]} $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings

  return $string;

}
#
# Slovenian

sub slovenian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'windows-1250',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Najvecji petminutni vhodni promet',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Najvecji petminutni izhodni promet',
     'the device'                             =&gt; 'naprava',
     'The statistics were last updated(.*)'   =&gt; 'Zadnja posodobitev podatkov:$1',
     ' Average\)'                             =&gt; ' povprecje)',
     'Average'                                =&gt; 'Povprecje',
     'Max'                                    =&gt; 'Maksimalno',
     'Current'                                =&gt; 'Trenutno',
     'version'                                =&gt; 'verzija',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Dnevni graf ($1 min.',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Tedenski graf (30 min.' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Mesecni graf (2 urno',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Letni graf (1 dnevno', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Vhodni promet v $1 na sekundo.',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Izhodni promet v $1 na sekundo.',
     'at which time (.*) had been up for(.*)' =&gt; 'Cas od zadnjega restarta sistema $1 : $2',
     #'([kMG]?)([bB])/s'                       =&gt; '\$1\$2/s',
     #'([kMG]?)([bB])/min'     	      	      =&gt; '\$1\$2/min',
     #'([kMG]?)([bB])/h'                       =&gt; '$1$2/h',
     'Bits'                                   =&gt; 'bitov',
     'Bytes'                                  =&gt; 'bytov',
     'In'                                     =&gt; 'Vhod',
     'Out'                                    =&gt; 'Izhod',
     'Percentage'                             =&gt; 'Proc.',
     'Ported to OpenVMS Alpha by'             =&gt; 'Na OpenVMS portiral', 
     'Ported to WindowsNT by'                 =&gt; 'Na WindowsNT portiral',
     'and'                                    =&gt; 'in',
     '^GREEN'                                  =&gt; 'Zeleno',
     'BLUE'                                   =&gt; 'Modro',
     'DARK GREEN'                             =&gt; 'Temnozeleno',
     'MAGENTA'                                =&gt; 'Vijolicasto',
     'AMBER'                                  =&gt; 'Oranzno'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Nedelja',		'Sun' =&gt; 'Ne',
      'Monday'    =&gt; 'Ponedeljek',	'Mon' =&gt; 'Po',
      'Tuesday'   =&gt; 'Torek',		'Tue' =&gt; 'To',
      'Wednesday' =&gt; 'Sreda',		'Wed' =&gt; 'Sr',
      'Thursday'  =&gt; 'Cetrtek',		'Thu' =&gt; 'Ce',
      'Friday'    =&gt; 'Petek',		'Fri' =&gt; 'Po',
      'Saturday'  =&gt; 'Sobota',		'Sat' =&gt; 'So' 
    );

%month = 
    (
 'January' =&gt; 'Januar', 'February' =&gt; 'Februar', 'March'     =&gt; 'Marec',
 'Jan'     =&gt; 'Jan', 'Feb'      =&gt; 'Feb', 'Mar'       =&gt; 'Mar',
 'April'   =&gt; 'April',	'May'      =&gt; 'Maj',     'June'      =&gt; 'Jun',
 'Apr'     =&gt; 'Apr',  'May'      =&gt; 'Maj',     'Jun'       =&gt; 'Jun',
 'July'    =&gt; 'Julij',	'August'   =&gt; 'Avgust',  'September' =&gt; 'September',
 'Jul'     =&gt; 'Jul',	'Aug'      =&gt; 'Avg',  'Sep'       =&gt; 'Sep', 
 'October' =&gt; 'Oktober','November' =&gt; 'November','December'  =&gt; 'December', 
 'Oct'     =&gt; 'Okt','Nov'      =&gt; 'Nov','Dec'       =&gt; 'Dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0].",".$quux[1]." "; 
      };
      return "$wday{$foo[0]} $foo[1]. $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings

  return $string;

}
#
# Spanish

sub spanish
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...

  %translations =
  (  
     #'iso-8859-1'                             =&gt; 'iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Tr&amp;aacute;fico entrante m&amp;aacute;ximo en 5 minutos',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Tr&amp;aacute;fico saliente m&amp;aacute;ximo en 5 minutos',
     'the device'                             =&gt; 'el dispositivo',
     'The statistics were last updated(.*)'   =&gt; 'Estad&amp;iacute;sticas actualizadas el $1',
     ' Average\)'                             =&gt; ' Promedio)',
     'Average'                                =&gt; 'Promedio',
     'Max'                                    =&gt; 'M&amp;aacute;x',
     'Current'                                =&gt; 'Actual',
     'version'                                =&gt; 'version',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Gr&amp;aacute;fico diario ($1 minutos :',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Gr&amp;aacute;fico semanal (30 minutos :' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Gr&amp;aacute;fico mensual (2 horas :',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Gr&amp;aacute;fico anual (1 d&amp;iacute;a :', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Tr&amp;aacute;fico entrante en $1 por segundo',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Tr&amp;aacute;fico saliente en $1 por segundo',
     'at which time (.*) had been up for(.*)' =&gt; '$1 ha estado funcionando durante $2',
     # '([kMG]?)([bB])/s'                      =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'                    =&gt; '\$1\$2/min',
     # '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     # 'Bits'                                  =&gt; 'Bits',
     # 'Bytes'                                 =&gt; 'Bytes'
     'In'                                     =&gt; 'Entrante:',
     'Out'                                    =&gt; 'Saliente:',
     'Percentage'                             =&gt; 'Porcentaje:',
     'Ported to OpenVMS Alpha by'             =&gt; 'Portado a OpenVMS Alpha por',
     'Ported to WindowsNT by'                 =&gt; 'Portado a WindowsNT por',
     'and'                                    =&gt; 'y',
     '^GREEN'                                  =&gt; 'VERDE',
     'BLUE'                                   =&gt; 'AZUL',
     'DARK GREEN'                             =&gt; 'VERDE OSCURO',
     'MAGENTA'                                =&gt; 'MAGENTA',
     'AMBER'                                  =&gt; 'AMBAR'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Domingo',		'Sun' =&gt; 'Dom',
      'Monday'    =&gt; 'Lunes',		'Mon' =&gt; 'Lun',
      'Tuesday'   =&gt; 'Martes',		'Tue' =&gt; 'Mar',
      'Wednesday' =&gt; 'Mi&amp;eacute;rcoles','Wed' =&gt; 'Mi&amp;eacute;',
      'Thursday'  =&gt; 'Jueves',		'Thu' =&gt; 'Jue',
      'Friday'    =&gt; 'Viernes',		'Fri' =&gt; 'Vie',
      'Saturday'  =&gt; 'S&amp;aacute;bado',	'Sat' =&gt; 'Sab' 
    );

%month = 
    (
 'January' =&gt; 'Enero',   'February' =&gt; 'Febrero' ,  'March'     =&gt; 'Marzo',
 'Jan'     =&gt; 'Ene',     'Feb'      =&gt; 'Feb',       'Mar'       =&gt; 'Mar',
 'April'   =&gt; 'Abril',   'May'      =&gt; 'Mayo',      'June'      =&gt; 'Junio', 
 'Apr'     =&gt; 'Abr',     'May'      =&gt; 'Mai',       'Jun'       =&gt; 'Jun',
 'July'    =&gt; 'Julio',   'August'   =&gt; 'Agosto',    'September' =&gt; 'Setiembre', 
 'Jul'     =&gt; 'Jul',     'Aug'      =&gt; 'Ago',       'Sep'       =&gt; 'Set', 
 'October' =&gt; 'Octubre', 'November' =&gt; 'Noviembre', 'December'  =&gt; 'Diciembre', 
 'Oct'     =&gt; 'Oct',     'Nov'       =&gt; 'Nov',      'Dec'       =&gt; 'Dic' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." a las ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] de $month{$foo[2]} de $foo[3]"; 
    };
  return $string;
}
# Swedish

sub swedish
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     #'charset=iso-8859-1'                     =&gt; 'charset=iso-8859-1',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'Maximalt inkommande trafik i 5 minuter',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'Maximalt utg&amp;aring;ende trafik i 5 minuter',
     'the device'                             =&gt; 'enheten',
     'The statistics were last updated(.*)'   =&gt; 'Statistiken blev senast uppdaterad$1',
     ' Average\)'                             =&gt; ')',
     'Average'                                =&gt; 'Medel',
     #'Max'                                    =&gt; 'Max',
     'Current'                                =&gt; 'Senaste',
     'version'                                =&gt; 'version',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Daglig graf (samplingsintervall $1 minut(er)',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Veckovis graf (medelvärde per 30 minuter' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'M&amp;aring;natlig graf (medelvärde per 2 timmar',
     '`Yearly\' Graph \(1 Day'                =&gt; '&amp;Aring;rlig graf (medelvärde per dygn', 
     'Incoming Traffic in (\S+) per Second'   =&gt; 'Inkommande trafik i $1 per sekund',
     'Outgoing Traffic in (\S+) per Second'   =&gt; 'Utgående trafik i $1 per sekund',
     'at which time (.*) had been up for(.*)' 		=&gt; 'då $1 varit ig&amp;aring;ng i$2',
     # '([kMG]?)([bB])/s'                 =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'              =&gt; '\$1\$2/min',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     # 'Bits'                                =&gt; 'Bits',
     # 'Bytes'                              =&gt; 'Bytes',
     #'In'                                     =&gt; 'In',
     'Out'                                    =&gt; 'Ut',
     'Percentage'                             =&gt; 'Procent',
     'Ported to OpenVMS Alpha by'             =&gt; 'Portad till OpenVMS av', 
     'Ported to WindowsNT by'                 =&gt; 'Portad till WindowsNT av',
     'and'                                    =&gt; 'och',
     '^GREEN'                                  =&gt; 'GR&amp;Ouml;N',
     'BLUE'                                   =&gt; 'BL&amp;Aring;',
     'DARK GREEN'                             =&gt; 'M&amp;Ouml;RKGR&amp;Ouml;N',
     'MAGENTA'                                =&gt; 'MANGENTA',
     'AMBER'                                  =&gt; 'BRUN',

  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 's&amp;ouml;ndag',    'Sun' =&gt; 's&amp;ouml;n',
      'Monday'    =&gt; 'm&amp;aring;ndag',           'Mon' =&gt; 'm&amp;aring;n',
      'Tuesday'   =&gt; 'tisdag',          'Tue' =&gt; 'tis',
      'Wednesday' =&gt; 'onsdag',           'Wed' =&gt; 'ons',
      'Thursday'  =&gt; 'torsdag',          'Thu' =&gt; 'tor',
      'Friday'    =&gt; 'fredag',           'Fri' =&gt; 'fre',
      'Saturday'  =&gt; 'l&amp;ouml;rdag',    'Sat' =&gt; 'l&amp;ouml;r' 

    );

%month = 
    (
      'January'   =&gt; 'januari',   'February'  =&gt; 'februari',    'March'     =&gt; 'mars',
      'Jan'       =&gt; 'jan',       'Feb'       =&gt; 'feb',         'Mar'       =&gt; 'mar',
      'April'     =&gt; 'april',     'May'       =&gt; 'maj',         'June'      =&gt; 'juni', 
      'Apr'       =&gt; 'apr',       'May'       =&gt; 'maj',         'Jun'       =&gt; 'jun',
      'July'      =&gt; 'juli',      'August'    =&gt; 'augusti',      'September' =&gt; 'september', 
      'Jul'       =&gt; 'jul',       'Aug'       =&gt; 'aug',         'Sep'       =&gt; 'sep', 
      'October'   =&gt; 'oktober',   'November'  =&gt; 'november',    'December'  =&gt; 'december', 
      'Oct'       =&gt; 'okt',       'Nov'       =&gt; 'nov',         'Dec'       =&gt; 'dec' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." kl.".$quux[1]; 
      };
      return "$wday{$foo[0]} den $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

  };
# Turkish

sub turkish
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'iso-8859-9',
     'Maximal 5 Minute Incoming Traffic'      =&gt; '5 dakika için en yüksek giriþ trafiði',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; '5 dakika için en yüksek çýkýþ trafiði',
     'the device'                             =&gt; 'aygýt',
     'The statistics were last updated(.*)'   =&gt; 'Ýstatistiklerin en son güncellenmesi $1',
     ' Average\)'                             =&gt; ' Ortalama)',
     'Average'                                =&gt; 'Ortalama',
     'Max'                                    =&gt; 'EnYüksek;x',
     'Current'                                =&gt; 'ÞuAnki',
     'version'                                =&gt; 'sürüm',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Günlük ($1 dakika :',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Haftalýk (30 dakika :' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Aylýk (2 saat :',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Yýllýk (1 gün :', 
     'Incoming Traffic in (\S+) per Second'   =&gt; '$1 deki saniyelik giriþ trafiði',
     'Outgoing Traffic in (\S+) per Second'   =&gt; '$1 deki saniyelik çýkýþ trafiði',
     'at which time (.*) had been up for(.*)' =&gt; '$1 Ne zamandan $2 beri ayakta',
     # '([kMG]?)([bB])/s'                      =&gt; '\$1\$2/s',
     # '([kMG]?)([bB])/min'                    =&gt; '\$1\$2/min',
     # '([kMG]?)([bB])/h'                       =&gt; '$1$2/t',
     # 'Bits'                                  =&gt; 'Bit',
     # 'Bytes'                                 =&gt; 'Byte'
     'In'                                     =&gt; 'Giriþ',
     'Out'                                    =&gt; 'Çýkýþ',
     'Percentage'                             =&gt; 'Yüzge',
     'Ported to OpenVMS Alpha by'             =&gt; 'OpenVMS Alpha ya uyarlayan',
     'Ported to WindowsNT by'                 =&gt; 'WindowsNT ye uyarlayan',
     'and'                                    =&gt; 've',
     '^GREEN'                                 =&gt; 'YEÞÝL',
     'BLUE'                                   =&gt; 'MAVÝ',
     'DARK GREEN'                             =&gt; 'KOYU YEÞÝL',
     'MAGENTA'                                =&gt; 'MACENTA',
     'AMBER'                                  =&gt; 'AMBER'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; 'Pazar',		'Pzr' =&gt; 'Dom',
      'Monday'    =&gt; 'Pazartesi',	'Pzt' =&gt; 'Lun',
      'Tuesday'   =&gt; 'Salý',		'Sal' =&gt; 'Mar',
      'Wednesday' =&gt; 'Çarþamba',	'Çrþ' =&gt; 'Mi&amp;eacute;',
      'Thursday'  =&gt; 'Perþembe',	'Prþ' =&gt; 'Jue',
      'Friday'    =&gt; 'Cuma',		'Cum' =&gt; 'Vie',
      'Saturday'  =&gt; 'Cumartesi',	'Cmr' =&gt; 'Sab' 
    );

%month = 
    (
 'January' =&gt; 'Ocak',    'February' =&gt; 'Þubat',     'March'     =&gt; 'Mart',
 'Jan'     =&gt; 'Ock',     'Feb'      =&gt; 'Þub',       'Mar'       =&gt; 'Mar',
 'April'   =&gt; 'Nisan',   'May'      =&gt; 'Mayýs',     'June'      =&gt; 'Haziran', 
 'Apr'     =&gt; 'Nis',     'May'      =&gt; 'May',       'Jun'       =&gt; 'Hzr',
 'July'    =&gt; 'Temmuz',  'August'   =&gt; 'Agustos',   'September' =&gt; 'Eylül', 
 'Jul'     =&gt; 'Tem',     'Aug'      =&gt; 'Agu',       'Sep'       =&gt; 'Eyl', 
 'October' =&gt; 'Ekim',    'November' =&gt; 'Kasým',     'December'  =&gt; 'Aralýk', 
 'Oct'     =&gt; 'Ekm',     'Nov'      =&gt; 'Kas',       'Dec'       =&gt; 'Ara' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]." a las ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] de $month{$foo[2]} de $foo[3]"; 
    };
}


# Ukrainian

sub ukrainian
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  
  # regexp =&gt; replacement string NOTE does not use autovars $1,$2...
  # charset=iso-2022-jp

  %translations =
  (  
     'iso-8859-1'                             =&gt; 'koi8-u',
     'Maximal 5 Minute Incoming Traffic'      =&gt; 'íÁËÓÉÍÁÌØÎÉÊ ×È¦ÄÎÉÊ ÔÒÁÆ¦Ë ÚÁ 5 È×ÉÌÉÎ',
     'Maximal 5 Minute Outgoing Traffic'      =&gt; 'íÁËÓÉÍÁÌØÎÉÊ ×ÉÈ¦ÄÎÉÊ ÔÒÁÆ¦Ë ÚÁ 5 È×ÉÌÉÎ',
     'the device'                             =&gt; 'ÐÒÉÓÔÒ¦Ê',
     'The statistics were last updated(.*)'   =&gt; 'ïÓÔÁÎÎ¤ ÏÎÏ×ÌÅÎÎÑ ÓÔÁÔÉÓÔÉËÉ ÂÕÌÏ ×: $1',
     ' Average\)'                             =&gt; ')',
     'Average'                                =&gt; 'óÅÒÅÄÎ¦Ê',
     'Max'                                    =&gt; 'íÁËÓ.',
     'Current'                                =&gt; 'ðÏÔÏÞÎÉÊ',
     'version'                                =&gt; '×ÅÒÓ¦Ñ',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'äÏÂÏ×ÉÊ ÔÒÁÆ¦Ë (ÓÅÒÅÄÎ¤ ÚÁ $1 È×ÉÌÉÎ',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'ôÉÖÎÅ×ÉÊ ÔÒÁÆ¦Ë (ÓÅÒÅÄÎ¤ ÚÁ 30 È×ÉÌÉÎ' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'í¦ÓÑÞÎÉÊ ÔÒÁÆ¦Ë  (ÓÅÒÅÄÎ¤ ÚÁ 2 ÇÏÄÉÎÉ',
     '`Yearly\' Graph \(1 Day'                =&gt; 'ò¦ÞÎÉÊ ÔÒÁÆ¦Ë (ÓÅÒÅÄÎ¤ ÚÁ 1 ÄÅÎØ', 
     'Incoming Traffic in (\S+) per Second'   =&gt; '÷È¦ÄÎÉÊ ÔÒÁÆ¦Ë × $1 ÚÁ ÓÅËÕÎÄÕ',
     'Outgoing Traffic in (\S+) per Second'   =&gt; '÷ÉÈ¦ÄÎÉÊ ÔÒÁÆ¦Ë × $1 ÚÁ ÓÅËÕÎÄÕ',
     'at which time (.*) had been up for(.*)' =&gt; '$1 ÂÕÌÏ ×ËÌÀÞÅÎÏ Ï $2',
     #'([kMG]?)([bB])/s'                      =&gt; '$1$1/Ó',
     #'([kMG]?)([bB])/min'                    =&gt; '$1$2/È×',
     '([kMG]?)([bB])/h'                       =&gt; '$1$2/ÇÏÄ',
     'Bits'                                  =&gt; 'Â¦ÔÁÈ',
     'Bytes'                                 =&gt; 'ÂÁÊÔÁÈ',
     'In'                                     =&gt; '÷È',
     'Out'                                    =&gt; '÷ÉÈ',
     'Percentage'                             =&gt; '÷¦ÄÓÏÔËÉ',
     'Ported to OpenVMS Alpha by'             =&gt; 'áÄÁÐÔÏ×ÁÎÏ ÄÌÑ OpenVMS Alpha',
     'Ported to WindowsNT by'                 =&gt; 'áÄÁÐÔÏ×ÁÎÏ ÄÌÑ WindowsNT',
     'and'                                    =&gt; '¦',
     '^GREEN'                                  =&gt; 'úåìåîéê',
     'BLUE'                                   =&gt; 'óéî¶ê',
     'DARK GREEN'                             =&gt; 'ôåíîïúåìåîéê',
     'MAGENTA'                                =&gt; 'æ¶ïìåôï÷éê',
     'AMBER'                                  =&gt; 'âõòûôéîï÷éê'
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; ' îÅÄ¦ÌÀ',		'Sun' =&gt; 'îÄ',
      'Monday'    =&gt; ' ðÏÎÅÄ¦ÌÏË',	'Mon' =&gt; 'ðÎ',
      'Tuesday'   =&gt; ' ÷¦×ÔÏÒÏË',	'Tue' =&gt; '÷×',
      'Wednesday' =&gt; ' óÅÒÅÄÕ',		'Wed' =&gt; 'óÒ',
      'Thursday'  =&gt; ' þÅÔ×ÅÒ',		'Thu' =&gt; 'þÔ',
      'Friday'    =&gt; ' ð\'ÑÔÎÉÃÀ',	'Fri' =&gt; 'ðÔ',
      'Saturday'  =&gt; ' óÕÂÏÔÕ',		'Sat' =&gt; 'óÂ' 
    );

%month = 
    (
      'January'   =&gt; 'ó¦ÞÎÑ',   'February'  =&gt; 'ìÀÔÏÇÏ' ,    'March'     =&gt; 'âÅÒÅÚÎÑ',
      'Jan'       =&gt; 'ó¦Þ',     'Feb'       =&gt; 'ìÀÔ',        'Mar'       =&gt; 'âÅÒ',
      'April'     =&gt; 'ë×¦ÔÎÑ',  'May'       =&gt; 'ôÒÁ×ÎÑ',     'June'      =&gt; 'þÅÒ×ÎÑ', 
      'Apr'       =&gt; 'ë×¦',     'May'       =&gt; 'ôÒÁ',        'Jun'       =&gt; 'þÅÒ',
      'July'      =&gt; 'ìÉÐÎÑ',   'August'    =&gt; 'óÅÒÐÎÑ',     'September' =&gt; '÷ÅÒÅÓÎÑ', 
      'Jul'       =&gt; 'ìÉÐ',     'Aug'       =&gt; 'óÅÒ',        'Sep'       =&gt; '÷ÅÒ', 
      'October'   =&gt; 'öÏ×ÔÎÑ',  'November'  =&gt; 'ìÉÓÔÏÐÁÄÁ',  'December'  =&gt; 'çÒÕÄÎÑ', 
      'Oct'       =&gt; 'öÏ×',     'Nov'       =&gt; 'ìÉÓ',        'Dec'       =&gt; 'çÒÕ' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]."Ò. Ï ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};


# Ukrainian1251 - windowze encoding

sub ukrainian1251
{
  my $string = shift;
return "" unless defined $string;
  my(%translations,%month,%wday);

  my($i,$j);
  my(@dollar,@quux,@foo);

  %translations =
  (
     'iso-8859-1'                             =&gt; 'windows-1251',
  'Maximal 5 Minute Incoming Traffic'		=&gt; 'Ìàêñèìàëüíèé âõ³äíèé òðàô³ê çà 5 õâèëèí',
  'Maximal 5 Minute Outgoing Traffic'		=&gt; 'Ìàêñèìàëüíèé âèõ³äíèé òðàô³ê çà 5 õâèëèí',
  'the device'					=&gt; 'ïðèñòð³é',
  'The statistics were last updated(.*)'	=&gt; 'Îñòàííº îíîâëåííÿ ñòàòèñòèêè: $1',
     ' Average\)'                             =&gt; ')',
     'Average'                                =&gt; 'Ñåðåäí³é',
     'Max'                                    =&gt; 'Ìàêñèìàëüíèé',
     'Current'                                =&gt; 'Ïîòî÷íèé',
  'version'					=&gt; 'âåðñ³ÿ',
     '`Daily\' Graph \((.*) Minute'           =&gt; 'Äåííèé òðàô³ê (â ñåðåäíüîìó çà $1 õâèëèí',
     '`Weekly\' Graph \(30 Minute'            =&gt; 'Òèæíåâèé òðàô³ê (â ñåðåäíüîìó çà 30 õâèëèí' ,
     '`Monthly\' Graph \(2 Hour'              =&gt; 'Ì³ñÿ÷íèé òðàô³ê (â ñåðåäíüîìó çà äâi ãîäèíè',
     '`Yearly\' Graph \(1 Day'                =&gt; 'Ð³÷íèé òðàô³ê (â ñåðåäíüîìó çà îäèí äåíü', 
  'Incoming Traffic in (\S+) per Second'	=&gt; 'Âõ³äíèé òðàô³ê â $1 çà ñåêóíäó',
  'Outgoing Traffic in (\S+) per Second'	=&gt; 'Âèõ³äíèé òðàô³ê â $1 çà ñåêóíäó',
  'at which time (.*) had been up for(.*)'	=&gt; '$1 â ä³¿: $2',
  '([kMG]?)([bB])/s'				=&gt; '$1$1/ñåê',
  '([kMG]?)([bB])/min'				=&gt; '$1$2/õâ',
  '([kMG]?)([bB])/h'				=&gt; '$1$2/ãîä',
  '([bB])/s'					=&gt; '$1/ñåê',
  '([bB])/min'					=&gt; '$1/õâ',
  '([bB])/h'					=&gt; '$1/ãîä',
  'Bits'					=&gt; 'á³òàõ',
  'Bytes'					=&gt; 'áàéòàõ',
     'In'                                     =&gt; 'âõ³ä',
     'Out'                                    =&gt; 'âèõ³ä',
     'Percentage'                             =&gt; 'Â³äñîòîê',
  'Ported to OpenVMS Alpha by'			=&gt; 'Ïîðòîâàíî íà OpenVMS Alpha',
  'Ported to WindowsNT by'			=&gt; 'Ïîðòîâàíî íà WindowsNT',
  'and'						=&gt; 'òà',
  'RED'						=&gt; '×ÅÐÂÎÍÈÉ',
  '^GREEN'					=&gt; 'ÇÅËÅÍÈÉ',
  'BLUE'					=&gt; 'ÑÈÍ²É',
  'DARK GREEN'					=&gt; 'ÒÅÌÍÎÇÅËÅÍÈÉ',
  'MAGENTA'					=&gt; 'Ô²ÎËÅÒÎÂÈÉ',
  'AMBER'					=&gt; 'ÁÓÐØÒÈÍÎÂÈÉ',
  );

# maybe expansions with replacement of whitespace would be more appropriate

foreach $i (keys %translations)
{  
  my $trans = $translations{$i};
  $trans =~ s/\|/\|/;  
  return $string if eval " \$string =~ s|\${i}|${trans}| ";
};

%wday = 
    (
      'Sunday'    =&gt; ' Íåä³ëÿ',		'Sun' =&gt; 'Íä',
      'Monday'    =&gt; ' Ïîíåä³ëîê',	'Mon' =&gt; 'Ïí',
      'Tuesday'   =&gt; ' Â³âòîðîê',	'Tue' =&gt; 'Âò',
      'Wednesday' =&gt; ' Ñåðåäà',		'Wed' =&gt; 'Ñð',
      'Thursday'  =&gt; ' ×åòâåð',		'Thu' =&gt; '×ò',
      'Friday'    =&gt; ' Ï\'ÿòíèöÿ',	'Fri' =&gt; 'Ïò',
      'Saturday'  =&gt; ' Ñóáîòà',		'Sat' =&gt; 'Ñá' 
    );

%month = 
    (
      'January'   =&gt; 'Ñ³÷íÿ',   'February'  =&gt; 'Ëþòîãî' ,    'March'     =&gt; 'Áåðåçíÿ',
      'Jan'       =&gt; 'Ñ³÷',       'Feb'       =&gt; 'Ëþò',         'Mar'       =&gt; 'Áåð',
      'April'     =&gt; 'Êâ³òíÿ',     'May'       =&gt; 'Òðàâíÿ',         'June'      =&gt; '×åðâíÿ', 
      'Apr'       =&gt; 'Êâò',       'May'       =&gt; 'Òðâ',         'Jun'       =&gt; '×åð',
      'July'      =&gt; 'Ëèïíÿ',   'August'    =&gt; 'Ñåðïíÿ',        'September' =&gt; 'Âåðåñíÿ', 
      'Jul'       =&gt; 'Ëèï',       'Aug'       =&gt; 'Ñåð',         'Sep'       =&gt; 'Âåð', 
      'October'   =&gt; 'Æîâòíÿ',   'November'  =&gt; 'Ëèñòîïàäà',    'December'  =&gt; 'Ãðóäíÿ', 
      'Oct'       =&gt; 'Æîâ',       'Nov'       =&gt; 'Ëèñ',         'Dec'       =&gt; 'Ãðä' 
    );

  @foo=($string=~/(\S+),\s+(\S+)\s+(\S+)(.*)/);
  if($foo[0] &amp;&amp; $wday{$foo[0]} &amp;&amp; $foo[2] &amp;&amp; $month{$foo[2]} )
    {
	if($foo[3]=~(/(.*)at(.*)/))
      { 
        @quux=split(/at/,$foo[3]);
        $foo[3]=$quux[0]."ð. ".$quux[1]; 
      };
      return "$wday{$foo[0]} $foo[1] $month{$foo[2]} $foo[3]"; 
    };

#
# handle two different time/date formats:  
# return "$wday, $mday $month ".($year+1900)." at $hour:$min";
# return "$wday, $mday $month ".($year+1900)." $hour:$min:$sec GMT";
#

# handle nontranslated strings which ought to be translated
# print STDERR "$_\n" or print DEBUG "not translated $_";
# but then again we might not want/need to translate all strings
  
  return $string;

};

</pre></body></html>