SCADAInput-Knoten

Mit dem SCADAInput-Knoten empfangen Sie Nachrichten von Clients, die in WebSphere MQ Telemetry Transport mit dem Broker verbunden sind.

Dieses Kapitel enthält folgende Abschnitte:

Zweck

Die SCADA-Geräteclients senden Nachrichten über das MQIsdp-Protokoll. Der SCADAInput-Knoten wandelt die Nachrichten in ein für WebSphere Message Broker verständliches Format um. Der Knoten errichtet zudem die Verarbeitungsumgebung für diese Nachrichten.

Nachrichtenflüsse, die Nachrichten bearbeiten, die von SCADA-Geräten empfangen wurden, müssen immer mit einem SCADAInput-Knoten beginnen. Legen Sie die Eigenschaften des SCADAInput-Knotens so fest, dass die Art des Nachrichtenempfangs gesteuert wird. Beispielsweise können Sie angeben, dass eine Nachricht unter Transaktionssteuerung verarbeitet werden soll.

Wenn Sie Nachrichtenflüsse mit SCADA-Knoten auf einem Broker implementieren, müssen Sie sie, unabhängig von der Anzahl der Nachrichtenflüsse, in einer einzelnen Ausführungsgruppe implementieren.

Die Ausführungsgruppe, für welche die SCADA-Flüsse implementiert werden, muss die Standardausführungsgruppe sein. Die Standardausführungsgruppe kann durch Überprüfen des Feldes defaultExecutionGroup in der Nachricht BIP2201 beim Ausführungsgruppenstart identifiziert werden. Der Wert true gibt die Standardausführungsgruppe an.

Da SCADA in erster Linie ein Publish/Subscribe-Protokoll ist, fügen Sie für gewöhnlich einen Publication-Knoten ein, um den Nachrichtenfluss zu beenden. Schließen Sie in Szenarios, in denen kein Publication-Knoten verwendet werden soll, einen SCADAOutput-Knoten ein. Wenn Sie einen SCADAOutput-Knoten in einen Nachrichtenfluss einschließen, müssen Sie, unabhängig von der Quelle der Nachrichten, auch einen SCADAInput-Knoten einschließen, da der SCADAInput die für den SCADAOutput-Knoten notwendigen Verbindungsinformationen enthält.

Wenn Sie einen Sendeknoten in einen Nachrichtenfluss einschließen, der mit einem SCADAInput-Knoten beginnt, können Sie einen beliebigen unterstützten Sendeknoten, einschließlich benutzerdefinierter Sendeknoten, verwenden. Sie können einen Nachrichtenfluss erstellen, der Nachrichten von SCADA-Geräten empfängt und Nachrichten für Clients generiert, die alle unterstützten Transportprotokolle verwenden, um eine Verbindung zum Broker herzustellen, da Sie den Nachrichtenfluss so konfigurieren können, dass der Broker auf Anforderung alle erforderlichen Konvertierungen bereitstellt.

Sie können anfordern, dass der Broker ein SCADA-Empfangsprogramm startet oder stoppt, indem Sie Nachrichten mit einem bestimmten Thema veröffentlichen. Diese Anforderung kann für alle Ports oder nur für einen in der Nachricht angegebenen Port verwendet werden.

Der SCADAInput-Knoten bearbeitet Nachrichten in den folgenden Nachrichtendomänen:
  • MRM
  • XML
  • XMLNS
  • XMLNSC
  • BLOB

z/OS platform Sie können keine SCADAInput-Knoten in Nachrichtenflüssen verwenden, die auf z/OS-Systemen implementiert werden sollen.

Um die Daten in einer eingehenden SCADA-Nachricht zu verarbeiten, müssen Sie einen Knoten wie beispielsweise den ResetContentDescriptor-Knoten einschließen und dessen Eigenschaften so konfigurieren, dass die Syntax des Bitstroms zwingend von einem nachfolgenden Knoten neu analysiert wird.

Wenn Sie einen Nachrichtenfluss erstellen, der als untergeordneter Nachrichtenfluss implementiert werden soll, können Sie keinen Standardempfangsknoten verwenden. Sie müssen einen Input-Knoten als ersten Knoten verwenden, um ein Eingangsterminal für den untergeordneten Nachrichtenfluss zu erstellen.

