From 671906773f7ee1efb8ab119ba0ad96930909a98b Mon Sep 17 00:00:00 2001
From: Don Brutzman <brutzman@nps.edu>
Date: Sun, 15 Nov 2020 15:59:22 -0800
Subject: [PATCH] allow multiple retries to check single-packet receipt

---
 build.all.out.txt                    | 1243 ++------------------------
 test/edu/nps/moves/dis7/PduTest.java |   40 +-
 2 files changed, 119 insertions(+), 1164 deletions(-)

diff --git a/build.all.out.txt b/build.all.out.txt
index a2ff0f6c66..cc8ce49221 100644
--- a/build.all.out.txt
+++ b/build.all.out.txt
@@ -1,861 +1,27 @@
 ant -f C:\\x3d-github\\open-dis7-java all
 all:
-timestamp 14 November 2020 20:16:53
+timestamp 15 November 2020 15:56:11
 clean:
-Deleting directory C:\x3d-github\open-dis7-java\javadoc
-Created dir: C:\x3d-github\open-dis7-java\javadoc
+Deleting C:\x3d-github\open-dis7-java\dist\open-dis7-pdus-classes.jar
+Deleting C:\x3d-github\open-dis7-java\dist\open-dis7-pdus-javadoc.jar
+Deleting C:\x3d-github\open-dis7-java\dist\open-dis7-pdus-source.jar
+Deleting directory C:\x3d-github\open-dis7-java\dist\javadoc
+Created dir: C:\x3d-github\open-dis7-java\dist\javadoc
 ================
 init:
 Deleting: C:\x3d-github\open-dis7-java\build\built-jar.properties
 deps-jar:
 Updating property file: C:\x3d-github\open-dis7-java\build\built-jar.properties
-Compiling 23 source files to C:\x3d-github\open-dis7-java\build\classes
+Compiling 27 source files to C:\x3d-github\open-dis7-java\build\classes
 warning: [options] bootstrap class path not set in conjunction with -source 8
 1 warning
+Creating empty C:\x3d-github\open-dis7-java\build\classes\edu\nps\moves\spatial\package-info.class
+Creating empty C:\x3d-github\open-dis7-java\build\classes\edu\nps\moves\dis7\utilities\stream\package-info.class
+Creating empty C:\x3d-github\open-dis7-java\build\classes\edu\nps\moves\dis7\examples\package-info.class
+Creating empty C:\x3d-github\open-dis7-java\build\classes\edu\nps\moves\dis7\utilities\package-info.class
 Copying 7 files to C:\x3d-github\open-dis7-java\build\classes
 compile:
 ================
