diff --git a/src/edu/nps/moves/dis7/utilities/stream/PduRecorder.java b/src/edu/nps/moves/dis7/utilities/stream/PduRecorder.java
index a735c0dcfff2d4f27bbe95dcbbacd1581ba78df8..8bc28e1ee2c922ca2feb31f3d39731435939f8e9 100644
--- a/src/edu/nps/moves/dis7/utilities/stream/PduRecorder.java
+++ b/src/edu/nps/moves/dis7/utilities/stream/PduRecorder.java
@@ -4,6 +4,7 @@ import com.google.common.primitives.Longs;
 import edu.nps.moves.dis7.enumerations.DisPduType;
 import edu.nps.moves.dis7.pdus.Pdu;
 import edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface;
+import edu.nps.moves.dis7.utilities.DisTime;
 import edu.nps.moves.dis7.utilities.PduFactory;
 import java.io.BufferedWriter;
 import java.io.File;
@@ -16,9 +17,11 @@ import java.nio.CharBuffer;
 import java.nio.charset.Charset;
 import java.nio.file.Path;
 import java.text.SimpleDateFormat;
+import java.time.Duration;
+import java.time.Instant;
 import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.time.LocalTime;
-import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Base64;
@@ -100,57 +103,30 @@ public class PduRecorder // implements PduReceiver
 
     private String  encodingPduLog = ENCODING_PLAINTEXT; // default, TODO change to ENCODING_BINARY
     private boolean includeHeaders = encodingPduLog.equals(ENCODING_PLAINTEXT);
+    
+    public static final String UNDATED        = "undated";
 
     private String TRACE_PREFIX = ("[PduRecorder " + getDescriptor()).trim() + "] ";
     private String  descriptor      = new String();
 
-    private Writer logFileWriter;
-    private File   logFile;
-    private String logFileName = DEFAULT_FILE_NAME;
+    private Writer         logFileWriter;
+    private File           logFile;
+    private String         logFileName = DEFAULT_FILE_NAME;
     private DisThreadedNetworkInterface                disThreadedNetworkInterface;
     private DisThreadedNetworkInterface.RawPduListener disRawPduListener;
-
-    private long           startNanoTime      = -1; // sentinel
-    private StringBuilder  sb                 = new StringBuilder();
-    private Base64.Encoder base64Encoder      = Base64.getEncoder();
-    private int            pduCount           = 0;    // debug
-    private boolean        headerWritten      = false;
-    private boolean        running            = true; // starts recording by default
-    private boolean        readableTimeStamp  = true; // 
-    private boolean        zeroBasedTimeStamp = true; // use normal date, time strings vice bytes
-    private long           sessionDuration    = -1;
-    public static final String UNDATED        = "undated";
-    
-    public enum TimeFormatterType
-    {
-      SECONDS,
-      TENTHSECONDS,
-      HUNDREDTHSECONDS,
-      MILLISECONDS,
-      MICROSECONDS,
-      NANOSECONDS;
-    }
-    
-    /** Format time <code>HH:mm:ss</code>
-     * @see java.time.format.DateTimeFormatter */
-    public static final DateTimeFormatter timeFormatterSeconds          = DateTimeFormatter.ofPattern("HH:mm:ss");
-    /** Format time <code>HH:mm:ss.S</code>, default
-     * @see java.time.format.DateTimeFormatter */
-    public static final DateTimeFormatter timeFormatterTenthSeconds     = DateTimeFormatter.ofPattern("HH:mm:ss.S");
-    /** Format time <code>HH:mm:ss.SS</code>
-     * @see java.time.format.DateTimeFormatter */
-    public static final DateTimeFormatter timeFormatterHundredthSeconds = DateTimeFormatter.ofPattern("HH:mm:ss.SS");
-    /** Format time <code>HH:mm:ss.SSS</code>
-     * @see java.time.format.DateTimeFormatter */
-    public static final DateTimeFormatter timeFormatterMilliSeconds     = DateTimeFormatter.ofPattern("HH:mm:ss.SSS");
-    /** Format time <code>HH:mm:ss.SSSSSS</code>
-     * @see java.time.format.DateTimeFormatter */
-    public static final DateTimeFormatter timeFormatterMicroSeconds     = DateTimeFormatter.ofPattern("HH:mm:ss.SSSSSS");
-    /** Format time <code>HH:mm:ss.SSSSSSSSS</code>
-     * @see java.time.format.DateTimeFormatter */
-    public static final DateTimeFormatter timeFormatterNanoSeconds      = DateTimeFormatter.ofPattern("HH:mm:ss.SSSSSSSSS");
-    
-    private DateTimeFormatter timeFormatter = timeFormatterTenthSeconds;
+    private PduFactory     pduFactory         = new PduFactory(); // default appid, country, etc.
+
+    private long           recordingStartNanoTime       = -1; // sentinel
+    private StringBuilder  sb                  = new StringBuilder();
+    private Base64.Encoder base64Encoder       = Base64.getEncoder();
+    private int            pduCount            = 0;    // debug
+    private boolean        headerWritten       = false;
+    private boolean        running             = true; // starts recording by default
+    private boolean        readableTimeStamp   = true; // 
+    private boolean        zeroBasedTimeStamp  = true; // use normal date, time strings vice bytes
+    private long           recordingDurationNano = -1;
+    private LocalTime      recordingDuration     = null;
+    private int            pduTimestampFirst     = 0;
     
     private void initialize()
     {
@@ -338,39 +314,61 @@ public class PduRecorder // implements PduReceiver
     }
 
     byte[] oldBuffer;
+    LocalDateTime sessionStartTime = null;
 