Wenn Ihr Nachrichtenfluss keine Nachrichten über SCADA-Verbindungen empfängt, wählen Sie einen der unterstützten Empfangsknoten aus.

Der SCADAInput-Knoten befindet sich im Ablagefach Weitere Protokolle der Palette und wird in der Workbench durch folgendes Symbol dargestellt:

Symbol für SCADAInput-Knoten

Diesen Knoten in einem Nachrichtenfluss verwenden

Stellen Sie sich als Beispiel zur Verwendung dieses Knotens vor, dass Sie einen Nachrichtenfluss mit einem SCADAInput-Knoten erstellen, der Nachrichten von einem Fernsensor empfängt, wenn dieser eine Änderung in seiner Betriebsumgebung feststellt (z. B. Abfall der Außentemperatur). Sie verbinden den Knoten mit einem MQOutput-Knoten, der diese Nachrichten in einer Warteschlange zur Verfügung stellt, die von einer WebSphere MQ-Anwendung bedient wird, welche die empfangenen Informationen analysiert und darauf antwortet.

In einem anderen Beispiel erstellen Sie einen Nachrichtenfluss mit einem SCADAInput-Knoten, der Nachrichten im Minutentakt von einem fernen System empfängt. Die Nachrichten enthalten Details zu den Systemschalterstellungen. Die empfangenen Daten werden einem ResetContentDescriptor-Knoten zugeführt und vom binären Format (BLOB) in das MRM-Nachrichtenformat umgesetzt. Die Informationen zum System werden unter Verwendung des Database-Knotens in einer Datenbank gespeichert und mithilfe eines Compute-Knotens umgestaltet, um eine XML-Nachricht zu erstellen, welche unter Verwendung eines Publication-Knotens veröffentlicht wird.

Da der Versand von XML-Nachrichten kostenintensiv ist (hohe Kosten bei der Satellitenübertragung pro Byte), sollten Sie vorzugsweise diese Methode verwenden, da die Daten vom Broker aufbereitet werden.

Den SCADAInput-Knoten konfigurieren

Wenn Sie eine Instanz des SCADAInput-Knotens in einen Nachrichtenfluss eingereiht haben, können Sie den Knoten konfigurieren. Der Abschnitt Nachrichtenflussknoten konfigurieren enthält weitere Informationen hierzu. Die Knoteneigenschaften werden in der Eigenschaftenansicht angezeigt. Klicken Sie zum Anzeigen der Knoteneigenschaften im Eigenschaftendialog entweder doppelt auf den Knoten, oder klicken Sie mit der rechten Maustaste und anschließend auf Eigenschaften.