-TODO: test suite cleanups, individual programs are runnable OK
-init:
-Deleting: C:\x3d-github\open-dis7-java\build\built-jar.properties
-deps-jar:
-Updating property file: C:\x3d-github\open-dis7-java\build\built-jar.properties
-compile:
-Deleted 19 out of date files in 0 seconds
-Compiling 12 source files to C:\x3d-github\open-dis7-java\build\test\classes
-warning: [options] bootstrap class path not set in conjunction with -source 8
-1 warning
-compile-test:
-test:
-AllPduRoundTripTest
-Recorder log file open: C:\x3d-github\open-dis7-java\pduLog\PduCaptureLog.dislog
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-class edu.nps.moves.dis7.utilities.stream.PduRecorder listening to IP address 225.4.5.6 on port 3000
-Recorder log at C:\x3d-github\open-dis7-java\.\pduLog\PduCaptureLog.dislog
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 15 ACKNOWLEDGE, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 55 ACKNOWLEDGE_RELIABLE, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 3. received DISPDUType 16 ACTION_REQUEST, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 4. received DISPDUType 56 ACTION_REQUEST_RELIABLE, size 44 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 5. received DISPDUType 17 ACTION_RESPONSE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 6. received DISPDUType 57 ACTION_RESPONSE_RELIABLE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 7. received DISPDUType 33 AGGREGATE_STATE, size 136 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 8. received DISPDUType 47 APPEARANCE, size 67 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 9. received DISPDUType 45 AREAL_OBJECT_STATE, size 49 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 10. received DISPDUType 48 ARTICULATED_PARTS, size 17 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 11. received DISPDUType 72 ATTRIBUTE, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 12. received DISPDUType 66 COLLISION_ELASTIC, size 100 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 13. received DISPDUType 4 COLLISION, size 60 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 14. received DISPDUType 22 COMMENT, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 15. received DISPDUType 62 COMMENT_RELIABLE, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 16. received DISPDUType 11 CREATE_ENTITY, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 17. received DISPDUType 51 CREATE_ENTITY_RELIABLE, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 18. received DISPDUType 20 DATA, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 19. received DISPDUType 18 DATA_QUERY, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 20. received DISPDUType 58 DATA_QUERY_RELIABLE, size 44 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 21. received DISPDUType 60 DATA_RELIABLE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 22. received DISPDUType 24 DESIGNATOR, size 88 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 23. received DISPDUType 3 DETONATION, size 104 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 24. received DISPDUType 68 DIRECTED_ENERGY_FIRE, size 88 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 25. received DISPDUType 23 ELECTROMAGNETIC_EMISSION, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 26. received DISPDUType 69 ENTITY_DAMAGE_STATUS, size 24 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 27. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 28. received DISPDUType 67 ENTITY_STATE_UPDATE, size 72 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 29. received DISPDUType 41 ENVIRONMENTAL_PROCESS, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 30. received DISPDUType 21 EVENT_REPORT, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 31. received DISPDUType 61 EVENT_REPORT_RELIABLE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 32. received DISPDUType 2 FIRE, size 96 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 33. received DISPDUType 42 GRIDDED_DATA, size 64 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 34. received DISPDUType 28 IDENTIFICATION_FRIEND_OR_FOE, size 60 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 35. received DISPDUType 71 INFORMATION_OPERATIONS_REPORT, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 36. received DISPDUType 70 INFORMATION_OPERATIONS_ACTION, size 56 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 37. received DISPDUType 32 INTERCOM_CONTROL, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 38. received DISPDUType 31 INTERCOM_SIGNAL, size 33 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 39. received DISPDUType 34 ISGROUPOF, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 40. received DISPDUType 36 ISPARTOF, size 52 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 41. received DISPDUType 50 LIVE_ENTITY_DETONATION, size 79 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 42. received DISPDUType 49 LIVE_ENTITY_FIRE, size 67 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 43. received DISPDUType 44 LINEAR_OBJECT_STATE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 44. received DISPDUType 39 MINEFIELD_DATA, size 44 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 45. received DISPDUType 38 MINEFIELD_QUERY, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 46. received DISPDUType 40 MINEFIELD_RESPONSE_NACK, size 26 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 47. received DISPDUType 37 MINEFIELD_STATE, size 72 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 48. received DISPDUType 43 POINT_OBJECT_STATE, size 91 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 49. received DISPDUType 27 RECEIVER, size 36 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 50. received DISPDUType 65 RECORD_QUERY_RELIABLE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 51. received DISPDUType 63 RECORD_RELIABLE, size 36 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 52. received DISPDUType 12 REMOVE_ENTITY, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 53. received DISPDUType 52 REMOVE_ENTITY_RELIABLE, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 54. received DISPDUType 9 REPAIR_COMPLETE, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 55. received DISPDUType 10 REPAIR_RESPONSE, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 56. received DISPDUType 8 RESUPPLY_CANCEL, size 24 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 57. received DISPDUType 6 RESUPPLY_OFFER, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 58. received DISPDUType 7 RESUPPLY_RECEIVED, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 59. received DISPDUType 30 SUPPLEMENTAL_EMISSION_ENTITY_STATE, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 60. received DISPDUType 5 SERVICE_REQUEST, size 28 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 61. received DISPDUType 19 SET_DATA, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 62. received DISPDUType 59 SET_DATA_RELIABLE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 63. received DISPDUType 64 SET_RECORD_RELIABLE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 64. received DISPDUType 26 SIGNAL, size 33 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 65. received DISPDUType 13 START_RESUME, size 44 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 66. received DISPDUType 53 START_RESUME_RELIABLE, size 48 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 67. received DISPDUType 14 STOP_FREEZE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 68. received DISPDUType 54 STOP_FREEZE_RELIABLE, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 69. received DISPDUType 35 TRANSFER_OWNERSHIP, size 40 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 70. received DISPDUType 25 TRANSMITTER, size 107 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 71. received DISPDUType 46 TIME_SPACE_POSITION_INFORMATION, size 54 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 72. received DISPDUType 29 UNDERWATER_ACOUSTIC, size 32 bytes)
-
-Closing recorder log file: C:\x3d-github\open-dis7-java\pduLog\PduCaptureLog.dislog
-pduReceivedMap.size()=72, pduSentMap.size()=72, match=true
-Replaying DIS logs.
-Replaying C:\x3d-github\open-dis7-java\.\pduLog\PduCaptureLog.dislog
-ENCODING_PLAINTEXT
-Total PDUs: 72
-End of replay from PduCaptureLog.dislog
-BitFieldRoundTripTest
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 73. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
-Sent pdu:
-Alternative EntityType: EntityType:
- entityKind: EntityKind 0 OTHER
- domain: Other
- country: Country 225 UNITED_STATES_OF_AMERICA_USA
- category: 0
- subCategory: 0
- specific: 0
- extra: 0
-
-Entity Capabilities: LandPlatformCapabilities: {}
-Dead Reckoning Parameters: DeadReckoningParameters:
- deadReckoningAlgorithm: DeadReckoningAlgorithm 0 OTHER
- parameters:
-[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
- entityLinearAcceleration: Vector3Float:
- x: 0.0
- y: 0.0
- z: 0.0
-
- entityAngularVelocity: Vector3Float:
- x: 0.0
- y: 0.0
- z: 0.0
-
-
-Entity Appearance: 0
-Entity ID: EntityID:
- siteID: 2
- applicationID: 3
- entityID: 0
-
-Entity Linear Velocity: Vector3Float:
- x: 5.0
- y: 0.0
- z: 0.0
-
-Entity Location: Vector3Double:
- x: 10.0
- y: 20.0
- z: 1.0
-
-Entity Orientation: EulerAngles:
- psi: 35.0
- theta: 45.0
- phi: 25.0
-
-Entity Type: MK4814logisticsplatformtruck:
- entityKind: EntityKind 1 PLATFORM
- domain: Land
- country: Country 225 UNITED_STATES_OF_AMERICA_USA
- category: 7
- subCategory: 18
- specific: 1
- extra: 0
-
-Exercise ID: 1
-Force ID: ForceID 25 FRIENDLY_9
-Length: 144
-Marking: EntityMarking:
- characterSet: EntityMarkingCharacterSet 0 UNUSED
- characters:
-[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
-
-Pdu Status: PduStatus: 00101000
-Pdu Type: DISPDUType 1 ENTITY_STATE
-Protocol Family: DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION
-Protocol Version: DISProtocolVersion 7 IEEE_12781_2012
-Timestamp: 1216993299
-Variable Parameters: []
-
-Rcvd pdu:
-Alternative EntityType: EntityType:
- entityKind: EntityKind 0 OTHER
- domain: Other
- country: Country 225 UNITED_STATES_OF_AMERICA_USA
- category: 0
- subCategory: 0
- specific: 0
- extra: 0
-
-Entity Capabilities: LandPlatformCapabilities: {}
-Dead Reckoning Parameters: DeadReckoningParameters:
- deadReckoningAlgorithm: DeadReckoningAlgorithm 0 OTHER
- parameters:
-[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
- entityLinearAcceleration: Vector3Float:
- x: 0.0
- y: 0.0
- z: 0.0
-
- entityAngularVelocity: Vector3Float:
- x: 0.0
- y: 0.0
- z: 0.0
-
-
-Entity Appearance: 0
-Entity ID: EntityID:
- siteID: 2
- applicationID: 3
- entityID: 0
-
-Entity Linear Velocity: Vector3Float:
- x: 5.0
- y: 0.0
- z: 0.0
-
-Entity Location: Vector3Double:
- x: 10.0
- y: 20.0
- z: 1.0
-
-Entity Orientation: EulerAngles:
- psi: 35.0
- theta: 45.0
- phi: 25.0
-
-Entity Type: MK4814logisticsplatformtruck:
- entityKind: EntityKind 1 PLATFORM
- domain: Land
- country: Country 225 UNITED_STATES_OF_AMERICA_USA
- category: 7
- subCategory: 18
- specific: 1
- extra: 0
-
-Exercise ID: 1
-Force ID: ForceID 25 FRIENDLY_9
-Length: 144
-Marking: EntityMarking:
- characterSet: EntityMarkingCharacterSet 0 UNUSED
- characters:
-[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
-
-Pdu Status: PduStatus: 00101000
-Pdu Type: DISPDUType 1 ENTITY_STATE
-Protocol Family: DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION
-Protocol Version: DISProtocolVersion 7 IEEE_12781_2012
-Timestamp: 1216993299
-Variable Parameters: []
-
-EntityStatePduTest
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
-CreateAllPduTypesTest
-FixedAndVariableDatumRoundTripTest
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 3. received DISPDUType 17 ACTION_RESPONSE, size 128 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 17 ACTION_RESPONSE, size 128 bytes)
-X3dInterpolatorsTest
-testInterpolators
-Replaying DIS logs.
-Replaying C:\x3d-github\open-dis7-java\.\pduLog\Pdusave.dislog
-ENCODING_PLAINTEXT
-Sent PDU: DISPDUType 25 TRANSMITTER
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 25 TRANSMITTER, size 107 bytes)
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 20 DATA
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 1 ENTITY_STATE
-Total PDUs: 231
-End of replay from Pdusave.dislog
-DISTools.Regression.doRegression()
-Writing Position and Rotation Interpolator
-<TimeSensor DEF='PduStreamClock' cycleInterval='104.30541272727272' loop = 'true'/>
-<PositionInterpolator DEF='EntityPosition' key = '0 0.038 0.039 0.046 0.048 0.063 0.067 0.116 0.118 0.167 0.172 0.255 0.32 0.385 0.39 0.435 0.454 0.517 0.518 0.527 0.528 0.535 0.536 0.54 0.541 0.544 0.545 0.548 0.549 0.569 0.578 0.62 0.641 0.713 0.713 0.735 0.735 0.767 0.767 0.814 0.844 0.896 0.903 0.946 0.949 0.992 0.993 0.996 0.997 0.998 0.999 1 '
-keyValue = ' 0 0 0  0.851 1.82 0.204  0.941 1.971 0.271  2.099 3.391 1.667  2.414 3.606 2.229  3.595 3.014 5.773  3.916 2.49 7.104  11.988 -10.664 40.467  12.316 -11.199 41.831  22.634 -27.754 84.441  23.69 -29.444 88.782  41.954 -56.738 161.927  56.241 -77.67 218.71  70.611 -98.714 275.782  71.697 -100.321 280.164  81.364 -114.837 320.067  83.752 -118.419 329.908  86.533 -122.511 341.037  86.585 -122.587 341.244  86.786 -123.888 343.083  86.769 -124.075 343.235  86.05 -126.65 344.131  85.915 -126.954 344.114  84.887 -128.695 343.389  84.689 -128.939 343.156  83.698 -129.729 341.537  83.541 -129.771 341.195  82.93 -129.452 339.365  82.803 -129.162 338.751  79.585 -122.453 323.714  77.938 -118.956 315.823  70.493 -103.141 280.143  66.427 -94.736 261.386  56.336 -61.466 202.176  56.321 -61.418 202.089  49.848 -57.608 182.231  49.818 -57.587 182.136  41.326 -50.719 154.152  41.3 -50.691 154.059  29.742 -37.795 112.301  22.739 -28.905 85.889  10.823 -12.606 39.611  9.204 -10.387 33.307  4.081 -3.346 13.254  3.954 -3.176 12.779  1.899 -0.45 5.184  1.841 -0.372 4.966  1.745 -0.214 4.577  1.681 -0.058 4.267  1.654 0.027 4.118  1.615 0.228 3.807  1.601 0.345 3.648 ' />
-<OrientationInterpolator DEF='EntityOrientationZ' key = '0 0.038 0.039 0.046 0.048 0.063 0.067 0.116 0.118 0.167 0.172 0.255 0.32 0.385 0.39 0.435 0.454 0.517 0.518 0.527 0.528 0.535 0.536 0.54 0.541 0.544 0.545 0.548 0.549 0.569 0.578 0.62 0.641 0.713 0.713 0.735 0.735 0.767 0.767 0.814 0.844 0.896 0.903 0.946 0.949 0.992 0.993 0.996 0.997 0.998 0.999 1 '
-keyValue = ' 0 0 1 0.062  0 0 1 -0.097  0 0 1 -0.104  0 0 1 -0.163  0 0 1 -0.174  0 0 1 -0.212  0 0 1 -0.211  0 0 1 -0.213  0 0 1 -0.212  0 0 1 -0.212  0 0 1 -0.212  0 0 1 -0.211  0 0 1 -0.211  0 0 1 -0.211  0 0 1 -0.212  0 0 1 -0.212  0 0 1 -0.212  0 0 1 -0.211  0 0 1 -0.212  0 0 1 -0.263  0 0 1 -0.272  0 0 1 0.497  0 0 1 0.468  0 0 1 0.368  0 0 1 0.358  0 0 1 0.322  0 0 1 0.316  0 0 1 0.286  0 0 1 0.284  0 0 1 0.283  0 0 1 0.283  0 0 1 0.283  0 0 1 0.283  0 0 1 0.275  0 0 1 0.277  0 0 1 0.3  0 0 1 0.298  0 0 1 0.294  0 0 1 0.294  0 0 1 0.291  0 0 1 0.29  0 0 1 0.29  0 0 1 0.29  0 0 1 0.292  0 0 1 0.292  0 0 1 0.29  0 0 1 0.29  0 0 1 0.284  0 0 1 0.277  0 0 1 0.274  0 0 1 0.266  0 0 1 0.262 ' />
-<OrientationInterpolator DEF='EntityOrientationY' key = '0 0.038 0.039 0.046 0.048 0.063 0.067 0.116 0.118 0.167 0.172 0.255 0.32 0.385 0.39 0.435 0.454 0.517 0.518 0.527 0.528 0.535 0.536 0.54 0.541 0.544 0.545 0.548 0.549 0.569 0.578 0.62 0.641 0.713 0.713 0.735 0.735 0.767 0.767 0.814 0.844 0.896 0.903 0.946 0.949 0.992 0.993 0.996 0.997 0.998 0.999 1 '
-keyValue = ' 0 1 0 -0.191  0 1 0 -0.152  0 1 0 -0.146  0 1 0 -0.064  0 1 0 -0.039  0 1 0 0.058  0 1 0 0.059  0 1 0 0.058  0 1 0 0.057  0 1 0 0.058  0 1 0 0.058  0 1 0 0.055  0 1 0 0.055  0 1 0 0.055  0 1 0 0.054  0 1 0 0.054  0 1 0 0.054  0 1 0 0.054  0 1 0 0.058  0 1 0 0.136  0 1 0 0.144  0 1 0 0.186  0 1 0 0.18  0 1 0 0.115  0 1 0 0.101  0 1 0 0.026  0 1 0 0.012  0 1 0 -0.061  0 1 0 -0.066  0 1 0 -0.065  0 1 0 -0.065  0 1 0 -0.065  0 1 0 -0.069  0 1 0 -0.085  0 1 0 -0.081  0 1 0 -0.03  0 1 0 -0.034  0 1 0 -0.044  0 1 0 -0.044  0 1 0 -0.05  0 1 0 -0.052  0 1 0 -0.052  0 1 0 -0.052  0 1 0 -0.053  0 1 0 -0.053  0 1 0 -0.052  0 1 0 -0.052  0 1 0 -0.066  0 1 0 -0.077  0 1 0 -0.084  0 1 0 -0.097  0 1 0 -0.104 ' />
-<OrientationInterpolator DEF='EntityOrientationX' key = '0 0.038 0.039 0.046 0.048 0.063 0.067 0.116 0.118 0.167 0.172 0.255 0.32 0.385 0.39 0.435 0.454 0.517 0.518 0.527 0.528 0.535 0.536 0.54 0.541 0.544 0.545 0.548 0.549 0.569 0.578 0.62 0.641 0.713 0.713 0.735 0.735 0.767 0.767 0.814 0.844 0.896 0.903 0.946 0.949 0.992 0.993 0.996 0.997 0.998 0.999 1 '
-keyValue = ' 1 0 0 0.499  1 0 0 -0.359  1 0 0 -0.353  1 0 0 -0.315  1 0 0 -0.312  1 0 0 -0.313  1 0 0 -0.312  1 0 0 -0.314  1 0 0 -0.314  1 0 0 -0.314  1 0 0 -0.314  1 0 0 -0.313  1 0 0 -0.313  1 0 0 -0.313  1 0 0 -0.314  1 0 0 -0.314  1 0 0 -0.314  1 0 0 -0.313  1 0 0 -0.314  1 0 0 -0.344  1 0 0 -0.35  1 0 0 0.44  1 0 0 0.414  1 0 0 0.331  1 0 0 0.325  1 0 0 0.31  1 0 0 0.309  1 0 0 0.314  1 0 0 0.315  1 0 0 0.316  1 0 0 0.316  1 0 0 0.316  1 0 0 0.316  1 0 0 0.319  1 0 0 0.318  1 0 0 0.31  1 0 0 0.311  1 0 0 0.312  1 0 0 0.312  1 0 0 0.313  1 0 0 0.313  1 0 0 0.313  1 0 0 0.312  1 0 0 0.311  1 0 0 0.312  1 0 0 0.313  1 0 0 0.313  1 0 0 0.315  1 0 0 0.318  1 0 0 0.32  1 0 0 0.324  1 0 0 0.326 ' />
-DISTools.Regression.doRegression()
-Writing X3D LineSet
-<LineSet vertexCount='49'>
- <Coordinate point=' 0 0 0  1.968 3.278 1.459  2.099 3.391 1.667  2.948 3.723 3.445  3.063 3.685 3.772  4.219 2 8.345  4.958 0.839 11.234  11.988 -10.664 40.467  12.316 -11.199 41.831  22.634 -27.754 84.441  23.69 -29.444 88.782  41.954 -56.738 161.927  56.241 -77.67 218.71  70.611 -98.714 275.782  71.697 -100.321 280.164  83.629 -118.236 329.408  83.752 -118.419 329.908  86.533 -122.511 341.037  86.585 -122.587 341.244  86.786 -123.888 343.083  86.769 -124.075 343.235  86.05 -126.65 344.131  85.915 -126.954 344.114  84.887 -128.695 343.389  84.689 -128.939 343.156  83.698 -129.729 341.537  83.541 -129.771 341.195  82.93 -129.452 339.365  82.803 -129.162 338.751  79.585 -122.453 323.714  77.938 -118.956 315.823  69.562 -101.188 275.759  66.427 -94.736 261.386  56.336 -61.466 202.176  56.321 -61.418 202.089  49.848 -57.608 182.231  49.818 -57.587 182.136  41.326 -50.719 154.152  41.3 -50.691 154.059  29.742 -37.795 112.301  22.739 -28.905 85.889  10.823 -12.606 39.611  9.204 -10.387 33.307  3.954 -3.176 12.779  3.691 -2.829 11.814  1.681 -0.058 4.267  1.654 0.027 4.118  1.615 0.228 3.807  1.601 0.345 3.648 ' />
-</LineSet>
-
-CommentPdusTest
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 22 COMMENT, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 22 COMMENT, size 56 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 3. received DISPDUType 22 COMMENT, size 72 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 4. received DISPDUType 22 COMMENT, size 128 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 5. received DISPDUType 62 COMMENT_RELIABLE, size 32 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 6. received DISPDUType 62 COMMENT_RELIABLE, size 56 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 7. received DISPDUType 62 COMMENT_RELIABLE, size 88 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 8. received DISPDUType 62 COMMENT_RELIABLE, size 128 bytes)
-PduFactoryTest
-MarshalEnumsTest
-DataQueryPduRoundTripTest
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 9. received DISPDUType 18 DATA_QUERY, size 128 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 18 DATA_QUERY, size 128 bytes)
-EntityStatePduTest
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 3 DETONATION, size 104 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 3 DETONATION, size 104 bytes)
-CreateAllObjectTypesTest
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.ArealObject	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 0 OTHER	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Obstacle	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Minefield.Minefield	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Minefield.Hasty	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Minefield.Other	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Minefield.Prepared	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Minefield.Scattered	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Minefield.Solitary	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Other.Other	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.LinearObject	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 0 OTHER	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Culturalfeature.Culturalfeature	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Culturalfeature.TracksTire.TracksTire	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Culturalfeature.Wire.Wire	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Culturalfeature.Wire.WireCrush	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.Obstacle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.ChainLinkFence.ChainLinkFence	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 9	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.ConcertinaWire.ConcertinaWire	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.ConcertinaWire.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.ConcertinaWire._2Roll	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.ConcertinaWire._3Roll	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.ConcreteBarrier.ConcreteBarrier	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 3	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.Other.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.Rut.Rut	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 5	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.SpeedBump.SpeedBump	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.TankDitch.TankDitch	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.TankDitch.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclebreach.Obstaclebreach	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 7 OBSTACLE_BREACH	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclebreach.Breach.Breach	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 7 OBSTACLE_BREACH	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclebreach.Breach.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 7 OBSTACLE_BREACH	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclebreach.Other.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 7 OBSTACLE_BREACH	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclemarker.Obstaclemarker	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 6 OBSTACLE_MARKER	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclemarker.Obstaclemarker	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 6 OBSTACLE_MARKER	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclemarker.MinefieldLaneMarker.MinefieldLaneMarker	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 6 OBSTACLE_MARKER	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclemarker.MinefieldLaneMarker.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 6 OBSTACLE_MARKER	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstaclemarker.Other.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 6 OBSTACLE_MARKER	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Tacticalsmoke.Tacticalsmoke	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Tacticalsmoke.ExhaustSmoke.ExhaustSmoke	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Tacticalsmoke.ExhaustSmoke.Other	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Tacticalsmoke.Tacticalsmoke	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.PointObject	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 0 OTHER	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Culturalfeature	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingRubble.BuildingRubble	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingRubble.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.BuildingStructure	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.ApartmentBuilding	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.Church	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.FOBGuardTower	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 17
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.FOBTrailerOffice	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 16
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.GovernmentBuilding	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.GuardHouse	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 18
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.Hanger	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 5
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.IndustrialBuilding	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.MicrowaveTower	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 6
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.PortaPotty	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 15
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.PowerPylon	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 7
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.RadioTower1000ft	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 14
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.RadioTower100ft	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 12
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.RadioTower500ft	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 13
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.RadioTVTower	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 8
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.School	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 9
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.TransformerYard	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 10
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.BuildingStructure.Windmill	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 1	Subcategory: 19
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.ContainerBasedBuilding.ContainerBasedBuilding	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 8	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.ContainerBasedBuilding.ContainerBasedBuildingBridgeSingle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 8	Subcategory: 6
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.ContainerBasedBuilding.ContainerBasedBuildingFOB	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 8	Subcategory: 7
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.ContainerBasedBuilding.ContainerBasedBuildingHouseDouble	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 8	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.ContainerBasedBuilding.ContainerBasedBuildingHouseSingle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 8	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.ContainerBasedBuilding.ContainerBasedBuildingHouseSingleRailing	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 8	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.ContainerBasedBuilding.ContainerBasedBuildingMosqueSingle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 8	Subcategory: 5
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.ContainerBasedBuilding.ContainerBasedBuildingStoreSingle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 8	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.DisturbedEarth.DisturbedEarth	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 3	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.DisturbedRoad.DisturbedRoad	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 4	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.DisturbedRoad.DisturbedRoadAsphalt	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 4	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.DisturbedRoad.DisturbedRoadConcrete	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 4	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.DisturbedRoad.DisturbedRoadGravel	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 4	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.IndustrialProcessingPlant.IndustrialProcessingPlant	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 13	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.IndustrialProcessingPlant.OilRefinery	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 13	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuilding	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingApartment	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 12
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingChurch	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 14
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingControlTower	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 7
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingFarmHouse	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 15
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingFireStation	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 10
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingGasStation	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingHospital	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingHouse	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingMudbrickHouse	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 16
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingMudbrickStore	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 17
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingOfficeBuilding	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 5
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingPoliceStation	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 9
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingPowerStation	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 11
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingSchool	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 13
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingStore	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingWarehouse	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 6
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MOUTBuilding.MOUTBuildingWaterTower	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 7	Subcategory: 8
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MaintenanceStructure.MaintenanceStructure	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 6	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MaintenanceStructure.LargeAreaMaintenanceShelterLAMSAviationMaintenanceAM	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 6	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MaintenanceStructure.LargeAreaMaintenanceShelterLAMSVehicleMaintenanceVM	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 6	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MaintenanceStructure.LightweightMaintenanceEnclosureLMEBradley	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 6	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.MaintenanceStructure.LightweightMaintenanceEnclosureLMEM1	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 6	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Other.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Pump.Pump	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 12	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Pump.PumpGas	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 12	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.Tent	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentArctic	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 5
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentBedouin	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 9
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentChemicallyandBiologicalProtectedShelterCBPS	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 10
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentExpandableFrame	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 7
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentFritsche	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 8
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentKuchi	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 11
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentLarge	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentMedium	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentModularGeneralPurposeTentSystemMGPTS	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentSmall	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.Tent.TentTEMPER	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 5	Subcategory: 6
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.TreeDeciduous.TreeDeciduous	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 10	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.TreeDeciduous.TreeDeciduousLarge	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 10	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.TreeDeciduous.TreeDeciduousMedium	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 10	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.TreeDeciduous.TreeDeciduousSmall	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 10	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.TreeEvergreen.TreeEvergreen	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 11	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.TreeEvergreen.TreeEvergreenLarge	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 11	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.TreeEvergreen.TreeEvergreenMedium	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 11	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.TreeEvergreen.TreeEvergreenSmall	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 11	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Culturalfeature.UtilityPole.UtilityPole	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 14	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.EnvironmentalObject.EnvironmentalObject	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 8 ENVIRONMENTAL_OBJECT	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.EnvironmentalObject.Flood.Flood	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 8 ENVIRONMENTAL_OBJECT	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.EnvironmentalObject.Flood.FloodLarge	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 8 ENVIRONMENTAL_OBJECT	Category: 1	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.EnvironmentalObject.Flood.FloodMedium	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 8 ENVIRONMENTAL_OBJECT	Category: 1	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.EnvironmentalObject.Flood.FloodSmall	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 8 ENVIRONMENTAL_OBJECT	Category: 1	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Obstacle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Abatis.Abatis	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Abatis.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Abatis._14Tree	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Abatis._8Tree	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 1	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.Barrier	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierConstruction	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 6
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierFenceChain6foot	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 8
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierFenceWood6foot	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 9
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierHESCOBasketDoubleStacked	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 5
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierHESCOBasketLarge	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierHESCOBasketMedium	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierHESCOBasketSmall	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierJerseyPlastic	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 7
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.BarrierTexas	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 10
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Barrier.DragonsTeeth	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 4	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Crater.Crater	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 3	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Crater.Large	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 3	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Crater.Medium	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 3	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Crater.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 3	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Crater.Small	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 3	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.LogCrib.LogCrib	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.LogCrib.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.LogCrib.Rectangular	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.LogCrib.Triangular	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.Other.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.PotHole.PotHole	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 9	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.RockDrop.RockDrop	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 5	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.RockDrop.RockDropCovered	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 5	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstacle.RockDrop.RockDropUncovered	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 5	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstaclemarker.Obstaclemarker	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 6 OBSTACLE_MARKER	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Obstaclemarker.NBCHazardMarker.NBCHazardMarker	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 6 OBSTACLE_MARKER	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.Passageway	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.AVLB.AVLB	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.AVLB.JointAssaultBridgeJAB	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 2	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.AVLB.M60A1	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 2	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.AVLB.MTU20	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 2	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.AVLB.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.Other.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.Pier.Pier	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 4	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.RibbonBridge.RibbonBridge	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 3	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.RibbonBridge.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 3	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.RibbonBridge._2Lane	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 3	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.RibbonBridge._4Lane	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 3	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.StationaryBridge.StationaryBridge	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.StationaryBridge.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.StationaryBridge._2Lane	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 1	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Passageway.StationaryBridge._4Lane	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 4 PASSAGEWAY	Category: 1	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.Preparedposition	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFightingPosition.CoveredMachineGunBunker	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 2	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFightingPosition.HastyFightingPosition	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 2	Subcategory: 5
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFightingPosition.InfantryFightingPosition	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFightingPosition.NonCoveredInfantryPosition	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 2	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFightingPosition.NonCoveredMachineGunBunker	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 2	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFightingPosition.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFightingPosition.OverheadCoveredInfantryPosition	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 2	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.Other.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.ArmoredVehicle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 1
-ENCODING_PLAINTEXT
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.FightingVehicle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.MortarCarrier	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.Tank	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.VehicleDefilade	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.Tacticalsmoke	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.AirBurst.AirBurst	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 2	Subcategory: 0
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Exception in DisThreadedNetIF send thread: Cannot invoke "java.net.DatagramSocket.send(java.net.DatagramPacket)" because "this.socket" is null
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.AirBurst.Grenade	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 2	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.AirBurst.Other	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 2	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.GroundBurst.GroundBurst	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.GroundBurst.Artillery	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 1	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.GroundBurst.Other	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 1	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.Other.Other	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 0	Subcategory: 0
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.TacticalSmokeCanister.M18Green	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 3	Subcategory: 2
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.TacticalSmokeCanister.M18Red	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 3	Subcategory: 5
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.TacticalSmokeCanister.M18Violet	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 3	Subcategory: 3
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.TacticalSmokeCanister.M18Yellow	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 3	Subcategory: 4
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.TacticalSmokeCanister.M83White	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 3	Subcategory: 1
-Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.TacticalSmokeCanister.TacticalSmokeCanister	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 3	Subcategory: 0
-SignalPdusTest
-Recorder log file open: C:\x3d-github\open-dis7-java\pduLog\PduCaptureLog.dislog
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-class edu.nps.moves.dis7.utilities.stream.PduRecorder listening to IP address 225.4.5.6 on port 3000
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 26 SIGNAL, size 33 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 26 SIGNAL, size 33 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 26 SIGNAL, size 50 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 3. received DISPDUType 31 INTERCOM_SIGNAL, size 33 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 4. received DISPDUType 31 INTERCOM_SIGNAL, size 58 bytes)
-testRoundTripNet
-
-Closing recorder log file: C:\x3d-github\open-dis7-java\pduLog\PduCaptureLog.dislog
-testRoundTripLog
-Replaying DIS logs.
-Replaying C:\x3d-github\open-dis7-java\.\pduLog\PduCaptureLog.dislog
-Total PDUs: 4
-End of replay from PduCaptureLog.dislog
-
-Closing recorder log file: C:\x3d-github\open-dis7-java\pduLog\PduCaptureLog.dislog
-ObjectTypeMarshallTest
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Obstacle.ConcertinaWire._2Roll	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 1 OBSTACLE	Category: 2	Subcategory: 1
-01 01 02 01
-Name: edu.nps.moves.dis7.objectTypes.LinearObject.Culturalfeature.TracksTire.TracksTire	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 3 CULTURAL_FEATURE	Category: 2	Subcategory: 0
-01 03 02 00
-EntityStatePduTest
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-NullFieldsEntityMarshallTest
-.
-+-- JUnit Jupiter [OK]
-| +-- All Pdu Round Trip Test [OK]
-| | '-- testRoundTripAllPdus() [OK]
-| +-- Bit Field Round TripTest [OK]
-| | '-- testRoundTrip() [OK]
-| +-- Entity State Pdu Test [OK]
-| | '-- testRoundTrip() [OK]
-| +-- CreateAllPduTypesTest [OK]
-| | '-- testCreateAll() [OK]
-| +-- Fixed and Variable Datum Round Trip Test [OK]
-| | '-- testRoundTrip() [OK]
-| +-- X3dInterpolatorsTest [OK]
-| | '-- testInterpolators() [OK]
-| +-- Comment Pdus Test [OK]
-| | '-- testRoundTrip() [OK]
-| +-- Pdu Factory Test [OK]
-| | '-- testCreateAllPdus() [OK]
-| +-- Marshal Enums Test [OK]
-| | '-- testGoodMarshall() [OK]
-| +-- Data Query Pdu Round Test [OK]
-| | '-- testRoundTrip() [OK]
-| +-- Detonation Pdu Test [OK]
-| | '-- testRoundTrip() [OK]
-| +-- All Object Types Create [OK]
-| | '-- testCreateAllObjectTypes() [OK]
-| +-- Signal Pdus Test [OK]
-| | +-- testRoundTripNet() [OK]
-| | '-- testRoundTripLog() [OK]
-| +-- Object Type Marshal Test [OK]
-| | +-- testGoodMarshall() [OK]
-| | '-- testNoSubCategory() [OK]
-| +-- Fire Pdu Test [OK]
-| | '-- testRoundTrip() [X] No response from network receive after 100 msec (TODO note that test works standalone but mysteriously fails as part of project test suite) ==> expected: <true> but was: <false>
-| '-- Null Fields Entity Marshall Test [OK]
-|   +-- testGoodMarshall() [OK]
-|   '-- testNoSpecificNoExtraMarshal() [OK]
-'-- JUnit Vintage [OK]
-
-Failures (1):
-  JUnit Jupiter:Fire Pdu Test:testRoundTrip()
-    MethodSource [className = 'edu.nps.moves.dis7.FirePduTest', methodName = 'testRoundTrip', methodParameterTypes = '']
-    => org.opentest4j.AssertionFailedError: No response from network receive after 100 msec (TODO note that test works standalone but mysteriously fails as part of project test suite) ==> expected: <true> but was: <false>
-       org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:55)
-       org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:40)
-       org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:193)
-       edu.nps.moves.dis7.PduTest.testPduSendReceiveHeaderMatch(PduTest.java:147)
-       edu.nps.moves.dis7.FirePduTest.testOnePdu(FirePduTest.java:38)
-       edu.nps.moves.dis7.FirePduTest.testRoundTrip(FirePduTest.java:28)
-       java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-       java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
-       java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-       java.base/java.lang.reflect.Method.invoke(Method.java:564)
-       [...]
-
-Test run finished after 5361 ms
-[        18 containers found      ]
-[         0 containers skipped    ]
-[        18 containers started    ]
-[         0 containers aborted    ]
-[        18 containers successful ]
-[         0 containers failed     ]
-[        19 tests found           ]
-[         0 tests skipped         ]
-[        19 tests started         ]
-[         0 tests aborted         ]
-[        18 tests successful      ]
-[         1 tests failed          ]
-
-Java Result: 1
-Processing C:\x3d-github\open-dis7-java\build\test\results\TESTS-TestSuites.xml to C:\Users\brutzman\AppData\Local\Temp\null1811832909
-Loading stylesheet jar:file:/C:/apache-ant-1.10.8/lib/ant-junit.jar!/org/apache/tools/ant/taskdefs/optional/junit/xsl/junit-frames.xsl
-Transform time: 52ms
-Deleting: C:\Users\brutzman\AppData\Local\Temp\null1811832909
-================
 init:
 Warning: Leaving out empty argument '-windowtitle'
 Generating Javadoc
