<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Luhn-Algorithmus</id>
	<title>Luhn-Algorithmus - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Luhn-Algorithmus"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Luhn-Algorithmus&amp;action=history"/>
	<updated>2026-05-30T09:22:21Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Luhn-Algorithmus&amp;diff=523944&amp;oldid=prev</id>
		<title>imported&gt;Kuebi: Änderungen von 91.53.153.168 (Diskussion) auf die letzte Version von Reinhard Kraasch zurückgesetzt</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Luhn-Algorithmus&amp;diff=523944&amp;oldid=prev"/>
		<updated>2025-03-19T07:27:08Z</updated>

		<summary type="html">&lt;p&gt;Änderungen von &lt;a href=&quot;/index.php/Spezial:Beitr%C3%A4ge/91.53.153.168&quot; title=&quot;Spezial:Beiträge/91.53.153.168&quot;&gt;91.53.153.168&lt;/a&gt; (&lt;a href=&quot;/index.php?title=Benutzer_Diskussion:91.53.153.168&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer Diskussion:91.53.153.168 (Seite nicht vorhanden)&quot;&gt;Diskussion&lt;/a&gt;) auf die letzte Version von &lt;a href=&quot;/index.php?title=Benutzer:Reinhard_Kraasch&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer:Reinhard Kraasch (Seite nicht vorhanden)&quot;&gt;Reinhard Kraasch&lt;/a&gt; zurückgesetzt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:Bahn Logo.jpg|mini|Loknummer mit Prüfziffer (2) nach dem Luhn-Algorithmus bei der [[Deutsche Bahn|Deutschen Bahn]]]]&lt;br /&gt;