Alle obligatorischen Eigenschaften, für die Sie einen Wert eingeben müssen (d. h. Eigenschaften ohne definierten Standardwert), sind mit einem Sternchen gekennzeichnet.

  1. Optional: Geben Sie auf der Registerkarte Beschreibung eine Kurzbeschreibung, eine ausführliche Beschreibung oder beides ein. Sie können den Knoten dort auch umbenennen.
  2. Legen Sie auf der Registerkarte Grundeinstellungen die folgenden Eigenschaften fest:
    • Aktualisieren Sie den Status des Empfangsprogramms durch Veröffentlichung im Steuerungsthema $SYS/SCADA/MQIsdpListener/<Portnummer>, wobei der Nutzlastteil der Nachricht auf EIN oder AUS steht. Empfangsprogramm bei Systemstart aktivieren ist zu Beginn aktiviert, d. h., das Empfangsprogramm für MQIsdp-Clients wird bei der Implementierung des Nachrichtenflusse initialisiert.
    • Geben Sie die Portnummer an, an der der MQIsdp-Server empfangsbereit ist. Dieser Wert muss eine eindeutige Portnummer sein, die keinen Konflikt mit anderen Empfangsprogrammen auslösen darf (z. B. mit Empfangsprogrammen für WebSphere MQ oder WebSphere MQ Everyplace). Die Standardnummer lautet 1883.
    • Geben Sie einen Wert für Max. Anz. Threads an, um die maximale Anzahl an Threads festzulegen, die dem MQIsdp-Server zur Client-Unterstützung zur Verfügung stehen. Der Standardwert lautet 500.

      Wenn Sie DB2 als Brokerdatenbank verwenden, geben Sie einen Wert an, der kleiner/gleich dem Wert ist, den Sie für die DB2-Konfigurationsparameter maxappls und maxagents angegeben haben. Weitere Informationen hierzu finden Sie unter ODBC-Verbindungen zu den Datenbanken herstellen.

    • Wählen Sie die Option Thread-Pooling verwenden, wenn der Knoten einen Thread-Pool zum Bedienen von Clients verwenden soll. Wenn Sie diese Option auswählen, wird die Anzahl der für den MQIsdp-Server verfügbaren Threads durch die Option Max. Anz. Threads begrenzt, wobei ein Wert zwischen 20 und 40 besonders effektiv ist. Wenn Sie diese Option nicht auswählen, wird für jeden Client, zu dem eine Verbindung hergestellt wird, ein neuer Thread erstellt. Das Kontrollkästchen ist zu Beginn inaktiviert.

      Verwenden Sie diese Option nur, wenn Sie die Verbindung einer großen Anzahl Clients (über 200) erwarten.

  3. Legen Sie auf der Registerkarte Syntaxanalyse der Eingabenachricht Werte für die Eigenschaften zur Beschreibung der Nachrichtendomäne, der Nachrichtengruppe, des Nachrichtentyps und des Nachrichtenformats fest, auf deren Basis der Knoten die Vorgehensweise bei der Syntaxanalyse der eingehenden Nachricht bestimmt.
    • Wählen Sie aus der Liste unter Nachrichtendomäne den Namen des von Ihnen verwendeten Parsers aus. Sie können eine der folgenden Optionen auswählen:
      • MRM
      • XML
      • XMLNS
      • XMLNSC
      • BLOB
    • Wenn Sie den MRM-Parser verwenden, wählen Sie die Nachrichtengruppe aus, die verwendet werden soll. Diese Liste wird mit den verfügbaren Nachrichtengruppen gefüllt, wenn Sie MRM oder XMLNSC als Domäne auswählen.

      Lassen Sie bei XML-, XMLNS-, XMLNSC-, JMS-, MIME- und BLOB-Parsern die Option Nachrichtengruppe leer.

    • Wenn Sie den MRM-Parser verwenden, wählen Sie aus der Liste unter Nachrichtentyp die korrekte Nachricht aus. Diese Liste wird mit Nachrichten aufgefüllt, die in der von Ihnen ausgewählten Nachrichtengruppe definiert sind.

      Lassen Sie bei XML-, XMLNS-, XMLNSC-, JMS-, MIME- und BLOB-Parsern die Option Nachrichtentyp leer.

    • Wenn Sie den MRM-Parser verwenden, wählen Sie aus der Liste unter Nachrichtenformat das gewünschte Format aus. Diese Liste enthält alle physischen Formate, die Sie für diese Nachrichtengruppe definiert haben.

      Lassen Sie bei XML-, XMLNS-, XMLNSC- und BLOB-Parsern die Option Nachrichtenformat leer.

  4. Auf der Registerkarte Parser-Optionen ist Zeitpunkt für Syntaxanalyse standardmäßig auf Bei Bedarf gesetzt. In diesem Fall wird die Auswertung verzögert, bis im Rahmen einer Teil-Syntaxanalyse eine Syntaxanalyse erfolgt. Wenn Sie den Wert für diese Option in Sofort ändern, wird die Teil-Syntaxanalyse außer Kraft gesetzt. In diesem Fall werden mit Ausnahme der komplexen Typen mit der Zusammensetzung 'Auswahl' oder 'Nachricht' alle Nachrichtenkomponenten syntaktisch analysiert und ausgewertet, die zu diesem Zeitpunkt nicht aufgelöst werden können. Wenn Sie diesen Wert in Vollständig ändern, wird die Teil-Syntaxanalyse außer Kraft gesetzt. In diesem Fall werden alle Nachrichtenkomponenten syntaktisch analysiert und ausgewertet; komplexe Typen mit der Zusammensetzung 'Auswahl' oder 'Nachricht', die zu diesem Zeitpunkt nicht aufgelöst werden können, verursachen einen Fehler bei der Gültigkeitsprüfung.
  5. Geben Sie auf der Registerkarte Erweitert den erforderlichen Wert für den Transaktionsmodus an, um die Transaktionsmerkmale zur Handhabung dieser Nachricht festzulegen:
    • Wenn Sie die Option Automatisch auswählen, wird die eingehende Nachricht unter der Synchronisationspunktsteuerung empfangen, wenn sie als persistent markiert ist (anderenfalls nicht). Die Transaktionalität aller abgeleiteten Nachrichten, die später von einem Sendeknoten gesendet werden, hängt vom eingehenden Persistenzmerkmal ab, es sei denn, die Transaktionalität wurde vom Sendeknoten explizit außer Kraft gesetzt.
    • Bei der Auswahl von Ja wird die eingehende Nachricht unter Synchronisationspunktsteuerung empfangen. Alle abgeleiteten Nachrichten, die später von einem Sendeknoten in derselben Instanz des Nachrichtenflusses gesendet werden, werden transaktionsorientiert gesendet, es sei denn, die Transaktionalität wurde vom Sendeknoten explizit außer Kraft gesetzt.
    • Bei Auswahl von Nein wird die eingehende Nachricht nicht unter Synchronisationspunktsteuerung empfangen. Alle abgeleiteten Nachrichten, die später von einem Sendeknoten im Fluss gesendet werden, werden nicht transaktionsorientiert gesendet, es sei denn, für den Sendeknoten gilt, dass die Nachrichten der Synchronisationspunktsteuerung unterliegen.
  6. Legen Sie auf der Registerkarte Auswertung die Auswertungseigenschaften fest, wenn der Parser den Hauptteil der Nachrichten aus der Nachrichtengruppe überprüfen soll. Wenn eine Nachricht an das Fehlerterminal des Knotens übergeben wird, wird sie nicht ausgewertet.

    Sie finden weitere Informationen hierzu in den Abschnitten Nachrichten überprüfen und Auswertungseigenschaften.