@@ -870,10 +36,12 @@ Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\PduListenerSaver.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\PduReaderPlayer.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\ThreadedNetExample.java...
+Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\package-info.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\CoordinateConversions.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\PduFactory.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java...
+Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\package-info.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduReceiver.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java...
@@ -881,43 +49,13 @@ Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilitie
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateLineSet.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dSlidingWindowCompression.java...
+Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\package-info.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\EntityBodyCoordinates.java...
 Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java...
+Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\package-info.java...
 Constructing Javadoc information...
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:27: warning: no comment
-  public enum NetworkMode
 Standard Doclet version 15.0.1+9-18
 Building tree for all the packages and classes...
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:27: warning: no comment
-  public class ByteArrayBufferAndLength
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\AlphabeticalPduSender.java:34: warning: no comment
-  public AlphabeticalPduSender(int port, String multicast)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\AlphabeticalPduSender.java:48: warning: no comment
-  public void run()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\AlphabeticalPduSender.java:326: warning: no comment
-  public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EntityStateEntityIdExampleUse.java:130: warning: no comment
-  public static void main(String[] args) throws Exception
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduReceiver.java:31: warning: no comment
-  public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduReceiverNIO.java:24: warning: no comment
-  public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:25: warning: no comment
-  public static final int NUMBER_TO_SEND = 5000;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:29: warning: no comment
-    UNICAST, MULTICAST, BROADCAST
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:29: warning: no comment
-    UNICAST, MULTICAST, BROADCAST
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:29: warning: no comment
-    UNICAST, MULTICAST, BROADCAST
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSenderNIO.java:27: warning: no comment
-  public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\PduListenerSaver.java:31: warning: no comment
-  public static void main(String[] args)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\PduReaderPlayer.java:32: warning: no comment
-  public static void main(String[] args)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\ThreadedNetExample.java:23: warning: no comment
-  public static void main(String[] args)
 C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java:337: warning: no comment
     public void c(double lat, double lon, double alt,
 C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java:379: warning: no comment
@@ -926,53 +64,15 @@ C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java:436
     public static void main(String args[])
 C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java:459: warning: no comment
   public SRF_LococentricEuclidean3D getPlatformReferenceFrame(Vector3Double rangePositionCoordinates)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:89: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:90: warning: no comment
     public void addRawListener(RawListener lis) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:396: warning: no comment
-    public void startResume() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:400: warning: no comment
-    public void stopPause() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:404: warning: no comment
-    public void end() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:32: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:33: warning: no @param for ba
         void receiveBytes(byte[] ba);
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:31: warning: no comment
-  public static final String COMMENT_MARKER = "#";
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:130: warning: no comment
-  public void startResume()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:135: warning: no comment
-  public void stopPause()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:140: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:142: warning: no @return
   public File end()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:41: warning: no comment
-    public double getPhi() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:45: warning: no comment
-    public void setPhi(double phi) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:49: warning: no comment
-    public double getPsi() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:53: warning: no comment
-    public void setPsi(double psi) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:57: warning: no comment
-    public double getTheta() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:61: warning: no comment
-    public void setTheta(double theta) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:65: warning: no comment
-    public double getX() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:69: warning: no comment
-    public void setX(double x) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:73: warning: no comment
-    public double getY() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:77: warning: no comment
-    public void setY(double y) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:81: warning: no comment
-    public double getZ() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:85: warning: no comment
-    public void setZ(double z) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java:38: warning: no comment
-    public X3dCreateInterpolators() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java:45: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java:47: warning: no comment
     public void addPointsToMap(byte[] localBufferShort) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java:112: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java:114: warning: no comment
     public void makeX3dInterpolator() {
 C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateLineSet.java:38: warning: no comment
     public X3dCreateLineSet() {
@@ -984,64 +84,47 @@ C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dSlidingW
     public X3dSlidingWindowCompression(Map<Double, X3dCoordinates> localHashMap) {
 C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dSlidingWindowCompression.java:30: warning: no comment
     public Map<Double, X3dCoordinates> doSlidingWindow() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\CoordinateConversions.java:15: warning: no comment
-    public static final double RADIANS_TO_DEGREES = 180.0/Math.PI;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\CoordinateConversions.java:16: warning: no comment
-    public static final double DEGREES_TO_RADIANS = Math.PI/180.0;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:29: warning: no comment
-  public static String DEFAULT_MULTICAST_ADDRESS = "225.4.5.6";
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:30: warning: no comment
-  public static int    DEFAULT_DIS_PORT          = 3000;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:179: warning: no comment
-  public int getDisPort()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:184: warning: no comment
-  public String getMcastGroup()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:342: warning: no comment
-  public void kill()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:53: warning: no comment
-    public byte[] bufferByteArray;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:54: warning: no comment
-    public int length;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:39: warning: no comment
-    void incomingPdu(Pdu pdu);
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:45: warning: no comment
-    void incomingPdu(ByteArrayBufferAndLength bAndL);
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:49: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:52: warning: no comment
   public TrialDisMulticastNetworkingDeprecated()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:54: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:58: warning: no comment
   public TrialDisMulticastNetworkingDeprecated(int port, String mcastgroup)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:69: warning: no comment
-  public int getPort()
 C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:74: warning: no comment
+  public int getPort()
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:80: warning: no comment
   public String getIp()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:79: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:86: warning: no comment
   public void stop()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:92: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:100: warning: no comment
   public Pdu receivePdu() throws IOException
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:102: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:111: warning: no comment
   public ByteArrayBufferAndLength receiveRawPdu() throws IOException
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:119: warning: no comment
-  public void sendPdu(Pdu pdu) throws Exception
 C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:128: warning: no comment
+  public void sendPdu(Pdu pdu) throws Exception
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:137: warning: no comment
   public void sendRawPdu(byte[] data) throws IOException
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:29: warning: no comment
-    public byte[] bufferByteArray;
 C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:30: warning: no comment
+    public byte[] bufferByteArray;
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:31: warning: no comment
     public int length;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:32: warning: no comment
+C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:34: warning: no comment
     public ByteArrayBufferAndLength(byte[] bufferByteArray, int length)
 Building index for all the packages and classes...
 Building index for all classes...
 Generating C:\x3d-github\open-dis7-java\dist\javadoc\help-doc.html...
-72 warnings
+26 warnings
 Browsing: file:/C:/x3d-github/open-dis7-java/dist/javadoc/index.html
 javadoc:
 ================
+TODO: test suite cleanups, individual programs are runnable OK
 init:
 Deleting: C:\x3d-github\open-dis7-java\build\built-jar.properties
 deps-jar:
 Updating property file: C:\x3d-github\open-dis7-java\build\built-jar.properties
 compile:
+Deleted 19 out of date files in 0 seconds
+Compiling 12 source files to C:\x3d-github\open-dis7-java\build\test\classes
+warning: [options] bootstrap class path not set in conjunction with -source 8
+1 warning
 compile-test:
 test:
 AllPduRoundTripTest
@@ -1201,7 +284,7 @@ Pdu Status: PduStatus: 00101000
 Pdu Type: DISPDUType 1 ENTITY_STATE
 Protocol Family: DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION
 Protocol Version: DISProtocolVersion 7 IEEE_12781_2012
-Timestamp: 1229094369
+Timestamp: -262612199
 Variable Parameters: []
 
 Rcvd pdu:
@@ -1272,26 +355,26 @@ Pdu Status: PduStatus: 00101000
 Pdu Type: DISPDUType 1 ENTITY_STATE
 Protocol Family: DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION
 Protocol Version: DISProtocolVersion 7 IEEE_12781_2012
-Timestamp: 1229094369
+Timestamp: -262612199
 Variable Parameters: []
 
 EntityStatePduTest
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
+[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 1 ENTITY_STATE, size 144 bytes)
 CreateAllPduTypesTest
 FixedAndVariableDatumRoundTripTest
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 3. received DISPDUType 17 ACTION_RESPONSE, size 128 bytes)
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 17 ACTION_RESPONSE, size 128 bytes)
+[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 3. received DISPDUType 17 ACTION_RESPONSE, size 128 bytes)
 X3dInterpolatorsTest
 testInterpolators
 Replaying DIS logs.
 Replaying C:\x3d-github\open-dis7-java\.\pduLog\Pdusave.dislog
 ENCODING_PLAINTEXT
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 25 TRANSMITTER, size 107 bytes)
 Sent PDU: DISPDUType 25 TRANSMITTER
+[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 25 TRANSMITTER, size 107 bytes)
 Sent PDU: DISPDUType 1 ENTITY_STATE
 Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
 Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
@@ -1481,7 +564,7 @@ Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
 Sent PDU: DISPDUType 20 DATA
 Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
 Sent PDU: DISPDUType 1 ENTITY_STATE
-Sent PDU: DISPDUType 25 TRANSMITTER
+190Sent PDU: DISPDUType 25 TRANSMITTER
 Sent PDU: DISPDUType 41 ENVIRONMENTAL_PROCESS
 Sent PDU: DISPDUType 1 ENTITY_STATE
 Sent PDU: DISPDUType 1 ENTITY_STATE
@@ -1559,8 +642,18 @@ DataQueryPduRoundTripTest
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 18 DATA_QUERY, size 128 bytes)
 EntityStatePduTest
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 3 DETONATION, size 104 bytes)
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 3 DETONATION, size 104 bytes)
+[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Exception in DisThreadedNetIF send thread: Cannot invoke "java.net.DatagramSocket.send(java.net.DatagramPacket)" because "this.socket" is null
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #1, 100 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #2, 200 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #3, 300 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #4, 400 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #5, 500 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #6, 600 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #7, 700 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #8, 800 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #9, 900 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) receipt reattempt #10, 1000 msec total
+*** PduTest.sendIeeeStandardPdu(DETONATION) did not succeed
 CreateAllObjectTypesTest
 Name: edu.nps.moves.dis7.objectTypes.ArealObject.ArealObject	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 0 OTHER	Category: 0	Subcategory: 0
 Name: edu.nps.moves.dis7.objectTypes.ArealObject.Obstacle.Obstacle	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 1 OBSTACLE	Category: 0	Subcategory: 0
@@ -1750,8 +843,8 @@ Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFighti
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.InfantryFightingPosition.OverheadCoveredInfantryPosition	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 2	Subcategory: 2
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.Other.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 0	Subcategory: 0
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.ArmoredVehicle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 1
-ENCODING_PLAINTEXT
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.FightingVehicle	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 2
+ENCODING_PLAINTEXT
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.MortarCarrier	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 3
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.Other	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 0
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Preparedposition.VehicleDefilade.Tank	Domain: PlatformDomain 1 LAND	Kind: ObjectKind 2 PREPARED_POSITION	Category: 1	Subcategory: 4
@@ -1760,7 +853,6 @@ Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.Tacticalsmoke	Dom
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.AirBurst.AirBurst	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 2	Subcategory: 0
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.AirBurst.Grenade	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 2	Subcategory: 1
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.AirBurst.Other	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 2	Subcategory: 0
-[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Exception in DisThreadedNetIF send thread: Cannot invoke "java.net.DatagramSocket.send(java.net.DatagramPacket)" because "this.socket" is null
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.GroundBurst.GroundBurst	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 1	Subcategory: 0
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.GroundBurst.Artillery	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 1	Subcategory: 1
 Name: edu.nps.moves.dis7.objectTypes.PointObject.Tacticalsmoke.GroundBurst.Other	Domain: PlatformDomain 0 OTHER	Kind: ObjectKind 5 TACTICAL_SMOKE	Category: 1	Subcategory: 0
@@ -1777,6 +869,7 @@ Recorder log file open: C:\x3d-github\open-dis7-java\pduLog\PduCaptureLog.dislog
 class edu.nps.moves.dis7.utilities.stream.PduRecorder listening to IP address 225.4.5.6 on port 3000
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 26 SIGNAL, size 33 bytes)
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 26 SIGNAL, size 33 bytes)
+[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 26 SIGNAL, size 33 bytes)
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 2. received DISPDUType 26 SIGNAL, size 50 bytes)
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 3. received DISPDUType 31 INTERCOM_SIGNAL, size 33 bytes)
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 4. received DISPDUType 31 INTERCOM_SIGNAL, size 58 bytes)
@@ -1797,6 +890,8 @@ Name: edu.nps.moves.dis7.objectTypes.LinearObject.Culturalfeature.TracksTire.Tra
 01 03 02 00
 EntityStatePduTest
 [edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] Using network interface Intel(R) Dual Band Wireless-AC 8260