&lt;br /&gt;
Der &amp;#039;&amp;#039;&amp;#039;Luhn-Algorithmus&amp;#039;&amp;#039;&amp;#039; oder die &amp;#039;&amp;#039;Luhn-Formel&amp;#039;&amp;#039;, auch bekannt als „[[Modulo]] 10“- oder „mod 10“-[[Algorithmus]] und als &amp;#039;&amp;#039;&amp;#039;Double-Add-Double-Methode&amp;#039;&amp;#039;&amp;#039; ist eine einfache Methode zur Berechnung einer [[Prüfsumme]]. Er wurde in den 1950er-Jahren von dem deutsch-amerikanischen Informatiker [[Hans Peter Luhn]] entwickelt, zum Patent angemeldet&amp;lt;ref&amp;gt;{{Patent| Land=US| V-Nr=2950048| Code=A| Titel=Computer for verifying numbers| A-Datum=1954-06-01| V-Datum=1960-08-23| Anmelder=International Business Machines Corporation| Erfinder=Hans P. Luhn}}&amp;lt;/ref&amp;gt; und ist heute [[Gemeinfreiheit|gemeinfrei]] und sehr weit verbreitet. Unter anderem dient der Luhn-Algorithmus der Verifizierung von [[Kreditkarte]]nnummern und kanadischen [[Sozialversicherungsnummer]]n, [[Internationale Wertpapierkennnummer|ISINs]] und den siebenstelligen [[Kontonummer]]n der [[Deutsche Bank|Deutschen Bank]] und der [[Commerzbank]] sowie vieler [[Sparkasse]]n. Er kommt auch bei den Nummern der Lokomotiven und Triebwagen nach dem [[UIC-Kennzeichnung der Triebfahrzeuge|Kennzeichnungsschema der UIC]] zum Einsatz, ebenso wie seit 1968 schon im [[Baureihenschema der DB|Baureihenschema der Bundesbahn]].&lt;br /&gt;
&lt;br /&gt;
Der Luhn-Algorithmus erkennt jeden Fehler an einzelnen Ziffern, ebenso in den meisten Fällen Vertauschungen von benachbarten Ziffern.&lt;br /&gt;
&lt;br /&gt;
== Informelle Erläuterung ==&lt;br /&gt;
Der Luhn-Algorithmus nutzt eine [[Prüfziffer]], die in der Regel hinten an die unvollständige Identifikationsnummer angehängt ist. Auf diese Weise ergibt sich die vollständige Nummer. Diese wird als gültig angesehen, wenn sie den folgenden Prüf-Algorithmus besteht:&lt;br /&gt;
&lt;br /&gt;
# Durchlaufe die Nummer (mit der Prüfziffer) ziffernweise von rechts nach links und bilde die Summe der Ziffern, aber: Verdoppele dabei jede zweite Ziffer, und wenn dabei ein Wert größer als 9 herauskommt, subtrahiere 9&lt;br /&gt;
# Wenn die Summe als letzte Ziffer eine 0 hat, erkenne die Nummer als gültig an und sonst nicht&lt;br /&gt;
&lt;br /&gt;
Um beispielsweise die Nummer &amp;#039;&amp;#039;&amp;#039;18937&amp;#039;&amp;#039;&amp;#039; zu prüfen (Prüfziffer ist hier 7), werden die Ziffern von rechts nach links, also beginnend bei der 7, durchlaufen und aufsummiert. Jede zweite Ziffer wird dabei verdoppelt, also in diesem Beispiel die 3 und die 8. Da beim Verdoppeln der 8 ein Wert größer als 9 herauskommt, wird hiervon 9 subtrahiert, sodass sich 16 − 9 = 7 ergibt.&lt;br /&gt;
&lt;br /&gt;
Somit wird die Summe berechnet als &amp;#039;&amp;#039;&amp;#039;7&amp;#039;&amp;#039;&amp;#039; + (2 × &amp;#039;&amp;#039;&amp;#039;3&amp;#039;&amp;#039;&amp;#039;) + &amp;#039;&amp;#039;&amp;#039;9&amp;#039;&amp;#039;&amp;#039; + (2 × &amp;#039;&amp;#039;&amp;#039;8&amp;#039;&amp;#039;&amp;#039; − 9) + &amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039; = 7 + 6 + 9 + 7 + 1 = 30. Da die 30 auf 0 endet, ist die Nummer gültig.&lt;br /&gt;
&lt;br /&gt;
Technisch gesehen wird eine [[Quersumme#Gewichtete Quersumme|gewichtete Quersumme]] der Zahl berechnet, mit der besonderen Behandlung jeder zweiten Stelle. Das Ergebnis wird modulo 10 reduziert; dies bedeutet, dass es nicht auf das Ergebnis selbst ankommt, sondern nur auf den Rest, der bei ganzzahliger Division durch 10 herauskommt. Dieser Rest ist gleich der letzten Stelle des Ergebnisses.&lt;br /&gt;
&lt;br /&gt;
Ist dieser Rest gleich 0, was gleichbedeutend damit ist, dass das Ergebnis durch 10 teilbar ist, so wird die Nummer als gültig angesehen, ansonsten nicht.&lt;br /&gt;
&lt;br /&gt;
Der Luhn-Algorithmus erkennt es, wenn bei der Eingabe einer Nummer versehentlich eine Ziffer falsch eingegeben wird. Damit verändert sich die Summe um einen Betrag zwischen 1 und 9 und ist damit nicht mehr durch 10 teilbar. Wenn in obigem Beispiel statt der 1 eine 4 eingegeben wird, so ist das Ergebnis 33 und damit nicht durch 10 teilbar. Wenn statt der 8 eine 6 eingegeben wird, ist das Ergebnis 26 und damit nicht durch 10 teilbar.&lt;br /&gt;
&lt;br /&gt;
Eine einzelne falsche Zifferneingabe würde auch bei einer normalen Quersummenbildung erkannt – nicht dagegen einer der häufig vorkommenden „[[Zahlendreher]]“, also die Vertauschung zweier aufeinander folgenden Ziffern. Die normale Quersumme würde sich dadurch nicht ändern.&lt;br /&gt;
&lt;br /&gt;
Der Luhn-Algorithmus erkennt einen solchen Zahlendreher dadurch, dass nunmehr eine andere Ziffer als vorher verdoppelt wird und sich die Quersumme ändert. Beispielsweise ist die Zahl 190 gültig (Luhn-Prüfsumme 10), 910 jedoch nicht (Luhn-Prüfsumme 11), d.&amp;amp;nbsp;h. der Zahlendreher 19 zu 91 wird erkannt. Ausgenommen sind lediglich Zahlendreher der Ziffern 0 und 9, da ihre Quersummen mit und ohne Verdopplung jeweils gleich sind. So sind beispielsweise 190 und 109 beide gültig (Luhn-Prüfsumme  10), d.&amp;amp;nbsp;h. der Zahlendreher 90 zu 09 wird nicht erkannt.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Nicht&amp;#039;&amp;#039; erkannt werden Vertauschungen von Ziffern, deren Positionen sich um einen geraden Betrag unterscheiden – wenn also beispielsweise die 3. und die 5. Ziffer oder die 2. und 6. Ziffer vertauscht werden. Ebenso wird möglicherweise nicht erkannt, wenn zwei oder mehr Ziffern falsch eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
== Beispielimplementierungen ==&lt;br /&gt;
Bei den folgenden Implementierungen des Algorithmus wird die Nummer als Zeichenfolge, also als String &amp;lt;code&amp;gt;number&amp;lt;/code&amp;gt; an die Funktion &amp;lt;code&amp;gt;checkLuhn&amp;lt;/code&amp;gt; übergeben. In einigen dieser Beispiele wird dieser String von links nach rechts durchlaufen – also umgekehrt als in der Definition des Algorithmus. Indem aber zu Anfang ermittelt wird, ob die Länge des Strings gerade oder ungerade ist, gelingt es trotzdem, die Ziffern an den richtigen Positionen zu verdoppeln.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Ist es in Pseudo-Code überhaupt noch eine BeispielIMPLEMENTIERUNG? --Yarin Kaul --&amp;gt;&lt;br /&gt;
&amp;lt;!--Es fehlten geschweifte Klammern um den If-Teil. Ich habe die umständliche Bezeichnung purportedCC ersetzt durch number -- hwlang --&amp;gt;&lt;br /&gt;
=== Pseudo-Code ===&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;function&amp;#039;&amp;#039;&amp;#039; checkLuhn(&amp;#039;&amp;#039;string&amp;#039;&amp;#039; number)&lt;br /&gt;
 {&lt;br /&gt;
     &amp;#039;&amp;#039;int&amp;#039;&amp;#039; sum := 0&lt;br /&gt;
     &amp;#039;&amp;#039;int&amp;#039;&amp;#039; lng := length(number)&lt;br /&gt;
     &amp;#039;&amp;#039;int&amp;#039;&amp;#039; parity := lng modulo 2&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;for&amp;#039;&amp;#039;&amp;#039; i &amp;#039;&amp;#039;&amp;#039;from&amp;#039;&amp;#039;&amp;#039; 0 &amp;#039;&amp;#039;&amp;#039;to&amp;#039;&amp;#039;&amp;#039; lng - 1&lt;br /&gt;
     {&lt;br /&gt;
         &amp;#039;&amp;#039;int&amp;#039;&amp;#039; digit := toInteger(number[i])&lt;br /&gt;
         &amp;#039;&amp;#039;&amp;#039;if&amp;#039;&amp;#039;&amp;#039; i modulo 2 = parity&lt;br /&gt;
         {&lt;br /&gt;
             digit := digit × 2&lt;br /&gt;
             &amp;#039;&amp;#039;&amp;#039;if&amp;#039;&amp;#039;&amp;#039; digit &amp;gt; 9&lt;br /&gt;
                 digit := digit - 9&lt;br /&gt;
         }&lt;br /&gt;
         sum := sum + digit&lt;br /&gt;
     }&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;return&amp;#039;&amp;#039;&amp;#039; (sum modulo 10) = 0&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
=== Java ===&lt;br /&gt;
&amp;lt;!-- Author: Michael Mellenthin --&amp;gt;&lt;br /&gt;
&amp;lt;!-- korrigiert von A. Heusingfeld (Goldstift) --&amp;gt;&lt;br /&gt;
&amp;lt;!-- korrigiert von T. Kummerow (wir holen die nummern schon von hinten, parity check unnötig. Alter algorithmus schlug fehl bei ungleicher zahl von Zahlen. Andere code Beispiele überprüfen!!) --&amp;gt;&lt;br /&gt;
&amp;lt;!-- korrigiert von C. Kassen (Da es sich hier um Beispiel Code handelt, sollte man ihn möglichst schön gestalten.) --&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
public static boolean check(int[] digits) {&lt;br /&gt;
    int sum = 0;&lt;br /&gt;
    int length = digits.length;&lt;br /&gt;
&lt;br /&gt;
    for (int i = 0; i &amp;lt; length; i++) {&lt;br /&gt;
        // get digits in reverse order&lt;br /&gt;
        int digit = digits[length - i - 1];&lt;br /&gt;
        // every 2nd number multiply with 2&lt;br /&gt;
        if (i % 2 == 1) {&lt;br /&gt;
            digit *= 2;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        sum += digit &amp;gt; 9 ? digit - 9 : digit;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return sum % 10 == 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== JavaScript ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function check(code)&lt;br /&gt;
{&lt;br /&gt;
    if (Number.isNaN(code)) return &amp;#039;&amp;#039;;&lt;br /&gt;
    var len = code.length;&lt;br /&gt;
    var parity = len % 2;&lt;br /&gt;
    var sum = 0;&lt;br /&gt;
    for (var i = len-1; i &amp;gt;= 0; i--)&lt;br /&gt;
	{&lt;br /&gt;
        var d = parseInt(code.charAt(i));&lt;br /&gt;
        if (i % 2 == parity) { d *= 2 }&lt;br /&gt;
        if (d &amp;gt; 9) { d -= 9 }&lt;br /&gt;
        sum += d;&lt;br /&gt;
    }&lt;br /&gt;
    return (sum % 10).toString();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&amp;lt;!--- Author: Karsten Rohrbach --&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def checkLuhn(number):&lt;br /&gt;
    sum = 0&lt;br /&gt;
    parity = len(number) % 2&lt;br /&gt;
    for i, digit in enumerate(int(x) for x in number):&lt;br /&gt;
        if i % 2 == parity:&lt;br /&gt;
            digit *= 2&lt;br /&gt;
            if digit &amp;gt; 9:&lt;br /&gt;
                digit -= 9&lt;br /&gt;
        sum += digit&lt;br /&gt;
    return sum % 10 == 0&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def checkLuhn(number):&lt;br /&gt;
    digits = list(map(int, number))&lt;br /&gt;
    return 0 == sum(digits + [ d + (d &amp;gt; 4) for d in digits[-2::-2] ]) % 10&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VB / VBA ===&lt;br /&gt;
&amp;lt;!--- Author: Harald Weillechner --&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;vbscript&amp;quot;&amp;gt;&lt;br /&gt;
Public Function checkLuhn(number As String) As Long&lt;br /&gt;
&lt;br /&gt;
    Dim StringLength As Long, parity As Long, sum As Long, i As Long, digit As Long&lt;br /&gt;
&lt;br /&gt;
    StringLength = Len(number)&lt;br /&gt;
    parity = StringLength Mod 2&lt;br /&gt;
    sum = 0&lt;br /&gt;
&lt;br /&gt;
    For i = StringLength To 1 Step -1&lt;br /&gt;
        digit = CLng(Mid(number, i, 1))&lt;br /&gt;
&lt;br /&gt;
        If (i Mod 2) &amp;lt;&amp;gt; parity Then&lt;br /&gt;
            digit = digit * 2&lt;br /&gt;
            If digit &amp;gt; 9 Then&lt;br /&gt;
                digit = digit - 9&lt;br /&gt;
            End If&lt;br /&gt;
        End If&lt;br /&gt;
&lt;br /&gt;
        sum = sum + digit&lt;br /&gt;
    Next i&lt;br /&gt;
    checkLuhn = sum Mod 10&lt;br /&gt;
End Function&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TSQL ===&amp;lt;!-- Author: Rüdiger Olschewsky --&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
CREATE FUNCTION FN_CheckLuhn(&lt;br /&gt;
  @Input NVARCHAR(MAX)&lt;br /&gt;
)&lt;br /&gt;
  RETURNS BIT&lt;br /&gt;
BEGIN&lt;br /&gt;
  DECLARE @CurrentDigit INT;&lt;br /&gt;
  DECLARE @Cnt INT = 0;&lt;br /&gt;
  DECLARE @Checksum BIGINT = 0;&lt;br /&gt;
&lt;br /&gt;
  -- check if input is numeric, else return null&lt;br /&gt;
  IF ISNUMERIC(@Input) = 0&lt;br /&gt;
    RETURN NULL&lt;br /&gt;
&lt;br /&gt;
  WHILE @Cnt &amp;lt; LEN(@Input)&lt;br /&gt;
    BEGIN&lt;br /&gt;
      -- get next rightmost digit&lt;br /&gt;
      SET @CurrentDigit = CAST(SUBSTRING(@Input, LEN(@Input) - @Cnt, 1) AS INT);&lt;br /&gt;
&lt;br /&gt;
      -- &amp;quot;add double&amp;quot; every second digit&lt;br /&gt;
      SET @CurrentDigit = @CurrentDigit + @CurrentDigit * (@Cnt % 2);&lt;br /&gt;
&lt;br /&gt;
      IF @CurrentDigit &amp;gt; 9&lt;br /&gt;
        SET @CurrentDigit = @CurrentDigit - 9;&lt;br /&gt;
&lt;br /&gt;
      SET @Checksum = @Checksum + @CurrentDigit;&lt;br /&gt;
&lt;br /&gt;
      SET @Cnt = @Cnt + 1;&lt;br /&gt;
    END&lt;br /&gt;
&lt;br /&gt;
  RETURN IIF(@Checksum % 10 = 0, 1, 0);&lt;br /&gt;
END&lt;br /&gt;
GO&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
Gegeben sei die Beispielidentifikationsnummer 446-667-651.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Ziffer !! Verdoppelt !! Reduziert !! Summe der Ziffern&lt;br /&gt;
|- align=&amp;quot;center&amp;quot;&lt;br /&gt;
| 1 ||  || 1 || 1&lt;br /&gt;
|- align=&amp;quot;center&amp;quot; style=&amp;quot;background:#FFFFAA;&amp;quot;&lt;br /&gt;
| 5 || 10 ||10 − 9 || 1&lt;br /&gt;
|- align=&amp;quot;center&amp;quot;&lt;br /&gt;
| 6 ||  || 6 || 6&lt;br /&gt;
|- align=&amp;quot;center&amp;quot; style=&amp;quot;background:#FFFFAA;&amp;quot;&lt;br /&gt;
| 7 || 14 || 14 − 9 || 5&lt;br /&gt;
|- align=&amp;quot;center&amp;quot;&lt;br /&gt;
| 6 || || 6 || 6&lt;br /&gt;
|- align=&amp;quot;center&amp;quot; style=&amp;quot;background:#FFFFAA;&amp;quot;&lt;br /&gt;
| 6 || 12 || 12 − 9 || 3&lt;br /&gt;
|- align=&amp;quot;center&amp;quot;&lt;br /&gt;
| 6 ||  || 6 || 6&lt;br /&gt;
|- align=&amp;quot;center&amp;quot; style=&amp;quot;background:#FFFFAA;&amp;quot;&lt;br /&gt;
| 4 || 8 || 8 || 8&lt;br /&gt;
|- align=&amp;quot;center&amp;quot;&lt;br /&gt;
| 4 ||  || 4 || 4&lt;br /&gt;
|- align=&amp;quot;center&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; | Gesamtsumme: || 40&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Die Summe 40 wird ganzzahlig durch 10 dividiert; der Rest ist 0 – also ist die Nummer gültig.&lt;br /&gt;
&lt;br /&gt;
== Anwendung bei der Girocard (ehemals EC-Karte) ==&lt;br /&gt;
Bei der Girocard unterscheidet sich die Berechnung der Nummer geringfügig. Es wird nämlich jede zweite Ziffer, ausgehend von der ganz rechten (statt der zweiten von rechts) verdoppelt.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://bavister.org/tools/genLuhn.php Luhn (mod 10)-Prüfziffer-Rechner]&lt;br /&gt;
* [https://www.ee.unb.ca/cgi-bin/tervo/luhn.pl Luhn (mod 10)-Fehlerprüfung]&lt;br /&gt;
* ähnlich siehe: Check Digit Verification of [https://www.cas.org/support/documentation/chemical-substances/checkdig CAS Registry Numbers]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Theoretische Informatik]]&lt;br /&gt;
[[Kategorie:Identifikationstechnik]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Kuebi</name></author>
	</entry>
</feed>