-    /** receivePdu from DIS data stream
+    /** receivePdu from DIS data stream, invoked via callback from DisThreadedNetworkInterface.RawPduListener
      * @param newBuffer byte array for receiving data
      * @param newLength length of byte array
      */
 //    @Override
     public void receivePdu(byte[] newBuffer, int newLength)
     {
+      if (sessionStartTime == null)
+          sessionStartTime = LocalDateTime.now();
+      
       if (java.util.Arrays.equals(newBuffer, oldBuffer))
           System.err.println ("PduRecorder.receivePdu() warning: PDU newBuffer equals PDU oldBuffer"); // debug
 
       if(!isRunning())
-        return;
-
-      String    localDateString   = LocalDate.now().toString();
-      LocalTime localTime         = LocalTime.now();
-      long packetReceivedNanoTime = localTime.toNanoOfDay(); // formerly System.nanoTime();
-      if (startNanoTime == -1)
-          startNanoTime = packetReceivedNanoTime;
-      sessionDuration = packetReceivedNanoTime - startNanoTime;
-      if (isZeroBasedTimeStamp())
-      {
-          localDateString = UNDATED;
-          localTime = LocalTime.ofNanoOfDay(sessionDuration);
-      }
-      String    localTimeString   = localTime.format(timeFormatter);
+        return; // thread operations no longer in progress, ignore this received PDU
 
+//    String    localDateString   = LocalDate.now().toString();
+      LocalTime sessionTime       = LocalTime.now();
+      long packetReceivedNanoTime = sessionTime.toNanoOfDay();
+
+      byte[]    byteBufferSized = Arrays.copyOf(newBuffer, newLength);
+      // direct access: DisPduType is 3rd byte, see Table 98—PDU Header record (TODO course diagrams are erroneous)
+      DisPduType pduType = DisPduType.getEnumForValue(Byte.toUnsignedInt(byteBufferSized[2])); // 3rd byte
+      
+      Pdu newPdu = pduFactory.createPdu(byteBufferSized);
+      int    pduTimestampInt    = newPdu.getTimestamp();
+      int    pduDurationInt     = pduTimestampInt - pduTimestampFirst;
+      
       // DIS timestamp is 8 bytes in length, converted from Java long time into byte array
-      byte[] timeByteArray = Longs.toByteArray(packetReceivedNanoTime - startNanoTime);
-      //System.out.println(TRACE_PREFIX + "wrote time "+(packetReceivedNanoTime - startNanoTime)); // debug
+      // https://stackoverflow.com/questions/1026761/how-to-convert-a-byte-array-to-its-numeric-value-java
+      byte[] timestampByteArray = Arrays.copyOfRange(newBuffer, 4, 7); 
+      // timestamp bytes 4..7 (fifth through eighth bytes), see Table 98—PDU Header record (TODO course diagrams are erroneous)
       
-      byte[]     byteBufferSized = Arrays.copyOf(newBuffer, newLength);
-      DisPduType pduType = DisPduType.getEnumForValue(Byte.toUnsignedInt(byteBufferSized[2])); // 3rd byte
+      byte[] receiptTimeByteArray = Longs.toByteArray(packetReceivedNanoTime - recordingStartNanoTime);
+      ByteBuffer receiptTimeByteBuffer = ByteBuffer.wrap(receiptTimeByteArray);
+      int        receiptTimeBufferInt        = receiptTimeByteBuffer.getInt();
+      String     receiptTimeBufferString     = DisTime.convertToLocalDateTime(receiptTimeBufferInt).format(DisTime.getTimeFormatter());
+      
+      if (recordingStartNanoTime == -1) // initialization
+      {
+          recordingStartNanoTime = packetReceivedNanoTime;
+          pduTimestampFirst      = pduTimestampInt;
+          pduDurationInt         = 0;
+      }
+//    String pduTimestampString = DisTime.convertToString(pduTimestampInt);
+      String pduTimestampString = DisTime.convertToLocalDateTime(pduTimestampInt).format(DisTime.getTimeFormatter());
+      String pduDurationString  = DisTime.convertToLocalDateTime(pduDurationInt).format(DisTime.getTimeFormatter());
+      
+      recordingDurationNano = packetReceivedNanoTime - recordingStartNanoTime;
+//    sessionDuration = Duration.between(Instant.ofEpochMilli(startSessionNanoTime),Instant.ofEpochMilli(packetReceivedNanoTime)).abs();
+      recordingDuration = LocalTime.ofNanoOfDay(recordingDurationNano); // LocalTime of duration value yields HH:MM
+      String     sessionTimeString =     sessionTime.format(DisTime.getTimeFormatter());
+      String sessionDurationString = recordingDuration.format(DisTime.getTimeFormatter());
       
       if (includeHeaders && !headerWritten)
       {
@@ -385,8 +383,8 @@ public class PduRecorder // implements PduReceiver
               break;
 
           case ENCODING_BASE64:
-              byte[] mergedByteArray = Arrays.copyOf(timeByteArray, timeByteArray.length + byteBufferSized.length);
-              System.arraycopy(byteBufferSized, 0, mergedByteArray, timeByteArray.length, byteBufferSized.length);
+              byte[] mergedByteArray = Arrays.copyOf(receiptTimeByteArray, receiptTimeByteArray.length + byteBufferSized.length);
+              System.arraycopy(byteBufferSized, 0, mergedByteArray, receiptTimeByteArray.length, byteBufferSized.length);
               sb.append(base64Encoder.encodeToString(mergedByteArray));
 /*                    
 // from Rick
@@ -408,12 +406,15 @@ public class PduRecorder // implements PduReceiver
           case ENCODING_PLAINTEXT:
               if (includesReadableTimeStamp())
               {
-                  sb.append(COMMENT_MARKER).append(" ").append(pduType).append(",");
-                  sb.append(localDateString).append(",").append(localTimeString);
+                  sb.append(COMMENT_MARKER).append(" ").append(pduType).append(", ");
+                  sb.append("Session time "    ).append(sessionTimeString     ).append(", ");
+                  sb.append("session duration ").append(sessionDurationString).append(", ");
+                  sb.append("Pdu timestamp "   ).append(pduTimestampInt   ).append(" ").append(pduTimestampString).append(", ");
+                  sb.append("simulation stream interval "    ).append(pduDurationInt    ).append(" ").append(pduDurationString);
                   sb.append("\n");
               }
-              // Timestamp bytes, remove square brackets to end up with pure CSV
-              sb.append(Arrays.toString(timeByteArray).replace(" ", "").replace("[","").replace("]",""));
+              // Not Timestamp but receipt bytes (TODO needed?) remove square brackets to end up with pure CSV
+              sb.append(Arrays.toString(receiptTimeByteArray).replace(" ", "").replace("[","").replace("]",""));
               sb.append(",");
               // PDU contents, remove square brackets to end up with pure CSV
               sb.append(Arrays.toString(byteBufferSized).replace(" ", "").replace("[","").replace("]",""));
@@ -492,14 +493,14 @@ public class PduRecorder // implements PduReceiver
             logFileWriter.write(START_COMMENT_MARKER + encodingPduLog + ", " + TRACE_PREFIX + timeStamp + ", DIS capture file, " + logFile.getPath());
             ((PrintWriter) logFileWriter).println();
             
-            if (encodingPduLog.equals(ENCODING_PLAINTEXT) && includesReadableTimeStamp())
-            {
-                logFileWriter.write(COMMENT_MARKER + " DisPduType,ReceiptDate,ReceiptTime");
-                ((PrintWriter) logFileWriter).println();
-            }
+//            if (encodingPduLog.equals(ENCODING_PLAINTEXT) && includesReadableTimeStamp())
+//            {
+//                logFileWriter.write(COMMENT_MARKER + " DisPduType,ReceiptDate,ReceiptTime");
+//                ((PrintWriter) logFileWriter).println();
+//            }
             if (encodingPduLog.equals(ENCODING_PLAINTEXT))
             {
-                logFileWriter.write(COMMENT_MARKER + " Timestamp(8 bytes),ProtocolVersion,CompatibilityVersion,ExcerciseID,PduType,PduStatus,HeaderLength,PduLength,then PDU-specific data");
+                logFileWriter.write(COMMENT_MARKER + " Timestamp(8 bytes),ProtocolVersion,CompatibilityVersion,ExerciseID,PduType,PduStatus,HeaderLength,PduLength,then PDU-specific data");
                 ((PrintWriter) logFileWriter).println();
             }
             if (encodingPduLog.equals(ENCODING_PLAINTEXT) && includesReadableTimeStamp())
@@ -610,7 +611,6 @@ public class PduRecorder // implements PduReceiver
     initialize();
     System.out.println("dis7.utilities.stream.PduRecorder main() performs self-test by sending full set of PDUs");
     
-    PduFactory factory = new PduFactory(); // default appid, country, etc.
     PduRecorder pduRecorder;
     DisThreadedNetworkInterface disNetworkInterface;
     DisPduType allPDUTypesArray[] = DisPduType.values();
@@ -639,13 +639,15 @@ public class PduRecorder // implements PduReceiver
         disNetworkInterface = pduRecorder.getDisThreadedNetworkInterface(); // must reinitialize after each begin
         System.out.println("dis7.utilities.stream.PduRecorder pduRecorder started... isRunning()=" + pduRecorder.isRunning());
 
-        for (int i=1; i < allPDUTypesArray.length; i = i + 1)
+        for (int index=0; index < allPDUTypesArray.length; index++)
         {
-          DisPduType pduTypeValue = allPDUTypesArray[i];
+          DisPduType pduTypeValue = allPDUTypesArray[index];
           if (pduTypeValue != DisPduType.OTHER) 
           {
             try {
-                Pdu nextPdu = factory.createPdu(allPDUTypesArray[i]);
+                Pdu nextPdu = pduFactory.createPdu(allPDUTypesArray[index]);
+                nextPdu.setTimestamp(index * 10); // seconds
+//              nextPdu.getTimestamp(); // debug
                 disNetworkInterface.send(nextPdu);
                 Thread.sleep (100L); // let send/receive threads and streams catch up
             }
@@ -893,10 +895,10 @@ public class PduRecorder // implements PduReceiver
 
     /**
      * get duration of the current session, measured from time of first PDU receipt
-     * @return the sessionDuration
+     * @return the sessionDurationNano
      */
     public long getSessionDuration() {
-        return sessionDuration;
+        return recordingDurationNano;
     }
 
     /**
@@ -914,34 +916,4 @@ public class PduRecorder // implements PduReceiver
     public void setZeroBasedTimeStamp(boolean zeroBasedTimeStamp) {
         this.zeroBasedTimeStamp = zeroBasedTimeStamp;
     }
-
-    /**
-     * Set time format for text logging
-     * @param timeFormatterChoice enumeration for the new timeFormatter to set
-     */
-    public void setTimeFormatter(TimeFormatterType timeFormatterChoice) 
-    {
-        switch (timeFormatterChoice)
-        {
-            case SECONDS:
-                timeFormatter = timeFormatterSeconds;
-                break;
-            case TENTHSECONDS:
-                timeFormatter = timeFormatterTenthSeconds;
-                break;
-            case HUNDREDTHSECONDS:
-                timeFormatter = timeFormatterHundredthSeconds;
-                break;
-            case MILLISECONDS:
-                timeFormatter = timeFormatterMilliSeconds;
-                break;
-            case MICROSECONDS:
-                timeFormatter = timeFormatterMicroSeconds;
-                break;
-            case NANOSECONDS:
-                timeFormatter = timeFormatterNanoSeconds;
-                break;
-            // no others allowed
-        }
-    }
 }
diff --git a/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestENCODING_BASE64_PduCaptureLog.dislog b/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestENCODING_BASE64_PduCaptureLog.dislog
index 30c2a8c77f2c2dcaffdaedeafe9f5413e9e9ed75..7372594739f0a929527d955086305ee1143573fa 100644
--- a/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestENCODING_BASE64_PduCaptureLog.dislog
+++ b/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestENCODING_BASE64_PduCaptureLog.dislog
@@ -1,72 +1,72 @@
-AAAAAAAAAAAHAAEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAAAYAWLAHAAICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAAAz5hJgHAAMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAABMY7HQHAAQBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAABllmPwHAAUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAB+hRlgHAAYDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAACZ1yLQHAAcDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAACyzmPAHAAgDAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAADM1i1wHAAkDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAADk9rWgHAAoDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAD8v6TQHAAsFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAEWjKLwHAAwFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAEu7UFgHAA0FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAFI8YDQHAA4FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAFiCcoAHAA8FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAA==
-AAAAAF60AmgHABAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAGT1FjAHABEFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAGsc4OwHABIFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAHGyRRQHABMFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAHfR6qgHABQFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAH6FP0QHABUFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAIUjA5AHABYFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAIuL6wwHABcGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAJGqTAQHABgGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAJhnLGAHABkEAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAJ9dIaAHABoEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAA
-AAAAAKVwIbQHABsEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAAKwJMnwHABwGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAALIP+nAHAB0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAALiEsiQHAB4GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAL7nHkAHAB8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAA=
-AAAAAMUeP/AHACAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAMtCIeQHACEHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAANFNpfQHACIHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAANffMugHACMHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAN3ai4QHACQHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAOTk3gwHACUIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAAOu4fdgHACYIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAPIE2egHACcIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAPhxXgAHACgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAP8S4awHACkJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAQUvNNwHACoJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAQuXxBAHACsJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAARGeEogHACwJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAARe/YLgHAC0JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAR4TvywHAC4LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAASU8MEAHAC8LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAStsVBgHADALAAAAAAAAAAAAAAAAAA==
-AAAAATGwdxQHADELAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAATfqASwHADILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAT3wczAHADMKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAUP6EuAHADQKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAUoMGugHADUKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAAVARGQwHADYKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAVZ6ZhgHADcKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAA==
-AAAAAVzQVPAHADgKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAWNGk0QHADkKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAWl9YVwHADoKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAW+q73wHADsKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAXXUxOAHADwKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAXw5ZjgHAD0KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAYKOSkQHAD4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAYloT5AHAD8KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAAY+hP8AHAEAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAZZDpygHAEEKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAZ0gqOgHAEIBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAaRTNRgHAEMBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAAap6GogHAEQCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAbGHltQHAEUCAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-AAAAAbeaskAHAEYNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-AAAAAb4CAFwHAEcNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-AAAAAcQ+hVgHAEgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAA==
+AABGKWI0sJUHAAEBAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAAAZV4SwHAAICAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAAAzvWLAHAAMCAAAAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAABM5wlAHAAQBAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAABmVXLgHAAUDAAAAMgAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAB/jMVgHAAYDAAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAACYIQggHAAcDAAAARgAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAACya2iwHAAgDAAAAUAAAAAAAAAAAAAAAAAAAAAA=
+AAAAADMCvLgHAAkDAAAAWgAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAADmugWQHAAoDAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAEB+blAHAAsFAAAAbgAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAEZ4gFwHAAwFAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAE0tVugHAA0FAAAAggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAFNgw8QHAA4FAAAAjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAFmTSDQHAA8FAAAAlgAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAA==
+AAAAAF+502gHABAFAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAGYRZJwHABEFAAAAqgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAGw/K2AHABIFAAAAtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAHKundwHABMFAAAAvgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAHjVfdQHABQFAAAAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAH/PDiAHABUFAAAA0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAIXPKwwHABYFAAAA3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAIvV2TgHABcGAAAA5gAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAJKoPpAHABgGAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAJlnn/AHABkEAAAA+gAAAAAAAAAAAAAAAAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAJ/EkIgHABoEAAABBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAA
+AAAAAKW6klgHABsEAAABDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAAKwav3QHABwGAAABGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAALJ3WPAHAB0GAAABIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAALkTAcgHAB4GAAABLAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAL8KDsgHAB8EAAABNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAA=
+AAAAAMXIEcQHACAEAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAMu4PXAHACEHAAABSgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAANIrrvgHACIHAAABVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAANlEPaQHACMHAAABXgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAN/Z//AHACQHAAABaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAOYNpQwHACUIAAABcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAAOxFBTwHACYIAAABfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAPNGIMgHACcIAAABhgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAPnN5pwHACgIAAABkAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAQCU1GgHACkJAAABmgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAQb060AHACoJAAABpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAQ3G3VwHACsJAAABrgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAARSOPTgHACwJAAABuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAARrF6ZQHAC0JAAABwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAASEW9zQHAC4LAAABzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAAScWtmAHAC8LAAAB1gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAS1kTnQHADALAAAB4AAAAAAAAAAAAA==
+AAAAATOA46gHADELAAAB6gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAATnPjyAHADILAAAB9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAUAUhdQHADMKAAAB/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAUZVXKwHADQKAAACCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAUyX/CgHADUKAAACEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAAVMnSuQHADYKAAACHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAVlTQGwHADcKAAACJgAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAA==
+AAAAAWALwzQHADgKAAACMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAWZtZPgHADkKAAACOgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAW0gPPgHADoKAAACRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAXNIQ9wHADsKAAACTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAXmvMRgHADwKAAACWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAX/l9WwHAD0KAAACYgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAYYEeMQHAD4KAAACbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAYwqVJQHAD8KAAACdgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAAZIrnqwHAEAKAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAZh/jWgHAEEKAAACigAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAZ8x2MgHAEIBAAAClAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAaVKArwHAEMBAAACngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+AAAAAauVZlwHAEQCAAACqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAbH0POQHAEUCAAACsgAAAAAAAAAAAAAAAAAAAAA=
+AAAAAbgFgTgHAEYNAAACvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+AAAAAb5ZWCAHAEcNAAACxgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAcRimIAHAEgBAAAC0AAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAA==
diff --git a/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestENCODING_PLAINTEXT_PduCaptureLog.dislog b/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestENCODING_PLAINTEXT_PduCaptureLog.dislog
index 4d452a4dda5e6d901180ea7f7807f8ababfb8a31..d1406bfa493e0e998df047199dd04d814f65d6f1 100644
--- a/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestENCODING_PLAINTEXT_PduCaptureLog.dislog
+++ b/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestENCODING_PLAINTEXT_PduCaptureLog.dislog
@@ -1,149 +1,148 @@
-# Start, ENCODING_PLAINTEXT, [PduRecorder PduRecorder main() self test ENCODING_PLAINTEXT] 20220620_093604, DIS capture file, .\pduLog\PduRecorderSelfTestENCODING_PLAINTEXT_PduCaptureLog.dislog
-# DisPduType,ReceiptDate,ReceiptTime
-# ProtocolVersion,CompatibilityVersion,ExcerciseID,PduType,PduStatus,HeaderLength,PduLength,Timestamp,then PDU-specific data
+# Start, ENCODING_PLAINTEXT, [PduRecorder PduRecorder main() self test ENCODING_PLAINTEXT] 20220622_212533, DIS capture file, .\pduLog\PduRecorderSelfTestENCODING_PLAINTEXT_PduCaptureLog.dislog
+# Timestamp(8 bytes),ProtocolVersion,CompatibilityVersion,ExerciseID,PduType,PduStatus,HeaderLength,PduLength,then PDU-specific data
 # =============================================
-# DisPduType 01 ENTITY_STATE,undated,00:00:00.0
-0,0,0,0,0,0,0,0,7,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 02 FIRE,undated,00:00:00.0
-0,0,0,0,5,-93,53,84,7,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 03 DETONATION,undated,00:00:00.2
-0,0,0,0,12,71,88,-32,7,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 04 COLLISION,undated,00:00:00.3
-0,0,0,0,18,-120,52,4,7,0,4,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 05 SERVICE_REQUEST,undated,00:00:00.4
-0,0,0,0,25,2,49,-72,7,0,5,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 06 RESUPPLY_OFFER,undated,00:00:00.5
-0,0,0,0,31,26,88,-16,7,0,6,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 07 RESUPPLY_RECEIVED,undated,00:00:00.6
-0,0,0,0,37,117,-94,-32,7,0,7,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 08 RESUPPLY_CANCEL,undated,00:00:00.7
-0,0,0,0,43,-92,119,-112,7,0,8,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 09 REPAIR_COMPLETE,undated,00:00:00.8
-0,0,0,0,50,119,52,4,7,0,9,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 10 REPAIR_RESPONSE,undated,00:00:00.9
-0,0,0,0,56,-62,111,-52,7,0,10,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 11 CREATE_ENTITY,undated,00:00:01.0
-0,0,0,0,63,-121,-10,56,7,0,11,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 12 REMOVE_ENTITY,undated,00:00:01.1
-0,0,0,0,69,-43,61,112,7,0,12,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 13 START_RESUME,undated,00:00:01.2
-0,0,0,0,75,-4,-37,64,7,0,13,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 14 STOP_FREEZE,undated,00:00:01.3
-0,0,0,0,82,62,-66,116,7,0,14,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 15 ACKNOWLEDGE,undated,00:00:01.4
-0,0,0,0,88,93,32,-104,7,0,15,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0
-# DisPduType 16 ACTION_REQUEST,undated,00:00:01.5
-0,0,0,0,94,-82,-113,124,7,0,16,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 17 ACTION_RESPONSE,undated,00:00:01.6
-0,0,0,0,101,46,-19,-100,7,0,17,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 18 DATA_QUERY,undated,00:00:01.8
-0,0,0,0,108,53,108,-40,7,0,18,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 19 SET_DATA,undated,00:00:01.9
-0,0,0,0,114,-37,46,-40,7,0,19,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 20 DATA,undated,00:00:02.0
-0,0,0,0,120,-34,33,40,7,0,20,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 21 EVENT_REPORT,undated,00:00:02.1
-0,0,0,0,127,-121,-32,-92,7,0,21,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 22 COMMENT,undated,00:00:02.2
-0,0,0,0,-122,80,-117,-64,7,0,22,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 23 ELECTROMAGNETIC_EMISSION,undated,00:00:02.3
-0,0,0,0,-115,2,-10,96,7,0,23,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 24 DESIGNATOR,undated,00:00:02.4
-0,0,0,0,-109,-110,-9,60,7,0,24,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 25 TRANSMITTER,undated,00:00:02.5
-0,0,0,0,-102,69,-123,104,7,0,25,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 26 SIGNAL,undated,00:00:02.6
-0,0,0,0,-96,-68,105,92,7,0,26,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0
-# DisPduType 27 RECEIVER,undated,00:00:02.8
-0,0,0,0,-90,-18,-5,20,7,0,27,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 28 IDENTIFICATION_FRIEND_OR_FOE,undated,00:00:02.9
-0,0,0,0,-82,23,62,-40,7,0,28,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 29 UNDERWATER_ACOUSTIC,undated,00:00:03.0
-0,0,0,0,-76,-127,92,24,7,0,29,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 30 SUPPLEMENTAL_EMISSION_ENTITY_STATE,undated,00:00:03.1
-0,0,0,0,-69,39,-56,-52,7,0,30,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 31 INTERCOM_SIGNAL,undated,00:00:03.2
-0,0,0,0,-63,-25,73,108,7,0,31,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0
-# DisPduType 32 INTERCOM_CONTROL,undated,00:00:03.3
-0,0,0,0,-56,113,-119,60,7,0,32,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 33 AGGREGATE_STATE,undated,00:00:03.4
-0,0,0,0,-49,19,-42,20,7,0,33,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 34 ISGROUPOF,undated,00:00:03.5
-0,0,0,0,-43,40,-74,60,7,0,34,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 35 TRANSFER_OWNERSHIP,undated,00:00:03.6
-0,0,0,0,-37,-72,-15,76,7,0,35,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 36 ISPARTOF,undated,00:00:03.7
-0,0,0,0,-31,-15,0,-32,7,0,36,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 37 MINEFIELD_STATE,undated,00:00:03.8
-0,0,0,0,-24,32,84,-124,7,0,37,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 38 MINEFIELD_QUERY,undated,00:00:04.0
-0,0,0,0,-18,-125,-105,120,7,0,38,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 39 MINEFIELD_DATA,undated,00:00:04.1
-0,0,0,0,-11,75,-47,-80,7,0,39,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 40 MINEFIELD_RESPONSE_NACK,undated,00:00:04.2
-0,0,0,0,-4,98,112,68,7,0,40,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 41 ENVIRONMENTAL_PROCESS,undated,00:00:04.3
-0,0,0,1,3,31,3,72,7,0,41,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 42 GRIDDED_DATA,undated,00:00:04.4
-0,0,0,1,9,-116,31,84,7,0,42,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 43 POINT_OBJECT_STATE,undated,00:00:04.5
-0,0,0,1,15,-55,-127,4,7,0,43,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 44 LINEAR_OBJECT_STATE,undated,00:00:04.6
-0,0,0,1,22,21,74,-104,7,0,44,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 45 AREAL_OBJECT_STATE,undated,00:00:04.7
-0,0,0,1,28,-125,116,44,7,0,45,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 46 TIME_SPACE_POSITION_INFORMATION,undated,00:00:04.8
-0,0,0,1,34,-4,73,-56,7,0,46,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 47 APPEARANCE,undated,00:00:04.9
-0,0,0,1,41,99,39,100,7,0,47,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 48 ARTICULATED_PARTS,undated,00:00:05.0
-0,0,0,1,47,-75,119,-84,7,0,48,11,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 49 LIVE_ENTITY_FIRE,undated,00:00:05.2
-0,0,0,1,53,-4,118,-80,7,0,49,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 50 LIVE_ENTITY_DETONATION,undated,00:00:05.3
-0,0,0,1,60,55,-21,4,7,0,50,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 51 CREATE_ENTITY_RELIABLE,undated,00:00:05.4
-0,0,0,1,66,-27,1,-108,7,0,51,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 52 REMOVE_ENTITY_RELIABLE,undated,00:00:05.5
-0,0,0,1,73,27,-33,-80,7,0,52,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 53 START_RESUME_RELIABLE,undated,00:00:05.6
-0,0,0,1,79,-128,-92,48,7,0,53,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 54 STOP_FREEZE_RELIABLE,undated,00:00:05.7
-0,0,0,1,85,-87,-123,-44,7,0,54,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 55 ACKNOWLEDGE_RELIABLE,undated,00:00:05.8
-0,0,0,1,92,7,72,-8,7,0,55,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0
-# DisPduType 56 ACTION_REQUEST_RELIABLE,undated,00:00:05.9
-0,0,0,1,98,46,45,60,7,0,56,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 57 ACTION_RESPONSE_RELIABLE,undated,00:00:06.0
-0,0,0,1,105,-64,-84,80,7,0,57,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 58 DATA_QUERY_RELIABLE,undated,00:00:06.1
-0,0,0,1,112,88,-115,-8,7,0,58,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 59 SET_DATA_RELIABLE,undated,00:00:06.2
-0,0,0,1,118,-37,-30,76,7,0,59,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 60 DATA_RELIABLE,undated,00:00:06.3
-0,0,0,1,124,-24,117,16,7,0,60,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 61 EVENT_REPORT_RELIABLE,undated,00:00:06.4
-0,0,0,1,-125,14,-57,60,7,0,61,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 62 COMMENT_RELIABLE,undated,00:00:06.5
-0,0,0,1,-119,19,59,24,7,0,62,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 63 RECORD_RELIABLE,undated,00:00:06.7
-0,0,0,1,-113,123,-3,20,7,0,63,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 64 SET_RECORD_RELIABLE,undated,00:00:06.8
-0,0,0,1,-106,24,-50,104,7,0,64,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 65 RECORD_QUERY_RELIABLE,undated,00:00:06.9
-0,0,0,1,-100,109,70,64,7,0,65,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 66 COLLISION_ELASTIC,undated,00:00:07.0
-0,0,0,1,-94,-89,104,-80,7,0,66,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 67 ENTITY_STATE_UPDATE,undated,00:00:07.1
-0,0,0,1,-88,-14,-9,72,7,0,67,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 68 DIRECTED_ENERGY_FIRE,undated,00:00:07.2
-0,0,0,1,-81,52,-49,40,7,0,68,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 69 ENTITY_DAMAGE_STATUS,undated,00:00:07.3
-0,0,0,1,-75,116,-101,-104,7,0,69,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 70 INFORMATION_OPERATIONS_ACTION,undated,00:00:07.4
-0,0,0,1,-68,101,-58,72,7,0,70,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 71 INFORMATION_OPERATIONS_REPORT,undated,00:00:07.5
-0,0,0,1,-62,-7,104,112,7,0,71,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-# DisPduType 72 ATTRIBUTE,undated,00:00:07.6
-0,0,0,1,-55,-18,60,-96,7,0,72,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0
-# Finish, ENCODING_PLAINTEXT, [PduRecorder PduRecorder main() self test ENCODING_PLAINTEXT] 20220620_093613, DIS capture file, .\pduLog\PduRecorderSelfTestENCODING_PLAINTEXT_PduCaptureLog.dislog
+# DisPduType 01 ENTITY_STATE, Session time 21:25:33.6, session duration 00:00:00.0, Pdu timestamp 10 00:00:10.0, simulation stream interval 0 00:00:00.0
+0,0,70,39,18,-8,-55,-91,7,0,1,1,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 02 FIRE, Session time 21:25:33.7, session duration 00:00:00.0, Pdu timestamp 20 00:00:20.0, simulation stream interval 10 00:00:10.0
+0,0,0,0,5,-96,-25,24,7,0,2,2,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 03 DETONATION, Session time 21:25:33.8, session duration 00:00:00.2, Pdu timestamp 30 00:00:30.0, simulation stream interval 20 00:00:20.0
+0,0,0,0,12,28,-55,-12,7,0,3,2,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 04 COLLISION, Session time 21:25:33.9, session duration 00:00:00.3, Pdu timestamp 40 00:00:40.0, simulation stream interval 30 00:00:30.0
+0,0,0,0,18,42,26,-12,7,0,4,1,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 05 SERVICE_REQUEST, Session time 21:25:34.0, session duration 00:00:00.4, Pdu timestamp 50 00:00:50.0, simulation stream interval 40 00:00:40.0
+0,0,0,0,24,73,-80,-24,7,0,5,3,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 06 RESUPPLY_OFFER, Session time 21:25:34.1, session duration 00:00:00.5, Pdu timestamp 60 00:01:00.0, simulation stream interval 50 00:00:50.0
+0,0,0,0,30,-56,11,-52,7,0,6,3,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 07 RESUPPLY_RECEIVED, Session time 21:25:34.2, session duration 00:00:00.6, Pdu timestamp 70 00:01:10.0, simulation stream interval 60 00:01:00.0
+0,0,0,0,37,21,-96,-64,7,0,7,3,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 08 RESUPPLY_CANCEL, Session time 21:25:34.3, session duration 00:00:00.7, Pdu timestamp 80 00:01:20.0, simulation stream interval 70 00:01:10.0
+0,0,0,0,43,39,107,16,7,0,8,3,0,0,0,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 09 REPAIR_COMPLETE, Session time 21:25:34.4, session duration 00:00:00.8, Pdu timestamp 90 00:01:30.0, simulation stream interval 80 00:01:20.0
+0,0,0,0,49,-7,-45,-120,7,0,9,3,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 10 REPAIR_RESPONSE, Session time 21:25:34.5, session duration 00:00:00.9, Pdu timestamp 100 00:01:40.0, simulation stream interval 90 00:01:30.0
+0,0,0,0,56,7,32,60,7,0,10,3,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 11 CREATE_ENTITY, Session time 21:25:34.6, session duration 00:00:01.0, Pdu timestamp 110 00:01:50.0, simulation stream interval 100 00:01:40.0
+0,0,0,0,62,-116,43,60,7,0,11,5,0,0,0,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 12 REMOVE_ENTITY, Session time 21:25:34.7, session duration 00:00:01.1, Pdu timestamp 120 00:02:00.0, simulation stream interval 110 00:01:50.0
+0,0,0,0,68,-125,48,-48,7,0,12,5,0,0,0,120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 13 START_RESUME, Session time 21:25:34.8, session duration 00:00:01.2, Pdu timestamp 130 00:02:10.0, simulation stream interval 120 00:02:00.0
+0,0,0,0,74,-52,-5,116,7,0,13,5,0,0,0,-126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 14 STOP_FREEZE, Session time 21:25:35.0, session duration 00:00:01.3, Pdu timestamp 140 00:02:20.0, simulation stream interval 130 00:02:10.0
+0,0,0,0,81,82,85,-64,7,0,14,5,0,0,0,-116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 15 ACKNOWLEDGE, Session time 21:25:35.1, session duration 00:00:01.4, Pdu timestamp 150 00:02:30.0, simulation stream interval 140 00:02:20.0
+0,0,0,0,87,-44,-33,-68,7,0,15,5,0,0,0,-106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0
+# DisPduType 16 ACTION_REQUEST, Session time 21:25:35.2, session duration 00:00:01.5, Pdu timestamp 160 00:02:40.0, simulation stream interval 150 00:02:30.0
+0,0,0,0,93,-13,110,104,7,0,16,5,0,0,0,-96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 17 ACTION_RESPONSE, Session time 21:25:35.3, session duration 00:00:01.6, Pdu timestamp 170 00:02:50.0, simulation stream interval 160 00:02:40.0
+0,0,0,0,99,-4,-105,88,7,0,17,5,0,0,0,-86,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 18 DATA_QUERY, Session time 21:25:35.4, session duration 00:00:01.7, Pdu timestamp 180 00:03:00.0, simulation stream interval 170 00:02:50.0
+0,0,0,0,106,-10,28,-76,7,0,18,5,0,0,0,-76,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 19 SET_DATA, Session time 21:25:35.5, session duration 00:00:01.8, Pdu timestamp 190 00:03:10.0, simulation stream interval 180 00:03:00.0
+0,0,0,0,113,25,116,-60,7,0,19,5,0,0,0,-66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 20 DATA, Session time 21:25:35.6, session duration 00:00:02.0, Pdu timestamp 200 00:03:20.0, simulation stream interval 190 00:03:10.0
+0,0,0,0,119,104,-50,116,7,0,20,5,0,0,0,-56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 21 EVENT_REPORT, Session time 21:25:35.7, session duration 00:00:02.1, Pdu timestamp 210 00:03:30.0, simulation stream interval 200 00:03:20.0
+0,0,0,0,125,-104,-48,-76,7,0,21,5,0,0,0,-46,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 22 COMMENT, Session time 21:25:35.8, session duration 00:00:02.2, Pdu timestamp 220 00:03:40.0, simulation stream interval 210 00:03:30.0
+0,0,0,0,-125,-116,-49,-84,7,0,22,5,0,0,0,-36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 23 ELECTROMAGNETIC_EMISSION, Session time 21:25:35.9, session duration 00:00:02.3, Pdu timestamp 230 00:03:50.0, simulation stream interval 220 00:03:40.0
+0,0,0,0,-119,-19,22,-112,7,0,23,6,0,0,0,-26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 24 DESIGNATOR, Session time 21:25:36.0, session duration 00:00:02.4, Pdu timestamp 240 00:04:00.0, simulation stream interval 230 00:03:50.0
+0,0,0,0,-113,-1,120,112,7,0,24,6,0,0,0,-16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 25 TRANSMITTER, Session time 21:25:36.1, session duration 00:00:02.5, Pdu timestamp 250 00:04:10.0, simulation stream interval 240 00:04:00.0
+0,0,0,0,-106,123,-18,-12,7,0,25,4,0,0,0,-6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 26 SIGNAL, Session time 21:25:36.2, session duration 00:00:02.6, Pdu timestamp 260 00:04:20.0, simulation stream interval 250 00:04:10.0
+0,0,0,0,-100,-4,22,0,7,0,26,4,0,0,1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0
+# DisPduType 27 RECEIVER, Session time 21:25:36.3, session duration 00:00:02.7, Pdu timestamp 270 00:04:30.0, simulation stream interval 260 00:04:20.0
+0,0,0,0,-93,56,-7,-24,7,0,27,4,0,0,1,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 28 IDENTIFICATION_FRIEND_OR_FOE, Session time 21:25:36.4, session duration 00:00:02.8, Pdu timestamp 280 00:04:40.0, simulation stream interval 270 00:04:30.0
+0,0,0,0,-87,-121,91,-16,7,0,28,6,0,0,1,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 29 UNDERWATER_ACOUSTIC, Session time 21:25:36.5, session duration 00:00:02.9, Pdu timestamp 290 00:04:50.0, simulation stream interval 280 00:04:40.0
+0,0,0,0,-80,33,1,-16,7,0,29,6,0,0,1,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 30 SUPPLEMENTAL_EMISSION_ENTITY_STATE, Session time 21:25:36.7, session duration 00:00:03.0, Pdu timestamp 300 00:05:00.0, simulation stream interval 290 00:04:50.0
+0,0,0,0,-74,-10,23,-112,7,0,30,6,0,0,1,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 31 INTERCOM_SIGNAL, Session time 21:25:36.8, session duration 00:00:03.1, Pdu timestamp 310 00:05:10.0, simulation stream interval 300 00:05:00.0
+0,0,0,0,-67,-126,-45,80,7,0,31,4,0,0,1,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0
+# DisPduType 32 INTERCOM_CONTROL, Session time 21:25:36.9, session duration 00:00:03.3, Pdu timestamp 320 00:05:20.0, simulation stream interval 310 00:05:10.0
+0,0,0,0,-60,-62,44,116,7,0,32,4,0,0,1,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 33 AGGREGATE_STATE, Session time 21:25:37.0, session duration 00:00:03.4, Pdu timestamp 330 00:05:30.0, simulation stream interval 320 00:05:20.0
+0,0,0,0,-54,-20,-109,40,7,0,33,7,0,0,1,74,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 34 ISGROUPOF, Session time 21:25:37.1, session duration 00:00:03.5, Pdu timestamp 340 00:05:40.0, simulation stream interval 330 00:05:30.0
+0,0,0,0,-47,70,49,92,7,0,34,7,0,0,1,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 35 TRANSFER_OWNERSHIP, Session time 21:25:37.2, session duration 00:00:03.6, Pdu timestamp 350 00:05:50.0, simulation stream interval 340 00:05:40.0
+0,0,0,0,-41,115,23,-124,7,0,35,7,0,0,1,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 36 ISPARTOF, Session time 21:25:37.3, session duration 00:00:03.7, Pdu timestamp 360 00:06:00.0, simulation stream interval 350 00:05:50.0
+0,0,0,0,-34,-76,-114,116,7,0,36,7,0,0,1,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 37 MINEFIELD_STATE, Session time 21:25:37.4, session duration 00:00:03.8, Pdu timestamp 370 00:06:10.0, simulation stream interval 360 00:06:00.0
+0,0,0,0,-27,-87,53,-72,7,0,37,8,0,0,1,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 38 MINEFIELD_QUERY, Session time 21:25:37.6, session duration 00:00:03.9, Pdu timestamp 380 00:06:20.0, simulation stream interval 370 00:06:10.0
+0,0,0,0,-20,112,51,-120,7,0,38,8,0,0,1,124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 39 MINEFIELD_DATA, Session time 21:25:37.7, session duration 00:00:04.0, Pdu timestamp 390 00:06:30.0, simulation stream interval 380 00:06:20.0
+0,0,0,0,-14,-72,-93,76,7,0,39,8,0,0,1,-122,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 40 MINEFIELD_RESPONSE_NACK, Session time 21:25:37.8, session duration 00:00:04.1, Pdu timestamp 400 00:06:40.0, simulation stream interval 390 00:06:30.0
+0,0,0,0,-7,34,-98,-112,7,0,40,8,0,0,1,-112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 41 ENVIRONMENTAL_PROCESS, Session time 21:25:37.9, session duration 00:00:04.2, Pdu timestamp 410 00:06:50.0, simulation stream interval 400 00:06:40.0
+0,0,0,0,-1,-3,102,100,7,0,41,9,0,0,1,-102,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 42 GRIDDED_DATA, Session time 21:25:38.0, session duration 00:00:04.4, Pdu timestamp 420 00:07:00.0, simulation stream interval 410 00:06:50.0
+0,0,0,1,6,-50,46,16,7,0,42,9,0,0,1,-92,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 43 POINT_OBJECT_STATE, Session time 21:25:38.1, session duration 00:00:04.5, Pdu timestamp 430 00:07:10.0, simulation stream interval 420 00:07:00.0
+0,0,0,1,12,-13,116,68,7,0,43,9,0,0,1,-82,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 44 LINEAR_OBJECT_STATE, Session time 21:25:38.2, session duration 00:00:04.6, Pdu timestamp 440 00:07:20.0, simulation stream interval 430 00:07:10.0
+0,0,0,1,19,66,-54,112,7,0,44,9,0,0,1,-72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 45 AREAL_OBJECT_STATE, Session time 21:25:38.3, session duration 00:00:04.7, Pdu timestamp 450 00:07:30.0, simulation stream interval 440 00:07:20.0
+0,0,0,1,25,-39,102,80,7,0,45,9,0,0,1,-62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 46 TIME_SPACE_POSITION_INFORMATION, Session time 21:25:38.4, session duration 00:00:04.8, Pdu timestamp 460 00:07:40.0, simulation stream interval 450 00:07:30.0
+0,0,0,1,32,-123,110,-12,7,0,46,11,0,0,1,-52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 47 APPEARANCE, Session time 21:25:38.5, session duration 00:00:04.9, Pdu timestamp 470 00:07:50.0, simulation stream interval 460 00:07:40.0
+0,0,0,1,39,15,55,60,7,0,47,11,0,0,1,-42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 48 ARTICULATED_PARTS, Session time 21:25:38.6, session duration 00:00:05.0, Pdu timestamp 480 00:08:00.0, simulation stream interval 470 00:07:50.0
+0,0,0,1,45,-83,25,-100,7,0,48,11,0,0,1,-32,0,0,0,0,0,0,0,0,0
+# DisPduType 49 LIVE_ENTITY_FIRE, Session time 21:25:38.8, session duration 00:00:05.1, Pdu timestamp 490 00:08:10.0, simulation stream interval 480 00:08:00.0
+0,0,0,1,51,-13,-84,108,7,0,49,11,0,0,1,-22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 50 LIVE_ENTITY_DETONATION, Session time 21:25:38.9, session duration 00:00:05.2, Pdu timestamp 500 00:08:20.0, simulation stream interval 490 00:08:10.0
+0,0,0,1,57,-1,25,-44,7,0,50,11,0,0,1,-12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 51 CREATE_ENTITY_RELIABLE, Session time 21:25:39.0, session duration 00:00:05.3, Pdu timestamp 510 00:08:30.0, simulation stream interval 500 00:08:20.0
+0,0,0,1,65,1,127,-40,7,0,51,10,0,0,1,-2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 52 REMOVE_ENTITY_RELIABLE, Session time 21:25:39.1, session duration 00:00:05.4, Pdu timestamp 520 00:08:40.0, simulation stream interval 510 00:08:30.0
+0,0,0,1,71,76,94,68,7,0,52,10,0,0,2,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 53 START_RESUME_RELIABLE, Session time 21:25:39.2, session duration 00:00:05.5, Pdu timestamp 530 00:08:50.0, simulation stream interval 520 00:08:40.0
+0,0,0,1,77,121,-29,4,7,0,53,10,0,0,2,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 54 STOP_FREEZE_RELIABLE, Session time 21:25:39.3, session duration 00:00:05.6, Pdu timestamp 540 00:09:00.0, simulation stream interval 530 00:08:50.0
+0,0,0,1,83,-69,107,-4,7,0,54,10,0,0,2,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 55 ACKNOWLEDGE_RELIABLE, Session time 21:25:39.4, session duration 00:00:05.8, Pdu timestamp 550 00:09:10.0, simulation stream interval 540 00:09:00.0
+0,0,0,1,90,14,-29,48,7,0,55,10,0,0,2,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0
+# DisPduType 56 ACTION_REQUEST_RELIABLE, Session time 21:25:39.5, session duration 00:00:05.9, Pdu timestamp 560 00:09:20.0, simulation stream interval 550 00:09:10.0
+0,0,0,1,96,48,-14,-68,7,0,56,10,0,0,2,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 57 ACTION_RESPONSE_RELIABLE, Session time 21:25:39.6, session duration 00:00:06.0, Pdu timestamp 570 00:09:30.0, simulation stream interval 560 00:09:20.0
+0,0,0,1,102,-27,-85,52,7,0,57,10,0,0,2,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 58 DATA_QUERY_RELIABLE, Session time 21:25:39.7, session duration 00:00:06.1, Pdu timestamp 580 00:09:40.0, simulation stream interval 570 00:09:30.0
+0,0,0,1,108,-10,28,-104,7,0,58,10,0,0,2,68,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 59 SET_DATA_RELIABLE, Session time 21:25:39.8, session duration 00:00:06.2, Pdu timestamp 590 00:09:50.0, simulation stream interval 580 00:09:40.0
+0,0,0,1,114,-14,102,-100,7,0,59,10,0,0,2,78,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 60 DATA_RELIABLE, Session time 21:25:39.9, session duration 00:00:06.3, Pdu timestamp 600 00:10:00.0, simulation stream interval 590 00:09:50.0
+0,0,0,1,121,90,-100,92,7,0,60,10,0,0,2,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 61 EVENT_REPORT_RELIABLE, Session time 21:25:40.0, session duration 00:00:06.4, Pdu timestamp 610 00:10:10.0, simulation stream interval 600 00:10:00.0
+0,0,0,1,127,-2,18,120,7,0,61,10,0,0,2,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 62 COMMENT_RELIABLE, Session time 21:25:40.1, session duration 00:00:06.5, Pdu timestamp 620 00:10:20.0, simulation stream interval 610 00:10:10.0
+0,0,0,1,-122,27,99,44,7,0,62,10,0,0,2,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 63 RECORD_RELIABLE, Session time 21:25:40.3, session duration 00:00:06.6, Pdu timestamp 630 00:10:30.0, simulation stream interval 620 00:10:20.0
+0,0,0,1,-115,60,-110,112,7,0,63,10,0,0,2,118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 64 SET_RECORD_RELIABLE, Session time 21:25:40.4, session duration 00:00:06.7, Pdu timestamp 640 00:10:40.0, simulation stream interval 630 00:10:30.0
+0,0,0,1,-109,66,-99,-72,7,0,64,10,0,0,2,-128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 65 RECORD_QUERY_RELIABLE, Session time 21:25:40.5, session duration 00:00:06.8, Pdu timestamp 650 00:10:50.0, simulation stream interval 640 00:10:40.0
+0,0,0,1,-103,124,12,20,7,0,65,10,0,0,2,-118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 66 COLLISION_ELASTIC, Session time 21:25:40.6, session duration 00:00:06.9, Pdu timestamp 660 00:11:00.0, simulation stream interval 650 00:10:50.0
+0,0,0,1,-97,-53,100,52,7,0,66,1,0,0,2,-108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 67 ENTITY_STATE_UPDATE, Session time 21:25:40.7, session duration 00:00:07.0, Pdu timestamp 670 00:11:10.0, simulation stream interval 660 00:11:00.0
+0,0,0,1,-90,2,8,28,7,0,67,1,0,0,2,-98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 68 DIRECTED_ENERGY_FIRE, Session time 21:25:40.8, session duration 00:00:07.1, Pdu timestamp 680 00:11:20.0, simulation stream interval 670 00:11:10.0
+0,0,0,1,-84,-15,-119,-52,7,0,68,2,0,0,2,-88,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 69 ENTITY_DAMAGE_STATUS, Session time 21:25:40.9, session duration 00:00:07.3, Pdu timestamp 690 00:11:30.0, simulation stream interval 680 00:11:20.0
+0,0,0,1,-77,38,94,108,7,0,69,2,0,0,2,-78,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 70 INFORMATION_OPERATIONS_ACTION, Session time 21:25:41.0, session duration 00:00:07.4, Pdu timestamp 700 00:11:40.0, simulation stream interval 690 00:11:30.0
+0,0,0,1,-71,-55,-38,100,7,0,70,13,0,0,2,-68,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 71 INFORMATION_OPERATIONS_REPORT, Session time 21:25:41.1, session duration 00:00:07.5, Pdu timestamp 710 00:11:50.0, simulation stream interval 700 00:11:40.0
+0,0,0,1,-65,-9,-60,80,7,0,71,13,0,0,2,-58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+# DisPduType 72 ATTRIBUTE, Session time 21:25:41.2, session duration 00:00:07.6, Pdu timestamp 720 00:12:00.0, simulation stream interval 710 00:11:50.0
+0,0,0,1,-58,-46,42,-32,7,0,72,1,0,0,2,-48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0
+# Finish, ENCODING_PLAINTEXT, [PduRecorder PduRecorder main() self test ENCODING_PLAINTEXT] 20220622_212543, DIS capture file, .\pduLog\PduRecorderSelfTestENCODING_PLAINTEXT_PduCaptureLog.dislog
diff --git a/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestLog.txt b/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestLog.txt
index 1d5b2f0263657a1c8a09064b4233ef74066f575a..699e67664872b4c88f750dd939565d61a91e5c56 100644
Binary files a/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestLog.txt and b/src/edu/nps/moves/dis7/utilities/stream/PduRecorderSelfTestLog.txt differ