+[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 5. received DISPDUType 2 FIRE, size 96 bytes)
+[edu.nps.moves.dis7.utilities.DisThreadedNetworkInterface] 1. received DISPDUType 2 FIRE, size 96 bytes)
 NullFieldsEntityMarshallTest
 .
 +-- JUnit Jupiter [OK]
@@ -1821,7 +916,7 @@ NullFieldsEntityMarshallTest
 | +-- Data Query Pdu Round Test [OK]
 | | '-- testRoundTrip() [OK]
 | +-- Detonation Pdu Test [OK]
-| | '-- testRoundTrip() [OK]
+| | '-- testRoundTrip() [X] No response from network receive after 10 retry attempts at 100 msec intervals (TODO note that test works standalone but mysteriously fails as part of project test suite) ==> expected: <true> but was: <false>
 | +-- All Object Types Create [OK]
 | | '-- testCreateAllObjectTypes() [OK]
 | +-- Signal Pdus Test [OK]
@@ -1831,29 +926,29 @@ NullFieldsEntityMarshallTest
 | | +-- testGoodMarshall() [OK]
 | | '-- testNoSubCategory() [OK]
 | +-- Fire Pdu Test [OK]
-| | '-- testRoundTrip() [X] No response from network receive after 100 msec (TODO note that test works standalone but mysteriously fails as part of project test suite) ==> expected: <true> but was: <false>
+| | '-- testRoundTrip() [OK]
 | '-- Null Fields Entity Marshall Test [OK]
 |   +-- testGoodMarshall() [OK]
 |   '-- testNoSpecificNoExtraMarshal() [OK]
 '-- JUnit Vintage [OK]
 
 Failures (1):