Verbindungen zu Terminals herstellen

Der SCADAInput-Knoten leitet jede Nachricht, die er erfolgreich empfängt, an das Ausgangsterminal weiter. Wenn diese Aktion fehlschlägt, wird die Nachricht an das Fehlerterminal weitergeleitet. Sie können Knoten mit diesem Terminal verbinden, um diesen Zustand zu beheben. Wenn keine Verbindung zum Fehlerterminal besteht, durchläuft die Nachricht den Knoten kontinuierlich in einer Schleife, bis das Problem behoben ist.

Wenn die Nachricht von diesem Knoten abgefangen wird, nachdem eine Ausnahmebedingung weiter vorne im Nachrichtenfluss ausgelöst wurde, wird die Nachricht an das Catch-Terminal weitergeleitet. Wenn keine Verbindung zum Catch-Terminal besteht, durchläuft die Nachricht den Knoten kontinuierlich in einer Schleife, bis das Problem behoben ist. Stellen Sie sicher, dass ein Knoten stets mit diesem Terminal verbunden ist, falls die Nachricht in einem Nachrichtenfluss zurückgesetzt werden kann.

Koordinierte Transaktionen konfigurieren

Wenn Sie einen SCADAInput-Knoten in einen Nachrichtenfluss einschließen, definiert der Wert, den Sie für den Transaktionsmodus festgelegt haben, ob die Nachrichten unter der Synchronisationspunktsteuerung empfangen werden:

  • Wird der Wert für diese Eigenschaft auf Ja (Standardeinstellung) gesetzt, wird die Nachricht unter der Synchronisationspunktsteuerung, d. h. in einer Arbeitseinheit von WebSphere MQ, empfangen. Alle Nachrichten, die später von einem Sendeknoten in derselben Instanz des Nachrichtenflusses gesendet werden, unterliegen der Synchronisationspunktsteuerung, es sei denn, der Sendeknoten hat dies explizit außer Kraft gesetzt.
  • Wird der Wert für diese Eigenschaft auf Automatisch gesetzt, erfolgt der Empfang der Nachricht nur dann unter der Synchronisationspunktsteuerung, wenn die eingehende Nachricht als persistent markiert ist; ist dies nicht der Fall, wird sie nicht unter dem Synchronisationspunkt empfangen. Alle Nachrichten, die später von einem Sendeknoten gesendet werden, unterliegen der Synchronisationspunktsteuerung (wie vom Persistenzmerkmal der eingehenden Nachricht bestimmt), es sei denn, der Sendeknoten hat dies explizit außer Kraft gesetzt.
  • Wird der Wert für diese Eigenschaft auf Nein gesetzt, unterliegt der Empfang der Nachricht nicht der Synchronisationspunktsteuerung. Alle Nachrichten, die später von einem Sendeknoten im Nachrichtenfluss gesendet werden, unterliegen nicht der Synchronisationspunktsteuerung, es sei denn, ein einzelner Sendeknoten hat dies explizit vorgegeben.