-  JUnit Jupiter:Fire Pdu Test:testRoundTrip()
-    MethodSource [className = 'edu.nps.moves.dis7.FirePduTest', methodName = 'testRoundTrip', methodParameterTypes = '']
-    => org.opentest4j.AssertionFailedError: No response from network receive after 100 msec (TODO note that test works standalone but mysteriously fails as part of project test suite) ==> expected: <true> but was: <false>
+  JUnit Jupiter:Detonation Pdu Test:testRoundTrip()
+    MethodSource [className = 'edu.nps.moves.dis7.DetonationPduTest', methodName = 'testRoundTrip', methodParameterTypes = '']
+    => org.opentest4j.AssertionFailedError: No response from network receive after 10 retry attempts at 100 msec intervals (TODO note that test works standalone but mysteriously fails as part of project test suite) ==> expected: <true> but was: <false>
        org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:55)
        org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:40)
        org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:193)
-       edu.nps.moves.dis7.PduTest.testPduSendReceiveHeaderMatch(PduTest.java:147)
-       edu.nps.moves.dis7.FirePduTest.testOnePdu(FirePduTest.java:38)
-       edu.nps.moves.dis7.FirePduTest.testRoundTrip(FirePduTest.java:28)
+       edu.nps.moves.dis7.PduTest.testPduSendReceiveHeaderMatch(PduTest.java:162)
+       edu.nps.moves.dis7.DetonationPduTest.testOnePdu(DetonationPduTest.java:76)
+       edu.nps.moves.dis7.DetonationPduTest.testRoundTrip(DetonationPduTest.java:66)
        java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
        java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        java.base/java.lang.reflect.Method.invoke(Method.java:564)
        [...]
 
-Test run finished after 6020 ms
+Test run finished after 6672 ms
 [        18 containers found      ]
 [         0 containers skipped    ]
 [        18 containers started    ]
@@ -1868,189 +963,16 @@ Test run finished after 6020 ms
 [         1 tests failed          ]
 
 Java Result: 1
-Processing C:\x3d-github\open-dis7-java\build\test\results\TESTS-TestSuites.xml to C:\Users\brutzman\AppData\Local\Temp\null2059831194
-Loading stylesheet jar:file:/C:/apache-ant-1.10.8/lib/ant-junit.jar!/org/apache/tools/ant/taskdefs/optional/junit/xsl/junit-frames.xsl
-Transform time: 45ms
-Deleting: C:\Users\brutzman\AppData\Local\Temp\null2059831194
-Warning: Leaving out empty argument '-windowtitle'
-Generating Javadoc
-Javadoc execution
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\AlphabeticalPduSender.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\ClassNameComparator.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EntityStateEntityIdExampleUse.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduReceiver.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduReceiverNIO.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSenderNIO.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\PduListenerSaver.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\PduReaderPlayer.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\ThreadedNetExample.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\CoordinateConversions.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\PduFactory.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduReceiver.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateLineSet.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dSlidingWindowCompression.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\EntityBodyCoordinates.java...
-Loading source file C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java...
-Constructing Javadoc information...
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:27: warning: no comment
-  public enum NetworkMode
-Standard Doclet version 15.0.1+9-18
-Building tree for all the packages and classes...
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:27: warning: no comment
-  public class ByteArrayBufferAndLength
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\AlphabeticalPduSender.java:34: warning: no comment
-  public AlphabeticalPduSender(int port, String multicast)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\AlphabeticalPduSender.java:48: warning: no comment
-  public void run()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\AlphabeticalPduSender.java:326: warning: no comment
-  public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EntityStateEntityIdExampleUse.java:130: warning: no comment
-  public static void main(String[] args) throws Exception
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduReceiver.java:31: warning: no comment
-  public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduReceiverNIO.java:24: warning: no comment
-  public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:25: warning: no comment
-  public static final int NUMBER_TO_SEND = 5000;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:29: warning: no comment
-    UNICAST, MULTICAST, BROADCAST
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:29: warning: no comment
-    UNICAST, MULTICAST, BROADCAST
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSender.java:29: warning: no comment
-    UNICAST, MULTICAST, BROADCAST
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\EspduSenderNIO.java:27: warning: no comment
-  public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\PduListenerSaver.java:31: warning: no comment
-  public static void main(String[] args)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\PduReaderPlayer.java:32: warning: no comment
-  public static void main(String[] args)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\examples\ThreadedNetExample.java:23: warning: no comment
-  public static void main(String[] args)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java:337: warning: no comment
-    public void c(double lat, double lon, double alt,
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java:379: warning: no comment
-    public void change(double localX, double localY, double localZ,
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java:436: warning: no comment
-    public static void main(String args[])
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\spatial\RangeCoordinates.java:459: warning: no comment
-  public SRF_LococentricEuclidean3D getPlatformReferenceFrame(Vector3Double rangePositionCoordinates)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:89: warning: no comment
-    public void addRawListener(RawListener lis) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:396: warning: no comment
-    public void startResume() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:400: warning: no comment
-    public void stopPause() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:404: warning: no comment
-    public void end() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduPlayer.java:32: warning: no comment
-        void receiveBytes(byte[] ba);
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:31: warning: no comment
-  public static final String COMMENT_MARKER = "#";
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:130: warning: no comment
-  public void startResume()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:135: warning: no comment
-  public void stopPause()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\PduRecorder.java:140: warning: no comment
-  public File end()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:41: warning: no comment
-    public double getPhi() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:45: warning: no comment
-    public void setPhi(double phi) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:49: warning: no comment
-    public double getPsi() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:53: warning: no comment
-    public void setPsi(double psi) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:57: warning: no comment
-    public double getTheta() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:61: warning: no comment
-    public void setTheta(double theta) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:65: warning: no comment
-    public double getX() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:69: warning: no comment
-    public void setX(double x) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:73: warning: no comment
-    public double getY() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:77: warning: no comment
-    public void setY(double y) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:81: warning: no comment
-    public double getZ() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCoordinates.java:85: warning: no comment
-    public void setZ(double z) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java:38: warning: no comment
-    public X3dCreateInterpolators() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java:45: warning: no comment
-    public void addPointsToMap(byte[] localBufferShort) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateInterpolators.java:112: warning: no comment
-    public void makeX3dInterpolator() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateLineSet.java:38: warning: no comment
-    public X3dCreateLineSet() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateLineSet.java:45: warning: no comment
-    public void addPointsToMap(byte[] localBufferShort) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dCreateLineSet.java:109: warning: no comment
-    public void makeX3dLineSet() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dSlidingWindowCompression.java:21: warning: no comment
-    public X3dSlidingWindowCompression(Map<Double, X3dCoordinates> localHashMap) {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\stream\X3dSlidingWindowCompression.java:30: warning: no comment
-    public Map<Double, X3dCoordinates> doSlidingWindow() {
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\CoordinateConversions.java:15: warning: no comment
-    public static final double RADIANS_TO_DEGREES = 180.0/Math.PI;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\CoordinateConversions.java:16: warning: no comment
-    public static final double DEGREES_TO_RADIANS = Math.PI/180.0;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:29: warning: no comment
-  public static String DEFAULT_MULTICAST_ADDRESS = "225.4.5.6";
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:30: warning: no comment
-  public static int    DEFAULT_DIS_PORT          = 3000;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:179: warning: no comment
-  public int getDisPort()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:184: warning: no comment
-  public String getMcastGroup()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:342: warning: no comment
-  public void kill()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:53: warning: no comment
-    public byte[] bufferByteArray;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:54: warning: no comment
-    public int length;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:39: warning: no comment
-    void incomingPdu(Pdu pdu);
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\DisThreadedNetworkInterface.java:45: warning: no comment
-    void incomingPdu(ByteArrayBufferAndLength bAndL);
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:49: warning: no comment
-  public TrialDisMulticastNetworkingDeprecated()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:54: warning: no comment
-  public TrialDisMulticastNetworkingDeprecated(int port, String mcastgroup)
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:69: warning: no comment
-  public int getPort()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:74: warning: no comment
-  public String getIp()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:79: warning: no comment
-  public void stop()
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:92: warning: no comment
-  public Pdu receivePdu() throws IOException
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:102: warning: no comment
-  public ByteArrayBufferAndLength receiveRawPdu() throws IOException
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:119: warning: no comment
-  public void sendPdu(Pdu pdu) throws Exception
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:128: warning: no comment
-  public void sendRawPdu(byte[] data) throws IOException
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:29: warning: no comment
-    public byte[] bufferByteArray;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:30: warning: no comment
-    public int length;
-C:\x3d-github\open-dis7-java\src\edu\nps\moves\dis7\utilities\TrialDisMulticastNetworkingDeprecated.java:32: warning: no comment
-    public ByteArrayBufferAndLength(byte[] bufferByteArray, int length)
-Building index for all the packages and classes...
-Building index for all classes...
-Generating C:\x3d-github\open-dis7-java\dist\javadoc\help-doc.html...
-72 warnings
-Browsing: file:/C:/x3d-github/open-dis7-java/dist/javadoc/index.html
-javadoc:
+Processing C:\x3d-github\open-dis7-java\build\test\results\TESTS-TestSuites.xml to C:\Users\brutzman\AppData\Local\Temp\null274676673
+Loading stylesheet jar:file:/C:/apache-ant-1.10.9/lib/ant-junit.jar!/org/apache/tools/ant/taskdefs/optional/junit/xsl/junit-frames.xsl
+Transform time: 29ms
+Deleting: C:\Users\brutzman\AppData\Local\Temp\null274676673
+================
+init:
+Deleting: C:\x3d-github\open-dis7-java\build\built-jar.properties
+deps-jar:
+Updating property file: C:\x3d-github\open-dis7-java\build\built-jar.properties
+compile:
 jar:
 manifest.name          = OpenDIS7 Protocol Data Units (PDUs)
 Built-By               = https://github.com/open-dis/open-dis7-java
@@ -2058,7 +980,7 @@ Specification-Title    = IEEE Distributed Interactive Simulation (DIS) Protocol
 Specification-Version  = 7
 Specification-Vendor   = Institute of Electrical and Electronics Engineers (IEEE)
 Implementation-Title   = edu.nps.moves.dis7
-Implementation-Version = 14 November 2020 20:16:53
+Implementation-Version = 15 November 2020 15:56:11
 Implementation-Vendor  = Naval Postgraduate School (NPS)
 init:
 deps-jar:
@@ -2070,6 +992,7 @@ Building jar: C:\x3d-github\open-dis7-java\dist\open-dis7-pdus-classes.jar
 jar-source:
 Building jar: C:\x3d-github\open-dis7-java\dist\open-dis7-pdus-source.jar
 jar-javadoc:
-Building MANIFEST-only jar: C:\x3d-github\open-dis7-java\dist\open-dis7-pdus-javadoc.jar
+(note that generated javadoc subdirectory is found within dist subdirectory)
+Building jar: C:\x3d-github\open-dis7-java\dist\open-dis7-pdus-javadoc.jar
 build all complete
-BUILD SUCCESSFUL (total time: 26 seconds)
+BUILD SUCCESSFUL (total time: 16 seconds)
diff --git a/test/edu/nps/moves/dis7/PduTest.java b/test/edu/nps/moves/dis7/PduTest.java
index 623cc104c4..96a1bd65a7 100644
--- a/test/edu/nps/moves/dis7/PduTest.java
+++ b/test/edu/nps/moves/dis7/PduTest.java
@@ -52,6 +52,7 @@ abstract public class PduTest
 {
     protected final long THREAD_SLEEP_INTERVAL_MSEC_DEFAULT = 100l; // i.e. 100, type long
     private         long threadSleepInterval = THREAD_SLEEP_INTERVAL_MSEC_DEFAULT;
+    private         int  maximumRetryAttempts = 10;
     
     @BeforeAll
     public static void setUpClass()
@@ -99,12 +100,26 @@ abstract public class PduTest
      * for unmarshalling (deserialization) further unit testing.
      * @param createdPdu new PDU of interest
      */
+    @SuppressWarnings("SleepWhileInLoop")
     protected void sendIeeeStandardPdu(Pdu createdPdu)
     {
-        try
+        disNetworkInterface.send(createdPdu);
+        
+        try // check to see if the sent PDU came back
         {
-            disNetworkInterface.send(createdPdu);
-            Thread.sleep(getThreadSleepInterval()); // TODO better way to wait?
+            int numberOfReadTests = 0;
+            do // check at least once, perhaps multiple times for receipt before returning
+            {
+                Thread.sleep(getThreadSleepInterval());
+                if (receivedPdu != null)
+                    return;
+                numberOfReadTests++;
+                System.out.flush();
+                System.err.println ("*** PduTest.sendIeeeStandardPdu(" + createdPdu.getPduType().name() + ")" +
+                           " receipt reattempt #" + numberOfReadTests + ", " + (numberOfReadTests * getThreadSleepInterval()) + " msec total");
+            }
+            while (numberOfReadTests < getMaximumRetryAttempts());
+            System.err.println ("*** PduTest.sendIeeeStandardPdu(" + createdPdu.getPduType().name() + ") did not succeed");
         } 
         catch (InterruptedException ex)
         {
@@ -144,7 +159,8 @@ abstract public class PduTest
         String TEST_SUITE_WARNING = " (TODO note that test works standalone but mysteriously fails as part of project test suite)";
 
         sendIeeeStandardPdu(createdPdu); // send to self, then wait a while, then return receivedPdu
-        assertTrue(receivedPdu != null,         "No response from network receive after " + getThreadSleepInterval() + " msec" 
+        assertTrue(receivedPdu != null,         "No response from network receive after " + 
+                Math.max(getMaximumRetryAttempts(), 1) + " retry attempts at " + getThreadSleepInterval() + " msec intervals"
                    + TEST_SUITE_WARNING);
      
         assertTrue((createdPdu != receivedPdu), "Exact match found between createdPdu and receivedPdu object references indicates improper test configuration");
@@ -222,5 +238,21 @@ abstract public class PduTest
     {
         this.threadSleepInterval = threadSleepInterval;
     }
+
+    /**
+     * @return the maximumRetryAttempts value
+     */
+    public int getMaximumRetryAttempts()
+    {
+        return maximumRetryAttempts;
+    }
+
+    /**
+     * @param maximumRetryAttempts the maximumRetryAttempts value to set
+     */
+    public void setMaximumRetryAttempts(int maximumRetryAttempts)
+    {
+        this.maximumRetryAttempts = maximumRetryAttempts;
+    }
     
 }
-- 
GitLab