Der MQOutput-Knoten ist der einzige Sendeknoten, der so konfiguriert werden kann, dass diese Option außer Kraft gesetzt wird.

Terminals und Eigenschaften

In der folgenden Tabelle werden die SCADAInput-Knotenterminals beschrieben .

Terminal Beschreibung
Fehlerterminal Das Ausgabeterminal, an das die Nachricht geleitet wird, wenn ein Fehler auftritt.
Ausgabeterminal Das Ausgabeterminal, an das die Nachricht geleitet wird, wenn sie erfolgreich aus der Warteschlange abgerufen wurde.
Catch-Terminal Das Ausgabeterminal, an das die Nachricht geleitet wird, wenn nachgeschaltet eine Ausnahmebedingung ausgegeben und von diesem Knoten abgefangen wurde.

In den folgenden Tabellen werden die Knoteneigenschaften beschrieben. Die Spalte O zeigt an, ob die Eigenschaft obligatorisch ist (markiert mit einem Sternchen, wenn ein Wert eingegeben werden muss, weil kein Standardwert definiert ist). Die Spalte K zeigt an, ob die Eigenschaft konfigurierbar ist (Wert kann geändert werden, wenn der Nachrichtenfluss zur BAR-Datei hinzugefügt wird, um ihn einzusetzen).

In der folgenden Tabelle werden die Beschreibungseigenschaften des SCADAInput-Knotens beschrieben.

Eigenschaft O K Standardwert Beschreibung
Knotenname Nein Nein Knotentyp SCADAInput Der Name des Knotens.
Kurzbeschreibung Nein Nein   Kurze Beschreibung des Knotens
Ausführliche Beschreibung Nein Nein   Text, der den Zweck des Knotens im Nachrichtenfluss beschreibt

In der folgenden Tabelle werden die grundlegenden Eigenschaften des SCADAInput-Knotens beschrieben.

Eigenschaft O K Standardwert Beschreibung
Empfangsprogramm bei Systemstart aktivieren Ja Nein Ausgewählt Durch diese Eigenschaft wird gesteuert, wann das Empfangsprogramm gestartet wird. Wenn Sie das Kontrollkästchen aktivieren, wird das Empfangsprogramm gestartet, sobald der Broker den Nachrichtenfluss startet. Wenn Sie das Kontrollkästchen inaktivieren, wird das Empfangsprogramm bei Ankunft einer Nachricht am angegebenen Port gestartet.
Port Ja Ja 1883 Der Port, an dem das SCADA-Protokoll empfangsbereit ist.
Max. Anz. Threads Ja Ja 500 Maximale Anzahl von Threads, die zur Unterstützung von SCADA-Geräten gestartet werden soll.
Thread-Pooling verwenden Ja Ja Nicht ausgewählt Wenn Sie das Kontrollkästchen aktivieren, wird Thread-Pooling verwendet.

In der folgenden Tabelle werden die Eigenschaften von 'Syntaxanalyse der Eingabenachricht' des SCADAInput-Knotens beschrieben.

Eigenschaft O K Standardwert Beschreibung
Nachrichtendomäne Nein Nein   Die Domäne für die Syntaxanalyse der eingehenden Nachricht.
Nachrichtengruppe Nein Nein   Der Name oder die ID der Nachrichtengruppe, in der die eingehende Nachricht definiert ist.
Nachrichtentyp Nein Nein   Der Name der eingehenden Nachricht.
Nachrichtenformat Nein Nein   Der Name des physischen Formats der eingehenden Nachricht.

In der folgenden Tabelle werden die Eigenschaften für die Parser-Optionen des SCADAInput-Knotens beschrieben.

Eigenschaft O K Standardwert Beschreibung
Zeitpunkt für Syntaxanalyse Nein Nein Bei Bedarf Durch diese Eigenschaft wird gesteuert, zu welchem Zeitpunkt eine Eingabenachricht syntaktisch analysiert wird. Gültige Werte sind Bei Bedarf, Sofort und Vollständig.

Eine vollständige Beschreibung dieser Eigenschaft finden Sie unter Bedarfsgerechte Syntaxanalyse.

XMLNSC-Kompaktparser für XMLNS-Domäne verwenden Nein Nein Nicht ausgewählt Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Kompaktparser für Nachrichten in der XMLNS-Domäne verwendet wird. Wenn Sie diese Eigenschaft festlegen, werden die Nachrichtendaten unter XMLNSC in Knoten, die mit dem Ausgabeterminal verbunden sind, angezeigt, wenn XMLNS die Nachrichtendomäne der Eigenschaften von 'Syntaxanalyse der Eingabenachricht' ist.
Zugriff auf gemischten Inhalt Nein Nein Nicht ausgewählt Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Erkennen von gemischtem Text in einer Eingabenachricht Elemente in der Nachrichtenbaumstruktur erstellt. Wenn Sie das Kontrollkästchen aktivieren, werden Elemente für gemischten Text erstellt. Andernfalls wird gemischter Text ignoriert, und es werden keine Elemente erstellt.
Kommentare beibehalten Nein Nein Nicht ausgewählt Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Erkennen von Kommentaren in einer Eingabenachricht Elemente in der Nachrichtenbaumstruktur erstellt. Wenn Sie das Kontrollkästchen aktivieren, werden Elemente für Kommentare erstellt. Andernfalls werden Kommentare ignoriert, und es werden keine Elemente erstellt.
Verarbeitungsanweisung beibehalten Nein Nein Nicht ausgewählt Durch diese Eigenschaft wird gesteuert, ob der XMLNSC-Parser beim Feststellen von Verarbeitungsanweisungen in einer Eingabenachricht Elemente in der Nachrichtenbaumstruktur erstellt. Wenn Sie das Kontrollkästchen aktivieren, werden Elemente für Verarbeitungsanweisungen erstellt. Andernfalls werden Verarbeitungsanweisungen ignoriert, und es werden keine Elemente erstellt.

In der nachfolgenden Tabelle werden die erweiterten Eigenschaften des SCADAInput-Knotens beschrieben.

Eigenschaft O K Standardwert Beschreibung
Transaktionsmodus Ja Nein Ja Durch diese Eigenschaft wird gesteuert, ob die eingehende Nachricht unter Synchronisationspunktsteuerung empfangen wird. Gültige Werte sind Automatisch, Ja und Nein.

In der folgenden Tabelle werden die Validierungseigenschaften des SCADAInput-Knotens beschrieben.

Eine umfassende Beschreibung dieser Eigenschaften finden Sie unter Auswertungseigenschaften.

Eigenschaft O K Standardwert Beschreibung
Auswerten Nein Ja Keines Durch diese Eigenschaft wird gesteuert, ob eine Auswertung stattfindet. Gültige Werte sind Keine, Inhalt und Wert und Inhalt.
Fehlerbehebungsmaßnahme Nein Nein Ausnahme Durch diese Eigenschaft wird gesteuert, was beim Fehlschlagen der Auswertung geschieht. Sie können diese Eigenschaft nur angeben, wenn Sie Auswerten auf Inhalt oder Inhalt und Wert gesetzt haben. Gültige Werte sind Benutzertrace, Lokales Fehlerprotokoll, Ausnahmebedingung und Ausnahmeliste.
Alle Wertvorgaben einschließen Nein Nein Ausgewählt Diese Eigenschaft kann nicht bearbeitet werden. Wenn Sie das Kontrollkästchen aktivieren, werden bei der Auswertung von Inhalt und Wert auch Basisprüfungen der Wertvorgaben durchgeführt.
Korrektur Nein Nein Keines Diese Eigenschaft kann nicht bearbeitet werden.
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Letzte Aktualisierung : 2009-02-17 15:28:10

ac04620_